Tracking: Permission Errors when restoring and creating cache

Issue
Files not created by the local user may fail when restored from the cache as tar preserves file permissions. Permission errors can also occur when the current user does not have permissions to read files when creating the cache. This is likely just a Linux and/or macOS issue (all the reports are Linux)
Reports

https://github.com/actions/cache/issues/11
https://github.com/actions/cache/issues/117
https://github.com/actions/cache/issues/130
https://github.com/actions/cache/issues/131

Possible solutions

Run tar with sudo

What are the downsides of this approach?

What are the downsides of this approach?
The only downside I see is that it will likely not work on Windows, since tar assumes a unix-style permission system. I haven't tried this personally but I would be very surprised if it worked outside of cygwin/WSL.

Files not created by the local user may fail when restored from the cache as tar preserves file permissions.

I don't think this is an accurate description of the issue. If you look at my issue, it has this snippet:
/bin/tar: ./overlay2: Cannot open: Permission denied
/bin/tar: ./builder: Cannot open: Permission denied
...
/bin/tar: Exiting with failure status due to previous errors

This is when the tar file is being created, not when it is being unpacked; the problem comes because the current user does not have permissions to read files owned by root, separate from anything tar does. This is why I'm surprised it's not an issue on Windows.

I don't think this is an accurate description of the issue.

Great point, I missed that difference. I've updated the issue title and description to cover both restore and creation.

This is why I'm surprised it's not an issue on Windows.

It's likely that the user account provisioned for hosted Windows runners has the necessary admin privileges, whereas Linux/macOS require sudo

btw what you guys mean with 'current user'? in my use case (caching cargo files) usually all files should have been owned by the user that invokes the cargo command and stored in the current user ~/.cargo directory. Thus i don't really get all these permissions  errors. Aren't all actions executed by the same user? This bug break rust usage

btw what you guys mean with 'current user'?

Current systems user as opposed to root. I'm not familiar with rust so I don't know why certain files in ~/.cargo would be owned by root.
Does anyone have a reproduction of this issue that I can test with?

@joshmgross I'm facing the same with gradle on all of Android projects (configured to run on Linux)

@joshmgross we’re seeing the issue at tauri-apps/tauri as well (also cargo-related): https://github.com/tauri-apps/tauri/pull/237/checks?check_run_id=364927646#step:7:9

Thanks @rajivshah3
I have a repro at https://github.com/joshmgross/tauri/ and am testing out solutions. Based on how exec works, it won't be as simple as running sudo tar but I'm looking into alternatives.

AFAIK cargo don't create files as root. The only way that this could happen is cargo being executed as root or with sudo

In github actions, ~/.cargo is a symlink to /usr/share/rust/.cargo and all the files/directories under there are owned by root.
You can verify this with a step that runs ls -l ~/.cargo.

~/.cargo is a symlink to /usr/share/rust/.cargo

That seems weird ... How can cargo update the registry or download new packages?

Maybe the cargo has a suid bit set?
Il giorno sab 28 dic 2019 alle ore 14:41 Joshua Nelson <
<EMAIL_ADDRESS>ha scritto:

~/.cargo is a symlink to /usr/share/rust/.cargo
That seems weird ... How can cargo update the registry or download new
packages?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/actions/cache/issues/133?email_source=notifications&email_token=ABWTXI5MI3WKJR72SQP7KOLQ25JSNA5CNFSM4J4DS5IKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHYKFBA#issuecomment-569418372,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABWTXI2BW6V6D3JJKD4DQPDQ25JSNANCNFSM4J4DS5IA
.

--
Filippo Cucchetto

The only way that this could happen is cargo being executed as root or with sudo

Is it possible that the Ubuntu instances provided by GitHub Actions are running on Docker? I think Docker uses root by default

Is it possible that the Ubuntu instances provided by GitHub Actions are running on Docker?

No, they're individual Ubuntu VMs, see Docs: Cloud hosts for GitHub-hosted runners.
Files created by container actions, however, will likely be created by the root user.

Simply the ls -lah /usr/share/rust/.cargo/ subdirectories and the cargo executable itself are readable/writable/executable by anyone

I'm using Cloudflare Wrangler from https://github.com/cloudflare/wrangler-action
After using that following post action for cache fails
Publish Cloudflare Worker     26s
Post actions/cache@v1         0s
##[error]The template is not valid. Access to the path '/home/runner/work/xxx/.wrangler' is denied.,Permission denied

Files created by container actions, however, will likely be created by the root user.

I was running into this, where caching had been working fine on the main Linux host, but simply moving the workflow into a container caused the cache saving step to fail with the following:

Post actions/cache@v1
##[error]The template is not valid. Access to the path '[some unrelated path]' is denied.,Permission denied

The path reported was consistent, but had nothing to do with the cache path. (It may have corresponded to the first entry of ls -R from the repository root, but I’m not exactly sure.)

I was able to work around it by running chmod -R a+rwx . as the very last thing happening in the container. That grants (absolutely all) privileges back to the host’s user, so that the cache action can access whatever it needs.
Note that simply enabling permissions for the path to be cached was not sufficient. I tired of experimenting before I could figure out exactly which permissions were and weren’t needed. I leave that exercise to someone else if their use case necessitates tighter security.

I'm using Cloudflare Wrangler from https://github.com/cloudflare/wrangler-action
After using that following post action for cache fails
Publish Cloudflare Worker     26s
Post actions/cache@v1         0s
##[error]The template is not valid. Access to the path '/home/runner/work/xxx/.wrangler' is denied.,Permission denied

I have the exact same issue. As SDGGiesbrecht noted, this file has nothing to do with the cache path. Why would the file need to be read if it's not in the cache path?

Why would the file need to be read if it's not in the cache path?

Saving the cache calls tar on that directory specified. Does your cache path container symlinks to other paths?
What path are you specifying for your cache?

What path are you specifying for your cache?

My cache is Yarn cache taken from here https://github.com/actions/cache/blob/master/examples.md#node---yarn

Does your cache path container symlinks to other paths?

In my case there are no symlinks in the cache at all.
In case it is helpful, here are:

The log of the last failing attempt while I was still elevating permissions only for the cache path itself.
The commit that elevated permissions for the entire repository.
The associated log where the cache saved successfully. (The only intervening commit was the one linked in the previous bullet.)
The subsequent log where the cache was fetched and used successfully.

(The branch itself has already been deleted, but you can verify the chain of events by starting with the last link, clicking its associated commit, and then recursively clicking each commit’s parent.)

Having the same problem with a standard yarn install workflow - https://github.com/JaneJeon/express-objection-starter/pull/353/checks?check_run_id=465098286...!

hey @JaneJeon, it looks like you're hitting the issue described in https://github.com/actions/cache/issues/129, which stems from caching not being supported for all event types.

We're having the following problems in https://github.com/OpenEthereum/open-ethereum/pull/11528
this is a rust project and caching artifacts works properly only on macOS, on linux we get
https://github.com/OpenEthereum/open-ethereum/runs/474579803#step:5:7

/bin/tar: ./src/github.com-1ecc6299db9ec823/rand_chacha-0.2.1/src: Cannot utime: Operation not permitted

and on windows
https://github.com/OpenEthereum/open-ethereum/pull/11528/checks?check_run_id=474579823#step:5:7

./index/github.com-1ecc6299db9ec823/.git/objects/pack/pack-a1b8e2d02676504008fea86ca360367fcee5bd43.idx: Can't unlink already-existing object

Any updates on this?
I also run into errors on cargo registry related cache
(on rust)

I worked around this using sudo chown -R $(whoami):$(id -ng) ~/.cargo to make ~/.cargo owned by the current user.

@bjorn3 it didn't seem to work for me https://github.com/openethereum/openethereum/pull/11568/checks?check_run_id=506808818

A cache where root is still owner got used. I think tar sets the owner before trying to set time and permissions, so those fail. If you invalidate the cache, for example by changing the cache key, it should work.

Registry and ~/.cargo/bin are somehow not fixed by the chown for my project, but index and target dir caches are. I tried invalidating the cache, but the same problem persists.

lrwxrwxrwx 1 runner docker 22 Mar 13 15:33 /home/runner/.cargo -> /usr/share/rust/.cargo

~/.cargo is a symlink for /usr/share/rust/.cargo, so the chown only changed the owner of the symlink. Appending a / to the path (sudo chown -R $(whoami):$(id -ng) ~/.cargo/) does fix it without requiring a cache invalidation.

Is your feature request related to a problem? Please describe.
I am trying to cache Ubuntu apt but it is failing with permission errors: https://github.com/evandroforks/anki/runs/527868018?check_suite_focus=true#step:32:3
      - name: Cache /var/lib/apt
        uses: actions/cache@v1
        with:
          path: /var/lib/apt
          key: ${{ runner.os }}-/var/lib/apt-${{ hashFiles('**/linux_checks.yml') }}
      - name: Cache /var/cache/apt
        uses: actions/cache@v1
        with:
          path: /var/cache/apt
          key: ${{ runner.os }}-/var/cache/apt-${{ hashFiles('**/linux_checks.yml') }}
      - name: Set up ripgrep, pyaudio, gettext, rename
        run: |
          sudo apt update
          sudo apt install portaudio19-dev gettext rename
          sudo snap install ripgrep --classic

Describe the solution you'd like
Run /bin/tar with sudo, so I can cache anything I would like.
On Windows, this is are already working because there is no sudo restrictions. There, I am caching the Git directory because I am installing the Unix Package manager (pacman) on it: https://github.com/evandroforks/anki/runs/527868075?check_suite_focus=true#step:6:16
Describe alternatives you've considered
I tried to run:
- name: Fix ~/.cache permissions
  run: |
    sudo chown -R $(whoami):$(id -ng) /var/lib/apt/
    sudo chown -R $(whoami):$(id -ng) /var/cache/apt/

But I still got permissions issues: https://github.com/evandroforks/anki/runs/527941668?check_suite_focus=true#step:32:3

@evandrocoan The problem may be related to the fact that you run apt as root after you changed the permissions. This means that any new files will be owned by root again.

I could be related but if I do not run it as sudo it will not have permissions to install things in other system directories other than the ones I am caching. And the last time I tried to chown -R everything to my user I broke my linux.

Try doing the chown both before caching and after running apt.

I just run apt without sudo:
      - name: Fix ~/.cache permissions
        run: |
          sudo chown -R $(whoami):$(id -ng) /var/lib/apt/
          sudo chown -R $(whoami):$(id -ng) /var/cache/apt/
          sudo chown -R $(whoami):$(id -ng) /var/lib/dpkg/
          apt update
          apt install --download-only portaudio19-dev gettext rename
      - name: Cache /var/lib/apt
        id: apt-cache
        uses: actions/cache@v1
        with:
          path: /var/lib/apt
          key: ${{ runner.os }}-/var/lib/apt-${{ hashFiles('**/linux_checks.yml') }}
      - name: Cache /var/cache/apt
        uses: actions/cache@v1
        with:
          path: /var/cache/apt
          key: ${{ runner.os }}-/var/cache/apt-${{ hashFiles('**/linux_checks.yml') }}
      - name: Download apt packages
        if: steps.apt-cache.outputs.cache-hit != 'true'
        run: |
          apt update
          apt install --download-only portaudio19-dev gettext rename
      - name: Set up ripgrep, pyaudio, gettext, rename
        run: |
          sudo apt install portaudio19-dev gettext rename

It did not worked at the end. It still complaining about permissions on the partial strange directory: https://github.com/evandroforks/anki/runs/528257104?check_suite_focus=true#step:32:3
 Post Cache /var/cache/apt4m 19s
[warning]Tar failed with error: The process '/bin/tar' failed with exit code 2
Post job cleanup.
/bin/tar -cz -f /home/runner/work/_temp/1e279de1-a28a-49c1-bf3e-c1a9318da6b0/cache.tgz -C /var/cache/apt .
/bin/tar: ./archives/partial: Cannot open: Permission denied
/bin/tar: Exiting with failure status due to previous errors
[warning]Tar failed with error: The process '/bin/tar' failed with exit code 2

In another attempt, I tried running apt install without sudo, but this is something which will definitely not work: https://github.com/evandroforks/anki/runs/528316073?check_suite_focus=true#step:15:33
After this operation, 11.0 MB of additional disk space will be used.
dpkg: error: requested operation requires superuser privilege
E: Sub-process /usr/bin/dpkg returned an error code (2)
##[error]Process completed with exit code 100.

For Rust projet the permissions issue was fixed (see https://github.com/actions/virtual-environments/issues/572#issuecomment-626624527) for Ubuntu. There still a problem with tar on Windows

On Windows, the issue is different and i don't think that it is image issue.
actions/cache uses tar to pack and unpack files and tar doesn't work properly with symlinks on Windows.

Thanks for the update @ordian
Could someone confirm that they are able to use caching with Rust on Linux without any permissions workarounds?

Works for me on Linux. The Windows run has worked too, restoring from an ante-fix cache.

Thanks all!
Going to close this issue out as https://github.com/actions/virtual-environments/issues/572 is now resolved.
https://github.com/actions/cache/issues/120 is tracking the issue with symlinks on Windows.
If you hit permissions issues, feel free to file a new issue with your specific use-case and the errors you're hitting.
As for the proposed solution of running tar with sudo, we can't guarantee that all runners will be using a password-less sudo.

So what's the "correct" solution to this? I see all these commits saying that they're removing workarounds, but we're still experiencing this exact problem after our action moves some temp files (created as -rw------- by default) into our cache folder. Are we supposed to make our action run as another user (and if so, which and how?)? Is there extra config needed to make this action run as root? Should we give up and micro-manage permissions in the cache (that seems like the very workaround that those projects removed)?

So what's the "correct" solution to this? I see all these commits saying that they're removing workarounds, but we're still experiencing this exact problem after our action moves some temp files (created as -rw------- by default) into our cache folder. Are we supposed to make our action run as another user (and if so, which and how?)? Is there extra config needed to make this action run as root? Should we give up and micro-manage permissions in the cache (that seems like the very workaround that those projects removed)?

What's the work around when I need to cache a directory with sudo requirements?

I'm hitting this as well while trying to cache buildkit state exported from the /var/lib/docker dir of a buildx builder. Many files and directories are only readable by root, was a solution for people facing this problem in a context other than cargo actually found before this was closed?


cant make this script to work. got an error when run command

i try to run script but get an error
C:\Users\Asus\Downloads\lostpaw-transformer-main\lostpaw-transformer>python scripts/train.py -c lostpaw/configs/default.yaml --info_path "output/data/train.data"
C:\Users\Asus\AppData\Local\Programs\Python\Python310\lib\site-packages\transformers\models\vit\feature_extraction_vit.py:28: FutureWarning: The class ViTFeatureExtractor is deprecated and will be removed in version 5 of Transformers. Please use ViTImageProcessor instead.
warnings.warn(
[INFO] No model to load. Training from scratch.
Traceback (most recent call last):
File "C:\Users\Asus\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\core\indexes\base.py", line 3652, in get_loc
return self._engine.get_loc(casted_key)
File "pandas_libs\index.pyx", line 147, in pandas._libs.index.IndexEngine.get_loc
File "pandas_libs\index.pyx", line 176, in pandas._libs.index.IndexEngine.get_loc
File "pandas_libs\hashtable_class_helper.pxi", line 7080, in pandas._libs.hashtable.PyObjectHashTable.get_item
File "pandas_libs\hashtable_class_helper.pxi", line 7088, in pandas._libs.hashtable.PyObjectHashTable.get_item
KeyError: 'source'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "C:\Users\Asus\Downloads\lostpaw-transformer-main\lostpaw-transformer\scripts\train.py", line 21, in
main(args)
File "C:\Users\Asus\Downloads\lostpaw-transformer-main\lostpaw-transformer\scripts\train.py", line 11, in main
trainer = Trainer(config, pet_data)
File "C:\Users\Asus\Downloads\lostpaw-transformer-main\lostpaw-transformer\lostpaw\model\trainer.py", line 54, in init
data_folder = PetImagesFolder(info_path.parent, info_path.name)
File "C:\Users\Asus\Downloads\lostpaw-transformer-main\lostpaw-transformer\lostpaw\data\data_folder.py", line 29, in init
self.sources = df["source"].tolist()
File "C:\Users\Asus\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\core\frame.py", line 3761, in getitem
indexer = self.columns.get_loc(key)
File "C:\Users\Asus\AppData\Local\Programs\Python\Python310\lib\site-packages\pandas\core\indexes\base.py", line 3654, in get_loc
raise KeyError(key) from err
KeyError: 'source'
What is this "source"? There is no definition in description about source.
this is my train,data contents
{"pet_id": "1", "paths": ["output/data/1/0.jpg", "output/data/1/1.jpg", "output/data/1/2.jpg", "output/data/1/3.jpg", "output/data/1/4.jpg"]}
{"pet_id": "2", "paths": ["output/data/2/0.jpg", "output/data/2/1.jpg", "output/data/2/2.jpg", "output/data/2/3.jpg"]}

That was a remainder from the data augmentation step. We preserved the "source" so that it can be used to remove duplicates from the dataset. We've now made source optional. Please let us know if there are any other issues!


Diagramms?

May I ask you where are the mentioned diagrams for connect the parts?
I van‘t find them and I really don‘t know how to assemble the parts …

Those are the tables with which pin should go to which port.

Ah, OK. Got you 👍


updates to initialization and reading forcing routines to allow for snowbands (swap time / space loops)

In progress develop PR to facilitate for team tracking

This PR  does not yet compile but the majority of the code is refactored.  Some updates are needed for the state_file code, and then a full pass to check for consistency on data/variable types, function calls, module usage, and an update for the Makefile.


conjur list --offset  doesn’t work properly when running on whole list

##Bug description
Running the offset option on the whole list doesn't work as defined, removes more item
When running the same command with filter, works correctly
Steps to reproduce:

run conjur list
run conjur list --offset 2

Current Results:
conjur list
[
"conjur:user:admin1",
"conjur:user:admin2",
"conjur:user:admin3",
"conjur:user:admin4",
"conjur:user:admin5",
"conjur:user:user1",
"conjur:user:user2",
"conjur:user:user3",
"conjur:user:user4",
"conjur:user:user5",
"conjur:policy:data",
"conjur:group:data/vault-admins",
"conjur:policy:data/vault",
"conjur:policy:conjur/authn-iam",
"conjur:policy:conjur/authn-gcp",
"conjur:policy:conjur/authn-azure"
]
conjur list --offset 2
[
"conjur:policy:conjur/authn-gcp",
"conjur:policy:conjur/authn-iam",
"conjur:policy:data",
"conjur:policy:data/vault",
"conjur:user:admin1",
"conjur:user:admin2",
"conjur:user:admin3",
"conjur:user:admin4",
"conjur:user:admin5",
"conjur:user:user1"
]
Expected Results:
conjur list
[
"conjur:user:admin1",
"conjur:user:admin2",
"conjur:user:admin3",
"conjur:user:admin4",
"conjur:user:admin5",
"conjur:user:user1",
"conjur:user:user2",
"conjur:user:user3",
"conjur:user:user4",
"conjur:user:user5",
"conjur:policy:data",
"conjur:group:data/vault-admins",
"conjur:policy:data/vault",
"conjur:policy:conjur/authn-iam",
"conjur:policy:conjur/authn-gcp",
"conjur:policy:conjur/authn-azure"
]
conjur list --offset 2
[
"conjur:user:admin3",
"conjur:user:admin4",
"conjur:user:admin5",
"conjur:user:user1",
"conjur:user:user2",
"conjur:user:user3",
"conjur:user:user4",
"conjur:user:user5",
"conjur:policy:data",
"conjur:group:data/vault-admins",
"conjur:policy:data/vault",
"conjur:policy:conjur/authn-iam",
"conjur:policy:conjur/authn-gcp",
"conjur:policy:conjur/authn-azure"
]
Error Messages:
Logs:
Other Symptoms:
Tenant ID / Pod Number:
##Found in version
12.3
##Workaround Complexity
There's an easy workaround
##Workaround Description
Don't show the full list, filter it by requirement
##Affects Version/s
##Link to JIRA bug
https://ca-il-jira.il.cyber-ark.com:8443/browse/ONYX-14314

https://ca-il-jira.il.cyber-ark.com:8443/browse/ONYX-14314


Scala/Java reshape problem

Currently I am facing an issue with Scala/Java. If tried to do the following reshape method, the function will fail:
package mxnet;

import org.apache.mxnet.javaapi.Context;
import org.apache.mxnet.javaapi.NDArray;
import org.apache.mxnet.javaapi.NDArray$;

public class Test {
    private static NDArray$ NDArray = NDArray$.MODULE$;
    public static void main(String[] args) {
        NDArray nd = NDArray.ones(Context.cpu(), new int[] {1, 384, 1});
        nd.reshape(new int[]{0, -3});
    }
}

Error:
Exception in thread "main" org.apache.mxnet.MXNetError: [20:03:16] src/ndarray/ndarray.cc:224: Check failed: shape_.Size() >= shape.Size() (384 vs.<PHONE_NUMBER>3709551613) NDArray.Reshape: target shape size is larger current shape

On the backend, this is being called:
_LIB.mxNDArrayReshape(handle, dims.length, dims, reshapeHandle)

However, Python seemed to be fine:
test = mx.nd.ones((1, 384, 1))
print(test.reshape((0, -3)))

I think this might be some bugs in the operator side.

Here is the corresponding Python method.
This method  is being called:
_LIB.MXNDArrayReshape64(self.handle, len(shape), c_array(ctypes.c_int64, shape), reverse, ctypes.byref(handle)))

Thanks @stu1130 finding, the Actual PR is here where Python made the switch:
https://github.com/apache/incubator-mxnet/pull/10360
Will raise a PR to update the corresponding Scala code

Close this one since the problem solved


Improve Cart Page Layout

Issue: Improve Cart Page Design/Frontend
Description:
The current design and user interface of the cart page require improvements to enhance the user experience. The cart page may not be visually appealing, user-friendly, or efficient in its current state.
Tasks:

[ ] Review the existing cart page design and layout.
[ ] Identify areas for improvement in terms of visual aesthetics and user interaction.
[ ] Implement design enhancements and improvements to the cart page frontend.
[ ] Ensure the cart page is responsive and functions smoothly on various screen sizes.
[ ] Test the changes to verify that the cart page now provides an improved user experience.
[ ] Change the button color scheme to a more UI friendly scheme.

Additional Information:
A well-designed cart page can significantly impact user satisfaction and the overall usability of the application. Enhancing the cart page's frontend will contribute to a more polished and user-friendly MyLibrary experience.

Get Assigned:
If you are interested in working on this issue or have any questions, please leave a comment below, and we'll assign the task to you.
Let's make the cart page visually appealing and user-friendly! 🛒✨

@suryanshsingh2001  can i work on this?

@waleedkhano I have assigned the issue. Make sure to share the screenshots. You can start working on it. Happy Coding 🧑💻

@suryanshsingh2001 can you please guide that how can i connect the backend locally ?

Sure,
Google Books API Key Setup

Visit the Google Developers Console.
Create a new project or select an existing one.
Navigate to the "APIs & Services" > "Credentials" section.
Click on the "Create Credentials" button and select "API Key."
Your API key will be generated. Click on "Restrict Key" to configure usage restrictions if desired.
Copy the generated API key.

Auth0 API Keys Setup

Visit the Auth0 Dashboard.
Log in to your Auth0 account or sign up if you don't have one.
Create a new Auth0 application:

Go to the "Applications" section.
Click on "Create Application."
Choose "Single Page Web Applications."
Configure the settings as needed.
Save your changes.

Navigate to the "Settings" tab of your Auth0 application.
Copy the "Domain" and "Client ID."

Add these api keys into your  .env into the client folder.
Your .env may look this
VITE_REACT_APP_GOOGLEBOOK_API_KEY=YOUR_GOOGLEBOOK_API_KEY

VITE_REACT_APP_AUTH0_DOMAIN=YOUR_AUTH0_DOMAIN
VITE_REACT_APP_AUTH0_CLIENT_ID=YOUR_AUTH0_CLIENT_ID

In case you are not able to access the auth0 authentication.
Copy the code and paste it into local clone of the repo.
https://gist.github.com/suryanshsingh2001/f89973b3f3d826b60f6426796a5063f7
This is will let accesss the cart functionality.
Make sure to add the old file back to the repo and then make an PR.


Can a deployment use itself for logging?

If do not create a dedicated deployment for logging, is it possible to use itself in the plan. example as below
resource "ec_deployment" "**example_observability**" {
  name = "my_example_deployment"

  region                 = "us-east-1"
  version                = data.ec_stack.latest.version
  deployment_template_id = "aws-io-optimized-v2"

  elasticsearch {}

  kibana {}

  observability {
    deployment_id = ec_deployment.**example_observability**.id
  }
}

I believe that terraform resources cannot reference themselves. However, you could hardcode the deployment ID and set it as observability.deployment_id = "DEPLOYMENT_ID".
It is important to note that, while setting up self-monitoring is allowed, it is not recommended for production workloads since it can easily cause your deployment to overload itself when the load > than the cluster allows it for and the observability data will only make things worse.

I'll also add a little of color on how to go about and create a deployment with self monitoring. The deployment cannot be created with self monitoring enabled, but can be set afterwards, this is a known issue and might be fixed in the future.

@milesqi We currently have no estimated timeline on fixing this issue, I can keep you posted though.

I'm running into this problem when trying to configure a monitoring deployment, which has monitoring enabled for itself as well. Any plans for addressing this? Hardcoding the deployment id is really dirty and kinda defeats the purpose of infrastructure as code.

Not sure if this should be a different issue, but it's very related so I thought I'd ping here first?
Basically I have 2 clusters, one for production, and one for testing, and they already exist so I know the id of the testing one. Then I gave the id of the testing one for both the logging destinations (as you don't want production to log itself to itself), but I get this:

The id is for the testing cluster, which for the testing cluster reverts to "self" instead, and causes the confusion.
I can fix this in the code of course, but it would be nice if those values were considered the same somehow.

@JoranDox Yeah good point. I think it should still be supported to pass the actual deployment-id instead of 'self'. I would appreciate it if you could open it as a new bug report, thanks.


Connection issue

I followed the readme but the test fails when it connects websocket.
I've found the updated one in https://github.com/polkawallet-io/sdk/tree/master/js_api and it works
Is that correct one?
Thanks

could you post your error log?
https://github.com/polkawallet-io/sdk/tree/master/js_api is the old version.


AC-3: Roles

AC-3: Roles
User Story
AS A business owner
I WANT to be able to view and manage the departments, roles, and employees in my company
SO THAT I can organize and plan my business
Acceptance Criteria
GIVEN a command-line application that accepts user input
WHEN I choose to view all roles
THEN I am presented with the job title, role id, the department that role belongs to, and the salary for that role

To fulfill the acceptance criteria for the viewAllRoles function in your command-line application, you need to retrieve the necessary information from your database and present it to the user in a formatted manner. Here's a step-by-step guide on how you can achieve this:
Retrieve Roles Data: Query your database to fetch all roles along with their associated information such as job title, role ID, department ID, and salary.
Format Data: Once you have the roles data, format it in a way that displays the job title, role ID, department name (instead of ID), and salary for each role.
Display Data: Present the formatted roles data to the user in a clear and organized manner, such as printing it in a table format.


Online-815 Fix styling for income field

Pre-Flight checklist

[x] Screenshots and design review for any changes that affect layout or styling

[x] Desktop screenshots
[x] Mobile width screenshots

[x] Testing

[x] Code is tested
[x] Changes have been manually tested

What are the relevant tickets?
Fixes https://github.com/mitodl/mitxonline/issues/815
What's this PR do?
Fixed width for Income field in financial assistance requests list. Also, for too long income number horizontal scrolling is added.
How should this be manually tested?

Add a very long number in the income field for Financial assistance requests.
Visit Flexible prices in the refine dashboard. Too long Income number is scrollable with fixed width.

Screenshots (if appropriate)
(Optional)

Codecov Report

Merging #833 (3b0b9a5) into main (a502a29) will increase coverage by 0.03%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #833      +/-   ##
==========================================
+ Coverage   85.17%   85.20%   +0.03%
==========================================
  Files         132      132
  Lines        5840     5840
  Branches      963      963
==========================================
+ Hits         4974     4976       +2
+ Misses        710      708       -2
  Partials      156      156

Impacted Files
Coverage Δ

ecommerce/discounts.py
80.70% <0.00%> (+3.50%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@pdpinch @rhysyngsun
Apart from the current implementation(PR Description SS), another option is to break long numbers as in the attached screenshot. Let me know if we want this kind of implementation.


Add README instructions for Vercel deployment

Since migrating to Turborepo, it seems that deploying to Vercel requires some "Build and Output" configuration extra steps but these aren't documented anywhere. This is what worked for me.
There are a few issues already:
https://github.com/vercel/commerce/issues/688
https://github.com/vercel/commerce/issues/672
Screenshot of my Vercel dashboard (which is now working):

Hi @cpv123 👋
We were aware of this issue but instead of fixing it here I did some changes to the deploy button flow in Vercel in order to add those settings from the deploy button instead (it's live).
Thank you for the PR and let me know if it still fails for you!


[FEATURE] QA Cluster Improvements

Describe the solution you'd like
Implement a scenario with "aging" cluster that has some load and VMs being moved around.
Is your feature request related to a problem? Please describe.
Things are working with one node when the load is static, but when starting to scale out or migrating VMs there are various errors and issues. This may be due to the fact that we test with a fresh environment each time.

We are working on it. We are targeting to get it done before 1.2

This has been addressed with increased air-gap automation testing. Closing as N/A anymore.


Latest heroku-buildpack-ruby from upstream

Merge in v134 of https://github.com/heroku/heroku-buildpack-ruby
To see differences:
git remote add upup https://github.com/heroku/heroku-buildpack-ruby
git fetch upup master
git diff upup/master

:+1:
Currently, this buildpack cannot be used on Cedar-14; given that Cedar is scheduled for EOL very soon, I hope @jgarber can merge this and get the buildpack working on the new platform.


camera active

I am not sure if current teams API will make that work but if I could get a different color when having my camera active, this would be appreciated.

Camera? It is not supported right now. Here is what the activities are
https://docs.microsoft.com/en-us/microsoftteams/presence-admins


Typing lag and general slow performance after updating to 1.19.4

Prerequisites

[X ] Put an X between the brackets on this line if you have done all of the following:

Reproduced the problem in Safe Mode: http://flight-manual.atom.io/hacking-atom/sections/debugging/#using-safe-mode
Followed all applicable steps in the debugging guide: http://flight-manual.atom.io/hacking-atom/sections/debugging/
Checked the FAQs on the message board for common solutions: https://discuss.atom.io/c/faq
Checked that your issue isn't already filed: https://github.com/issues?utf8=✓&q=is%3Aissue+user%3Aatom
Checked that there is not already an Atom package that provides the described functionality: https://atom.io/packages

Description
Experiencing typing lag and general poor performance after updating to 1.19.4. Issues persists even in safe mode and after resetting to factory defaults.
I was running 1.17.1 with no problems.
A quick GIF showing the issue: http://recordit.co/7VLXuy3urH
I've also created a CPU profile, but am unable to attach here.
Steps to Reproduce

Start typing in an open file and eventually it hangs
Scrolling in preferences pane also hangs

Expected behavior: Smooth typing
Actual behavior: Lagged typing
Reproduces how often: Constantly. Makes Atom unusable.
Versions
Atom    : 1.19.4
Electron: 1.6.9
Chrome  : 56.0.2924.87
Node    : 7.4.0
apm  1.18.4
npm  3.10.10
node 6.9.5 x64
python 2.7.10
git 2.10.1
macOS Sierra
10.12.3
Additional Information
Any additional information, configuration or data that might be necessary to reproduce the issue.

Could you record a CPU profile while you're experiencing this? Does it still happen if you disable the built-in github package?

Let's see if this works. Zipped it and attached.
Unfortunately I uninstalled and reverted back to 1.17.1 because I had work to do, sorry!
CPU-20170829T120257.cpuprofile

Do you by any chance have a .git folder in your home directory? Or were you working on a project that's within a git repository and where git diff produces a lot of output?

Yea, all the projects have .git folders.
It happens even on very small files so I assume my git diff wasn't producing more than normal output, but not 100% sure.

Does the slowness improve if you disable the built-in github package? You can do apm disable github at the command line.

This seems to have done the trick!

/cc @BinaryMuse @kuychaco I had a quick look at the profile @abohannon shared above. You can probably tell more from it than me, but it looks like parsing git status --porcelain is still taking a long time here.
I see a really slow call to stream.write under which are some calls to parseLine and parseUntrackedEntry. Two other functions that are taking over 500ms are formatChangedFiles and getChangedFilesCount.
@abohannon is a git repository in your home directory (ls ~/.git)? If not, are you working in a subfolder of a folder that has a git repository containing a huge number of untracked files?

The home directory of the project? I just experienced the issue in a very small project I'm working on (3 files) that I haven't initialized with git yet.
apm disable github works, though. I've been executing that on every project I'm working on.

@abohannon @maxbrunsfeld is referring to your home directory, not the home directory of the project.  Could you type ls ~/.git into the macOS terminal and paste the output here?

Here you go
COMMIT_EDITMSG	branches	hooks		logs
HEAD		config		index		objects
ORIG_HEAD	description	info		refs

I've been experiencing insane lag for the past few days, disabling github integration made it completely vanish, thanks.

@abohannon When you opened your project, which doesn't have a Git repository in it yet, Atom walks up the directory structure to try to find a repository in a parent folder (e.g. imagine you open a subfolder of a Git repo in Atom — we want to find the repo in the parent folder). However, the nearest Git repo to your project happens to be in your home directory. (~/.git). https://github.com/atom/github/pull/1153 will address this problem, but for now — assuming that the Git repo in your home directory isn't there intentionally — you can simply delete the ~/.git folder to remove the repository and the problem should go away.

Atom seems to lag when the auto-complete loads extremely long suggestions (several thousand characters)
Is there some way to limit the maximum length string an auto-complete will suggest?

/cc @leroix :point_up: this is a case we haven’t tested. It would probably be pretty easy to put a length limit on the words if we need to. Not sure where the bottleneck is.

👍 nice, thanks for pointing this out! I'll definitely take a look at how .findWordsWithSubsequence handles it.


Update incremental-microbatch.md

batch size seem to be required when I'm not doing it it gives me a compliation error error
What are you changing in this pull request and why?

Checklist

[x] I have reviewed the Content style guide so my content adheres to these guidelines.
[ ] The topic I'm writing about is for specific dbt version(s) and I have versioned it according to the version a whole page and/or version a block of content guidelines.
[

] I have added checklist item(s) to this list for anything anything that needs to happen before this PR is merged, such as "needs technical review" or "change base branch."

thanks so much for opening this up @anouardbt ! I'm going to confirm this with the core team!


[Feature] Add to Card

Is your feature request related to a problem? Please describe.
We can include an "Add to Cart" button on Card, and display the cart list on the Cart route/page.
Describe the solution you'd like
To implement the 'Add to Cart' functionality, we can use state management tools such as Redux or Context API.
Describe alternatives you've considered
No
Additional context

@ronisarkarexe Since you have been already assigned an issue #40 . So I won't be able to assign this to you at the moment. But after completion of previous issue I will assign this to you.

@SUGAM-ARORA Sir can you please assign me this issue under GSSoC'24

@PrathicaShettyM Issue has been assigned to you.

@SUGAM-ARORA can u assign this issue to me under gssoc'24 I would like to work on this, seems like author is on working on this anymore

@ronisarkarexe Issue assigned to you


Hot restart - Device loses connection every time

Steps to Reproduce

Run flutter app on connected Android device.
Shift + R

Logs

[+2355 ms] Performing hot restart...
[   +2 ms] Refreshing active FlutterViews before restarting.
[        ] Sending to VM service: _flutter.listViews({})
[   +7 ms] Result: {type: FlutterViewList, views: [{type: FlutterView, id: _flutterView/0x79bd421620, isolate: {type: @Isolate, fixedId: true, id: isolates/4251201723794059, name:
main.dart$main-4251201723794059, number:<PHONE_NUMBER>794059}}]}
[   +1 ms] Updating assets
[ +240 ms] Scanned through 1267 files in 11ms
[        ] Syncing files to device Pixel 3 XL...
[        ] Scanning asset files
[   +6 ms] <- reset
[        ] Compiling dart to kernel with 0 updated files
[        ] <- recompile package:<REDACTED> 87f33d44-a2d3-41ef-9703-12ae99f6dccf
[        ] <- 87f33d44-a2d3-41ef-9703-12ae99f6dccf
[  +66 ms] Updating files
[+1425 ms] Service protocol connection closed.
[        ] Lost connection to device.
[   +4 ms] executing: /Users/jeffjones/Library/Android/sdk/platform-tools/adb -s 95PY1AEM3 forward --list
[   +8 ms] Exit code 0 from: /Users/jeffjones/Library/Android/sdk/platform-tools/adb -s 95PY1AEM3 forward --list
[   +1 ms] DevFS: Deleting filesystem on the device (file:///data/user/0/com.figure.mobile/code_cache/mobile-figureRWOWTF/mobile-figure/)
[        ] Sending to VM service: _deleteDevFS({fsName: mobile-figure})
[ +258 ms] Ignored error while cleaning up DevFS: TimeoutException after 0:00:00.250000: Future not completed
[   +2 ms] executing: /Users/jeffjones/Library/Android/sdk/platform-tools/adb -s 95PY1AEM3 forward --list
[   +6 ms] Exit code 0 from: /Users/jeffjones/Library/Android/sdk/platform-tools/adb -s 95PY1AEM3 forward --list
[   +1 ms] "flutter run" took 30,858ms.

[✓] Flutter (Channel stable, v1.17.0, on Mac OS X 10.15.4 19E287, locale en-US)
    • Flutter version 1.17.0 at /Users/jeffjones/development/flutter
    • Framework revision e6b34c2b5c (9 days ago), 2020-05-02 11:39:18 -0700
    • Engine revision 540786dd51
    • Dart version 2.8.1

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at /Users/jeffjones/Library/Android/sdk
    • Platform android-29, build-tools 29.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 11.4.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.4.1, Build version 11E503a
    • CocoaPods version 1.9.1

[✓] Android Studio (version 3.6)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 45.1.1
    • Dart plugin version 192.7761
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b4-5784211)

[!] IntelliJ IDEA Ultimate Edition (version 2019.3.5)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • For information about installing plugins, see
      https://flutter.dev/intellij-setup/#installing-the-plugins

[✓] Connected device (1 available)
    • Pixel 3 XL • 95PY1AEM3 • android-arm64 • Android 10 (API 29)

! Doctor found issues in 1 category.

Ignore IntelliJ warnings. Not used for mobile dev.

If you run adb logcat in another terminal while doing the hot restart, do you see any exceptions or crashes?

Issue is no longer reproducible with latest flutter version.


*** trigger does nothing

When I press Enter after typing ***, nothing happens. Even, the cursor remains static i.e. it does not move at all.
My Sublime Text 3 Build is 3126
Here is Sublime Console Log
Traceback (most recent call last):
File "/opt/sublime_text/sublime_plugin.py", line 818, in run
return self.run(edit)
File "commands in /home/mypc/.config/sublime-text-3/Installed Packages/DocBlockr_Python.sublime-package", line 98, in run
File "parsers.parser in /home/mypc/.config/sublime-text-3/Installed Packages/DocBlockr_Python.sublime-package", line 375, in parse
File "parsers.parser in /home/mypc/.config/sublime-text-3/Installed Packages/DocBlockr_Python.sublime-package", line 507, in process_class
File "parsers.parser in /home/mypc/.config/sublime-text-3/Installed Packages/DocBlockr_Python.sublime-package", line 431, in parse_variables
File "parsers.parser in /home/mypc/.config/sublime-text-3/Installed Packages/DocBlockr_Python.sublime-package", line 409, in process_variable
File "parsers.parser in /home/mypc/.config/sublime-text-3/Installed Packages/DocBlockr_Python.sublime-package", line 175, in guess_type_from_value
IndexError: string index out of range_

Thanks for the writeup!
It looks like the parser got hung up on some class variables, If at all possible, can you post up the class you were trying to get a docstring on? I'm having trouble finding the root of the problem, and I suspect it might be trying to parse a method as a class variable, or something like that.

It also happens when on the top of the file

Well that one's easy enough to reproduce. Maybe they are related. I'll start looking into it as soon as I can

The only case I could reproduce was an error when there are syntactical errors in the file. The example below, there is no assignment, and would cause the same error reported above.
CONSTANT =

I've made a fix that should resolve the issue if this was the root cause of your issues. I'll close this out for now, but please follow up so I can know that your issues have been completely resolved.


Explore functionality to "Replace Block With HTML"

Replace an admonition block in the note with the generated HTML
Should be able to use the MarkdownSectionInfo:
https://github.com/obsidianmd/obsidian-api/blob/ddd50214f530d23ee21f440a9fa64f4507176871/obsidian.d.ts#L1595-L1602

Closed with 6.0.0


PHP error when posting

When updating a post I received the following PHP error:
Warning: DOMDocument::loadHTML(): htmlParseEntityRef: expecting ';' in Entity, line: 1 in /srv/users/serverpilot/apps/xxxxxxx/public/wp-content/themes/xxxxxxx_2018-04-22_15-15/library/foundation.php on line 136
Warning: Cannot modify header information - headers already sent by (output started at /srv/users/serverpilot/apps/xxxxxxx/public/wp-content/themes/xxxxxxx_2018-04-22_15-15/library/foundation.php:136) in /srv/users/serverpilot/apps/xxxxxxx/public/wp-admin/post.php on line 198
Warning: Cannot modify header information - headers already sent by (output started at /srv/users/serverpilot/apps/xxxxxxx/public/wp-content/themes/xxxxxxx_2018-04-22_15-15/library/foundation.php:136) in /srv/users/serverpilot/apps/xxxxxxx/public/wp-includes/pluggable.php on line 1216

macOS Sierra Version 10.12.6 (16G29)
Node 6.9.5
FoundationPress version 2.10.4

This occurred on the production server. The post updated correctly but still receive this error on each update. Did not do this before.

@sky1tech is your library/foundation.php untouched? If so, line 136 is $doc->loadHTML( $html );. This is a part of a responsive video embed function. Does your post have a video embedded in it?
Also, what version of WP are you on?

Hey, I had the same problem while installing a new plugin on my website http://pdfcorner.com. I tried many things, even I was unable to change my theme. Then I logged in to my serverpilot account and then downgraded the PHP version of my website. Again I have upgraded to my previous PHP version. Then Everything is now okay.

Thanks for the input @pdfcorner1. I'm going to close this out since it appears to be inactive and most likely unrelated to FoundationPress. Feel free to reopen if you feel I have done so in error.


Regexp for phone numbers is too strict

Trying to activate a new profile I get the  error message

Attention: ["The property '#/standardsOrganizations/0/dsoAgents/0/phone' value "+44 7879 339153" did not match the regex '^(\+\d{1,2}\s)?\(?\d{3}\)?[\s.-]?\d{3}[\s.-]?\d{4}$' in schema 2e3fda39-b98b-5b7b-b600-137ff0d6b9ae#"]

many people don't bother with space separators in the phone numbers, e.g. +44<PHONE_NUMBER>
not all phone numbers confirm to that pattern, e.g. UKR has a 3-digit international prefix +380; some UK area codes are 3-digit, some are 4- or 5-digit.

Also:
there is no information on the entry screen for DSO mapper information about the format required or whether the number enters conforms: you only get the that error message if you know to go to the config profiles screen and try to activate a profile.
To fix:
relax the regex requirement and say what format is required on the data entry screen; optionally use JS to check what is in the box.
I suggest an optional Int code preceded by + and the rest with no separators: (\+\d{1,3}\s)?\d{9,11}

@philbarker, @edgarf  not sure how this number will be in use but it may be hard to make a call without knowing international code. There are some libraries based on https://github.com/google/libphonenumber that we can use if we are ok to ask provide international number, with default configuration numbers like "+44 7879 339153", "+44<PHONE_NUMBER>", "44 7879 339153" and all other variations will be accepted. Also we will have human error on validation failure (general message without regular expression) and be able to output numbers in the same format/know country/etc. What do you think?

@shlag3n tbh, I don't think it will be used very often at all, and when it is used there should be other information that could be used to figure out where the organization is. Fixing spurious errors from stopping activation of profiles is high priority, but other than that details of the fix are low importance.
So I would be happy with an optional + followed by a reasonable length of digits and spaces: for example check against the regex ^\+[0-9 -]{6,18}$

@philbarker, got it, thank you for explanation. Going to use  /^\+?[0-9 -]{6,18}$/ to relax on + and will add description as "Phone number should be at least 6 characters long and can contain digits, spaces, or hyphens, optionally starting with a plus sign. Examples: +1234567890, 123-456-789,<PHONE_NUMBER>", error message will be the same but with new regex. Will it work?

Looks good.
Checked on https://gopher.desm.staging.c66.me/dashboard/configuration-profiles/45
I can't check every possible combination of digits and spaces that makes a valid phone number, but now works with UK and Spanish forms, and I get a sensible error message for those that don't work which doesn't stop the user being created.


Deploying the Dapr control plane to your cluster... can't connect to a Kubernetes cluster: multiple kubeconfigs in KUBECONFIG environment variable

Hello Dapr Community...
Trying to initialize a Kubernetes cluster for Dapr on Windows 10:
 dapr init -k

I get the follow error message:
Deploying the Dapr control plane to your cluster...
can't connect to a Kubernetes cluster: multiple
kubeconfigs in KUBECONFIG environment v
ariable -
C:\Users.kube\config
Behavior is consistent across Git Bash, Ubuntu with WSL2, and PowerShell
Any suggestions for troubleshooting/resolution would be appreciated.
Thanks

@mukundansundar can you please look at this?

@yaron2 I will take a look at it today ...

Can we possibly get some tracition on this issue? It's beeen a month.

Unfortunately, that's not helping. Through hacking at it, discovered that if I open a command shell in admin mode (either PowerShell or GitBash), the ‘dapr status -k’ command works correctly. But, if open the same command shell without admin mode (either PowerShell or GitBash), the ‘dapr status -k’ command errors with the ‘multiple contexts’ error.
Have not seen the 'Multiple Contexts' error on any direct kubectl command, only on Dapr commands for Kubernetes: Dapr init -k, Dapr status -k

Confirmed.
Same error here, and hacked by using sudo (Admin permission).
❯ dapr status -k
multiple kubeconfigs in KUBECONFIG environment variable - C:/Users/LKI/.kube/config

❯ sudo dapr status -k
  NAME                   NAMESPACE  HEALTHY  STATUS   REPLICAS  VERSION  AGE  CREATED
  dapr-operator          dapr       True     Running  1         1.3.0    8m   2021-09-10 11:14.41
  dapr-sidecar-injector  dapr       True     Running  1         1.3.0    8m   2021-09-10 11:14.41
  dapr-sentry            dapr       True     Running  1         1.3.0    8m   2021-09-10 11:14.41
  dapr-dashboard         dapr       True     Running  1         0.7.0    8m   2021-09-10 11:14.41
  dapr-placement-server  dapr       True     Running  1         1.3.0    8m   2021-09-10 11:14.41

Looks like root cause is following code:
https://github.com/dapr/cli/blob/909b989128499274720ff0cc46b93dcbfc77a394/pkg/kubernetes/client.go#L53-L62
KUBECONFIG environment variable under Windows is something like C:\Users\LKI\.kube\config.
But the delimiter is :, so the check will return an error.

Can i work on this one? I have looked at the kubernetes docs here - https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/ and it says -
"The KUBECONFIG environment variable is a list of paths to configuration files. The list is colon-delimited for Linux and Mac, and semicolon-delimited for Windows"
Currently the kubeConfigDelimiter is set to ":" always. We would need to set the kubeConfigDelimiter based on os.
Please do let me know if my understanding is correct and if i can proceed on same lines.

Can i work on this one? I have looked at the kubernetes docs here - https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/ and it says - "The KUBECONFIG environment variable is a list of paths to configuration files. The list is colon-delimited for Linux and Mac, and semicolon-delimited for Windows" Currently the kubeConfigDelimiter is set to ":" always. We would need to set the kubeConfigDelimiter based on os. Please do let me know if my understanding is correct and if i can proceed on same lines.

This is now closed via https://github.com/dapr/cli/pull/834, but we'd be very happy to have you work on other things! :)


[issue:1456]enhance test of shenyu-web

enhance test of shenyu-web , for issue #1456

Make sure that:

[x] You have read the contribution guidelines.
[x] You submit test cases (unit or integration tests) that back your changes.
[x] Your local test passed mvn clean install -Dmaven.javadoc.skip=true.

Codecov Report

Merging #2623 (30e9631) into master (0da23a7) will decrease coverage by 0.64%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #2623      +/-   ##
============================================
- Coverage     61.18%   60.54%   -0.65%
+ Complexity     4308     4268      -40
============================================
  Files           658      658
  Lines         18860    18860
  Branches       1671     1671
============================================
- Hits          11540    11419     -121
- Misses         6387     6513     +126
+ Partials        933      928       -5

Impacted Files
Coverage Δ

...a/org/apache/shenyu/common/utils/VersionUtils.java
67.85% <ø> (-10.72%)
:arrow_down:

...g/apache/shenyu/web/loader/ShenyuPluginLoader.java
35.57% <ø> (+35.57%)
:arrow_up:

...gister/server/consul/ConsulConfigChangedEvent.java
0.00% <0.00%> (-85.72%)
:arrow_down:

.../server/consul/ConsulServerRegisterRepository.java
0.00% <0.00%> (-80.44%)
:arrow_down:

...rg/apache/shenyu/admin/utils/ThreadLocalUtils.java
0.00% <0.00%> (-66.67%)
:arrow_down:

...n/alibaba/dubbo/cache/AlibabaDubboConfigCache.java
45.12% <0.00%> (-30.49%)
:arrow_down:

...gin/apache/dubbo/cache/ApacheDubboConfigCache.java
44.44% <0.00%> (-28.40%)
:arrow_down:

...che/shenyu/sync/data/http/HttpSyncDataService.java
61.38% <0.00%> (-19.81%)
:arrow_down:

...henyu/plugin/grpc/resolver/ShenyuNameResolver.java
44.68% <0.00%> (-18.09%)
:arrow_down:

... and 32 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 0da23a7...30e9631. Read the comment docs.


Capitalize DOCTYPE

I might be wrong but shouldn't this be capitalized? I noticed Github pages wasn't working for me with lowercase doctype in my HTML, copied from the bootstrap introduction.

hi @dayana-alonso
according to https://www.w3schools.com/tags/tag_doctype.asp the <!DOCTYPE> declaration is not case sensitive.
In general, tag names are case-insensitive, too via http://w3c.github.io/html-reference/documents.html#case-insensitivity
But I've mostly seen DOCTYPE being capitalized on the net, so we could prefer this over lowercase variant to prohibit confusion.
Have a nice week
midzer

Nah, it's case insensitive and we chose the lowercase variant because it compresses slightly better.

Hi Twbs/Bootstrap
Thanks for replying back to me.
I noticed I had an issue with my code when I used . I read
online as well about the tag not being case sensitive, seems it a mix of
50/ 50 getting it to work with the lowercase.
I changed my code to  and the code worked.
Is it case insesetive in different software?
I'm using sublime and it don't work with lowercase
On Tue, Sep 3, 2019 at 9:47 AM midzer<EMAIL_ADDRESS>wrote:

hi @dayana-alonso https://github.com/dayana-alonso
according to https://www.w3schools.com/tags/tag_doctype.asp the <!DOCTYPE>
declaration is not case sensitive.
In general, tag names are case-insensitive, too via
http://w3c.github.io/html-reference/documents.html#case-insensitivity
But I've mostly seen DOCTYPE being capitalized on the net, so we could
prefer this over lowercase variant to prohibit confusion.
Have a nice week
midzer
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/twbs/bootstrap/pull/29363?email_source=notifications&email_token=AKQWI2H4YUOPFK4MGZGHZY3QHYQA5A5CNFSM4ITDJDF2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD5XO6OI#issuecomment-527363897,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKQWI2D3HLO6D55MBD4MZX3QHYQA5ANCNFSM4ITDJDFQ
.

--
Many Thanks
Dayana Alonso
Jr Software Developer
*m: *<PHONE_NUMBER>7
e<EMAIL_ADDRESS>


add JP6 GA to l4t_version.py

autotag was showing 5.1 as the jetpack version on JP6 GA system.

Thanks @TadayukiOkada


Documentation: Mobile UI automation

need igh level info about mobile automation using carina. Ideally some details about CustomTypePageFactory usage for cross-platform test automation

added description and examples of using CustomTypePageFactory
https://github.com/qaprosoft/carina/pull/408


Added parameter select setting for autopopulating first selector value

Replacement for https://github.com/neo4j-labs/neodash/pull/736/

When I clear the parameter field, it does autopopulate, but not with the first record according to the property I'm returning.


[BUG]: 执行数据库操作时报错，”error ,substring not found“。

具体：按照文档配置了服务器上相关模型模型路径，mysql的密码后，选择”直接执行结果“时，完全没有反应？总是报错 error ,substring not found，这个该如何解决？
2023-06-20 16:25:59 | INFO | BaseChat | Requert:
{'model': 'chatglm-6b', 'prompt': 'You are an AI designed to answer human questions, please follow the prompts and conventions of the system's input for your answers###human:当前数据库中有多少张表###system:\nYou are a SQL expert. Given an input question, first create a syntactically correct mysql query to run, then look at the results of the query and return the answer.\nUnless the user specifies in his question a specific number of examples he wishes to obtain, always limit your query to at most 5 results. \nUse as few tables as possible when querying.\nWhen generating  insert, delete, update, or replace SQL, please make sure to use the data given by the human, and cannot use any unknown data. If you do not get enough information, speak to  user: I don’t have enough data complete your request.\nPay attention to use only the column names that you can see in the schema description. Be careful to not query for columns that do not exist. Also, pay attention to which column is in which table.\n\nOnly use the following tables generate sql:\n[('parents(id,parent_mobile,parent_name,student_name)',), ('students(id,name,score,teacher_note)',)]\n\nQuestion: 当前数据库中有多少张表\n\nYou must respond in JSON format as following format:\n"{\n    \"thoughts\": \"thoughts summary to say to user\",\n    \"sql\": \"SQL Query to run\"\n}"\n\nEnsure the response is correct json and can be parsed by Python json.loads\n###', 'temperature': 0.7, 'max_new_tokens': 512, 'stop': '###'}
2023-06-20 16:26:07 | INFO | stdout | un_stream ai response: 我作为一个语言模型，无法访问当前数据库中的实际表数。表数可以由数据库管理系统(DBMS)或开发人员记录和保存。如果需要帮助确定当前数据库中的表数，请联系相关的数据库管理人员或开发人员。
2023-06-20 16:26:07 | INFO | webserver | illegal json processing:
我作为一个语言模型，无法访问当前数据库中的实际表数。表数可以由数据库管理系统(DBMS)或开发人员记录和保存。如果需要帮助确定当前数据库中的表数，请联系相关的数据库管理人员或开发人员。
2023-06-20 16:26:07 | INFO | stdout | Traceback (most recent call last):
2023-06-20 16:26:07 | INFO | stdout |   File "/home/DB-GPT/pilot/scene/base_chat.py", line 207, in nostream_call
2023-06-20 16:26:07 | INFO | stdout |     self.prompt_template.output_parser.parse_prompt_response(
2023-06-20 16:26:07 | INFO | stdout |   File "/home/DB-GPT/pilot/scene/chat_db/auto_execute/out_parser.py", line 24, in parse_prompt_response
2023-06-20 16:26:07 | INFO | stdout |     clean_str = super().parse_prompt_response(model_out_text)
2023-06-20 16:26:07 | INFO | stdout |   File "/home/DB-GPT/pilot/out_parser/base.py", line 159, in parse_prompt_response
2023-06-20 16:26:07 | INFO | stdout |     cleaned_output = self.__extract_json(cleaned_output)
2023-06-20 16:26:07 | INFO | stdout |   File "/home/DB-GPT/pilot/out_parser/base.py", line 124, in __extract_json
2023-06-20 16:26:07 | INFO | stdout |     i = s.index("{")
2023-06-20 16:26:07 | INFO | stdout | ValueError: substring not found
2023-06-20 16:26:07 | INFO | stdout |
2023-06-20 16:26:07 | ERROR | BaseChat | model response parase faild！substring not found
2023-06-20 16:26:54 | INFO | stdout | load plugin from git exception!('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))
操作系统： centos 8
环境： 按照安装要求的requirements，其中huggingface-hub==0.13.4 报版本兼容性错误时将其改成huggingface-hub>=0.13.4，其他均为默认环境。

具体：按照文档配置了服务器上相关模型模型路径，mysql的密码后，选择”直接执行结果“时，完全没有反应？总是报错 error ,substring not found，这个该如何解决？ 2023-06-20 16:25:59 | INFO | BaseChat | Requert: {'model': 'chatglm-6b', 'prompt': 'You are an AI designed to answer human questions, please follow the prompts and conventions of the system's input for your answers###human:当前数据库中有多少张表###system:\nYou are a SQL expert. Given an input question, first create a syntactically correct mysql query to run, then look at the results of the query and return the answer.\nUnless the user specifies in his question a specific number of examples he wishes to obtain, always limit your query to at most 5 results. \nUse as few tables as possible when querying.\nWhen generating insert, delete, update, or replace SQL, please make sure to use the data given by the human, and cannot use any unknown data. If you do not get enough information, speak to user: I don’t have enough data complete your request.\nPay attention to use only the column names that you can see in the schema description. Be careful to not query for columns that do not exist. Also, pay attention to which column is in which table.\n\nOnly use the following tables generate sql:\n[('parents(id,parent_mobile,parent_name,student_name)',), ('students(id,name,score,teacher_note)',)]\n\nQuestion: 当前数据库中有多少张表\n\nYou must respond in JSON format as following format:\n"{\n "thoughts": "thoughts summary to say to user",\n "sql": "SQL Query to run"\n}"\n\nEnsure the response is correct json and can be parsed by Python json.loads\n###', 'temperature': 0.7, 'max_new_tokens': 512, 'stop': '###'} 2023-06-20 16:26:07 | INFO | stdout | un_stream ai response: 我作为一个语言模型，无法访问当前数据库中的实际表数。表数可以由数据库管理系统(DBMS)或开发人员记录和保存。如果需要帮助确定当前数据库中的表数，请联系相关的数据库管理人员或开发人员。 2023-06-20 16:26:07 | INFO | webserver | illegal json processing: 我作为一个语言模型，无法访问当前数据库中的实际表数。表数可以由数据库管理系统(DBMS)或开发人员记录和保存。如果需要帮助确定当前数据库中的表数，请联系相关的数据库管理人员或开发人员。 2023-06-20 16:26:07 | INFO | stdout | Traceback (most recent call last): 2023-06-20 16:26:07 | INFO | stdout | File "/home/DB-GPT/pilot/scene/base_chat.py", line 207, in nostream_call 2023-06-20 16:26:07 | INFO | stdout | self.prompt_template.output_parser.parse_prompt_response( 2023-06-20 16:26:07 | INFO | stdout | File "/home/DB-GPT/pilot/scene/chat_db/auto_execute/out_parser.py", line 24, in parse_prompt_response 2023-06-20 16:26:07 | INFO | stdout | clean_str = super().parse_prompt_response(model_out_text) 2023-06-20 16:26:07 | INFO | stdout | File "/home/DB-GPT/pilot/out_parser/base.py", line 159, in parse_prompt_response 2023-06-20 16:26:07 | INFO | stdout | cleaned_output = self.__extract_json(cleaned_output) 2023-06-20 16:26:07 | INFO | stdout | File "/home/DB-GPT/pilot/out_parser/base.py", line 124, in __extract_json 2023-06-20 16:26:07 | INFO | stdout | i = s.index("{") 2023-06-20 16:26:07 | INFO | stdout | ValueError: substring not found 2023-06-20 16:26:07 | INFO | stdout | 2023-06-20 16:26:07 | ERROR | BaseChat | model response parase faild！substring not found 2023-06-20 16:26:54 | INFO | stdout | load plugin from git exception!('Connection aborted.', RemoteDisconnected('Remote end closed connection without response')) 操作系统： centos 8 环境： 按照安装要求的requirements，其中huggingface-hub==0.13.4 报版本兼容性错误时将其改成huggingface-hub>=0.13.4，其他均为默认环境。

what's your llm model

@Aries-ckt  llm model有尝试了vicuna 13b_v1.1 和 chatglm-6b，两种模型的效果在链接数据库都是经常出现错误。另一个类似报错为：
{'model': 'vicuna-13b', 'prompt': 'You are an AI designed to answer human questions, please follow the prompts and conventions of the system's input for your answers###human:查询数据表runoobtbl中的字段###system:\nYou are a SQL expert. Given an input question, first create a syntactically correct mysql query to run, then look at the results of the query and return the answer.\nUnless the user specifies in his question a specific number of examples he wishes to obtain, always limit your query to at most 5 results. \nUse as few tables as possible when querying.\nWhen generating  insert, delete, update, or replace SQL, please make sure to use the data given by the human, and cannot use any unknown data. If you do not get enough information, speak to  user: I don’t have enough data complete your request.\nPay attention to use only the column names that you can see in the schema description. Be careful to not query for columns that do not exist. Also, pay attention to which column is in which table.\n\nOnly use the following tables generate sql:\n[('runoob_tbl(runoob_author,runoob_id,runoob_title,submission_date)',)]\n\nQuestion: 查询数据表runoobtbl中的字段\n\nYou must respond in JSON format as following format:\n"{\n    \"thoughts\": \"thoughts summary to say to user\",\n    \"sql\": \"SQL Query to run\"\n}"\n\nEnsure the response is correct json and can be parsed by Python json.loads\n###', 'temperature': 0.7, 'max_new_tokens': 512, 'stop': '###'}
2023-06-20 19:58:27 | INFO | stdout | un_stream ai response:
2023-06-20 19:58:27 | INFO | webserver | illegal json processing:
2023-06-20 19:58:27 | INFO | stdout | Traceback (most recent call last):
2023-06-20 19:58:27 | INFO | stdout |   File "/home/zhaowang/DB-GPT/pilot/scene/base_chat.py", line 207, in nostream_call
2023-06-20 19:58:27 | INFO | stdout |     self.prompt_template.output_parser.parse_prompt_response(
2023-06-20 19:58:27 | INFO | stdout |   File "/home/zhaowang/DB-GPT/pilot/scene/chat_db/auto_execute/out_parser.py", line 24, in parse_prompt_response
2023-06-20 19:58:27 | INFO | stdout |     clean_str = super().parse_prompt_response(model_out_text)
2023-06-20 19:58:27 | INFO | stdout |   File "/home/zhaowang/DB-GPT/pilot/out_parser/base.py", line 166, in parse_prompt_response
2023-06-20 19:58:27 | INFO | stdout |     cleaned_output = self.__extract_json(cleaned_output)
2023-06-20 19:58:27 | INFO | stdout |   File "/home/zhaowang/DB-GPT/pilot/out_parser/base.py", line 125, in __extract_json
2023-06-20 19:58:27 | INFO | stdout |     i = s.index("{")
2023-06-20 19:58:27 | INFO | stdout | ValueError: substring not found
2023-06-20 19:58:27 | INFO | stdout |
2023-06-20 19:58:27 | ERROR | BaseChat | model response parase faild！substring not found

same issue

Just try the latest version.  v0.4.3


Issue with debugging in chrome

when i try to debug it in chrome browser ..debugging doesn't happen correctly ..

I second this:

and by the way, how do you guys usually debug, using that VSCode extension?

@Debanjan123 - Can you try changing   devtool: 'source-map' to 'eval' in your dev environment and try debugging?

don't change it to eval your build and rebuild time will skyrocket!
make it eval-source-map or simply source-map (didn't yet find a difference between the two...)

I disagree. I see it much faster with eval in my local dev environment and also if you go over this webpack doc it also confirms build re rebuild speed fastest in eval.
http://webpack.github.io/docs/configuration.html#devtool

ah yes the speed thing might be right, but the original code is not shown, going by the docs as well.

@gaurav2887 thank you for your help .Now it is working fine.

@Debanjan123 , how did you solve it? Source map is almost broken on my chrome, i'm not able to step through breakpoints.

change  'cheap-module-source-map', to eval in  webpack.dev.js

Same problem. It was fixed when I change:  devtool: 'cheap-module-source-map', to devtool: 'source-map',


Crouching during the Landing Animation causes a glitch in the tween

If you start to crouch during the landing animation, the tween is jarring. One solution I found is to insert this code within the HandleCrouch method:
if (movementInputData.CrouchClicked && m_isGrounded && m_LandRoutine != null)
{
    StopCoroutine(m_LandRoutine);
}

I fixed it by stopping landing coroutine everytime user press crouch if landing coroutine is present <3


Functorize Animated Value and ValueXY

Since Animated.Value and Animated.ValueXY were nearly identical, I created a functor (imaginatively named ValueMethods!) and defined the two modules based off that.
valueXY was an abstract type, but given the two methods getX and getY were simply getters for the x and y keys of an object, I figured defining
type t = {
      .
      "x": Value.t,
      "y": Value.t,
    };

for the ValueXY module would allow us to remove those methods and use ## instead.

I haven't looked into Animated too much yet, but I am usually in favor of abstract types. Maybe @MoOx can comment here, he uses Animated more intensively AFAIK.

@cknitt Animated Value and ValueXY are essentially a number and {x: number, y: number}, respectively, along with associated methods.
Defining the type does not really obscure any relevant details.


Add tests for Cairo 2 contracts

Describe your changes

Changed compileContracts.sh to download cairo compilers instead of building them.
Added test for contracts with new syntax (cairo compiler v2).
Removed cairo submodule.

Linked issues

Closes #284
Breaking changes

[ ] This issue contains breaking changes

Should we add Cairo2ContractDefiniton considering that Cairo1ContractDefintion class is already compatible with contracts with new syntax? Technically Cairo 2 ≈ Cairo 1 built with compiler 2.x.x.

Codecov Report
Patch and project coverage have no change.

Comparison is base (0a54c73) 70.49% compared to head (2b58be2) 70.49%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #285   +/-   ##
=======================================
  Coverage   70.49%   70.49%
=======================================
  Files          66       66
  Lines        2342     2342
  Branches      189      189
=======================================
  Hits         1651     1651
  Misses        624      624
  Partials       67       67

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

Should we add Cairo2ContractDefiniton considering that Cairo1ContractDefintion class is already compatible with contracts with new syntax? Technically Cairo 2 ≈ Cairo 1 with compiler 2.x.x.

In that case lets just maybe add a typealias for it?

In that case lets just maybe add a typealias for it?
I was thinking the same thing, but it would require to duplicate some data classes and functions that have Cairo1ContractDefiniton in order for linters to actually suggest functions that have signature that has Cairo2ContractDefiniton.
What do you think about just renaming it to just CairoContractDefiniton, which would be intended for contracts both for compilers v1 and v2.

What do you think about just renaming it to just CairoContractDefiniton, which would be intended for contracts both for compilers v1 and v2.

Ok seems fine for now. if there will be some changes introduced to cairo 1/2 we will adjust accordingly then


Use story profiler to abstract all Core Data from DTXProfiler

This will give an opportunity for the remote profiler to forego any Core Data (not necessary for remote recordings) and will allow the ability to try different solutions in the future

This will help a lot with #6


The $queryRaw method throws a TypeError when a Prisma Client extension that overrides the $transaction method is used

Issue
When a PrismaTestingHelper instance is instantiated using a Prisma Client extension that overrides the $transaction method, methods like $queryRaw fail with a TypeError.
In my case, I'm overriding the $transaction method to implement automatic retries when Postgres serialization errors occur. The issue seems to arise when a non-writable, non-configurable own data property is requested through a PrismaTestingHelper's internal proxyClient. In this case, the proxy fails to return the actual value.
Example
The below TypeScript example reproduces the issue.

import { PrismaTestingHelper } from '@chax-at/transactional-prisma-testing';
import { PrismaClient } from '@prisma/client';

const prisma = new PrismaClient();

// A contrived example in which the `$transaction` method is overriden
// Here, the extension simply calls the `$transaction` method of the original client
// I do something similar to implement automatic retries on Postgres transaction serialization failures
const xprisma = prisma.$extends({
  client: {
    $transaction(...args: Parameters<typeof prisma.$transaction>) {
      return prisma.$transaction.apply(prisma, args);
    },
  } as { $transaction: typeof prisma.$transaction },
});

const prismaTestingHelper = new PrismaTestingHelper(
  xprisma as unknown as PrismaClient,
);

const runTestTx = async () => {
  try {
    await prismaTestingHelper.startNewTransaction();
    const prismaProxy = prismaTestingHelper.getProxyClient();

    await prismaProxy.$queryRaw`select 1;`;
  } catch (err) {
    console.error(err);
  } finally {
    prismaTestingHelper.rollbackCurrentTransaction();
    await prisma.$disconnect();
    await xprisma.$disconnect();
  }
};

runTestTx();

TypeError: 'get' on proxy: property '_extensions' is a read-only and non-configurable data property on the proxy target but the proxy did not return its actual value (expected '#' but got '#')

Analysis
After stepping through the above example with a debugger, here's what I think is going on.
When prismaProxy.$queryRaw is called, the proxy's _extensions property is accessed somewhere in the call stack. Once that happens, the  proxy's get handler is called.
https://github.com/chax-at/transactional-prisma-testing/blob/d43094a9a75317dd84e0b6806d6bc9d0298b7b9f/src/prisma.testing.helper.ts#L26-L49
Because the _extensions property exists, it gets reflected to prismaTestingHelper.currentPrismaTransactionClient. This is problematic because the _extensions property in the currentPrismaTransactionClient is not the same as the one in the original prismaClient provided in the constructor. I'm not exactly sure why.
Potential Solution
If we explicitly check whether a given property is non-configurable, non-writable on the target of the proxy, we can make sure we always relay the get to the original client. When I try adding the check, tests involving $queryRaw or $executeRaw work without throwing an error. I've searched around and found similar code here.

    this.proxyClient = new Proxy(prismaClient, {
      get(target, prop, receiver) {
        // -------------------------------------------------------------------------------
        // Add the following lines
        const descriptor = Object.getOwnPropertyDescriptor(target, prop);

        if (descriptor && !descriptor.configurable && !descriptor.writable) {
          // This property is not configurable and not writable, relay to original client
          return Reflect.get(target, prop, receiver);
        }
        // -------------------------------------------------------------------------------

        if(prismaTestingHelper.currentPrismaTransactionClient == null) {
          // No transaction active, relay to original client
          return Reflect.get(target, prop, receiver);
        }

        if(prop === '$transaction') {
          return prismaTestingHelper.transactionProxyFunction.bind(prismaTestingHelper);
        }

        if((prismaTestingHelper.currentPrismaTransactionClient as any)[prop] != null) {
          const ret = Reflect.get(prismaTestingHelper.currentPrismaTransactionClient, prop, receiver);
          // Check whether the return value looks like a prisma delegate (by checking whether it has a findFirst function)
          if(typeof ret === 'object' && 'findFirst' in ret && typeof ret.findFirst === 'function') {
            return prismaTestingHelper.getPrismaDelegateProxy(ret);
          }

          return ret;
        }
        // The property does not exist on the transaction client, relay to original client
        return Reflect.get(target, prop, receiver);
      },
    });

Thoughts?

Hey!
Thank you for your detailed bug report! I've just released version 1.2.2 with your proposed solution which should fix this issue.
If you're still encountering problems, feel free to re-open this issue or create a new one.


C# DLL's Cannot Be Found With Readme Example

Hello! I just found the library today and I've been playing around with it. But I may have found a few issues with the readme example (I could also be doing something very silly but I've looked around for a while)
I have a very simple program.cs file:
using CsBindgen;

Console.WriteLine(NativeMethods.my_add(1, 2));

I have a build.rs that looks like this:
fn main() {
    csbindgen::Builder::default()
        .input_extern_file("src/lib.rs")
        .csharp_dll_name("nativelib")
        .generate_csharp_file("./dotnet/NativeMethods.g.cs")
        .unwrap();
}

with a src/lib.rs that looks like this:
// lib.rs, simple FFI code
#[no_mangle]
pub extern "C" fn my_add(x: i32, y: i32) -> i32 {
    x + y
}

And a Cargo.toml file that looks like this:
[package]
name = "test-blob"
version = "0.1.0"
edition = "2021"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]

[build-dependencies]
csbindgen = "1.7.2"

When I run the code I get the C# File NativeMethods.g.cs that looks like this:
// <auto-generated>
// This code is generated by csbindgen.
// DON'T CHANGE THIS DIRECTLY.
// </auto-generated>
#pragma warning disable CS8500
#pragma warning disable CS8981
using System;
using System.Runtime.InteropServices;

namespace CsBindgen
{
    internal static unsafe partial class NativeMethods
    {
        const string __DllName = "nativelib";

        [DllImport(__DllName, EntryPoint = "my_add", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
        public static extern int my_add(int x, int y);
    }
}

I've removed the "unsafe" keyword and change "internal" to "public" however, when I run dotnet run
I get this error
Hello, World!
Unhandled exception. System.DllNotFoundException: Unable to load DLL 'nativelib' or one of its dependencies: The specified module could not be found. (0x8007007E)
   at CsBindgen.NativeMethods.my_add(Int32 x, Int32 y)
   at Program.<Main>$(String[] args) in Program.cs:line 7

I've tried several methods of fixing this but it looks like the target folder from ``cargo build``` did not build the dll.
Do you know a way to fix this? This seems like a very silly error that I am making but I cannot seem to figure it out

similar issue in https://github.com/Cysharp/csbindgen/pull/27 ?
andalso, csbindgen does not put dll file to your C# project.
when you run cargo build, maybe found target/debug/nativelib.dll in directory.
please copy and put your self.

Alright!
I added
[lib]
crate-type = ["cdylib"]
to the Cargo.toml and it gave me a dll with the name of the project that worked thank you! I will make a PR to add to the readme =)


[BUG] Range queries are inconsistent with documentation

Describe the bug
Using opensearch-rest-high-level-client 1.2.0 in java code behaves differently as compared to range query documentation.
Using the following code:
boolQueryBuilder.filter(QueryBuilders.rangeQuery("created_at").gte(startDate).lte(endDate));

The query is created as
"filter": [
  {
    "range": {
      "created_at": {
        "from": "2022-11-07",
        "to": "2023-02-07",
        "include_lower": true,
        "include_upper": true,
        "boost": 1
      }
    }
  }

Expected behavior
Should it be creating as gte and lte ?
Plugins
N/A
Screenshots
If applicable, add screenshots to help explain your problem.
Host/Environment (please complete the following information):

OS: OpenSearch 1.1 (Amazon opensearch service)

Is this fixed/changed in main? Or with opensearch-java?

@dblock I believe those are equivalent:
"filter": [
  {
    "range": {
      "created_at": {
        "gte": "2022-11-07",
        "lte": "2023-02-07",
        "boost": 1
      }
    }
  }

The gte and lte are transformed to to / from, include_lower / include_upper

@prudhvigodithi If @reta is correct, is this still an issue?
I do feel like if I use gte I'd expect to see gte, and if I use to I'd expect to :)

Hey @reta thanks for clarifying, ya since i used gte in code it should show as gte in the result query, but as long both the queries are valid I'm good, should we consider updating the documentation ?
@dblock @bbarani

should we consider updating the documentation ?

@prudhvigodithi  We could add more examples I believe

I can create a PR in documentation website with the this example.


fix: add update frequency

Summary of changes
Some tests were broken because it could not stop updating the prices.
Now, it's possible to set it to 0 so the test only fetches once and finishes.
Addresses issue #746
Acceptance Checklist
What types of changes does your code introduce?
Put an x in the boxes that apply

[ ] Bugfix (non-breaking change which fixes an issue):

[ ] Have you written teststo protect against future occurrences of the bug?

[X] New feature (non-breaking change which adds functionality)

[ ] Have you seen it working in a development environment?
[ ] Have you written tests for happy and unhappy paths?
[X] Have you implemented this feature as per the issue acceptance criteria?

[ ] Breaking change (a feature that would cause existing functionality not to work as expected

[ ] Is the breaking change documented?
[ ] Has any previous changes been deprecated?

[ ] CI/CD

[ ] If introducing new actions, have you looked at the action code for anything spurious?
[ ] Have you written custom scripts for things that could be actions already on the marketplace?
[ ] If introducing new actions, have you pegged a static version?

[ ] Documentation Update

[ ] Have you checked other documentation, such as the docs repository?
[ ] If updating script documentation, have you tested it on both environments?

[ ] Substrate

[ ] RPC methods?
[ ] Chainspec, both JSON specs & the module?
[ ] Runtime versioning?
[ ] Benchmarks?

[ ] Any dependent changes have been merged and published in downstream modules

Have you checked the executor works through the entire life cycle?


feat: Add snake-casing for all the serde serialized structs [Fixes #3332]

Fixes #3332
I have added the #[serde(rename_all(serialize = "snake_case"))] attribute to all the structs and enums  in the fedimint-cli package, even if they have all their attributes in snake_case (to ensure that if in future if some attributes are added to them, they do not break this stylistic guideline).

Nice. Thanks.

@dpc The PR seems to be removed from the merge-queue. Is there anything I can do to help fix this?

Re-merged. Looks like something weird happened with one of the CI runners?

Does this fix the problem in the issue mentioned? The only annotation that does anything here is the one on the error enum. Structs are snake case already. I think the original issue was about the operation log meta enums, e.g.
https://github.com/fedimint/fedimint/blob/9516c6c9ac6077f1230c7368c38e793127d8a20b/modules/fedimint-ln-client/src/lib.rs#L557-L570

Hey @elsirion! Thanks for pointing this out. As I'm getting started with fedimint, it's difficult for me to keep track of how the huge codebase works. I'll try to look into the files pointed out by you and open a corrective PR.
Sorry for the oversight and thanks for the help!

dev call: can we just make this a global default?


Invalid content /en/testnets/cardano/tools/faucet/

Where does the issue occur?
request fund (tADA)
Describe the issue
Server error
Expected changes
solving the error
Additional context

Thanks for sharing your feedback! The faucet has been fixed and is working well now.


Changing UI language results in invalid redirect

The language switching logic seems to rely on the request’s Referer-header.
If the browser doesn’t send a Referer-header (my browser doesn’t :-D), the user is redirected to /sipa/None and a 404 is rendered.

Thanks a lot for reporting! The redirection explicitly used the referer, although for such cases we already implemented a separate function (redirect_url(default='generic.index')). It just had to be called instead of using the referer explicitly.


Add "callbyname" API call on RPC controller

This PR includes the following:

Adds a "callbyname" API call to a new RPC controller
Adds a test case to test "callbyname".

Thank you, this is really nice.
I have some improvements in mind, we can discuss more here https://github.com/stratisproject/StratisBitcoinFullNode/issues/620


Matching with Build buttons at build.particle.io

Hi,
do you think it makes sense to rename these buttons to match the name they have in build.particle.io?
This change was intended to rename "Compile in cloud and upload code using cloud" to "Upload code using cloud" since this is the behaviour I observe while using the toolbar.
But then I checked what is presented in Build, and wondered why not update the buttons to match it?
thank you
Gustavo.

Hmm I would go the other way and have more verbose tooltips in Build.
@jenesaisdiq what do you think?

Agreed @suda, I love verbosity in tooltips. Let's make Build more descriptive!

Ok then. @gusgonnet I'm gonna update Build tooltips and then we can update this PR :)

great, thank you.
one minor thing to be aware of is that from my observations the button in DEV that says "Compile in cloud and then upload code using cloud" does not seem to be doing the "Compile in cloud" part. It  seems to be flashing the code previously compiled and does not take latest changes.

closing since not needed anymore after discussion


Mac OS - Intel - IDE Bug

On a macOS Big Sur Version 11.71 Intel, the COQ IDE crashes when I try to edit the preferences.

See (https://github.com/coq/coq/issues/15486, https://github.com/coq/platform/issues/217).
The crash should be fixed in the 8.16~beta1 pick in the latest preview release (https://github.com/coq/platform/releases/tag/2022.09.0) but in this release preferences are actually not saved.
I am closing this as duplicate

@projetmbc This is a known bug if you are using any version less recent than the latest beta 2022.09 Coq Platform release. Please let us know if you still have issues with this release.

It seems to work.
Sorry for the noise...

no worries :)


[draft] Removed Comparable from the list of interfaces implemented by Tuple

Closes #2446

It's a draft. Clicked the wrong button.

To be replaced with a proper draft

Ok, thanks! This is an interesting topic, I hope I find some time tomorrow to think a bit about it...

That's definitely way harder than I thought :) the lack of Comparable bubbles up pretty aggressively. I will come back with a proposal (will play around with deriving internal comparators, mostly something along the lines:
Tuple2.comparator(comparator(), Comparators.naturalComparator())

Yes, we had a reason for introducing it. But maybe there is a better/safer solution possible...

I will assign you to the issue in order to mark it as 'occupied'. It helps me organizing the remaining issues for 1.0.0. No pressure, even if you decide not to do it..


Update content for https://covid-alert-temp-just-n-fqbd7o.herokuapp.com/en/location/category/

@dsamojlenko
Please use figma content from https://www.figma.com/file/0CvVmmVb0EhnCmChzel70P/QR-Code-Registration-Website?node-id=179%3A834
French translation coming later.
Merci!

Made the changes based on the figma poster


Geo map issues

Geo map has next issues https://explorer.near.org/nodes/map:

there is server with location of "null" put in the middle of the map
it seems like there is grouping happened around random points on the map when there is no specific location provided
specifically, there is middle of US point with lots of servers and same somewhere in eastern europe
when opening a detailed around server, the only way to close it is to click on another point. It should close when clicking on other places on the map and should if clicked on another point should open it's list (right now it just closes previous one)
not all points hovering works as well
when there is a list, it should be good to on hover to see something as well

will fix after migration indexer

Seems like we don't have map at the moment, feel free to reopen issue if map will get back to Explorer


Refactor protobuf with other header-only serialization library like flatbuffers

Currently libproto.a  is always needed as only library users have to link with.
Possible alternatives: https://github.com/google/flatbuffers

Kind of in low priority as so many things related.


whitepaper: Syncing changes from the 1.0 community review & contribution period.

Thanks everyone for amazing feedback! Apologies for a bit short period, but the paper was sitting for 2y without changes, so it made sense to time box 1.0 and allow structured work on further iterations. We acknowledge there are tons of additional context we can add we plan to cover in the next iterations!
Still, within this community review & contribution period I counted 67 individual contributions (count of comment/suggestion bubbles, excluding my own and not counting individual discussion comments) from old, but also 8 new contributors: @beorn7 @graphaelli @gouthamve @zeitlinger @krisztianfekete @nicolastakashi @vjsamuel and "CK". 💪🏽
High level changes (suggested by community, but also clean up by me):

Note on aggregatability and volume of metrics.
Added non goals
Changing example from temperature to memory gauge
Add reasons for metric efficiency
Added info about cardinality (new section)
Mentioned metric data models
Added info about metric types
Metric time series vs count
Adding profile screenshot
Cleaning up, simplifying correlation section
Removing how to setup Prometheus with exemplars, too specific.
Box based monitoring refactor - changing "closed box" to traditional model mention
Clarified SLO/SLA
Added image and figure captions
More automatic and non-intrusive instrumentation solutions in OSS
Linking ebay paper
Added gap around streaming API, not enough DBs and standarized query language
Did grammarly pass for typos.

...and more.
As mentioned in the doc I went through all additional and old feedback. It's now either addressed in this PR or added as todos in separate issues for 1.X version.
I admit, it was fun to process that doc! Reminds me of year ago when I was, fully focused, writing my book on slightly different topic.
Next Steps

I propose co-chairs @alolita @halcyondude and @RichiH to review and merge this sync if appropriate.
Ask CNCF for tech writing help, so we have professional editing pass on this document.
Copy the resulted doc to tip/draft-whitepaper.md so we can work on additional context (so many opporunities!)
We can announce 1.0!

Friendly ping @alolita @RichiH and @halcyondude.
From next week I am starting 5w paternity leave, so I won't be able to properly address comments or progress on whitepaper myself for that period.

Hi @bwplotka, apologies for the delay, summer resourcing and time away.
Regarding the specific next steps, and shifting what comes next to 1.1 is a reasonable approach that I support.
Thank you all for the work over the span of actual years to bring things to where they are now.

Thank! Any objections @alolita ?

@RichiH asked for one day more for review time.
Final deadline tomorrow morning (:

Any outstanding issues with this, or can we merge it?

I wanted to check https://github.com/cncf/tag-observability/pull/132#discussion_r1336129792 outstanding comment,  but it's not a blocker, so yes. It's ready 🤗 🎉
Sorry for lag, which at the end was not needed 🙈


ban: Refactor and add new option format

PR checklist

[ ] Addresses an existing issue: #0000
[x] New feature, bugfix, or enhancement

[x] Includes tests

[x] Documentation update

Overview of change:
Refactor and simplify banRule. This adds a new config format that allows adding an explanation method to function bans.
Is there anything you'd like reviewers to focus on?
This removes some ancient rather unintentional behavior, where banning foo.bar() would also ban obj.foo.bar() and even fn().foo.bar().
I looked through the git history and PRs for the rule and it seems adding this "feature" was unintended.
The changes made in this rule also affect no-console.
CHANGELOG.md entry:
[enhancement] ban allows to specify an optional explanation message for function bans

what if someone actually wanted to ban obj.foo.bar()?

what if someone actually wanted to ban obj.foo.bar()?

That's really prone to errors, because it would also ban obj2.foo.bar() which may not be the desired behavior. Maybe we could extend the config to take an array for the object property.
For the above example you could then write:
{"object": ["obj", "foo"], "name": "bar"}

bump @ajafff, can you address @nchen63's comments?

@adidahiya I actually did that and messed up a rebase recently ... will fix that

While thinking about #2821 I realized that there shouldn't be an object property. Instead name should be an array like it was before. But instead of limiting it to 2 elements for specifying the qualified name of the banned property, it should be open ended.
That would allow what @JoshuaKGoldberg requested in #2821
{"name": ["chai", "assert", "equal"], "message": "Use strictEqual instead of equal"}

Any thoughts about adding a wildcard to address @nchen63's comment https://github.com/palantir/tslint/pull/2547#issuecomment-293787648 to ban a property globally?
{"name": ["*", "forEach"], "message": "Use a regular for loop instead"}
// bans [].forEach(...) as well as foo.forEach(...), foo.bar.forEach(...) and foo.bar.baz.forEach(...)

But instead of limiting it to 2 elements for specifying the qualified name of the banned property, it should be open ended.

sgtm 👍

Any thoughts about adding a wildcard

also seems fine, as the user is making it explicit that they are engaging in potentially wild behavior 😂

PR updated to allow banning nested methods as requested in #2821 and added a wildcard for method bans


Error when reading Long value from database.

Long value gets persisted as INTEGER sql type which is fine, but is mapped as java.lang.Integer when read from database, then an invalid typecast exception is thrown when converting.
Workaround i found is to use a custom converter to a BLOB type:
public class LongToByteArrayConverter implements Converter<Long, byte[]> {

    @Override
    public Class<Long> mappedType() {
        return Long.class;
    }

    @Override
    public Class<byte[]> persistedType() {
        return byte[].class;
    }

    @Override
    public Integer persistedSize() {
        return Long.SIZE / Byte.SIZE;
    }

    @Override
    public byte[] convertToPersisted(Long value) {
        return ByteBuffer.allocate(Long.SIZE / Byte.SIZE).putLong(value).array();
    }

    @Override
    public Long convertToMapped(Class<? extends Long> type, byte[] value) {
        return ByteBuffer.wrap(value).getLong();
    }
}

Maybe a way to know when to convert back to java's Long is needed.

Thanks good catch. If your entity contains long the conversion should respect that. Will add a fix for this today.

Fixed in latest snapshot version. Thanks for reporting!

No problem!
Em Segunda-feira, 15 de Fevereiro de 2016 22:39, Nikhil Purushe<EMAIL_ADDRESS>escreveu:

Fixed in latest snapshot version. Thanks for reporting!—
Reply to this email directly or view it on GitHub.


Fixes: #52

Pull Request Test Coverage Report for Build 17b4b5245d123e27c32bdb2f5934023e78927625-PR-58

3 of 3 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.7%) to 91.506%

Totals

Change from base Build c21dfdce9c6194e3b2ee29f723500374e095713b:
-0.7%

Covered Lines:
711

Relevant Lines:
777

💛  - Coveralls