Remove ecmwf_macc functions

[x] Closes #1609
[x] I am familiar with the contributing guidelines
[ ] Tests added
[x] Updates entries in docs/sphinx/source/reference for API changes.
[x] Adds description and name entries in the appropriate "what's new" file in docs/sphinx/source/whatsnew for all changes. Includes link to the GitHub Issue with :issue:`num` or this Pull Request with :pull:`num`. Includes contributor name and/or GitHub username (link with :ghuser:`user`).
[ ] New code is fully documented. Includes numpydoc compliant docstrings, examples, and comments where necessary.
[x] Pull request is nearly complete and ready for detailed review.
[x] Maintainer: Appropriate GitHub Labels (including remote-data) and Milestone are assigned to the Pull Request and linked Issue.

This PR removes the get_ecmwf_macc and read_ecmwf_macc functions. The reasoning is that the MACC dataset is now outdated (covers the period 2003-2012) and the functions are hardly ever used thus it is not worth maintaining these functions any longer.
For more recent reanalysis data, users are encouraged to check out ECMWF ERA5, CAMS, or NASA MERRA-2 as a starting point.
See this link for a comparison between MACC and CAMS.

@kanderso-nrel I guess you will insist we deprecate these functions instead of bluntly removing them? 😆

@kanderso-nrel I guess you will insist we deprecate these functions instead of bluntly removing them? 😆

if @kanderso-nrel doesn't, I will.

insist we deprecate these functions instead of bluntly removing them?

Perhaps not insist, but strongly endorse :) It costs little to maintain so I see little reason to not do a typical deprecation cycle.

I should stress that:

the MACC dataset is now outdated (covers the period 2003-2012)

is not IMHO a valid reason for deprecating this function. EG: one could say that TMY2 is outdated, but I predict we will never deprecate read_TMY2.
However, this reason:

and the functions are hardly ever used thus it is not worth maintaining these functions any longer.

is IMHO a good reason to do away with something that costs us to maintain, but does not pay any dividends if no one is using it

does not pay any dividends

Let me check my bank statement whether this is really true...

Should we consider archiving the MACC data set somehow somewhere?

I think it's fair to merge this PR soon as the dataset is removed on June 1st and our next release will surely be after that.

@AdamRJensen points out that the MACC dataset decommissioning is complete, so I think the time has come to merge this PR.


Track last domain in authentication process

Hey,
to ease login error handling Symfony offers the AuthenticationUtils which track the last used username. The guard component already complies to this behaviour. I've implemented a multi-domain-login and added a guard authentication failure listener to just track the last used domain. Would be great if the bundle could do this out-of-the-box. 😃
Cheers
Matthias

Sounds like a good idea to me. I've been slacking a little on adding to this bundle lately, with other things taking up my time. I'll see what I can do about getting this in.

I'll check if I can make a PR. Your bundle helped me a lot lately replacing the LDAP part from Symfony. ;-)


⚠ AlphaRatio has degraded performance

In 59acd59, AlphaRatio ($AR) experienced degraded performance:

HTTP code: 200
Response time: 2688 ms

Resolved: AlphaRatio performance has improved in 1d4210d after 7 minutes.


Update compatibility.md

Proposed changes

Unreleased project version (optional)

Related issues (optional)

It's my pleasure.


Tips for throttling requests and avoiding hitting the rate limit

Hi, @philschatz. This library is awesome! Thanks for keeping it up to date all this time. 🙏
Here's how I'm currently doing rate limiting:
const RateLimiter = require('limiter').RateLimiter
const limiter = new RateLimiter(5000, 'hour')
const Octokat = require('octokat')
const octo = new Octokat({token: process.env.GITHUB_ACCESS_TOKEN})

repos.forEach(repo => {
  limiter.removeTokens(1, function () {
    octo(repo.owner.login, repo.name).contributors.fetch()
      .then(contributors => // do stuff )
  })
})

This is working okay, but I wonder if there's a better way. Thoughts?
Also, I saw this in the README:

Listeners for rate limit changes

What exactly does that mean?

Unfortunately, octokat does not perform throttling but it does provide the following which may be useful:

eTag caching and you can provide your own cache handler to save to disk
an "unofficial" listener that tells you the rate limit remaining and when the limit resets

To use the listener you can doing something like the following:
const Octokat = require('./dist/node/octokat')

const octo = new Octokat({
  emitter: function(eventType, details, response, rateLimit) {
    const {method, path, data, options} = details
    const {isBase64, isRaw, isBoolean, contentType} = options
    // The following are in seconds since epoch, not milliseconds
    const {remaining, limit, reset} = rateLimit
    console.log(arguments)
  }
})

octo.repos('philschatz/octokat.js').fetch()

// alternative:
octo.fromUrl('/repos/philschatz/octokat.js').fetch()

It really should be on the octokat object but I was not sure if:

people would find it useful
how much detail should be sent
whether Rate limits should be left as seconds since epoch or converted to Date objects

... but now that there are 2 requests for it, I'll add it :smile:
I hope that helps!
Also, any chance https://github.com/electron/devtron/pull/87#issuecomment-253029476 might end up on the blog?
... I also sent an email to<EMAIL_ADDRESS>


[RESOLVED] High ICMP ping response time

Problem started at 10:37:34 on 2023.05.17
Problem name: High ICMP ping response time
Host: S100-Santiago
Severity: Warning
Operational data: Value: 828ms
Original problem ID: 20757
Event details in Zabbix: http://<IP_ADDRESS>/tr_events.php?triggerid=23518&eventid=20757

Problem has been resolved in 5m 59s at 10:43:33 on 2023.05.17
Problem name: High ICMP ping response time
Host: S100-Santiago
Severity: Warning
Original problem ID: 20757


File too big???

I am finding that jpg file sizes greater than 5GB fail. The error I am getting is this:
Error: read ECONNRESET at errnoException (net.js:905:11) at Pipe.onread (net.js:559:19)
I have memory set to 1025 and timeout is 1:30. The job is only using:
Duration: 5531.38 ms Billed, Duration: 5600 ms Memory Size: 1024 MB, Max Memory Used: 160 MB
Does anyone know if there is a 5GB limit, and if so, is there a way to get around this?

I have the same problem. My image size is only 4.1MB.

I'm also seeing this issue

I have the same issue

Assuming you meant 5MB (not 5GB), I don't think the issue is with the file size. If it's similar to what I encountered (ECONNRESET), I replied with my answer on #31.

@odedniv I'm seeing it with images only a few MB in size. Replicating the problem was pretty easy for me, if I tried to process an image over 4 or 5 mb it would fail.

@cbdileo did you try removing the reduce section and using resize instead, the way I wrote in the other thread? It completely solved the problem for me and worked on more than a hundred images

@odedniv I have not, I ended up switching to another solution since I was under a time crunch

I looked at the other option and, not wanting to hurt any feelings, this one is much more advanced, and I already done some work on it that I didn't want to redo. I'm also not sure what the key difference there apart from the module they use to "hide" the use of the binaries. Maybe @slimfancy could shed some light on that.
Also, maybe the binaries here need updating? I tried an updated aws-sdk and it didn't fix the problem.

@odedniv I was in a similar situation. I tried to look through the code to see if I could spot something but time and my lack of node knowledge prevented any real progress.

@odedniv I'm NOT 100% percent sure the root cause of the problem. I think it's maybe caused by the binaries in bin/ which author used to reduce the file size. In my own project slimfancy/image-lambda, I change to use imagemin, then it works.

@ysugimoto any objection against switching to imagemin? Have you tried it before and it didn't meet your criteria?

@slimfancy I actually switched to your labmda function, so far it works great.


Dockerfile: Copy semver.txt to /app/bikeshed, not /app

This follows the changes that landed a few months ago and moved
semver.txt to the bikeshed/ subdirectory.
While here, remove the top-level semver.txt that does not seem to be
used anymore.

cc @tabatkins


Docker image variant for Intel QuickSync transcoding

First of all, great work on this project!
I'm curious if there is a plan to offer an option that supports Intel QuickSync (not limited to others hardware acceleration like Nvenc)?
Reason is I'm dabbling with home lab server and I got Jellyfin running with Intel QuickSync through Docker using linuxserver image: https://hub.docker.com/r/linuxserver/jellyfin
Currently I'm using your xemle/home-gallery image and realise it is using node alpine as the base image that I suspects is the culprit as there is no working driver in the docker image when trying to use QuickSync through the video extractor ffmpeg args.
Here's the error message when I try to run ffmpeg inside the container:
[AVHWDeviceContext @ 0x7f2cc24a7f80] libva: VA-API version 1.21.0
[AVHWDeviceContext @ 0x7f2cc24a7f80] libva: User requested driver 'iHD'
[AVHWDeviceContext @ 0x7f2cc24a7f80] libva: Trying to open /usr/lib/dri/iHD_drv_video.so
[AVHWDeviceContext @ 0x7f2cc24a7f80] libva: va_openDriver() returns -1
[AVHWDeviceContext @ 0x7f2cc24a7f80] Failed to initialise VAAPI connection: -1 (unknown libva error).
Device creation failed: -5.
Failed to set value '/dev/dri/renderD128' for option 'qsv_device': I/O error
Error parsing global options: I/O error

The command that I used that works in the Jellyfin container but produce the error above in HomeGallery container:
ffmpeg -loglevel verbose -hwaccel qsv -qsv_device /dev/dri/renderD128 -hwaccel_output_format vaapi -i "foo.mkv" foo.mp4

As I'm familiar with Docker, I'll try to modify the Dockerfile and see how it goes. Probably I'll need to refer to the Jellyfin Dockerfile too to see if I need to do anything extra.
Thanks again for this great project! Images just works but I wanted to include videos that got me noticed the max out CPU usage from ffmpeg conversion that got me disabling the video extraction temporarily.

Hi @hueyyeng Thank you for reaching out and trying HomeGallery
Is that kind of FYI since you are trying to build your own Docker container? Or do you need any support?
Regarding Intel QuickSync I can not help here because I do not own such hardware.

This is more of trying to get Intel QuickSync working inside the Docker container as the ffmpeg args is helpful if one want to utilise the hardware encoding.
I'll share my results here once I got it working so others can benefit from it.

You are using vaapi output format.
-hwaccel_output_format vaapi
Change it to qsv
-hwaccel qsv -hwaccel_output_format qsv
Should work in current image also

Everything available with just passed iGPU to container without any magic
~ $ ffmpeg -decoders|grep qsv
ffmpeg version 6.1.1 Copyright (c) 2000-2023 the FFmpeg developers
  built with gcc 13.2.1 (Alpine 13.2.1_git20240309) 20240309
  configuration: --prefix=/usr --disable-librtmp --disable-lzma --disable-static --disable-stripping --enable-avfilter --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libharfbuzz --enable-libmp3lame --enable-libopenmpt --enable-libopus --enable-libplacebo --enable-libpulse --enable-librav1e --enable-librist --enable-libsoxr --enable-libsrt --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-lto=auto --enable-lv2 --enable-openssl --enable-pic --enable-postproc --enable-pthreads --enable-shared --enable-vaapi --enable-vdpau --enable-version3 --enable-vulkan --optflags=-O3 --enable-libjxl --enable-libsvtav1 --enable-libvpl
  libavutil      58. 29.100 / 58. 29.100
  libavcodec     60. 31.102 / 60. 31.102
  libavformat    60. 16.100 / 60. 16.100
  libavdevice    60.  3.100 / 60.  3.100
  libavfilter     9. 12.100 /  9. 12.100
  libswscale      7.  5.100 /  7.  5.100
  libswresample   4. 12.100 /  4. 12.100
  libpostproc    57.  3.100 / 57.  3.100
 V....D av1_qsv              AV1 video (Intel Quick Sync Video acceleration) (codec av1)
 V....D h264_qsv             H264 video (Intel Quick Sync Video acceleration) (codec h264)
 V....D hevc_qsv             HEVC video (Intel Quick Sync Video acceleration) (codec hevc)
 V....D mjpeg_qsv            MJPEG video (Intel Quick Sync Video acceleration) (codec mjpeg)
 V....D mpeg2_qsv            MPEG2VIDEO video (Intel Quick Sync Video acceleration) (codec mpeg2video)
 V....D vc1_qsv              VC1 video (Intel Quick Sync Video acceleration) (codec vc1)
 V....D vp8_qsv              VP8 video (Intel Quick Sync Video acceleration) (codec vp8)
 V....D vp9_qsv              VP9 video (Intel Quick Sync Video acceleration) (codec vp9)
~ $

Something like that should help.

@hueyyeng
I've made some investigation. Hope it will help but I'm not sure I can spend more effort to it. Maybe someone can make it useful for public.
In our case we have ffmpeg compiled without qsv support. Only vaapi, but seems like it is not so important for such tasks.
https://github.com/xemle/home-gallery/pull/157


Adding new implementation problem which is LFU cache under cpp under leetcode solutions

It's one of the hardest implementation problem, and it's not added here in the repo. Please assign me this issue

Could you please assign me this issue under hactoberfest?


[#1027] Update websockets package version requirements

Summary
Closes #1027.
Category (place an x in each of the [ ])

[ ] slack_sdk.web.WebClient (sync/async) (Web API client)
[ ] slack_sdk.webhook.WebhookClient (sync/async) (Incoming Webhook, response_url sender)
[ ] slack_sdk.models (UI component builders)
[ ] slack_sdk.oauth (OAuth Flow Utilities)
[x] slack_sdk.socket_mode (Socket Mode client)
[ ] slack_sdk.audit_logs (Audit Logs API client)
[ ] slack_sdk.scim (SCIM API client)
[ ] slack_sdk.rtm (RTM client)
[ ] slack_sdk.signature (Request Signature Verifier)
[ ] /docs-src (Documents, have you run ./docs.sh?)
[ ] /docs-src-v2 (Documents, have you run ./docs-v2.sh?)
[ ] /tutorial (PythOnBoardingBot tutorial)
[ ] tests/integration_tests (Automated tests for this library)

Requirements (place an x in each [ ])

[X] I've read and understood the Contributing Guidelines and have done my best effort to follow them.
[X] I've read and agree to the Code of Conduct.
[X] I've run python setup.py validate after making the changes.

Thanks for submitting the pull request! Will merge once the CI builds pass.


Data processing

"How can we process raw video data to generate a JSON file in the format {"video": video_path, "text": text_prompt}?"

Alright, thank you very much!


Updating license headers

Signed-off-by: Ravi Thaluru<EMAIL_ADDRESS>Description

Clean up license headers (remove amazon.com copyright header and cleanup other headers too to be short form with opensearch contributors copyright line)
Formatting

Issues Resolved
https://github.com/opensearch-project/index-management-dashboards-plugin/issues/38
Check List

[X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #130 (5aaa892) into main (b50f784) will decrease coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #130      +/-   ##
==========================================
- Coverage   63.35%   63.34%   -0.02%
==========================================
  Files         155      155
  Lines        4410     4411       +1
  Branches      731      731
==========================================
  Hits         2794     2794
- Misses       1404     1405       +1
  Partials      212      212

Impacted Files
Coverage Δ

...ndex-management-dashboards-plugin/public/plugin.ts
0.00% <0.00%> (ø)

...ex-management-dashboards-plugin/utils/constants.ts
100.00% <0.00%> (ø)

...nagement-dashboards-plugin/public/utils/helpers.ts
66.66% <0.00%> (ø)

...gement-dashboards-plugin/public/utils/constants.ts
100.00% <0.00%> (ø)

...ement-dashboards-plugin/public/pages/Main/Main.tsx
10.00% <0.00%> (ø)

...ment-dashboards-plugin/public/services/Services.ts
100.00% <0.00%> (ø)

...-dashboards-plugin/public/index_management_app.tsx
7.69% <0.00%> (ø)

...-dashboards-plugin/public/services/IndexService.ts
67.56% <0.00%> (ø)

...dashboards-plugin/public/services/PolicyService.ts
100.00% <0.00%> (ø)

...dashboards-plugin/public/services/RollupService.ts
100.00% <0.00%> (ø)

... and 145 more

Continue to review full report at Codecov.

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


Install django-shop with an egg of "django-shop" not "shop"

Otherwise, pip might be confused into pulling in an older version of
"django-shop" not realizing that the thing we pulled in as "shop" is
already a git-master of the same thing.
And since old versions of django-shop, in turn, pull in dependencies
(such as South) that break other packages, we really need to avoid
that.

 (2) Add an app to display RSS feeds.

 (2) Add an app to display RSS feeds.


Radioactive waste patch 1

Added a new third order non-linearity Hamiltonian in the hamiltonian.py file, this can be used for the SNAIL chip element, which is a three wave mixing element with a third order non-linearity.
Also added the SNAIL element with a capacitive drive.

The Code Complexity fails after 1 minute, but not when testing the PR changes but when testing the other files...

The Code Complexity fails after 1 minute, but not when testing the PR changes but when testing the other files...

The Code Complexity fails after 1 minute, but not when testing the PR changes but when testing the other files...

That's fine. There isn't much to do with fixing the code complexity at this point. I will override that check.
However, you will need to add type annotations and tests for the two features added by you. Like I mentioned in the previous PRs.  Type annotations are easy, you can find a simple explanation here. We write and run tests using a module called pytest. The idea is to write a function using a predefined template that can check these features actually do what you intend them to do, i.e., they produce the expected known output when you give them your example input. You can check the test/ directory in the root of this repo for some inspiration.

The Code Complexity fails after 1 minute, but not when testing the PR changes but when testing the other files...

That's fine. There isn't much to do with fixing the code complexity at this point. I will override that check.
However, you will need to add type annotations and tests for the two features added by you. Like I mentioned in the previous PRs.  Type annotations are easy, you can find a simple explanation here. We write and run tests using a module called pytest. The idea is to write a function using a predefined template that can check these features actually do what you intend them to do, i.e., they produce the expected known output when you give them your example input. You can check the test/ directory in the root of this repo for some inspiration.


Beginning of job logs is lost after update of project template

After I updated my project Makefile with cookiecutter-neuro-project v1.3, the beginning part of the logs started disappearing.
endif

After a run of this command I typically get the following output:

where part of the console outputs of my script is missed. The supposed script output can be viewed in the attached log file:
15-01-2020_15-34-51.log
Before the update, there was not any problem like this.

outdated, we are not writing job logs into the /output file anymore


weakly compressible low mach

Hi,
I am just a bit curious what the plans of jaxfluids are :-) Is there any activity ongoing (or planned) for low Mach turbulent flow as well?
Best Regards
Fab

Hi Fab,
thanks for interest in JAX-Fluids! We are planning a major update for beginning of next year.
JAX-Fluids 2.0 will also include more turbulence modules and multiple two-phase modules. A dedicated submodule for low Mach turbulence is not planned as of yet. Can you tell us more about what you have in mind? E.g., adding a weakly-compressible submodule can be done fairly easily. And we could discuss this in more detail.
Thanks

Hi, thanks, very intersting...


[Question] Making repeat work similar to ryo-modal-repeat

After the recent update, I noticed that the ryo-modal-repeat command is deprecated. However, I was wondering if there is a way to replicate its functionality. Consider the following scenario -

D key in ryo-modal-mode is mapped to C-k
j key in ryo-modal-mode is mapped to C-n with :norepeat t
Previously, with ryo-modal-repeat if press D and then j, calling ryo-modal-repeat would perform the action mapped to D and not j
Currently, the example mentioned above when used with repeat repeats the action j and not D

Is there any way to restore the old functionality? And if this is not in the road map, the current README suggests that this is true.
Also, thank you for the new update! Multiple cursors works seamlessly now after mapping the mc/* commands using define-key.

Hmm, perhaps there's still a need for the repeat feature after all! :) I just thought it wouldn't be needed, because the standard repeat command should work. It is true however that now it isn't possible to use :norepeat, which might be a good feature. I'll look into it!

It seems like I have misunderstood the purpose of the Emacs repeat command. I'll try to add ryo-modal-repeat once again :)

I've re-added ryo-modal-repeat and I think it'll work with the new system. Also it is now possible to bind ryo-modal-repeat using ryo-bind-key(s) if you want to :)


Please post all of the required information.

hm strange yesterday it happend all day and now its completely gone well...
solved=)


Commands for MuJoCo installation

For anyone who has gotten the code to run successfully, what commands did you put in for your MuJoCo installation? In the dependency file we have this area:
#######################################################
# WRITE CODE HERE TO PLACE MUJOCO 1.31 in /opt/mujoco #
# The key file should be in /opt/mujoco/mjkey.txt     #
# Mujoco should be installed in /opt/mujoco/mjpro131  #
#######################################################

I assumed it would be something like:
sudo cp -r [?????]/mjpro131/ /opt/mujoco/
sudo cp [?????]/mjkey.txt /opt/mujoco/

But I am not sure what to put in the [?????]. I have MuJoCo 1.31 for my personal computers, but if I try to copy it there with, e.g. sudo cp -r ~/mjpro131/ /opt/mujoco/ and sudo cp ~/mjpro131/mjkey.txt /opt/mujoco/ I get the following after building the packer script:
    amazon-ebs: + sudo mkdir -p /opt/mujoco
    amazon-ebs: + sudo cp -r /home/ubuntu/mjpro131/ /opt/mujoco/
    amazon-ebs: cp: cannot stat '/home/ubuntu/mjpro131/': No such file or directory
    amazon-ebs: + sudo cp -r /home/ubuntu/mjpro131/mjkey.txt /opt/mujoco/
    amazon-ebs: cp: cannot stat '/home/ubuntu/mjpro131/mjkey.txt': No such file or directory
    amazon-ebs: + sudo tee /etc/profile.d/mujoco.sh
    amazon-ebs: + sudo echo 'export MUJOCO_PY_MJKEY_PATH=/opt/mujoco/mjkey.txt'
    amazon-ebs: + sudo tee -a /etc/profile.d/mujoco.sh
    amazon-ebs: + sudo echo 'export MUJOCO_PY_MJPRO_PATH=/opt/mujoco/mjpro131'
    amazon-ebs: + . /etc/profile.d/mujoco.sh
    amazon-ebs: ++ export MUJOCO_PY_MJKEY_PATH=/opt/mujoco/mjkey.txt
    amazon-ebs: ++ MUJOCO_PY_MJKEY_PATH=/opt/mujoco/mjkey.txt
    amazon-ebs: ++ export MUJOCO_PY_MJPRO_PATH=/opt/mujoco/mjpro131
    amazon-ebs: ++ MUJOCO_PY_MJPRO_PATH=/opt/mujoco/mjpro131

In other words, the packer script thinks MuJoCo is in /home/ubuntu instead of my personal machine. Is there a different command to use for this?

Never mind, figured it out. Use the file provisioner before running the script to get the MuJoCo files copied over to the machines.


LInk to ReadMe of known issues is incorrect

In the page it has the sentence:
For known issues with this version of Dynamics 365 App for Outlook, see the Dynamics 365 apps Readme., however the Readme URL is then red-recited to the Dynamics 365: 2019 release wave 2 plan which does not contain any known issue information about the App for Outlook
[Enter feedback here]

Document details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: b4bb8dcf-9211-591e-4ddc-a82ba53b2807
Version Independent ID: 4b501c46-bd2e-457d-c891-2ebea3e44967
Content: Deploy Dynamics 365 App for Outlook
Content Source: ce/outlook-app/deploy-dynamics-365-app-for-outlook.md
Service: crm-online
GitHub Login: @mduelae
Microsoft Alias: mkaur

@scott-jackson-mpe Thank you for the feedback. We no longer have a Readme doc. I have removed the URL and republished the topic. The changes will go live on the site in about 2 hours.
Thanks,
Mints


Add feature to mask repo names

Done https://github.com/synchook/synchook/commit/76625e81489c98f05e6f2dfc52803e3f205dbfc2


Unlucky text truncation

It's truncating to osx-arm6 although I have enough horizontal space

He I think growing it a little would help here, but that would be just for conda-forge. robostack-humble for instance would be longer again.
If we make the loading information auto-scaling it will look better. But it will look horrible when you resize your terminal. e.g.:

What do you think of this solution and what would you prefer?

Yes, broken TUI scaling is somewhat expected. But I think it should be possible without:

Clear all progress bars when the command is finished, so no old progress bars are left on the scroll back.
Handle terminal resizes in the progress bar printing code.

We use the indicatif crate for all our progress bar handling. There have been some improvements recently. With the latest release on my machine (Windows) this now happens when the terminal is too small:
https://github.com/prefix-dev/pixi/assets/4995967/5cb3f1aa-571e-4796-955f-4dc7c220f4b9
I think that's already a lot better?


[iOS] Undefined symbols for architecture x86_64

Is this a bug report?
Yes
Have you read the Bugs section of the Contributing to React Native Guide?
Yes
Environment

react-native -v: react-native-cli: 2.0.1 - react-native: 0.46.1
node -v: v7.5.0
npm -v: 4.1.2

Then, specify:

Target Platform (e.g. iOS, Android): iOS
Development Operating System (e.g. macOS Sierra, Windows 10): macOS Sierra 10.12.5

Steps to Reproduce

Have a new project based on 0.46.1 react native.
Use "babel-preset-react-native": "^2.0.0"
I don't know if there is a library or what that does this but its really weird

Expected Behavior
I expect the react-native run-ios to build the app properly!
Because react-native run-android works fine and lets me build and run the android app!
Actual Behavior
 /Users/snorreedwin/Code/entur/entur-clients/native/ios/build/Build/Products/Debug-iphonesimulator/React/React.framework/React

Undefined symbols for architecture x86_64:
  "_JSNoBytecodeFileFormatVersion", referenced from:
      +[RCTJavaScriptLoader loadBundleAtURL:onProgress:onComplete:] in RCTJavaScriptLoader.o
      +[RCTJavaScriptLoader attemptSynchronousLoadOfBundleAtURL:runtimeBCVersion:sourceLength:error:] in RCTJavaScriptLoader.o
  "facebook::react::parseTypeFromHeader(facebook::react::BundleHeader const&)", referenced from:
      +[RCTJavaScriptLoader attemptSynchronousLoadOfBundleAtURL:runtimeBCVersion:sourceLength:error:] in RCTJavaScriptLoader.o
  "facebook::react::customJSCWrapper()", referenced from:
      -[RCTDevSettings isJSCSamplingProfilerAvailable] in RCTDevSettings.o
      -[RCTDevSettings toggleJSCSamplingProfiler] in RCTDevSettings.o
      _RCTNSErrorFromJSErrorRef in RCTJSCErrorHandling.o
      -[RCTSamplingProfilerPackagerMethod handleRequest:withResponder:] in RCTSamplingProfilerPackagerMethod.o
  "facebook::react::systemJSCWrapper()", referenced from:
      -[RCTDevSettings isJSCSamplingProfilerAvailable] in RCTDevSettings.o
      -[RCTDevSettings toggleJSCSamplingProfiler] in RCTDevSettings.o
      _RCTNSErrorFromJSErrorRef in RCTJSCErrorHandling.o
      -[RCTSamplingProfilerPackagerMethod handleRequest:withResponder:] in RCTSamplingProfilerPackagerMethod.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

** BUILD FAILED **

The following build commands failed:
	Ld /Users/snorreedwin/Code/entur/entur-clients/native/ios/build/Build/Products/Debug-iphonesimulator/React/React.framework/React normal x86_64
(1 failure)

Installing build/Build/Products/Debug-iphonesimulator/reactnativetidr.app
An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):
Failed to install the requested application
An application bundle was not found at the provided path.
Provide a valid path to the desired application bundle.
Print: Entry, ":CFBundleIdentifier", Does Not Exist

Command failed: /usr/libexec/PlistBuddy -c Print:CFBundleIdentifier build/Build/Products/Debug-iphonesimulator/reactnativetidr.app/Info.plist
Print: Entry, ":CFBundleIdentifier", Does Not Exist

Reproducible Demo
I'm not sure how to easily reproduce this, other than telling about our setup.
We are running CocoaPods and Swift, which makes it a bit different from an init project.
This is our dependencies:
  "dependencies": {
    "@mapbox/polyline": "^0.2.0",
    "axios": "^0.15.3",
    "babel-plugin-transform-decorators-legacy": "^1.3.4",
    "better-npm-run": "0.0.14",
    "file-butler": "git@bitbucket.org:enturas/file-butler.git",
    "moment": "^2.18.1",
    "native-base": "^2.2.1",
    "react": "16.0.0-alpha.12",
    "react-native": "0.46.1",
    "react-native-config-swift": "git@bitbucket.org:enturas/react-native-config-swift.git",
    "react-native-easy-grid": "^0.1.11",
    "react-native-fabric": "^0.4.1",
    "react-native-maps": "^0.15.3",
    "react-native-vector-icons": "~4.1.1",
    "react-navigation": "^1.0.0-beta.11",
    "react-redux": "^5.0.3",
    "react-router-redux": "^4.0.8",
    "redux": "^3.6.0",
    "redux-devtools-extension": "^2.13.0",
    "redux-logger": "^2.8.2",
    "redux-saga": "^0.14.3",
    "stacktrace-js": "^2.0.0",
    "url-parse": "^1.1.9"
  },
  "devDependencies": {
    "babel-eslint": "^7.2.3",
    "babel-jest": "18.0.0",
    "babel-plugin-module-resolver": "^2.7.0",
    "babel-preset-react-native": "^2.0.0",
    "eslint": "^3.19.0",
    "eslint-config-airbnb": "^14.1.0",
    "eslint-plugin-import": "^2.2.0",
    "eslint-plugin-react": "^7.0.1",
    "eslint-watch": "^3.1.0",
    "jest": "18.1.0",
    "jsx-control-statements": "^3.2.5",
    "react-test-renderer": "15.4.2",
    "reactotron-react-native": "^1.10.0",
    "reactotron-redux": "^1.10.0",
    "reactotron-redux-saga": "^1.10.0",
    "source-map": "^0.5.6",
    "wml": "0.0.82"
  },

save issue in my project

:-(

+1

You need to add a dependency on the RCTBatchedBridge subspec (if using 0.46) or RCTCxxBridge (if newer).

In my case (0.46.3), I added React/BatchedBridge into the dependencies in Podfile and the problem went away.

Adding BatchedBridge as a subspec in your Podfile resolves the issue as @javache indicates.

Duplicate of #14423

@RobertWSaunders Saved my night, thanks ;)

BatchedBridge is deprecated.

The following should work:
platform :ios, '9.0'
inhibit_all_warnings!
use_frameworks!

abstract_target 'All' do
  # React-Native
  pod 'React', path: '../node_modules/react-native', subspecs: %w(
    Core ART CxxBridge DevSupport
    RCTAnimation RCTImage RCTLinkingIOS RCTNetwork
    RCTPushNotification RCTText RCTWebSocket
  )

  # React-Native dependencies
  pod 'DoubleConversion', podspec: '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'
  pod 'Folly', podspec: '../node_modules/react-native/third-party-podspecs/Folly.podspec'
  pod 'GLog', podspec: '../node_modules/react-native/third-party-podspecs/GLog.podspec'
  pod 'yoga', path: '../node_modules/react-native/ReactCommon/yoga'

  target 'Your-Target-Name'
end

Replace BatchedBridge with CxxBridge and add DoubleConversion, Folly, and GLog. I'm not sure why we need all those libraries, React-Native is becoming more and more moving parts (that unfortunately can cause their own problems).
I'm sticking with BatchedBridge for now. After waiting 15 minutes for my poor Mac Mini to install boost (another dependency that popped up) I cancelled it.

Adding CxxBridge as suggested by @Zyphrax worked for me. My podfile for 0.51:
# The target name is most likely the name of your project.
target 'EmbedRN' do

    # Your 'node_modules' directory is probably in the root of your project,
    # but if not, adjust the `:path` accordingly
    pod 'React', :path => '../node_modules/react-native', :subspecs => [
      'Core',
      'CxxBridge',
      'DevSupport', # Include this to enable In-App Devmenu if RN >= 0.43
      'RCTText',
      'RCTNetwork',
      'RCTWebSocket', # needed for debugging
      # Add any other subspecs you want to use in your project
    ]
    # Explicitly include Yoga if you are using RN >= 0.42.0
    pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'

    # Third party deps podspec link
    pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'
    pod 'GLog', :podspec => '../node_modules/react-native/third-party-podspecs/GLog.podspec'
    pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec'

  end

Adding CxxBridge doesn't save my ass. Even adding DoubleConversion, Folly, GLog, the linking error stands still.  My podfile is also for 0.51. what a nightmare!
`# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'
target 'reactTest' do
#Uncomment the next line if you're using Swift or would like to use dynamic frameworks
#use_frameworks!
#Pod react-native
react_native = "../node_modules/react-native"
pod 'React', :path => react_native, :subspecies => [
'Core',
'CxxBridge',
'DevSupport', # Include this to enable In-App Devmenu if RN >= 0.43
'RCTText',
'RCTNetwork',
'RCTWebSocket', # needed for debugging
]
#Pod yoga support for react-native
pod 'yoga', :path => "#{react_native}/ReactCommon/yoga"
end`

This makes me crazy. Any one can tell me what is wrong with my Podfile.
# Uncomment the next line to define a global platform for your project
platform :ios, '8.0'

target 'reactTest' do
  # Uncomment the next line if you're using Swift or would like to use dynamic frameworks
  # use_frameworks!

  # Pod react-native
  react_native = "../node_modules/react-native"
  pod 'React', :path => react_native, :subspecies => [
  'Core',
  'CxxBridge',
  'DevSupport', # Include this to enable In-App Devmenu if RN >= 0.43
  'RCTText',
  'RCTNetwork',
  'RCTWebSocket', # needed for debugging
  ]

  #Pod yoga support for react-native
  pod 'yoga', :path => "#{react_native}/ReactCommon/yoga"

  # Third party deps podspec link
  pod 'DoubleConversion', :podspec => "#{react_native}/third-party-podspecs/DoubleConversion.podspec"
  pod 'GLog', :podspec => "#{react_native}/third-party-podspecs/GLog.podspec"
  pod 'Folly', :podspec => "#{react_native}/third-party-podspecs/Folly.podspec"

end

God bless! This morning I rebuilt my project with the same package.js file, same Podfile file, but install node modules with yarn(previously with npm). It works incredibly fine! I'm considering what dark magic the yarn have done for me!

@MemoryReload Yeah, when in doubt, remove npm/yarn lockfiles, remove node_modules and install with yarn. That works for me 99.9% of times too 😄

@Zyphraz Yarn is too important for reat-native, I think. 😂

@Zyphraz Yarn is too important for reat-native, I think. 😂

@Zyphrax  Yarn is too important for reat-native, I think. 😂

@calvinkei Did you resolve this? Any idea?

Check here: https://github.com/facebook/react-native/issues/15838#issuecomment-333455341

@BenBach I eventually started a new react native project and transfer all my js code, and install every native module one by one again, it works but it is painful

@calvinkei Are you using cocoapods? And have both debug build and archive working?

I now have debug, release and archive working. Using two targets. The second one is a duplicate with the react modules manually linked as well, allowing the debug build to work. While the first one only links the libPods. This way the pod installation doesn't issue any warnings, and the target.remove_from_project part can be removed.


Support CLI arguments containing spaces?

As a heavy Bash user, I expected the CLI to support the standard Bash mechanism of passing strings with spaces in them by using quotes.
However, doing that with version 3.0.0 installed via npm outputs the help message and exits with status 1:
$ levenshtein-edit-distance "Has Spaces" "Has-No-Spaces"

  Usage: levenshtein-edit-distance [options] <word> <word>

  Levenshtein edit distance. No cruft. Real fast.

  Options:

    -h, --help           output usage information
    -v, --version        output version number
    -i, --insensitive    ignore casing

  Usage:

  # output distance
  $ levenshtein-edit-distance sitting kitten
  3

  # output distance from stdin
  $ echo "saturday,sunday" | levenshtein-edit-distance
$ echo $?
1

Do you have any interest in supporting input containing spaces?
I've been using the CLI tool to compare filesystem paths for similarity. Having support for spaces would be useful there (I noticed this due to a bug report from a user of an internal tool at $DAYJOB).

After a few minutes of poking at cli.js in my node_modules folder, I came up with a quick patch that shows rough support for the behavior I expected:
$ levenshtein-edit-distance "Has Spaces" "Has-Spaces"
1

The hack was:
--- node_modules/levenshtein-edit-distance/cli.bak.js	2021-11-17 15:47:24.000000000 -0500
+++ node_modules/levenshtein-edit-distance/cli.js	2021-11-17 15:47:29.000000000 -0500
@@ -34,7 +34,7 @@
     getDistance(String(data).trim())
   })
 } else {
-  getDistance(argv.join(' '))
+  getDistance(argv.splice(-2, 2))
 }

 function help() {
@@ -65,9 +65,7 @@
 /**
  * @param {string} value
  */
-function getDistance(value) {
-  var values = value.split(',').join(' ').split(/\s+/)
-
+function getDistance(values) {
   if (values.length === 2) {
     // @ts-ignore yes, the length is 2.
     console.log(distance(values))

I can see that the program also accepts input on stdin.
Accepting two lines of input on stdin might be an acceptable way to support strings containing spaces. I think you could mostly-preserve backwards compatibility by falling back to splitting on spaces if only one line of input is received, but I have not thought that through thoroughly.

Sure, PR welcome!
stdin accepts CSV, I think that should remain supported?

Okay, thanks! I'll look for some time to do a PR.

Closing, but still open to a PR!

Makes sense - obviously I've not managed to do this.
It is in my todo list with the open-source tag, but as a father of three small children it's hard to carve out contribution time.


single blank

... single blank or trailing/leading blanks are missing, especilly " ". Also "%" and "_" (SQL escapes)

Trailing blanks compromise manual usability of the file (they conflict with sensible text editor defaults). See the "Contributions" section of the README.

No problem for the JSon file. You can even hex encode them.

Added in https://github.com/minimaxir/big-list-of-naughty-strings/commit/4fdd7318621f53e23030dd738687836ab91457f1


[Feature request]: Provide a way to write note guid into exported .enex

Suggestion
Note guid is an important information to identify a note, and good help to rebuild link relationship when a note have a link to another note, with guid in exported .enex for every note make it possible to rebuild the connection when import into 3rd party apps.

Is there a place within a given .enex file that you think it would make sense for a guid to go?

One issue with this approach is that adding a new attribute to a .enex file, which is an XML file structured according to its DTD, could potentially make the file invalid in many programs. Some programs may not enforce strict DTD validation, allowing the modification. A workaroud could be using a modified DTD, but that may still cause compatibility issues with software that expects strict conformance to the original DTD.
I would also like to retain the GUID, and I thought it could be included in the <note-attributes> element, such as within a <note-id> element:
  <note>
    <title>[...]</title>
    <created>[...]</created>
    <updated>[...]</updated>
    <note-attributes>
      <author>[...]</author>
      <source>[...]</source>
      <source-application>[...]</source-application>
      <note-id>[...]</note-id>
    </note-attributes>
    <content>
      [...]
    </content>
  </note>

But I believe such modification should be optional in order to not break compatibility with other programs, specially when you consider that no program currently uses such data. And I think it would be easier to access the data directly in the en_backup.db SQLIte DB if you want to use it to export to other file formats.

I agree, exporting the GUID in the enex is a major necessity and would really simplify the work of conversion tools like https://github.com/akosbalasko/yarle/.


[Question]: How can I know if the user i'm trying to sign up already exist ?

General info

[X] I checked the troubleshooting page for similar problems

What is your question?
How can I know if the user i'm trying to sign up already exist ?
In my supabase dashboard, the user must confirm the email address before sign in, but that came with a challenge, when I'm trying to sign up a user that already exist there's no an error and the API return a User with an id, and honestly I don't know how to use this information to decide if the user has been create of no, I was expecting to have an error saying that the user already exist

I don't think there is a built-in way to do that. I've seen solutions that included making a custom rpc function to check if an user with the specified email exists, but I'm not sure if thats the best way.

That's weird

I'd ask on the Supabase Github or Discord, they can probably help you more

General info

[x]  I checked the troubleshooting page for similar problems

What is your question?
How can I know if the user i'm trying to sign up already exist ? In my supabase dashboard, the user must confirm the email address before sign in, but that came with a challenge, when I'm trying to sign up a user that already exist there's no an error and the API return a User with an id, and honestly I don't know how to use this information to decide if the user has been create of no, I was expecting to have an error saying that the user already exist

Since you say the Api returns a user with an id, you may chose to follow what i did in my case... When creating a new user you should save the user id to another postgrest table, you can manually save their id to the created table when creating the user or even more conveniently, use  a trigger function in supabase dashboard to watch for inserts in the user table and automatically update your table with the user id.. Now before you can sign  in your user you should first check to see if their id has been stored in your users table. If the id is stored in your table you can sign them in, if not you know you are dealing with a new user and can direct them to any page of your choice. That is if i understood your question correctly.

@eric-ampire Did you solve your problem?

No unfortunately

You could try this approach: https://github.com/orgs/supabase/discussions/1282#discussioncomment-5230475

Closing due to inactivity. Feel free to reopen!


Error on signing up

using this example on the swift 2 branch, the app builds, Ive set up the cloud code side, parse shows its signing up  the users through the login screen when the app builds and runs on my phone but i get a constant activity spinner and the following error:
2015-09-09 08:43:46.789 Layer-Parse-iOS-Swift-Example[48891:3291859] LayerKit client v0.15.0 loaded
Failed to connect to Layer: Error Domain=com.layer.LayerKit.Errors Code=6000 "The client is already in the process of establishing a connection." UserInfo={NSLocalizedDescription=The client is already in the process of establishing a connection.}
fatal error: unexpectedly found nil while unwrapping an Optional value
(lldb)
        /*
        * 2. Acquire identity Token from Layer Identity Service
        */
        PFCloud.callFunctionInBackground("generateToken", withParameters: ["nonce": nonce, "userID": userID]) { (object:AnyObject?, error: NSError?) -> Void in
            if error == nil {
                let identityToken = object as! String
                self.layerClient.authenticateWithIdentityToken(identityToken) { authenticatedUserID, error in
                    if (!authenticatedUserID.isEmpty) {
                        if (completion != nil) {
                            completion(success: true, error: nil)
                        }
                        print("Layer Authenticated as User: \(authenticatedUserID)")
                    } else {
                        completion(success: false, error: error)
                    }
                }
            } else {
                print("Parse Cloud function failed to be called to generate token with error: \(error)")
            }
        }
    }
}

getting a Thread 1: Exc Breakpoint on this line of code  " if(authenticatedUserID.isEmpty){

@lhumphreys73 Thanks for reporting the issue. The app (swift 2 branch) seems like is running fine on both simulator and my iPhone (iOS 9 beta 3).
In order to isolate the issue, can you provide me these info?
Do you encounter the same problem:

on Xcode 7 simulator? (By the way, what is your Xcode 7 version?)
with Xcode 6 on both simulator and iPhone?
with https://github.com/layerhq/Layer-Parse-iOS-Example project?
If none of the above works, probably it is your Parse Cloud Code or configuration issue?
If any of the above works, then... mmm.. let me think. :stuck_out_tongue:

Thank you, resolved, it was a configuration issue.

@lhumphreys73 :+1: You're welcome.


[Test-1] add test for NamedThreadFactory

Ⅰ. Describe what this PR did
add test for NamedThreadFactory
Ⅱ. Does this pull request fix one issue?

fix #195
Ⅲ. Why don't you add test cases (unit test/integration test)?
already add
Ⅳ. Describe how to verify it
run ut first
Ⅴ. Special notes for reviews

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.zhaoyunxiang seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Codecov Report

Merging #513 into develop will increase coverage by 0.02%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             develop     #513      +/-   ##
=============================================
+ Coverage      29.03%   29.06%   +0.02%
- Complexity       687      688       +1
=============================================
  Files            193      193
  Lines           7456     7456
  Branches         910      910
=============================================
+ Hits            2165     2167       +2
+ Misses          5062     5061       -1
+ Partials         229      228       -1

Impacted Files
Coverage Δ
Complexity Δ

...ibaba/fescar/common/thread/NamedThreadFactory.java
87.5% <0%> (+12.5%)
4% <0%> (+1%)
:arrow_up:

Continue to review full report at Codecov.

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


Fix dereferencing a NULL pointer.

Description
As @maa1370 pointed out in this Issue: https://github.com/aws/amazon-freertos/issues/3102, there is a NULL dereference in the lwIP secure sockets implementation.
This PR fixes that.
Checklist:

[ ] I have tested my changes. No regression in existing tests.
[ ] My code is Linted.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

sorry, mentioned this issue instead of #3014 wrongly.


Sync views should run in a threadpool

Responder will need to ensure that sync views get run within a threadpoolexecutor.
If we don't do this then user codebases are likely to use eg. synchronous database accesses or other network I/O that ends up blocking the current task.
Bit of an extra implementation work there, but it'll nicely ensure that both async def my_view and det my_view cases are being managed properly, without the user really needing to think about it.
(Same goes for the class based interface too)

I think synchronous (flask-style) programming will be appropriate with this library

@tomchristie your second point was just addressed.

I think if you want to read the response body, you just have to use async right now.

I like that pattern moving forward

done


First map rendering takes a long time when you have a lot of offline data stored

Describe the bug
I found a nasty issue on MapLibre native when you have a lot of data downloaded. The time for the map first rendering increases significantly. With 1,5GB of offline data, the first map rendering lasts 5 seconds instead of 1 second.
To Reproduce
Steps to reproduce the behavior with the test app:

Change the default style for the test app with this style: https://carto.geolives.com/vector/geolivestopoosm_vector_grey.json
Go to folder directory to download offline areas.
Download an amount of 1,5GB+ of offline data.
Exit the app and re-run it.
The first map rendering will take more time to render completely.

The time increases as the local database also increases.
The referenced style includes multiple sources that emphasizes the issue, but you can use any style that includes sources with a lot of data.
Expected behavior
A first map rendering that takes the same time or near the same time as when no offline data are stored.
Screenshots
https://github.com/maplibre/maplibre-native/assets/13694294/a7c2bf01-54ff-43ed-86b1-675efb79e00a
Platform information:

OS: iOS 16. I suspect Android to have the same issue, but less noticable.
branch main, version 6.0.0.

Additional context
Historically, this issue was found in Mapbox in 2020 : https://github.com/mapbox/mapbox-gl-native/issues/16519
I searched in the code and I agree with the initial issue : the initialization of the ambient cache size (OfflineDatabase::initAmbientCacheSize) takes a long time when the database gets a lot of stored tiles.
I modified the code by ignoring the request and returning directly 0 for the ambient cache size, and the first map rendering was instantly done.

2 possible alternatives to solve this issue:

Store the current ambient cache size inside the database, and update it each time his cache size is modified. This way, the initialization simply request the computed cache size from the last execution.
Store a flag inside the tiles and resources table that tells if the resource/tile is ambient or not. That way we simplify the request by deleting the need to make a left join. With the cost that for each download/cleaning, the flag must be re-set correctly.

Thanks for this super detailed bug report.
Which of the two solutions you suggest would you prefer?

With more study on this issue, i could see a third option that is better than the two previous ones.
The main problem I have with the previous 2 solutions are in term of database corruption. If something wrong happens between the initial modification and the computation modification, you'll have a database with incoherent information stored. That could leads to issues difficult to overcome.
A third (and my preference) solution is to split the ambient cache from the offline database cache.
In terms of database structure, that means create two new tables. Let's say ambient_tiles and ambient_resources.
When we need to store resource for ambient cache:

We store it into the ambient_resources table.

When we need to store tile for ambient cache:

We store it into the ambient_tiles table.

When we need to store resource for offline data:

We store it into the resources table with the associated region inside the region_resources table.
We delete the same resource from the ambient cache (*).

When we need to store tile for offline data:

We store it into the tile table with the associated region inside the region_tiles table.
We delete the same tile from the ambient cache (*).

(*) Even if something wrong happens and the delete instruction cannot be done for a specified resource/tile, that only means the ambient cache will waste some size.
But with the continuous refresh of the ambient cache, this waste will be erased after some time.
By doing this, the initialization of the ambient cache will take no time, because we'll doing the request on a table that is limited to the Max Ambient Cache Size anyway.
About database structure migration, we can simply clear the ambient cache at first upgrade to the new database version.
Maybe a design proposal for this kind of modification could be useful?

Hello.
What do you think about the implementation of the third option (via the two new tables region_resources and region_tiles)?
We could start working on that change this week in order to implement it this month.
Thanks in advance.

It sounds like a solid plan! 👍
If you can basically copy what you wrote in a design proposal template and make a PR, that would be helpful.
https://github.com/maplibre/maplibre-native/blob/main/design-proposals/2022-09-02-design-proposal-template.md

Thank you, we have created the design proposal template and made a PR : https://github.com/maplibre/maplibre-native/pull/1839


fix(google-maps): internal events run inside NgZone

The custom Google Maps events work by binding everything ahead of time and then dispatching the results to the various listeners, however the result of this is that they'll trigger change detection for events that the consumer hasn't subscribed to. These changes switch to initializing the Google Maps objects outside the NgZone and then only bringing the ones that the consumer has subscribed to back inside.

Changed to make the NgZone required @jelbourn.

Caretaker: cherry-pick this into 9.0.x


CLOUD-437 allow redefine PMM Resources

Test name
Status

init-deploy
failed

scaling
passed

recreate
passed

self-healing
passed

big-data
passed

scaling-proxysql
passed

upgrade
passed

self-healing-advanced
passed

demand-backup
passed

upgrade-consistency
passed

operator-self-healing
passed

one-pod
passed

scheduled-backup
failed

auto-tuning
passed

Test name
Status

scaling
passed

self-healing
failed

init-deploy
passed

big-data
passed

recreate
passed

scaling-proxysql
passed

upgrade
passed

storage
failed

demand-backup
passed

upgrade-consistency
passed

scheduled-backup
failed

Test name
Status

init-deploy
passed

recreate
passed

scaling
passed

self-healing
passed

big-data
passed

storage
failed

scaling-proxysql
passed

upgrade
passed

self-healing-advanced
passed

demand-backup
passed

upgrade-consistency
passed

operator-self-healing
passed

one-pod
passed

auto-tuning
passed

scheduled-backup
failed

Test name
Status

init-deploy
passed

scaling
passed

recreate
passed

self-healing
passed

big-data
passed

storage
passed

scaling-proxysql
passed

upgrade
passed

demand-backup
passed

self-healing-advanced
failed

limits
passed

upgrade-consistency
passed

monitoring
passed

monitoring-2-0
passed

affinity
passed

scheduled-backup
failed

Test name
Status

recreate
passed

scaling
passed

self-healing
passed

init-deploy
failed

big-data
passed

scaling-proxysql
passed

upgrade
passed

self-healing-advanced
failed

demand-backup
passed

upgrade-consistency
passed

scheduled-backup
failed

Test name
Status

recreate
failed

init-deploy
failed

self-healing
passed

scaling
passed

big-data
passed

scaling-proxysql
passed

upgrade
passed

self-healing-advanced
failed

upgrade-consistency
passed

Test name
Status

big-data
passed

init-deploy
passed

recreate
passed

self-healing
passed

scaling
passed

scaling-proxysql
passed

storage
failed

upgrade
passed

demand-backup
passed

self-healing-advanced
failed

upgrade-consistency
passed

scheduled-backup
failed


[BUG] Bad cookie

Describe the bug
I use google chrome, and i copied the .ROBLOSECURITY token directly from the cookie place (the lock next to the url), and i get error
Bad cookie.
Error: You are not logged in
To Reproduce
Steps to reproduce the behavior:

Go to 'roblox.com' in google chrome
Click on the lock, click cookies, click 'roblox.com', click .ROBLOSECURITY, copy cookie content
Put the copied cookie into cookieLogin()
See error

Expected behavior
Logs in successfully.
Screenshots
N/A
Additional context
Add any other context about the problem here.

Nvm fixed it was something with my settings.json


fix(notification-dingding): throw error when failed

⚠⚠⚠ Since we do not accept all types of pull requests and do not want to waste your time. Please be sure that you have read pull request rules:
https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma
Tick the checkbox if you understand [x]:

[x] I have read and understand the pull request rules.

Description
See https://github.com/louislam/uptime-kuma/pull/3573#issuecomment-1678029861
Type of change
Please delete any options that are not relevant.

Bug fix (non-breaking change which fixes an issue)

Checklist

[x] My code follows the style guidelines of this project
[x] I ran ESLint and other linters for modified files
[x] I have performed a self-review of my own code and tested it
[x] I have commented my code, particularly in hard-to-understand areas
(including JSDoc for methods)
[x] My changes generate no new warnings
[ ] My code needed automated testing. I have added them (this is optional task)

Screenshots (if any)
Please do not use any external image service. Instead, just paste in or drag and drop the image here, and it will be uploaded automatically.

See #3573

Have you tested that this works as intended?
Could you attach a screenshot as above of the monitor failing? (https://github.com/louislam/uptime-kuma/pull/3573#issue-1848985337) ^^

Have you tested that this works as intended?
Could you attach a screenshot as above of the monitor failing? (https://github.com/louislam/uptime-kuma/pull/3573#issue-1848985337) ^^

OK, I will try to get the screenshot next Monday. (I'm on vacation.)

@AnnAngela ping ^^

@CommanderStorm Sorry for late response, I forgot it :(

@louislam FYI: I put this into the 1.23.12 milestone as I think this meets our requirements (only bugfixes) for said release and can be merged without more indepth reveiew as the "proof of working" we need is there ^^


Fix blocking  shutdown app with LibInput

What does the pull request do?
Fix application crash when using LibInputBackend due to thread not being background
What is the current behavior?
When the application is terminated (for example, calling Shutdown from lifetime), the application does not close
What is the updated/expected behavior with this PR?
The application shuts down
How was the solution implemented (if it's not obvious)?
The IsBackground property for the thread is set
Fixes
Fixes #12334

@dotnet-policy-service agree

@Seeung please add "Fixes #TheIssueNumer" in your PR description

@timunie updated

@timunie updated

thx. I added the Fixes keyword. Github needs it to actually close the issue. The PR will be reviewed by someone knowing this OS better than me :-)


Check network on start and reset db

PR Description

Check if the network is Ephemery and due for an update then reset the db.

Fixed Issue(s)
fixes #8589
Documentation

[ ] I thought about documentation and added the doc-change-required label to this PR if updates are required.

Changelog

[ ] I thought about adding a changelog entry, and added one if I deemed necessary.

@rolfyone please review when you have the time. Thanks!

I'm not sure that's really at the right point currently, because we're leaking that deposit check in multiple places, and theres public functions that can delete folders etc, so i think we really need to think about how it all fits together... this feels very confused...
Are you able to have a look at how we might do this neatly? otherwise we can find a little time to get some design thought out so its relatively clean...

I'm not sure that's really at the right point currently, because we're leaking that deposit check in multiple places, and theres public functions that can delete folders etc, so i think we really need to think about how it all fits together... this feels very confused...
Are you able to have a look at how we might do this neatly? otherwise we can find a little time to get some design thought out so its relatively clean...

Thanks for reviewing. I will dive deeper and see how I can make the code better.

@rolfyone I have added some test please review and let me know what you think.


TFT only working when connected via USB to Power Source or PC

Hi guys,
I am having this issue where I can´t use the display while I am powering the device via battery connector.
First I thought it was my code but I tried Volos' Snake game and it also just lights up the display when connected via USB. (https://github.com/VolosR/SnakeT-DisplayS3).
Then I thought that maybe the 700mah battery was not putting out sufficient current, so I powered the device with two 2200 mah cells in parallel and the screen still would not turn on.
Then I thought maybe it was because I didn´t install all necessary li
My code makes the TTGO T-Display S3 act as a simple remote control for another esp32, so the display is not necessary for the code to function, but it would be nice to have as an indicator for when the device is in sleep mode and when it is active. (and it´s pretty).
Greetings

Please see my LilyGO T-Display S3 setup and examples:
https://github.com/teastainGit/LilyGO-T-display-S3-setup-and-examples
This sounds like a case:
C) Can run on USB power but not battery connector:
In declarations add
#define PIN_POWER_ON 15		// just before the setup and then in setup add:
pinMode(PIN_POWER_ON, OUTPUT); 	//"triggers the LCD backlight, and enables battery power
digitalWrite(PIN_POWER_ON, HIGH);)	//on startup"
LilyGO variously refers to them as "LCD power on" OR "PIN_POWER_ON")
Hope this helps!
-Terry

Works like a charm

Please see my LilyGO T-Display S3 setup and examples: https://github.com/teastainGit/LilyGO-T-display-S3-setup-and-examples This sounds like a case: C) Can run on USB power but not battery connector: In declarations add #define PIN_POWER_ON 15 // just before the setup and then in setup add: pinMode(PIN_POWER_ON, OUTPUT); //"triggers the LCD backlight, and enables battery power digitalWrite(PIN_POWER_ON, HIGH);) //on startup" LilyGO variously refers to them as "LCD power on" OR "PIN_POWER_ON") Hope this helps! -Terry

Resolved


Fix warning in data merge strategy

This allows to reuse the data merge strategy without forcing it to be
a function when used in a child

What kind of change does this PR introduce? (check at least one)

[x] Bugfix
[ ] Feature
[ ] Code style update
[ ] Refactor
[ ] Build-related changes
[ ] Other, please describe:

Does this PR introduce a breaking change? (check one)

[ ] Yes
[x] No

If yes, please describe the impact and migration path for existing applications:
The PR fulfills these requirements:

[x] It's submitted to the dev branch for v2.x (or to a previous version branch), not the master branch
[ ] When resolving a specific issue, it's referenced in the PR's title (e.g. fix #xxx[,#xxx], where "xxx" is the issue number)
[x] All tests are passing: https://github.com/vuejs/vue/blob/dev/.github/CONTRIBUTING.md#development-setup
[ ] New/updated tests are included

If adding a new feature, the PR's description includes:

[ ] A convincing reason for adding this feature (to avoid wasting your time, it's best to open a suggestion issue first and wait for approval before working on it)

Other information:

I don't think this would be sufficient. The code below this condition check assumes childVal is a function.

That's true. I'll have a deeper look whenever I can.

Seems to be covered in #6025


Customize

I dont think this is ment to be a PR

I dont think this is ment to be a PR

yea, meant to open this against my main branch, sorry


pprint.apply fails for arbitrary Strings

We are using pprint in property based testing, where we create arbitrary strings. Sadly, pprint fails on some of those characters:
Message: Unknown ansi-escape at index 3 inside string cannot be parsed into an fansi.Str
Example:
import org.scalatest.WordSpec
import org.scalatestplus.scalacheck.ScalaCheckPropertyChecks

class PprintUnitTest extends WordSpec with ScalaCheckPropertyChecks {
  "pprint" in {
    forAll(minSuccessful(5000000)) { s: String =>
      pprint.apply(s)
    }
  }
}

Ran into this same issue.  Using "com.lihaoyi" %% "pprint" % "0.7.1".  Library chokes on certain strings.  Had to remove use from production.


Problem with types

I have define the following:
module TVJulia

@data MinuteOutcome begin
    HomeGoal
    AwayGoal
    NoGoal
    BothGoal
end

@data Score begin
    ZeroZero
    ZeroOne
    OneZero
    OneOne
    Even
    Plus(Int)
    Minus(Int)
end

# const SCORES::Vector{Score.Type} = [
#     Score.ZeroZero, Score.ZeroOne, Score.OneZero, Score.OneOne, Score.Even,
#     Score.Plus(1), Score.Plus(2), Score.Plus(3), Score.Plus(4), Score.Plus(5),
#     Score.Minus(1), Score.Minus(2), Score.Minus(3), Score.Minus(4), Score.Minus(5)]
function scores()
    Score.Type[
        Score.ZeroZero::Score.Type, Score.ZeroOne, Score.OneZero, Score.OneOne, Score.Even,
        Score.Plus(1), Score.Plus(2), Score.Plus(3), Score.Plus(4), Score.Plus(5),
        Score.Minus(1), Score.Minus(2), Score.Minus(3), Score.Minus(4), Score.Minus(5)
    ]
end

function Base.:+(s::Score.Type, mo::MinuteOutcome.Type)
    @match mo begin
        MinuteOutcome.HomeGoal =>
            @match s begin
                Score.ZeroZero => Score.OneZero
                Score.ZeroOne  => Score.OneOne
                Score.OneZero  => Score.Plus(2)
                Score.OneOne   => Score.Plus(1)
                Score.Even     => Score.Plus(1)
                Score.Plus(n)  => Score.Plus(min(n+1, 5))
                Score.Minus(1) => Score.Even
                Score.Minus(n) => Score.Minus(n-1)
            end
        MinuteOutcome.AwayGoal =>
            @match s begin
                Score.ZeroZero => Score.ZeroOne
                Score.ZeroOne  => Score.Minus(2)
                Score.OneZero  => Score.OneOne
                Score.OneOne   => Score.Minus(1)
                Score.Even     => Score.Minus(1)
                Score.Plus(1)  => Score.Even
                Score.Plus(n)  => Score.Plus(n-1)
                Score.Minus(n) => Score.Minus(min(n+1, 5))
            end
        MinuteOutcome.BothGoal =>
            @match s begin
                Score.ZeroZero => Score.OneOne
                Score.ZeroOne  => Score.Minus(1)
                Score.OneZero  => Score.Plus(1)
                Score.OneOne   => Score.Even
                _ => s
            end
        MinuteOutcome.NoGoal => s
    end
end

But I am running into problems - one after the other.
> TVJulia.scores()
MethodError: Cannot `convert` an object of type Type{Main.TVJulia.Score.ZeroZero} to an object of type Main.TVJulia.Score.Type

Closest candidates are:
  convert(::Type{T}, ::T) where T
   @ Base Base.jl:84
  Main.TVJulia.Score.Type(::Any)
   @ Main.TVJulia none:0

Stacktrace:
 [1] setindex!(A::Vector{Main.TVJulia.Score.Type}, x::Type, i1::Int64)
   @ Base ./array.jl:1021
 [2] (::Base.var"#114#115"{Vector{Main.TVJulia.Score.Type}})(i::Int64, v::Type)
   @ Base ./array.jl:456
 [3] afoldl(::Base.var"#114#115"{Vector{Main.TVJulia.Score.Type}}, ::Int64, ::Type, ::Type, ::Type, ::Type, ::Type, ::Main.TVJulia.Score.Type, ::Main.TVJulia.Score.Type, ::Main.TVJulia.Score.Type, ::Main.TVJulia.Score.Type, ::Main.TVJulia.Score.Type, ::Main.TVJulia.Score.Type, ::Main.TVJulia.Score.Type, ::Main.TVJulia.Score.Type, ::Main.TVJulia.Score.Type, ::Main.TVJulia.Score.Type)
   @ Base ./operators.jl:544
 [4] getindex(::Type{Main.TVJulia.Score.Type}, ::Type, ::Type, ::Type, ::Vararg{Any})
   @ Base ./array.jl:455
 [5] scores()
   @ Main.TVJulia ~/git/lehoff/TVJulia/src/TVJulia.jl:97
 [6] top-level scope
   @ In[97]:1

When I try to use my + operator I get:
> TVJulia.Score.ZeroZero + TVJulia.MinuteOutcome.HomeGoal

MethodError: no method matching +(::Type{Main.TVJulia.Score.ZeroZero}, ::Type{Main.TVJulia.MinuteOutcome.HomeGoal})

Closest candidates are:
  +(::Any, ::Any, ::Any, ::Any...)
   @ Base operators.jl:587

Stacktrace:
 [1] top-level scope
   @ In[88]:1

This leaves me rather confused.
Happy to conduct further investigations if that would be of any help.

Unfortunately we can't have real singleton (e.g type is the same as instance) this is not supported by Julia, so you need to explicitly write the instance (otherwise that's just a variant type). I was actually thinking this, maybe we should just remove the singleton syntax.

Not sure I understand what I need to do - could you give an example?
Follow up question: what would happen if I used ZeroZero() instead of ZeroZero? Can I still compare them for equality?

maybe we should just remove the singleton syntax.

That would feel more consistent :+1:


illegal hardware instruction (core dumped)

Describe the bug
when i input  ./image-processing-benchmark ../../benchmarks/ImageProcessing/Images/YuTu.png laplacianKernelAlign
in the shell.
I encountered this situation that illegal hardware instruction (core dumped)
To Reproduce
Steps to reproduce the behavior.
cd buddy-benchmark
cd build
cd bin
./image-processing-benchmark ../../benchmarks/ImageProcessing/Images/YuTu.png laplacianKernelAlign
Running ./image-processing-benchmark
Run on (16 X 2900 MHz CPU s)
CPU Caches:
L1 Data 32 KiB (x8)
L1 Instruction 32 KiB (x8)
L2 Unified 512 KiB (x8)
L3 Unified 4096 KiB (x2)
Load Average: 1.13, 0.91, 0.74
WARNING  CPU scaling is enabled, the benchmark real time measurements may be noisy and will incur extra overhead.
WARNING  Library was built as DEBUG. Timings may be affected.
-------------------------------------------------------------
Benchmark                   Time             CPU   Iterations
-------------------------------------------------------------
OpenCV_Filter2D/1     3471609 ns      3460337 ns          201
Eigen_Convolve2D/1   76930880 ns     76863287 ns            9
MLIR_Conv2D/1        12705419 ns     12695988 ns           55
[1]    4396 illegal hardware instruction (core dumped)  ./image-processing-benchmark ../../benchmarks/ImageProcessing/Images/YuTu.png

Desktop :

OS: arch linux
Version [5.17.4]

Additional context
My computer cpu is amd4800
$lscpu
Model name：AMD Ryzen 7 4800H with Radeon Graphics
Flags：              fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht
                         syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid
                          aperfmperf rapl pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c r
                         drand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit w
                         dt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 hw_pstate ssbd mba
                         ibrs ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2 cqm rdt_a rdseed adx smap clflushopt clwb sha_ni
                          xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local clzero irperf xsave
                         erptr rdpru wbnoinvd cppc arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeass
                         ists pausefilter pfthreshold avic v_vmsave_vmload vgif v_spec_ctrl umip rdpid overflow_recov succor s
                         mca sme sev sev_es

Ping @meshtag for this DIP related issue.

@linuxlonelyeagle .mlir files relevant to IP benchmark use buddy-opt to lower appropriate IP related MLIR Ops for generating the required .o file. As mentioned by @zhanghb97 , please ensure that you are able to build the DIP example by following instructions mentioned in this readme file.

Glad you solved the issue!
I think the buddy-mlir doc mentions it clearly that ISA vector extension should be specified by the user as per their machine. Quoting the following line from budd-mlir's readme file :

You should specify the  (e.g. 256) and  (e.g. avx512f).

Feel free to create a PR if you think we should mention this more clearly in either buddy-mlir or buddy-benchmark's readme file(s).
PS : Please close the issue if you think your concerns are addressed


Allow users to override underlying values

I'm deploying my first Lokomotive cluster and came across a value that I need to change in one of the underlying charts for the components I deploy. In this specific case, I wanted to override the AdditionalScrapingConfigs for the prometheus-operator component, but this issue is about the generic situation, not this specific config.
As it is right now, it's not supported for Lokomotive users to customize any value that's not directly exposed through the lokocfg parameters. Workarounds include modifying these values with helm or recompiling Lokomotive to expose the setting, but neither of this is a good solution for fully automated infrastructure-as-code deployments.
I guess the only valid alternative is to use the Helm chart directly instead of Lokomotive's component.
To solve this, I propose allowing users to set custom values that are passed as is to the helm chart. To make it clear that changing this values is not officially supported, the field could be named unsupported_user_values, unsupported_customized_values or something of the sort that highlights that these customizations are not officially supported, but still allows the user to make the most out of their Lokomotive installation.

From the slack discussion, one option would be to use kustomize. Letting the user add a kustomization.yaml that includes the snippets that need to modify the generated yamls.
This would skip the helm chart step and directly modify the end yamls. This option would work just fine for my use case.

Thanks for reporting @marga-kinvolk. I agree that allowing doing changes outside of exposed flags would be valuable for the user and we indeed discussed that in the past.
Our idea was to add some kind of kustomize auto-discovery feature to lokoctl, where user would create a directory named from the component name and place a kustomization.yaml file in there and lokoctl would pick that automatically. We couldn't test those patches, but that would allow user to include extra manifests as part of the components and to modify the existing manifests as much as kustomize allows.
One argument against exposing Helm values to the user, even in unsupported manner, would be, that Helm is currently our "implementation-detail" and if we find any shortcomings of installing things using Helm or we find issues with using upstream helm charts (e.g. when they become unmaintained, because now tool X will be used as official distribution channel), we may consider replacing it, with something else then, which may not support as much as extra helm values would.
Could you also tell us what kind of modification you've been missing? I'm curious, because maybe it's something we should just add to the codebase.

There's a lot of overlap with this other issue: kinvolk/PROJECT-Lokomotive-Kubernetes#298, where kustomize was discussed as a possible solution but then nothing happened. I'd like for something to happen :)
I agree that exposing Helm fields is not a great idea, particularly if Helm is considered an implementation detail.  Using Kustomize seems to be the way to go.  I'll actually do that for the customization I'm doing, but I'll need to remember to always run the customization right after lokoctl component apply. It would be great if such customization could be integrated directly into lokomotive.
The thing that I find tricky there is that it seems that for the kustomization to work, the names of the base yamls need to be known, and those base yamls don't seem to be available to me as a user, so I don't know what I'd write there. I guess lokomotive would need to write a temporary yaml with a documented name so the user can use that in their kustomization file, and then apply the user's kustomization on top of that.
Regarding the modification I'm doing: I'm adding this block to the Prometheus object created by prometheus-operator:
    additionalScrapeConfigs:
      name: additional-scrape-configs
      key: prometheus-additional.yaml

This lets me inject scraping configs to prometheus, which lets me scrape external resources without having to create a triad of Service+Endpoint+ServiceMonitor for each external endpoint that I want to monitor. This seems to me that it's very specific for my use case (monitoring external services with the prometheus-operator component), and I'm not sure that it makes sense to add it to Lokomotive's generic config. However, if it were to be added, it would be nice if I could just give it the yaml file with the additional configs and Lokomotive would take care of the rest (because I also need to turn the contents of the file into a secret for this to work).

@marga-kinvolk in the kustomize PoC I've done, I was writing all manifests generated by Lokomotive to in-memory file base.yaml, which could be then read by kustomize as a base, exactly as you described.

Regarding your modification, it seems something we could expose as a knob.


chore: don't self-host documentation anymore

It's on docs.rs

@DaniPopes I'm updating the documentation links in the examples and the book but am running into an issue:
The on_ipc and on_ws (including others) option does not appear in the documentation, compare:
https://alloy-rs.github.io/alloy/alloy_provider/builder/struct.ProviderBuilder.html#method.on_ipc
https://docs.rs/alloy-provider/latest/alloy_provider/struct.ProviderBuilder.html#method.on_provider

yeah i realized, they will be present in the next release https://github.com/alloy-rs/alloy/pull/917

yeah i realized, they will be present in the next release #917

oh great thanks!


[Bug Report] Unable to cancel ongoing download

Describe the bug
When attempting to delete a download in the download manager, nothing happens
To Reproduce
Steps to reproduce the behavior:

Go to 'Download > Plugins'
Search for a manga and start downloading it (in my case, I used the first result on nHentai)
Go to the download manager
Click delete on the download in progress

Expected behavior
The download should be cancelled, and the manga deleted from the disk
Environment (please complete the following information):

OS: Unraid
Browser: Firefox
Mango Version: 0.24.0

Docker
Default values, other than:

Map /Manga in container to /mnt/user/manga/ in host
Map /root/.config/mango in container to /mnt/user/appdata/Mango/Config in host
Map /root/mango in container to /mnt/user/appdata/Mango/Appdata in host

Additional context
Logging with a log level of debug doesn't show anything happening.
The delete button was pressed during the same time as the following log snip, but there is no recorded action
[96m[DEBUG] [0m2022/01/23 13:41:28 | 200 GET /api/admin/thumbnail_progress 3.8ms
[96m[DEBUG] [0m2022/01/23 13:41:33 | 200 GET /api/admin/thumbnail_progress 3.27ms
[96m[DEBUG] [0m2022/01/23 13:41:38 | [success] https://i.nhentai.net/galleries/2120371/26.jpg
[96m[DEBUG] [0m2022/01/23 13:41:38 | Setting proxy
[96m[DEBUG] [0m2022/01/23 13:41:38 | Setting read timeout
[96m[DEBUG] [0m2022/01/23 13:41:38 | Requesting https://i.nhentai.net/galleries/2120371/27.jpg
[96m[DEBUG] [0m2022/01/23 13:41:38 | Performing request
[96m[DEBUG] [0m2022/01/23 13:41:38 | 200 GET /api/admin/thumbnail_progress 4.15ms
[96m[DEBUG] [0m2022/01/23 13:41:41 | downloading https://i.nhentai.net/galleries/2120371/27.jpg
[96m[DEBUG] [0m2022/01/23 13:41:41 | Setting proxy
[96m[DEBUG] [0m2022/01/23 13:41:41 | Setting read timeout
[96m[DEBUG] [0m2022/01/23 13:41:41 | Requesting https://i.nhentai.net/galleries/2120371/27.jpg
[96m[DEBUG] [0m2022/01/23 13:41:41 | Performing request
[96m[DEBUG] [0m2022/01/23 13:41:43 | 200 GET /api/admin/thumbnail_progress 3.62ms
[96m[DEBUG] [0m2022/01/23 13:41:48 | 200 GET /api/admin/thumbnail_progress 3.39ms
[96m[DEBUG] [0m2022/01/23 13:41:53 | 200 GET /api/admin/thumbnail_progress 2.94ms
[96m[DEBUG] [0m2022/01/23 13:41:55 | [success] https://i.nhentai.net/galleries/2120371/27.jpg
[96m[DEBUG] [0m2022/01/23 13:41:55 | Setting proxy
[96m[DEBUG] [0m2022/01/23 13:41:55 | Setting read timeout
[96m[DEBUG] [0m2022/01/23 13:41:55 | Requesting https://i.nhentai.net/galleries/2120371/28.jpg
[96m[DEBUG] [0m2022/01/23 13:41:55 | Performing request
[96m[DEBUG] [0m2022/01/23 13:41:58 | 200 GET /api/admin/thumbnail_progress 4.05ms
[96m[DEBUG] [0m2022/01/23 13:41:59 | downloading https://i.nhentai.net/galleries/2120371/28.jpg
[96m[DEBUG] [0m2022/01/23 13:41:59 | Setting proxy
[96m[DEBUG] [0m2022/01/23 13:41:59 | Setting read timeout
[96m[DEBUG] [0m2022/01/23 13:41:59 | Requesting https://i.nhentai.net/galleries/2120371/28.jpg
[96m[DEBUG] [0m2022/01/23 13:41:59 | Performing request
[96m[DEBUG] [0m2022/01/23 13:42:04 | 200 GET /api/admin/thumbnail_progress 3.48ms
[96m[DEBUG] [0m2022/01/23 13:42:09 | 200 GET /api/admin/thumbnail_progress 3.38ms
[96m[DEBUG] [0m2022/01/23 13:42:09 | [success] https://i.nhentai.net/galleries/2120371/28.jpg
[96m[DEBUG] [0m2022/01/23 13:42:09 | Setting proxy
[96m[DEBUG] [0m2022/01/23 13:42:09 | Setting read timeout
[96m[DEBUG] [0m2022/01/23 13:42:09 | Requesting https://i.nhentai.net/galleries/2120371/29.jpg
[96m[DEBUG] [0m2022/01/23 13:42:09 | Performing request
[96m[DEBUG] [0m2022/01/23 13:42:10 | 200 POST /api/admin/mangadex/queue/delete?id=nhentai 12.73ms
[96m[DEBUG] [0m2022/01/23 13:42:10 | 200 GET /api/admin/mangadex/queue 4.4ms
[96m[DEBUG] [0m2022/01/23 13:42:12 | downloading https://i.nhentai.net/galleries/2120371/29.jpg
[96m[DEBUG] [0m2022/01/23 13:42:12 | Setting proxy
[96m[DEBUG] [0m2022/01/23 13:42:12 | Setting read timeout
[96m[DEBUG] [0m2022/01/23 13:42:12 | Requesting https://i.nhentai.net/galleries/2120371/29.jpg
[96m[DEBUG] [0m2022/01/23 13:42:12 | Performing request
[96m[DEBUG] [0m2022/01/23 13:42:14 | 200 GET /api/admin/thumbnail_progress 4.03ms
[96m[DEBUG] [0m2022/01/23 13:42:19 | 200 GET /api/admin/thumbnail_progress 4.36ms
[96m[DEBUG] [0m2022/01/23 13:42:22 | [success] https://i.nhentai.net/galleries/2120371/29.jpg
[96m[DEBUG] [0m2022/01/23 13:42:22 | Setting proxy
[96m[DEBUG] [0m2022/01/23 13:42:22 | Setting read timeout
[96m[DEBUG] [0m2022/01/23 13:42:22 | Requesting https://i.nhentai.net/galleries/2120371/30.jpg
[96m[DEBUG] [0m2022/01/23 13:42:22 | Performing request
[96m[DEBUG] [0m2022/01/23 13:42:24 | 200 GET /api/admin/thumbnail_progress 3.6ms
[96m[DEBUG] [0m2022/01/23 13:42:25 | downloading https://i.nhentai.net/galleries/2120371/30.jpg
[96m[DEBUG] [0m2022/01/23 13:42:25 | Setting proxy
[96m[DEBUG] [0m2022/01/23 13:42:25 | Setting read timeout
[96m[DEBUG] [0m2022/01/23 13:42:25 | Requesting https://i.nhentai.net/galleries/2120371/30.jpg
[96m[DEBUG] [0m2022/01/23 13:42:25 | Performing request
[96m[DEBUG] [0m2022/01/23 13:42:29 | 200 GET /api/admin/thumbnail_progress 4.12ms

Thanks for the bug report. Yes this has been fixed in a development branch but I haven't released it to master yet. Should be available soon.


Change Import from webview to file picker

Changes the Import screen and instructions from loading a web view to instructing the customer to get their takeout data from Google and then load it into PrivateKit using a file picker.
Tested on iOS and Android via Google Drive / iCloud Drive.

This effectively Resolves #77 & #114

Once we have the dust fully settled from the rename to covid safe paths, we need to consider pulling this in, possibly for v1.0

@rparet, I started digging into issues #73 and #77 the code from this PR would need to be merged first before addressing them.
Also, Import feature is currently not really working properly in develop branch (need to fetch data for last 2 months, exceptions are thrown if files do not exist, racing conditions as async code is written in a sync way).
Also, I'd like to offer some help to make this PR merged faster as I sort of got your idea and have an understanding how to address mentioned import issues.

@sergesemashko Can you branch off from the following one -
https://github.com/PrivateKit/private-kit/tree/import_picker
Once the issues are resolved we can test it and bring it inside the Safepaths

@sergesemashko that condition also exists on the current importer. It only looks for this month's date file, which is problematic in 2 ways: 1. at the start of the month (like now), a customer will only be able to import a short amount of date. 2. the import fails silently for people who don't have this month's data, which can be a lot of people if they turned location history off at any time in the last 12-24 months.
I put this up as a PR because using the picker is a better solution for most customers, but if you want to make those enhancements I'd recommend surfacing to the customer when ENOENT is raised, as well as naively importing this month and last month's files.

@rparet, yeah, picker solution seems to be friendlier. I can take a look at ENOENT and parsing latest 2 months of data and will open a PR soon.

closing in favor of rebased #410


exorbitant GPU usage.

This isn't new and I've been off and on hunting for closure for a while now (more than a year).
Similar issue cropped up here a long time ago and has been closed with a resolution-external tag, but no actual explanation... the guy having an issue says it's fine now, but what IS fine?  What is "normal" in this case?
On this screenshot, I have software rendering on, no transparency and my application does nothing but draw a single character - "1" - centered to the terminal window 5 times per second... and my beefy GPU is at 30%+... is that normal?
Screenshot

Any combination of flags in config leads to the same result. Almost like they do nothing at all.
I suspect that WT isn't even the culprit here, because Alacrity also does this (to an even worse degree). All systems I tested this on do the same thing. This simple test I wrote also isn't what causes this - Vim, Neovim, and MC, all do this. Not when things are still (since they probably have a transitory buffer to check if they need to draw anything), but when you start moving around or scrolling - oh boy...
I don't even care if there's a fix - just want to know what's going on. Sorry for using an issue for this, but as I've said - the bottom of every barrel I could find has been scraped already and this is my last option. Also, sorry if I sound too frustrated - it's mostly due to curiosity %)

On this screenshot, I have software rendering on

I'm assuming you just did this for testing, but just to be sure: Don't use software rendering under normal circumstances.

Your task manager shows GPU usage in the Desktop Window Manager (aka DWM). If you don't know what DWM is: It gives UI applications a bitmap/surface to draw into and then it takes each surface and blends them all together onto the screen (it's a so called "compositor"). If you have a 360Hz monitor then it does this at up to 360FPS if needed (= if anything changed on the screen), which is why it using GPU is normal.
On top of that, the GPU usage metric is relative to the current core frequency of the GPU. As you can see in HWMonitor, your GPU currently runs at an idle frequency of just 225MHz and so 34% usage equates to an effective clock rate of just 76.5MHz. Such a frequency is absolutely fine and I see the same on my GPU.
I believe in Windows 11 they changed task manager to show the GPU usage relative to the nominal frequency of the GPU (= >2000MHz) and so it won't show up as >30% usage during idle anymore.
Finally, I'd like to recommend you to use HWiNFO64 instead. I personally consider to be significantly better than HWMonitor as it shows vastly more info and is a lot more up to date with the latest hardware. Here's my GPU for instance:

I'll be closing this issue for now since it isn't really an issue with Windows Terminal per se. If you have any other questions, please let me know.

This calmed me down a bit - thank you - but not all is clear yet...
I know what DWM does on a surface level, but the problem isn't that it takes resources - the problem is how much and in what context...  I don't get why the shell host, of all things, does this. In "software rendering" mode, no less...
Did some more testing:

VLC playing HD footage (combined with DWM) is at 10-11%;
web browser with Youtube video opened and playing is at 8-12% + the roughly same on DWN's side for a total of ~25%;
and drum roll good 'ol conhost takes 1% + DWM 5-6% on the same test I wrote to make the screenshot from OP.

I just don't get it... doesn't seem like the proverbial "effort" required on PC's part is consistent.
Anyway, thank you again for the response. The main thing that I somehow managed to miss is from what base value this percentage is taken and knowing this makes my life a lot less stressful. All the best =)
PS: 31W is not idle - it's the wattage I get from all the "1" numerals I draw. Idle (or thereabout) is to the right of it.

Your test numbers are also missing the GPU core frequency you were seeing at the time. Without that it's hard to say whether VLC uses more or less GPU than conhost. The real question in my opinion is: What effective clock rate are you seeing? Or alternatively: What GPU wattage is it drawing?

I don't get why the shell host, of all things, does this. In "software rendering" mode, no less...

Just to be clear, software rendering doesn't mean no GPU is being used, because your GPU is what is connected to your display and so to show anything on it, it needs to go through your GPU. That's why you always see GPU usage in DWM, unless your application is full screen (this is known as DWM's "full screen optimization" and very relevant for video games).
If you use HWiNFO for such testing and always see all the metrics all the time, in particular the effective clock rate and exact power draws, I think you'll have a much easier time to determine which software is probably a GPU hog.
P.S.: Just to be sure, don't forget to disable software rendering. It burns a lot of CPU and also lacks a lot of extra features in newer releases.

web browser with Youtube video opened and playing is at 8-12% + the roughly same on DWN's side for a total of ~25%

If happens to have ambient mode 'on', then it's known to draw high GPU power to draw those delicious gradients :) For a laptop user like me, it was apparent how quickly it drains the battery.
https://www.reddit.com/r/pcmasterrace/comments/ykwwzs/tip_turning_off_youtube_ambient_mode_can_help_fix/
Also, everything you do should shoot up GPU usage for DWM, since it has to draw the changes back to the screen, but I expect it to settle down after a few seconds. Do you have something on your Desktop that keeps changing?
(this might also be the reason why showing seconds on sys tray can cause higher power usage)


fix array implementation by using GAT

Fix multiple problems with the Array implementation, including but not limited to:

multiple transmutes without the flag #[repr(transparent)].
remove unnecessary use of Guard, replacing them with simple references.
fix #5212  by rewriting the *ArrayProvider trait using GAT.

TODO:

[ ] DataVariable and NameAndType where previously incorrectly transmuted, and was not fixed yet.

Looking on from the sidelines, it's a little difficult to understand the changes to the Array API you made - could you summarize them?

There is no changes to the API itself, it's just implement differently.

Well, you've removed the ArrayGuard type as well as reworked all the array-related traits. How come the ArrayProvider trait is necessary? Why created dedicated BasicBlocks, BasicBlockEdges, and CallingConventions structs instead of just using Array like before?

I didn't found any difference between ArrayGuard and Array, so I just deleted ArrayGuard.
It's not really necessary, it's just a way to re-utilize functions from the body of the trait and the Iterator implementation.
Anything that is just a simple array (basic slice, pointer and len) is defined as an Array<T>, anything else that have any other complexity should make it's own implementation.
I don't like the idea of having a basic "class" that preoccupy itself into allowing all the complexities of it's children, so my philosophy was to have simple implementation, and anything complex should by implemented according to with it's own complexities.

Oh, now I see ArrayGuard lacks the Drop implementation. I'll fix the 2 places that uses it in demangle.rs

ArrayGuard was meant to be used where there was an array inside some other object so you could work with it without the owning semantics of Array, though I think the original motivation must have been removed at some point. The use in demangle looks like it possibly should have been with the normal Array wrapper.
I'm wary of some of the transmutes instead of the explicit creation of wrapper objects and use of Guard<> though.

ArrayGuard is only used locally on demangle.rs so I just used ManuallyDrop instead.

Anything that is just a simple array (basic slice, pointer and len) is defined as an Array<T>, anything else that have any other complexity should make it's own implementation. I don't like the idea of having a basic "class" that preoccupy itself into allowing all the complexities of it's children, so my philosophy was to have simple implementation, and anything complex should by implemented according to with it's own complexities.

The thing is, traits aren't classes and IMO using the type system (via trait bounds on Array) to turn special cases (like the three special types I mentioned) into the general case is often a good thing. As an example, the implementation of Iterator::next for a type can be as complex as is needed to produce an iterator that the user can use all the rest of the standard library's combinators with. Likewise, isn't Array supposed to represent a Vec whose memory is owned by the core?

isn't Array supposed to represent a sort of Vec whose memory is owned by the core?

In most cases yes, but the "wrapper" function and a context makes it more similar to a iter.map(...) in other cases.

close in favor of #5261


Update driveitem-get-contentstream.md

Removing doc to support partial range download

@manikantsinghms , do you want us to review and merge this PR?


Feature/1474

What does this pull request aim to achieve? 💯
re-routes the user to 404 page if user profile does not exist
Please be concise and link any related issue(s):

[x] I have checked that no one else is working on similar changes.
[x] I have read the latest README and understand the development workflow.
[x] The name of this branch is: feature/<branch_name>, or hotfix/<branch_name> if this is a hotfix. The branch is created in a cloned version of this repo, not a forked repo.
[x] This branch is rebased/merged with the latest staging (or the latest production if it is a hotfix).
[x] There are no merge conflicts.
[x] There are no console warnings and errors.
[x] On the right hand side of this PR, I have linked the appropriate issue(s) under "Issues" and added a project progress under "Projects".

We need to add this for the organisations as well. I will double check once that change is done.

@idjevm code has been updated for the organisations as well

Closing this issue as low priority, please reopen if the priority change


Question about gradient of transforms

https://github.com/rinongal/StyleGAN-nada/blob/775b8d108be92e49fdc42d75dfdcf7f16255a59f/ZSSGAN/criteria/clip_loss.py#L41
Hello, thank you for sharing great work.
I have a quick question about this line.
To efficiently training G_train, I thought you might use gradient of CLIP.
From the line I referenced, you used torchvision's transforms, which is not passing gradient.
In this case, G_train could not get gradient from CLIP.
Without gradient of CLIP, G_train is trainable as we want?
Thank you.
Best,
chkimmmmm

Hi,
We are using the gradients from CLIP. It's the only source of a loss, and the network wouldn't change at all if this was not the case.
Some torchvision transforms do indeed pass gradients. You can try this yourself, or check the warnings on official documentation like the resize transform which explicitly list arguments that will cause autodiff to stop functioning.
We do not use any transforms that would require us to move to PIL and back, or any anti-aliasing steps, so gradients do pass through.
Just to be extra sure, I verified things with torch.autograd.gradcheck() and the numerical gradients do match the analytic ones.

Thanks a lot!
I will check using the function you shared.