Support rolling updates with health checks for docker stacks.

Is your feature request related to a problem? Please describe.
Deploying with docker stacks results in services being unavailable momentarily while the deployment is happening. This is frustrating, and it would be nice if Portainer was able to circumvent this.
Describe the solution you'd like
Finding that solutions like Docker Rollout is a possibility it would be cool if similar functionality was added to docker stacks in Portainer.
Docker Rollout ensures one service is always up during a deployment by using scaling of services. This requires a proxy as it not possible to set container_names and ports as that would make them overlap. I would like similar functionality - or alternatively integrating Docker Rollout into Portainer. It could be an opt-in feature, as it comes with trade-offs that would not be ideal for all.
Describe alternatives you've considered
There is no alternative solution if I want to use Portainer to manage my docker compose deployments.
Additional context
None.

Erm, isn't parallelism or start-first exactly what you need? https://docs.docker.com/compose/compose-file/compose-file-v3/#update_config

Did not know about that. Thanks for sharing :-)

Had a look at this, and the referenced material is for docker swarm. I am asking for similar functionality when using just docker compose. And it is possible as demonstrated by the docker rollout project: https://github.com/Wowu/docker-rollout.
Sorry for the confusion.


add pull request template + compliance check action

Based on an X conversation - it seems there's at least one coding course that instructs students to spam express. Hopefully this can help cut it down.
https://x.com/mmkalmmkal/status/1828811200802816185
I'm not 100% sure the compliance check will actually work with the default GitHub token. If not there may be a free GitHub app that can do something similar.

I'm not 100% sure the compliance check will actually work with the default GitHub token. If not there may be a free GitHub app that can do something similar.

I also think it won't work. Because GITHUB_TOKEN generated by a PR author who has no write access to this repository won't get write scope, so they won't be able to update or create comment in the PR.
We have a similar situation in https://github.com/expressjs/expressjs.com/issues/1553

I also think it won't work. Because GITHUB_TOKEN generated by a PR author who has no write access to this repository won't get write scope, so they won't be able to update or create comment in the PR.

I am not confident of it, but GitHub might allow GITHUB_TOKEN to modify the PR that triggered it in the first place. The problem in that referenced issue might come from the workflow_dispatch trigger, maybe?
I'll try it out on a test repo and report back here.

A few of us have suggested things in this same vein, but we've opted to not go this route.
I'd rather not optimize for the misguided folks and add these gates. It is a good thought, and ty for thinking of us. We close and lock at least a few of these a week, which is the easiest part of the work here 😉

Fair enough!

Yeah, this has been ongoing at a low simmer for a long time now. The one thing I really like from this PR is the disclaimer, which I think if we just did that maybe I would be onboard with.
# STOP! Read this before submitting your pull request
## ⚠ Warning ⚠
This repository is not for educational exercises or trivial changes. Pull requests that do not provide substantial value will be closed immediately.
-->```

Maybe we could just land this alone?


empty ServicesInclude map in default config

empty ServicesInclude map in default config
it's not needed anymore as we are using os-services repo

Going to be obsoleted by a next PR


[RFR] Work around case sensitive node id

Purpose
JYznd is a cased node id and the permissions migration for contributors was failing on it.
Changes
Created a lowercased, unicode version of node permissions and visible contributor ids and used those to do lookups against for contributor migration.
Side effects
Unlikely.
Ticket

Merging because it can only be self-harm.


Move near_* to Aurora non-standard RPC

Remove the Near block hash and Near transaction hash from the standard RPC methods. It has implications on the explorer where it is expecting a specific transaction and block formats.
https://github.com/aurora-is-near/aurora-relayer/blob/d572f7b425572a59e5826fe42eaa986bf9e3c47e/src/indexer.ts#L101

Thanks @mfornet for clarifying the issue. After discussing this with @paouvrard, he asked it would be great to have the new non-standard RPC method callable with ethersProvider.send().
So I will test it first before going to start it working on it.

It has implications on the explorer where it is expecting a specific transaction and block formats.

@0x3bfc Meaning, the extra fields are concretely confusing BlockScout?

I will discuss with @artob the alternatives we can have to keep the database scheme as is.

@0x3bfc The schema per se will remain as is, you just need to add a new stored procedure by copying the existing one and renaming it, and then removing the extra non-standard fields from the output of the original, standard stored procedure.

@0x3bfc Meaning, the extra fields are concretely confusing BlockScout?

Based on the feedback from @mfornet Yes.


attic: init at unstable-2023-10-25

Description of changes
This adds a derivation for https://github.com/zhaofengli/attic that produces the following binaries:

attic
atticdm
atticd

Things done
Not tested yet (only attic --version).
meta.mainProgram is set to attic (the client) since it's probably what most people expect to find building attic.
To be honest this is the first time I package something in Rust that produces multiple binaries and I don't know if it makes more sense keeping all the them in the same derivation or splitting it.
If there are systems where one of the binaries doesn't build/work it could make sense.

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.
@zhaofengli I hope you will appreciate this PR. Are you interested into being a nixpkgs maintainer for this?

Hi, thanks for the PR! I do wish that this is hold off before the first stable release where there could be some breaking changes. I've been putting this off for a while but hopefully I'll have more time this holiday season.

Hi, thank you for the useful application!
Anyway the reason why we want it in nipxkgs is this PR where we don't want to add attic as flake input.
But if it's a just a matter of waiting this holiday season then no problem, if it will take months instead I would prefer that this was merged as it is. I promise I will help (as far as I can with Rust) with another PR when the stable version will be released.

@zhaofengli are there news on this?

Hi, thanks for the PR! I do wish that this is hold off before the first stable release where there could be some breaking changes. I've been putting this off for a while but hopefully I'll have more time this holiday season.

In my opinion that is not a blocker, the package is marked as unstable so it's already explicit there will be breaking changes.

If you agree I can update the package to the latest version and make it ready for reviews.

I'd love to see this packaged, as I'd want to push stuff to our cache using GitHub Actions, but the current way of blindly pulling a specific derivation and using that doesn't feel right, at all. Even adding it as a flake input (and trusting the "staging" Attic Instance as a substituter) results in us having to build attic-client ourselves.
Given that it's explicitly marked as unstable, I also don't really see a reason to further delay packaging. On the contrary, it'd make using attic just so much easier.
In case we really want to delay this further, I'll probably need to push this to my own cache and then fetch binaries from there... Not ideal, but the only alternative.

Apparently this
lockFile = "${src}/Cargo.lock";

was causing an IFD to occur (probably the lockfile is parsed by nix at eval time?) and bot nixpkgs-rev and the CI were failing. Now I copied the lockfile PR's branch and did this
lockFile = ./Cargo.lock;

The nixpkgs manual suggests it (and I found many other packages doing the same).
I also tried adding passthru.updateScript = nix-update-script { }; and manually running it probably expects that the upstream GitHub repository has releases or tags, so it failed and I haven't added it.
~/projects/aciceri/nixpkgs:attic? λ nix run n#nixpkgs-review -- pr 274481
$ git -c fetch.prune=false fetch --no-tags --force https://github.com/NixOS/nixpkgs master:refs/nixpkgs-review/0 pull/274481/head:refs/nixpkgs-review/1
$ git worktree add /home/ccr/.cache/nixpkgs-review/pr-274481-3/nixpkgs 3f86dedcc507143018a900cee727dc64e15df30d
Preparing worktree (detached HEAD 3f86dedcc507)
Updating files: 100% (40430/40430), done.
HEAD is now at 3f86dedcc507 Merge pull request #295182 from r-ryantm/auto-update/earthly
$ nix-env --extra-experimental-features no-url-literals --option system x86_64-linux -f <nixpkgs> --nix-path nixpkgs=/home/ccr/.cache/nixpkgs-review/pr-274481-3/nixpkgs nixpkgs-overlays=/tmp/tmpfpsdvutc -qaP --xml --out-path --show-trace --no-allow-import-from-derivation
$ git merge --no-commit --no-ff 71fac07422fdfe21aa6567680e9e0cfdf13790d2
Automatic merge went well; stopped before committing as requested
$ nix-env --extra-experimental-features no-url-literals --option system x86_64-linux -f <nixpkgs> --nix-path nixpkgs=/home/ccr/.cache/nixpkgs-review/pr-274481-3/nixpkgs nixpkgs-overlays=/tmp/tmpfpsdvutc -qaP --xml --out-path --show-trace --no-allow-import-from-derivation --meta
1 package added:
attic (init at 2024-2-8)

$ nix build --nix-path nixpkgs=/home/ccr/.cache/nixpkgs-review/pr-274481-3/nixpkgs nixpkgs-overlays=/tmp/tmpfpsdvutc --extra-experimental-features nix-command no-url-literals --no-link --keep-going --no-allow-import-from-derivation --option build-use-sandbox relaxed -f /home/ccr/.cache/nixpkgs-review/pr-274481-3/build.nix

Link to currently reviewing PR:
https://github.com/NixOS/nixpkgs/pull/274481

1 package built:
attic

$ /nix/store/6r0bm8shswm9v08kzvq24ib48mx3kxmn-nix-2.18.1/bin/nix-shell /home/ccr/.cache/nixpkgs-review/pr-274481-3/shell.nix --nix-path nixpkgs=/home/ccr/.cache/nixpkgs-review/pr-274481-3/nixpkgs nixpkgs-overlays=/tmp/tmpfpsdvutc

@aciceri I think it would be good to package the tools separately. You can find the individual Cargo.toml files for the respective CLI tools in the folders, for example "client" for attic and "server" for atticd. Maybe you can also have a look at the [package.nix inside the attic repo](https://github.com/zhaofengli/attic/blob/main/package.nix
If you want, I can have a look at splitting up the packages, as well. But that'll probably take at least until the weekend.

@Hayajiro I believe I haven't checked the most obvious place (upstream package.nix) before opening this PR, thanks!
So now it should support darwin and I splitted it into two derivations (atticd and atticadm are together since they are the same crate), I hope that overriding attic-client as I did is a viable approach with the new by-name nixpkgs structure, I took a look at the manual and at the RFC but I didn't find anything about what to do in these cases.
Also I updated version to 0.1.0 as in the upstream derivation, even though there are no releases or tags in the upstream repository, so I'm still using a commit hash as fetchFromGitHub's rev.

Please add me to the maintainer list, thanks!

@ofborg build attic-client attic-server

Hello!
Unfortunately, looks like my PR is failing (ofborg-eval check) because of an error on the attic-client package:
       error: attribute 'cxxabi' missing

       at /ofborg/checkout/1/repo/38dca4e3aa6bca43ea96d2fcc04e8229/mr-est/ofborg-evaluator-4/pkgs/by-name/at/attic-client/package.nix:47:24:

           46|   env = lib.optionalAttrs stdenv.cc.isClang {
           47|     NIX_LDFLAGS = "-l${stdenv.cc.libcxx.cxxabi.libName}";
             |                        ^
           48|   };

https://gist.github.com/GrahamcOfBorg/71643bc5b784eb2a999dd94c7e2209fc

attic-server isn't being built by hydra for aarch64-linux for some reason: https://hydra.nixos.org/eval/1805789?filter=attic-server&compare=1805780&full=
attic-client is fine


⚠ Bofrost.ch has degraded performance

In 9dc2ed1, Bofrost.ch (https://www.bofrost.ch) experienced degraded performance:

HTTP code: 200
Response time: 2486 ms

Resolved: Bofrost.ch performance has improved in 540897e.


Assignment Branch Condition size for hashes

Say I need to create a big hash for API response. This is an example:
def hello
{
  a: a,
  b: b,
  c: c,
  d: d,
  e: e,
  f: f,
  g: g,
  h: h,
  j: j,
  i: i,
  k: k,
  l: l,
  m: m,
  n: n,
  o: o,
  p: p,
  q: q,
  r: r
}
end

Rubocop complaints that assignment branch condition is too high, but there is no actual assignment (apart from hash keys) and certainly no branches or conditions.
What one is supposed to do in this case?

"Branch" in the ABC metric doesn't mean conditional route through the code, tt means a function call. So it's all the calls to the method b that generate the high number. I'm guessing this is a made-up example, not your real code, so it's difficult to come up with good advice how to decrease the ABC size.

Okay, here what actual code looks like:
def prepare_purchase_params(options)
  {
    sum: receipt.sum_with_discount,
    cashbox: cashbox,
    receipt_uuid: receipt.uuid,
    purchase_positions_attributes: prepare_receipt_positions(receipt),
    is_return: options[:receipt_uuid].present?,
    user_id: options[:user],
    card_number: options[:card_id],
    certificate: options[:certificate],
    pin_code: options[:pin_code]
  }
end

After splitting it to a few methods Rubocop accepts it but the code doesn't look much better. Maybe even more convoluted.

Perhaps you're looking at the problem too narrowly if you just try to refactor the method so that it passes inspection. It might be a good time to look at the data design. Why is the hash so big? Should all these values really be properties of a purchase? There's a reference to a receipt, but there's also a sum, which can be retrieved from the receipt. Should card_number and pin_code be moved to a new CreditCard type? I don't know the context, so I'm just asking.
If, in the end, you decide that the design is fine as it is, then a local disabling with # rubocop:disable Metrics/AbcSize could be the way to go. This is a large method in ABC terms, but perhaps it's exceptional in that way and your other methods can be inspected with a low threshold for this metric.

Thanks, was wondering what the general consensus here

Perhaps you're looking at the problem too narrowly if you just try to refactor the method so that it passes inspection. It might be a good time to look at the data design. Why is the hash so big? Should all these values really be properties of a purchase? There's a reference to a receipt, but there's also a sum, which can be retrieved from the receipt. Should card_number and pin_code be moved to a new CreditCard type? I don't know the context, so I'm just asking.
If, in the end, you decide that the design is fine as it is, then a local disabling with # rubocop:disable Metrics/AbcSize could be the way to go. This is a large method in ABC terms, but perhaps it's exceptional in that way and your other methods can be inspected with a low threshold for this metric.

yo this is life saver haha

Better comment on #8986.
Note that the example given passes with default settings.


No sound on the Zenquencer

Explorer Alpha build version: 0.3.335-g8f637032-main
This old musical contraption doesn't emit any sound

Issue Description:

Steps to reproduce:

Go to dclexperience.dcl.eth
Walk out to -1, 5
Click on some of the tiles to activate them
Click on any of the blocks on the panel to start playing a loop that uses those tiles as musical notes

Expected behaviour:
I should hear a soothing glassy sound each time I activate on of the notes on the sequencer, and also when I click the panel to turn it on.
Current behaviour:
I see the animations happen, the sequence is working fine, but I don't hear any sounds for the musical notes being played
Reproduction rate:

[ ] < 10%
[ ]  < = 25%
[ ]  50%
[ ]  < = 75%
[x ]  100%

Severity:

[ ] Cosmetic
[ x ] Minor
[ ] Medium
[ ] High
[ ] Critical
[ ] Blocker

Priority:

[ ] High
[ ] Medium
[ ] Low

Platforms / OS:

[ x ] Windows 11
[ ] Windows 10
[ ] Mac Sonoma
[ ] Mac (specify the version on Additional Notes)

Evidence:
Additional Notes:

@anicalbano can we verify this works properly in unity renderer ?

@m3taphysics @anicalbano I can confirm that if I visit dclexperience.dcl.eth with the old client, the sound does work well there
Each time activate a droplet on the grid or play the loop, I hear the sound (when the droplet hits the water's surface)

I am currently unable to hear the sounds on latest version 0.3.402-g7a23dc7e-main


add slope threshold parameter

Dear qcodes people,
I hope to have done the git things correctly this time.
This pull request simply add two parameters to control the slope threshold.
Thanks.
Étienne.

Dear all,
Should I do something else about this pull request?
Thanks.

@edumur Sorry for the delay. Has been very busy with other stuff. Left some comments inline. Would you also be able to look into why the tests are failing in CI


ISR safe mcpwm_set_duty or mcpwm_comparator_set_compare_value (IDFGH-8314)

Is your feature request related to a problem?
I have an application where I am producing a sine wave by modulating a PWM signal, think something like this. As far as I understand something like the RMT peripheral is not viable since I need feedback to regulate the output.
I have been using MCPWM for generating PWM(the IDF 4.4 version).
For changing duty at regular intervals what I have tried so far is:

Busy looping - Inconsistent timing
High Resolution Timer - causes irregularity once every about 205ms, I believe because of some Wifi stuff
General Purpose Timer - Excelent consitency however, executes code in ISR context, MCPWM functions are not safe in this context(?)

Describe the solution you'd like.
Just like adc_oneshot_read_isr add something similar to mcpwm to allow updating the duty/compare value from ISR context.
Describe alternatives you've considered.
See above
Additional context.
I am happy to try implementing this if you think it would be a good idea. I am open to other suggestions as well.

Judging by the call to portENTER_CRITICAL_SAFE in mcpwm_comparator_set_compare_value, is this already ISR safe?

Hi @usbalbin I'm afraid the mcpwm_comparator_set_compare_value can't be used in the interrupt context without replacing the ESP_RETURN_ON_FALSE into ESP_GOTO_ON_FALSE_ISR and place that function into IRAM. However, even we have made that function to be IRAM safe, it still has overhead that we don't like to (too many parameter check)
How do you like it if we allow the user to update the compare value in the mcpwm_compare_event_cb_t callback function? Simply by having a new_compare_val member in the mcpwm_compare_event_data_t.
Then the callback function would look like:
static bool test_compare_on_reach(mcpwm_cmpr_handle_t cmpr, mcpwm_compare_event_data_t *ev_data, void *user_data)
{
    // update to new compare value
   ev_data->new_compare_val = xxx;
    return false;
}

Hi @usbalbin I'm afraid the mcpwm_comparator_set_compare_value can't be used in the interrupt context without replacing the ESP_RETURN_ON_FALSE into ESP_GOTO_ON_FALSE_ISR and place that function into IRAM.[...]

Oh.

[...] How do you like it if we allow the user to update the compare value in the mcpwm_compare_event_cb_t callback function? Simply by having a new_compare_val member in the mcpwm_compare_event_data_t. [...]

In my use case the PWM will run at atleast 20kHz. When setting the duty I have to run PID and some other basic math to calculate the duty (~40us from my measurements can probably optimize it a bit lower) and an AD read (~50us in my test) so roughly about 90us in total. I believe doing that at 20kHz (50us) might be cutting it a bit tight unless I am missing something... At the same time I would like to try and keep updating the duty somewhere very close to every 100us.
Or am I aproaching this the wrong way?
Btw I am using a ESP32 so I do have access to two cores and dedicating Core1 to this would be fine with me.

Even if this might perhaps not be the case for the majority of users, I intend on using this from the rust language and will most likely try to put this function behind some thin abstraction that using the type system(think something like esp-idf-hal) will ensure the user is unable to pass bad paramters. So I would be fine with less checks at run time.

I could probably go down to only updating the duty every 200us in case that would make things easier. The most important thing is that there are no interruptions as large as several (duty setting)periods.

Thank you a lot!


minecraft-server: MOTD not overriding the server MOTD

Thanks so much for the docker container!
When I start the container like this:
docker run -d -it -p 25565:25565 --name mc -e EULA=TRUE -v ~/minecraft-data:/data -e ICON=<some-image> -e 'MOTD=An Overriden Message' itzg/minecraft-server

The ICON is overridden but the MOTD remains A Minecraft Server Powered by Docker.
Am I doing something wrong?

You're using it right, so I'll look into this.

I've never seen a sed command that looks like this. Usually you would need an s/…/… for substitute. Does that actually work?

Yeah, I was having some fun with sed there :). The c command replaces the entire line that was matched. That way it matches and fixes up even lines that are commented.

It works fine for me...but then I tend not to map the /data volume myself. If you had a ~/minecraft-data/server.properties file before running the container, it'll leave your file untouched.
To test this theory out, stop any minecraft-server containers, move away the contents of your ~/minecraft-data and then run a new container.
Here's the sequence for my test:
docker run -d -it -p 25568:25565 --name mc20150609 -e 'MOTD=A Different One' -e EULA=TRUE itzg/minecraft-server

and then check the properties' motd:
$ docker exec mc20150609 cat /data/server.properties|grep motd
motd=A Different One

and check in the client:

:facepalm: I can't believe I missed the -e conditional there.
What's the purpose of that? It feels like it just makes it a little harder to iterate on getting the container up and running?

but then I tend not to map the /data volume myself

How do you persist your world data between the container going down and up?

Which -e conditional do you mean?
As for persisting world data, something that clicked for me later down the road was that Docker containers do always persist their filesystems. In fact...if you do a docker inspect on a container it'll reveal the paths, but the main one per container is /var/lib/docker/containers/<container id>.
You can always docker exec -it <container> bash to get a shell "inside" the container. I use that to install Forge plugins, etc.

Which -e conditional do you mean?

The one where you check if server.properties exists. :)

As for persisting world data, something that clicked for me later down the road was that Docker containers do always persist their filesystems. In fact...if you do a docker inspect on a container it'll reveal the paths, but the main one per container is /var/lib/docker/containers/.
You can always docker exec -it  bash to get a shell "inside" the container. I use that to install Forge plugins, etc.

Ah. I had no idea. I'm still getting used to docker.

Is there any reason to not update server.properties in place every time?

My logic was: generate the initial copy using the -e environment settings...but after that assume the user has made manual tweaks and avoid blowing them away.

...we could add another option to tell it to adjust the properties on every docker start or restart :)

...we could add another option to tell it to adjust the properties on every docker start or restart :)

heh.

I think it's fine how it is now.

Awesome :)


AttributeError: module 'tensorflow.contrib' has no attribute 'distribute'

When I include mirroring strategy using following code -
Build the Estimator
distribution = tf.contrib.distribute.MirroredStrategy()
config = tf.estimator.RunConfig(train_distribute=distribution)
model = tf.estimator.Estimator(model_fn,config=config)
I get the error - AttributeError: module 'tensorflow.contrib' has no attribute 'distribute'
I tried this with both Tensorflow 1.7 and 1.8 - I get the same issue. I am using Python 3.6 https://colab.research.google.com/ .

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
TensorFlow version
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce

Colab reasearch has v1.7. It has no module called distribute, so you should use that code with 1.8 and it works(tested).
https://github.com/tensorflow/tensorflow/tree/r1.7/tensorflow/contrib/distribute

Thank you for your comments! This was the issue happening only on Colab server. When I moved to my P2.8xlarge instance on AWS, it works fine there. Thank you for all your help and comments!


change argument names

to more generic names (i.e., src/target, controller/controlled, whichever)
check to make sure other code doesn't break in webapp/brat vis, etc
coord with @kwalcock to make names work with JSON-LD reps

DirectedRelations may well stick with causal, so cause and effect are likely fine for now.  Correlation was moved to UndirectedRelation
todo: do we still need to change args?

In the JSONLD we have sources and destinations as generic terms.  It seems like one can only only conclude that these are cause and effect by noticing that the rule which produced them is a causal rule.  We're getting more rule types and other groups will need to know the role of the source and destination without having to decipher a rule.


update spec to 1.4.12

Fixes # .
Motivation

Solution

Open questions

Pull Request Test Coverage Report for Build 15794

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 77.881%

Totals

Change from base Build 15686:
0.0%

Covered Lines:
8514

Relevant Lines:
10932

💛  - Coveralls


fix several typos about redundant words

This PR fixes several typos about redundant words like an an and the the in documents or annotations.

While reading the document, I unintentionally noticed a typo like these, so I further filtered them by several redundant word patterns.
I am not sure whether such changes are acceptable as they are relatively trivial, but they are indeed there.

Thank you @x2018!


Start using the GetProject from lib-common

recheck

I looked through the logging job CI output. Unfortunately the pod logs got moved recently (temporarily) and I can't find them. What I found is, that the CI fails when waiting for lokistack to get ready:  https://logserver.rdoproject.org/13/413/dc779373794eaf1c9dcf88bbb5e2837cee700015/github-check/telemetry-operator-multinode-logging/28c276d/controller/ci-framework-data/logs/pre_deploy_deploy_logging_dependencies.log
Looking at the describe of loki-operator, I can see the operator is restarting for some reason (this is where pod logs would be helpful): https://logserver.rdoproject.org/13/413/dc779373794eaf1c9dcf88bbb5e2837cee700015/github-check/telemetry-operator-multinode-logging/28c276d/controller/ci-framework-data/logs/openstack-k8s-operators-openstack-must-gather/namespaces/openshift-operators-redhat/pods/loki-operator-controller-manager-766f55c8f4-jk6s8-describe
I think I managed to replicate the issue in my env though. These are some logs from the loki-operator I got:
{"_ts":"2024-06-19T11:29:25.176100618Z","_level":"0","_component":"loki-operator_controller-runtime_source_EventHandler","_message":"failed to get informer from cache","_error":{"msg":"failed to get API group resources: unable to retrieve the complete list of server APIs: cloudcredential.openshift.io/v1: the server could not find the requested resource"}}
{"_ts":"2024-06-19T11:29:25.651730243Z","_level":"0","_component":"loki-operator","_message":"Could not wait for Cache to sync","_error":{"msg":"failed to wait for lokistack caches to sync: timed out waiting for cache to be synced for Kind *v1.CredentialsRequest"},"controller":"lokistack","controllerGroup":"loki.grafana.com","controllerKind":"LokiStack"}
...
{"_ts":"2024-06-19T11:29:25.655368858Z","_level":"0","_component":"loki-operator","_message":"problem running manager","_error":{"msg":"failed to wait for lokistack caches to sync: timed out waiting for cache to be synced for Kind *v1.CredentialsRequest"}}

It looks to me like we're missing some CRD in the cluster for some reason. This may be some kind of crc issue :thinking:

recheck

/lgtm


36 feature blog section

Changes:
Server:
Changed interviewdetailview and interview model so that reverse lookup of interview from content model works with one to one field
Client:
Added subcomponent to Blogitems for modularity
Linked categories and bloglist API to main view page
Routed clicking on blog items on blog page to lead to interview pages
Linked Interview API to get the id number from the router url

다 좋은 것 같아!! 일단은 구욷 ㅋㅋㅋㅋㅋㅋ
근데 우리 짧게 시간 내서 404 page 만들어야되지 않을까 게시글 생성이 어떤 식으로 될지는 모르겠지만 지금은 if a content is not linked to an interview and it is clicked, an error pops up jsyk
nvm if this is somehow going to be prevented in the content upload process

good idea! We can just make a simple one or smth, right now it doesnt have to be fancy. Theoretically a content not linked to an interview should never happen, but just to be on the safe side.


fix: trufflehog --only-verified

Recently multiple false positives reported for trufflehog v3: https://splunk.slack.com/archives/CRTNPEZ4M/p1717405810934429
Let's add --only-verified flag to callout to avoid multiple fp for now. Final solution need to be established/reviewed with prodsec.
More info on secrets verification in trufflehog: https://trufflesecurity.com/blog/how-trufflehog-verifies-secrets
Tests: https://github.com/splunk/splunk-add-on-for-microsoft-office-365/actions/runs/9399856169

@mkolasinski-splunk, directly to main?

@artemrys yes - as a bugfix

:tada: This PR is included in version 4.16.7 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


ApplyTransform should support async transfomers

https://github.com/CodeshiftCommunity/CodeshiftCommunity/blob/1a4a3cc09392be62d79b37116f9c63612e760361/packages/test-utils/src/apply-transform.ts#L9
https://github.com/facebook/jscodeshift/issues/454

Available in the latest


How to solve the problem that the unsupported operations

Describe the problem
I want to convert my project to xxx.tflite,but i meet the problem blew "Didn't find custom op for name 'FLOOR'". So how to solve this problem?
Source code / logs

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
TensorFlow version
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce

It has been 16 days with no activity and the awaiting response label was assigned. Is this still an issue?

It has been 16 days with no activity and the awaiting response label was assigned. Is this still an issue?

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue?

We are closing this issue for now due to lack of activity. Please comment if this is still an issue for you. Thanks!


[FEATURE REQUEST] Make telemetry parameters configurable in application parameters

Is your feature request related to a problem? Please describe.
Telemetry parameters like TelemetryProvider and LogAnalyticsWorkspaceId are currently not available in de application manifest XML and can therefore not be overridden when the application is deployed.
Describe the solution you'd like
Make the telemetry parameters available in ApplicationManifest.xml

This will ship in 3.2.14. This is a breaking change for existing Telemetry settings that exist in Settings.xml today. Those settings will need to be overridden in ApplicationManifest.xml, so that related App parameters will host the setting values, specified in their DefaultValue attributes. Both Settings.xml and ApplicationManifest.xml will be commented to reflect this to make sure it is understood.

@GitTorre thanks. Shouldn't the ClusterObserverApp application manifest XML be updated as well? In your commit I see only changes in the FabricObserverApp

Yes. We will update CO as well. The feature is still in development and testing. Thanks for the reminder.

@negberts  CO support pushed to develop. Please give it a try (CO and FO) if you have time. Ensure it works for your scenarios (it should).

@GitTorre looks good to me! :-)

@gittorre Thank you for implementing this. Are the assets for cluster observer missing in the release?

Yes. Will correct. Sorry about that.

@negberts CO SFpkgs uploaded to Release.

@gittorre some observations:
In Application Insights all health events are logged with state Invalid:

Probably because Invalid is 0 and Ok = 1 in the enum... I should expect them to be logged as Ok.
And it would be nice if we had some loglevel setting that only warnings and errors would be sent to application insights / log analytics so we can create alerts.

These are raw metric data events. HealthState of the related entity is not considered. If the metric value meets or exceeds a specified threshold, then you will see Warning or Error or Ok events in the case where the usage has gone below the threshold in a subsequent run. This is by-design behavior.
If you don't want raw telemetry, then, yes, a new setting would need to be added to only emit telemetry that carries HealthState, so only when an entity is in Warning, Error or has recovered. That would mean you wouldn't be able to query for usage over time, which is useful to do. However, if the concern is telemetry volume, a valid concern, then adding such a pre-filter is useful. You would need to be comfortable only getting Warning/Error and recovery (as Ok) telemetry. Nothing prevents you from creating alerts today as unhealthy events are emitted in addition to raw telemetry.

Aren't the events also stored in Azure Storage? Because yes, the concern is the telemetry volume...  So than we can say that the raw telemetry is still in Azure Storage and the unhealthy events are only in Application Insights/Log Analytics? Would be a nice feature for me...

These events are not also present in storage account. These are specifically LogAnalytics or ApplicationInsights telemetry events, depending upon your configuration.

@negberts This feature is available in develop branch if you want to check it out. You can disable metric telemetry data for 5 observers individually in ApplicationManifest.

@gittorre wow thanks :-) Next week on holidays but will check it out after that!

@gittorre took me some time, but looks good to me :-)


composer: use PSR-4 autoload

PSR-0 is deprecated over a year

Doctrine generally accept PSR-0 only.
They are one of the few FIG members that voted against PSR-4 due to its confusing prefixing/path matching syntax.

Not really:

https://github.com/doctrine/migrations/blob/7eb674d75e3d92e86d92c868d8f84fd99095a5ee/composer.json#L27-L36
https://github.com/doctrine/doctrine2/blob/b1451cda5253f34bf2eca146bbfabd7c6448da1c/composer.json#L33-L38

But I've heard different doctrine repositories are under different maintainers, thus different rules.
Also, since it works, I see no reason not to use it.

Well, if so I'm ok with your PR @TomasVotruba :+1:
@Ocramius what do you think about this?

This is fine when it doesnt move the files up to the topmost namespace or just into lib/, so :+1: from me

:+1: Thanks

Now I know, thanks @beberlei :)


Add an ability to display BottomSheetComponent from the top of the screem

Hey @lodev09 !
Thanks again for such a cool package with native transitions. Is it possible to add a new prop, inversed, which will allow rendering Bottomsheet components starting from the top of the screen (top inset)? Right now, the library only supports the default slide-up effect from bottom to top. I didn’t find this functionality in other non-native libraries, but I believe it’s possible to add it here.

Hey, thanks for the feedback.
Regarding your request, there's no simple way of achieving it natively. It's certainly possible but requires lots of custom code to achieve. I'm trying to keep this package simple as possible.
You could, however, create a custom one using reanimated.


Pull is not working

I'm trying to send Trade command from my c# application via NetMQ. (32768 port)
after 8 hours, no hope. Any idea?
      ``  using (var pushSocket = new PushSocket(">tcp://localhost:32768"))
        {
            pushSocket.Options.SendHighWatermark = 1000;
            pushSocket.Options.Linger = TimeSpan.FromSeconds(0);

            bool success = pushSocket.TrySendFrame(TimeSpan.FromSeconds(10), order.GetMessage());
            // pushSocket.SendFrame(order.GetMessage());
        }``

Hi,
sorry, I can't offer concrete advice about NetMQ.
However, we are currently in the process of writing an alternative to the ZeroMQ connector, which will just use files for communication with MT4 (or MT5). This reduces the third party dependency and makes it much easier to implement solutions in other programming languages. We will publish versions in python, java and C#.

Hi,
sorry, I can't offer concrete advice about NetMQ.
However, we are currently in the process of writing an alternative to the ZeroMQ connector, which will just use files for communication with MT4 (or MT5). This reduces the third party dependency and makes it much easier to implement solutions in other programming languages. We will publish versions in python, java and C#.

I can managed to do two-way communication between MT4 and .Net Core 5with  Request and Pub/Sub patterns. But communication is async. It works on live system, but does not work at Expert Advisor Strategy Test. I am waiting your implemantation impatiently. Thx.

I can managed to do two-way communication between MT4 and .Net Core 5with  Request and Pub/Sub patterns. But communication is async. It works on live system, but does not work at Expert Advisor Strategy Test. I am waiting your implemantation impatiently. Thx.


Move internal shortcodes and templates into individual files

Hello,
At the moment, all the internal shortcodes and templates are inlined in a single file: template_embedded.go.
Proposal
Move the shortcodes and templates from:
hugo/tpl/tplimpl/template_embedded.go

to:
- hugo/tpl/tplimpl/
    template_embedded.go
- hugo/tpl/tplimpl/internal_shortcodes/
    figure.html
    ..
- hugo/tpl/tplimpl/internal_templates/
    opengraph.html
    ..

The template_embedded.go will still be there, but now instead of inlining all the code in there, it will loop through all the files in internal_shortcodes and internal_templates and read those in. That should be possible, right?
Advantages

Easier to read internal shortcodes and templates as they can now be nicely indented.
Supporting editors can now show the syntax highlighting appropriately for the Go templates.
Clean git history specific to each shortcode and template.

Disadvantages
??

Another advantage: Easier to unit test.

That should be possible, right?

Yes, but it sadly involves an extra "go generate" build step. But I think it's still worth it, so I will do it.

Awesome! Thank you!


Canvas file as folder "note"

Allow the Canvas file to be the folder note! Use same logic as for .md file but allow .canvas extension.

LostPaul's Folder Note supports this feature


Get Media File from Webhook?

how can i get media file from webhook event ?
I only got .ENC file URL
as i see media stored at /storages folder, can i access it by url?

Hello bro @mahmoodmomani thanks for raising an issue, Now you can download media via
here is the details PR https://github.com/aldinokemal/go-whatsapp-web-multidevice/issues/50

Thanks bro !!
can you do samething to sticker?

Fixed here https://github.com/aldinokemal/go-whatsapp-web-multidevice/pull/54


Wrong foreign key DDL

System information:

DBeaver version 7.3.3 EA

Connection specification:

Database name and version Informix

Steps:
Open a table DDL with a foreign key
Expected: https://www.ibm.com/support/knowledgecenter/SSGU8G_14.1.0/com.ibm.sqls.doc/ids_sqs_0301.htm
Actual result:
CREATE TABLE stores_demo:informix.detail (
	col_one integer,
	col_twain char(1),
	FOREIGN KEY (col_one) REFERENCES stores_demo:informix.master(col_one) **ON DELETE CASCADE ON UPDATE RESTRICT** CONSTRAINT detail_fork1
);
CREATE INDEX 169_159 ON stores_demo:informix.detail (col_one);

Fixed in 21.0.1

Fixed. Finally.

Also PK and UK DDL inside table fixed in EE version ("CONSTRAINT" word removed)

verified


Nitesh Thapliyal

Due we close new issues on PR merge and voting is still possible on closed issues I will close this one.


Error:  module is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram

since PR #129 was merged, the follow error occurs during pnpm build:
Error:  module is a string value; tsconfig JSON must be parsed with parseJsonSourceFileConfigFileContent or getParsedCommandLineOfConfigFile before passing to createProgram   at Object.createProgram (node_modules/.pnpm/typescript@5.5.2/node_modules/typescript/lib/typescript.js:123997:15)   at getDeclarations (node_modules/.pnpm/mkdist@1.5.2_typescript@5.5.2_vue-tsc@2.0.21/node_modules/mkdist/dist/index.mjs:302:22)   at process.processTicksAndRejections (node:internal/process/task_queues:95:5)   at async mkdist (node_modules/.pnpm/mkdist@1.5.2_typescript@5.5.2_vue-tsc@2.0.21/node_modules/mkdist/dist/index.mjs:526:35)   at async mkdistBuild (node_modules/.pnpm/unbuild@2.0.0_typescript@5.5.2_vue-tsc@2.0.21/node_modules/unbuild/dist/index.mjs:927:22)   at async _build (node_modules/.pnpm/unbuild@2.0.0_typescript@5.5.2_vue-tsc@2.0.21/node_modules/unbuild/dist/index.mjs:1086:3)   at async build (node_modules/.pnpm/unbuild@2.0.0_typescript@5.5.2_vue-tsc@2.0.21/node_modules/unbuild/dist/index.mjs:945:5)   at async Object.run (node_modules/.pnpm/@nuxt+module-builder@0.8.0_@nuxt+kit@3.12.2_nuxi@3.12.0_typescript@5.5.2_vue-tsc@2.0.21/node_modules/@nuxt/module-builder/dist/chunks/build.mjs:43:5)   at async runCommand (node_modules/.pnpm/citty@0.1.6/node_modules/citty/dist/index.mjs:3[16](https://github.com/vernaillen/wpnuxt-module/actions/runs/9625279744/job/26549993605#step:9:17):16)   at async runCommand (node_modules/.pnpm/citty@0.1.6/node_modules/citty/dist/index.mjs:307:11)
This seems to be the same issue as this:
https://github.com/nuxt/module-builder/issues/297

This is caused by the Typescript update to 5.5.2.  The error is gone after downgrading Typescript to 5.4.5


Find and replacement is not real-time rendering like neovim

find and replacement in vscode-neovim:

find and replacement in neovim

As can be seen, in neovim the find and replacement result is rendering in real time, but not in vscode-neovim.

Duplicate of https://github.com/vscode-neovim/vscode-neovim/issues/329


Slow scrolling for binary file opened as text

Issue Type: Bug
Steps

Open this binary file in VS code: img.ping.txt
Select that you want to open it as text. It should open as utf-8
Try scrolling through the file

Bug
Notice a lot of scrolling slow down and jitter. Profile-20181101T184133.json.zip
Seems that viewLine is triggering a layout that takes over 150ms while scrolling.
Similar to #47683
VS Code version: Code - Insiders 1.29.0-insider (d7ac6e838f51a03f7d417b4758f5fb075878d615, 2018-11-01T06:11:43.390Z)
OS version: Darwin x64 18.0.0

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-4770HQ CPU @ 2.20GHz (8 x 2200)

GPU Status
2d_canvas: enabledchecker_imaging: disabled_offflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: enabledrasterization: enabledvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
3, 3, 3

Memory (System)
16.00GB (0.02GB free)

Process Argv

Screen Reader
no

VM
22%

I agree this is slow as hell, but there is nothing I can think of to improve things for rendering such a range of characters (invalid ones as well). Most of the time is spent by Chromium doing layout... A possible user workaround is to enable word wrapping to limit the amount of text rendered in the viewport.

@alexdima I no longer see the file above slow with scrolling, but I am seeing really slow jittery scrolling with this json file:
vscode-debugadapter.zip

@eamodio I have looked at your sample file and profiled the scrolling, but there is nothing jumping out. That is a file with very many long lines. In fact, there are long patches of lines with over 10k characters. This is kind of the worst case scenario, given we haven't implemented horizontal virtualization. So even if the viewport only contains 200 characters horizontally, the entire 10k characters are painted, so rendering is a lot slower, especially when scrolling vigorously and all old lines are removed from the viewport and all new lines are inserted.
I have to be honest and say that I won't do any changes to address these worst-case files... The only changes I could do would be to implement horizontal virtualization, but that only for ASCII lines and monospace fonts, but I don't plan to do that as part of a bug-fix.
All in all, the honest thing is for me to close this issue as I won't do anything to target it.


config/ and Makefile bundle variables are out of date

It appears that this repo has been modifying bundle/ without modifying config/
Updates should be put into config/ first, and then run make bundle to generate an update bundle/
For example see here
where we are updating config/rbac/role.yaml
The changes are propagated to bundle/ for you.

TL;DR
please do not make changes to bundle/ by hand. Make them in config/ then run make bundle
Tips:
clusterserviceversion in bundle/ generated by make bundle pull values from both config/ and Makefile
For example, bundle channels, operator image tags (ie. podman pull URL) are pulled from Makefile.
https://github.com/konveyor/tackle2-operator/blob/e72591abb03b784d00beeef86c0ef19ff0637e36/Makefile#L22-L42
You will note that utilizing config/ like example above should make editing clusterserviceversion easier for you since you can just edit role.yaml without worrying about its indentations in relations to the final clusterserviceversion yaml.

Note that the IMAGE_TAG_BASE is currently incorrect as I doubt konveyor.io is a valid container registry
https://github.com/konveyor/tackle2-operator/blob/e72591abb03b784d00beeef86c0ef19ff0637e36/Makefile#L37-L42

IMAGE_TAG_BASE is what should be use for what is currently IMG IIUC

It's great to own all the steps of catalog/bundle creation/updates but I personally do not believe it is worth the maintenance required to own so many scripts to update CSV and manage releases, and to replicate operator-sdk run bundle as you're still operating within this OLM ecosystem. But that's just my 2cents :D

@kaovilai your last comment confuses me. It sounds like in prior comments you're advocating we make updates to config and run make bundle rather than editing the CSV directly, yet you go on to say, ...I personally do not believe it is worth the maintenance required to own so many scripts to update CSV and manage releases...
Can you clarify what you think is wrong with the process we're using and what you're advocating we do i the future?

I'm saying we should be able to reduce/eliminate

https://github.com/konveyor/tackle2-operator/blob/main/hack/install-tackle.sh
https://github.com/konveyor/tackle2-operator/blob/main/tools/konveyor-operator-publish-commands.sh
https://github.com/konveyor/tackle2-operator/blob/main/tools/cut-release.py
https://github.com/konveyor/tackle2-operator/blob/main/tools/push-release-metadata.py
https://github.com/konveyor/tackle2-operator/blob/main/tools/tackle-cleanup.sh
https://github.com/konveyor/tackle2-operator/blob/main/tools/templates/clusterserviceversion.yaml.j2
https://github.com/konveyor/tackle2-operator/blob/main/tools/templates/bundle.Dockerfile.j2
https://github.com/konveyor/tackle2-operator/blob/main/tools/templates/annotations.yaml.j2
https://github.com/konveyor/tackle2-operator/blob/main/tools/templates/tackle-k8s.yaml.j2
etc...

to less than 10-15 lines in the makefile utilizing what is already built into operator-sdk

in addition to editing bundle/CSV via config/

See https://github.com/kaovilai/oadp-operator/blob/edge/.github/workflows/edge-catalog.yml
I am able to periodically update an existing catalogsource with a new upgradable version with very minimal scripts to cut releases.

Thanks for clarifying. I can't speak to why almost any of those were created.
I take issue with https://github.com/konveyor/tackle2-operator/blob/main/tools/konveyor-operator-publish-commands.sh though. This script is doing a lot more than editing the CSV. It is creating PRs against community-operators and community-operators-prod. It's also replacing tags with SHAs so we work in disconnected. It is possible parts of it could be replaced but I don't think it can be eliminated.

Replacing SHAs for disconnected can be done with operator-sdk generate bundle --use-image-digests when config/ is setup properly and the manager.yaml has RELATED_IMAGE_<> setup even with tags, it will replace with shas for you.

at least if I understand that correctly.

We're not looking to have SHAs in bundle for latest though. It seems like it would be almost impossible to keep it up to date with all the other repos rebuilding on every commit. The desire for SHAs is purely for releases publish to community-operators(-prod).
Having said that it seems like we could run this with operator-sdk generate bundle --use-image-digests ... in [konveyor-operator-publish-commands.sh](https://github.com/konveyor/tackle2-operator/blob/main/tools/konveyor-operator-publish-commands.sh) when we want to pin SHAs though.
Do you have a sense of how much updating config/ needs to get back in sync with other changes that have been made? I'm not opposed to this proposal. If we can run a one line operator-sdk command to get the same effect and eliminate 9-10ths of that script it works for me.
Someone just needs to take the time to put config back in sync, figure out what all this other stuff is being used for, make sure we're not breaking anything by removing it, and clean up.
I will say allow easy maintenance of bundle/ seems kind of meh to me in most regards.
As far as I know we're not using scorecard for anything. Effectively leaving four whole files to edit; two we basically never touch. It's not really hard... but I don't disagree there are potential benefits. The script I've pointed to is kind of blinding and I'd be happy to see it mostly go away, for instance.
bundle
├── manifests
│   ├── konveyor-operator.clusterserviceversion.yaml
│   ├── tackle.konveyor.io_addons.yaml
│   └── tackle.konveyor.io_tackles.yaml
├── metadata
│   └── annotations.yaml
└── tests
    └── scorecard
        └── config.yaml

We're not looking to have SHAs in bundle for latest though.
--use-image-digests is optional and you can just use it on release branch/tags :)

I would be happy to take this on passively in my spare time. Again no rush.. just pointing out the rainbows.. even if its not much prettier.

Do you have a sense of how much updating config/ needs to get back in sync with other changes that have been made?

maybe 10ish files.. you can easily reverse existing bundle/csv into config/


talk more about replacing with regEx

I think it is better to talk more about replacing with regEx especially replace a captured group with name like (<pet>dog|animal).
thanks.

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

ID: b53053a2-c37a-99a8-fdaf-7322de927cf8
Version Independent ID: 55a43af3-3743-9c8f-bf24-50301db7c37c
Content: Use regular expressions in Visual Studio - Visual Studio
Content Source: docs/ide/using-regular-expressions-in-visual-studio.md
Product: visual-studio-dev15
GitHub Login: @gewarren
Microsoft Alias: gewarren

@mostafa8026 Thanks for the suggestion.

~12K page views per month = P0


fuse: support CAP_EXPORT_SUPPORT flag

Codecov Report

Merging #2382 (110cbff) into main (d1c93c5) will decrease coverage by 0.09%.
The diff coverage is 14.28%.

@@            Coverage Diff             @@
##             main    #2382      +/-   ##
==========================================
- Coverage   61.65%   61.56%   -0.10%
==========================================
  Files         137      137
  Lines       25443    25500      +57
==========================================
+ Hits        15687    15698      +11
- Misses       7926     7966      +40
- Partials     1830     1836       +6

Impacted Files
Coverage Δ

pkg/fs/fs.go
78.03% <0.00%> (-0.20%)
:arrow_down:

pkg/meta/base.go
71.36% <ø> (-0.09%)
:arrow_down:

pkg/vfs/vfs.go
77.56% <0.00%> (-0.46%)
:arrow_down:

cmd/load.go
71.05% <100.00%> (ø)

pkg/object/redis.go
52.44% <0.00%> (-19.78%)
:arrow_down:

pkg/chunk/cached_store.go
77.39% <0.00%> (-0.18%)
:arrow_down:

pkg/meta/redis.go
71.87% <0.00%> (+0.04%)
:arrow_up:

pkg/meta/sql.go
65.76% <0.00%> (+0.09%)
:arrow_up:

pkg/meta/tkv_mem.go
88.43% <0.00%> (+0.57%)
:arrow_up:

Continue to review full report at Codecov.

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


found a bug for explorer module view popup menu

Issue Type: Bug
Hello!
i'm Sorry, My English very bad , please forgive! thanks!
on explorer view , I'm unfold multiple folder, selected a file by below the screen, use mouse right button down , vscode popup a munu.

it's popup menu hava double state, full visible or partially visible, bug is in partially visible state.

if it's popup menu is partially visible state, have a down arrow sign menu,i move mouse icon click this menu sign, but it not response.

i think , it's a bug, thanks!

VS Code version: Code 1.21.1 (79b44aa704ce542d8ca4a3cc44cfca566e7720f1, 2018-03-14T14:39:09.335Z)
OS version: Darwin x64 16.7.0

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7-4578U CPU @ 3.00GHz (4 x 3000)

Load (avg)
2, 2, 2

Memory (System)
8.00GB (0.52GB free)

Process Argv
/Applications/Visual Studio Code.app/Contents/MacOS/Electron

Screen Reader
no

VM
0%

Extensions: none
Reproduces without extensions

If you are not good at English, you can always ask in your native language, we can translate for you.
On macOS, sometimes menus will appear like this if the cursor is close to the bottom of screen.

Clicking or hovering on the "down arrow sign" does nothing, you can only scroll on the menu to reveal more items.
I suspect it's an upstream bug since it's a native menu?


Make notification trait methods async and non-blocking

Changed

Make all LanguageServer notification trait methods async fn and non-blocking.

This pull request makes all LanguageServer notification methods async fn so that we can .await on client responses inside these method bodies, once we implement proper server-to-client communication later on. Instead of spawning these requests with tokio::spawn(), as we currently do in Printer, we could .await them directly inside these methods without blocking the executor.
This also replaces the internal Delegate::delegate_request() and Delegate::delegate_notification() methods with delegate_request!() and the delegate_notification!() macros, respectively, to avoid the nested .awaits and avoiding lifetime woes caused by the lack of proper async closures in the language. Perhaps once async closures get added to Rust later on, we could re-evaluate whether to replace them with dedicated methods again.
Affects #13.
CC @icsaszar

A hypothetical example of making a server-to-client request inside textDocument/didOpen:
async fn did_open(&self, printer: &Printer, params: DidOpenTextDocumentParams) {
    match printer.apply_edit(WorkspaceEdit::default()).await {
        Ok(true) => info!("edit applied!"),
        Ok(false) => info!("edit was not applied!"),
        Err(err) => error!("client returned a JSON-RPC error"),
    }
}

Would you like to review the changes, @icsaszar?

Feel free to review the changes before I merge at your leisure, @icsaszar!


Image formats that specify floppy format don't verify if no format is set

e.g. DIM files verify when written with:
./fluxengine write ibm1232 -i file.dim

or:
./fluxengine write ibm -i file.dim

but not:
./fluxengine write -i file.dim

This is because the code which is setting the format is only setting the encoder config. To perform the verification, it needs to set the decoder config too.
The fix should be trivial --- let me have a look.


Address page for insight ui

DNM before: https://github.com/bitpay/insight/pull/790
/addr/:addr
/txs w/ address param
/addrs/:addrs/txs - shares the same code as address param
ER:
Fire up a node
Click one of the latest blocks
Click on an address

/addr/:addr data is stubbed. This would be a good starting point for building out db api library.
txs should fill in. No pagination yet.
Pretty soon we should consider building out the db api / interface and thinning out the api. It shouldn't get too bad getting all of insight ui's needs but we should refactor into the db api before doing the remaining routes.
@nitsujlangston @kleetus @bitjson @gabegattis @SonicWizard

@nitsujlangston changes pushed up.


How to reference external CSS in Components

Hey guys, love Polymer, love the gem, great work!
I'm a bit confused on how to reference my Rails assets pipeline CSS in custom components.
I tried this:
<%= stylesheet_link_tag 'application', media: 'all' %>
inside of my paper-submit-button.html.erb component but I'm getting no implicit conversion of nil into String error in  <%= html_import_tag 'application'%>.
Maybe someone could give me a hint on how to do this?
Thanks.

Also, a side question - is it a good idea to have an erb pre-processor on my custom components? Seems like it worked but I'm not sure if there are going to be side effects down the road.

1 - Just use link tag and specify css file you want to include. Same works with JS. But that is not really good idea to include application.css into your components because included css will be inlined into component itself.
2 - You can use .erb, .haml, .slim or any other pre-processor


feat: implement inlay virtual text for rust and go

This PR is a partial implementation of #756, the feature may change in the future.
Showcases | 效果演示

rust (with rust-tools)

go (with go.nvim) (updated)

Changes

rust

disabled rust-tools's inlay-hints, set its autostart to false

go

changed go plugin to https://github.com/ray-x/go.nvim
changed gopls settings to be maintained by go.nvim

lsp-inlayhints.nvim

added in editor group, it might not be the best place for it

event.lua

attach lsp-inlayhints.nvim to all lsps.

don't know how to fix

rust

need to manually run LspStart to start rust-analyzer
on attach time, lsp-inlayhints will raise error about: LSP error, content change

To use rust inlay hints, please run LspStart first to start your rust-analyzer, and then enter insert mode. The plugin should be able to be loaded soon.

变更

Rust

禁用了 Rust-Tools 的 inlay-hints 功能，并将其自动启动设置为 false。

将 gopls 的设置由 Go.nvim 维护。

lsp-inlayhints.nvim

添加到 editor 组中，可能不是最佳位置。

event.lua

将 lsp-inlayhints.nvim 附加到所有 LSP 中。

无法修复的问题

Rust

需要手动运行 LspStart 来启动 rust-analyzer。
在附加时，lsp-inlayhints 会出现关于 LSP 错误和内容更改的错误信息。

要使用 Rust inlay 提示，请首先运行 LspStart 来启动 rust-analyzer，然后进入插入模式。插件应该能够很快加载完毕。

@CharlesChiuGit @ayamir PTAL

Wow, u use lsp-lines?
Also your highlights looks pretty cool!

inlay_hints seems not effected in lua?

inlay_hints seems not effected in lua? Or I need to use a strong type lang to use it?

Not implemented, let's get those two languages done first.

Unfortunately, I dont do golang or rust lol :sob:
But can confirm it's installed with obvious error.

Unfortunately, I dont do golang or rust lol 😭 But can confirm it installed without obvious error.

Looks like lua-ls not supported by lsp-inlayhints.lua. =(

Unfortunately, I dont do golang or rust lol 😭 But can confirm it installed without obvious error.

Looks like lua-ls not supported by lsp-inlayhints.lua. =(

@CharlesChiuGit I realized that lua_ls is an updated version of sumneko_lua, and I just tried to pump it up, PTAL.

I got this msg but I still dont see the same as your screenshot?

Also, no problem for rust-analyzer here. No need to start it manually and no error reports.

Everything works fine, just need to upgrade neovim with NVIM v0.10.0-dev-373+g07883940b2 above.


upvote_ratio not on getTop Submission Array

Example:
r.getSubmission("t3_9ozauu").fetch() results
(works) upvote_ratio exits
r.getSubreddit("ProgrammerHumor").getTop({time: "all", limit: 20})
array of Submissions yet they are all missing upvote_ratio.
Thus, you have to call redundantly for each submission you already have.

That is how Reddit's API displays it. Only shows it in detail and not in list view


Merge pull request #1 from Carbonnetwork001/development

learning how to use gitflow in tech world

learning git flow


Add extra info on Google+ Sign-In doc

I didn't find information about how to get the email address, so I investigated and added it to the doc.

Thanks!


TFDBG Segmentation Fault

TFDBG encounters a seg fault (see output at bottom) when debugging my TF code. Incidentally this code hangs on a GPU, but code and tfdbg both run without incident on CPU only (setting tf.device). As a side note, is tensorflow ever supposed to produce different execution results on CPU and GPU?

OS Platform and Distribution: AWS Deep Learning Base AMI (Ubuntu) Version 14.0 (ami-012b19f1736b6aae8)
TensorFlow installed from (source or binary): tensorflow-gpu==1.12.0 installed by pip
Python version: Python 3.6.7
CUDA/cuDNN version: 9.0/7.3.1
GPU model and memory: Tesla V100 with 16130MiB

Code to reproduce the issue
Provide a reproducible test case that is the bare minimum necessary to generate the problem. <== It's not clear why or where the seg fault occurs so I can't generate a minimal test case. I'd be happy to share my full code (a single python file) with you (the TF developers, eg via email) but don't want to post it on github at present.
Other info / logs
// Started tfdbg, called run() once to initialize the variables, then invoke_stepper and:
tfdbg> step
-->(1 / 126)  [  H   ] model/transpose/sub/y
(2 / 126)  [      ] model/transpose/Range/start
(3 / 126)  [      ] model/TensorArrayStack/range/start
Continued to model/transpose/sub/y:
Stepper used feeds:
(No feeds)
Tensor "model/transpose/sub/y":
1
tfdbg> s
(1 / 126)  [  H   ] model/transpose/sub/y
-->(2 / 126)  [  H   ] model/transpose/Range/start
(3 / 126)  [      ] model/TensorArrayStack/range/start
(4 / 126)  [      ] model/TensorArrayStack/range/delta
Continued to model/transpose/Range/start:
Stepper used feeds:
(No feeds)
Tensor "model/transpose/Range/start":
0
tfdbg> s
(1 / 126)  [  H   ] model/transpose/sub/y
(2 / 126)  [  H   ] model/transpose/Range/start
-->(3 / 126)  [  H   ] model/TensorArrayStack/range/start
(4 / 126)  [      ] model/TensorArrayStack/range/delta
(5 / 126)  [      ] model/transpose/Range/delta
Continued to model/TensorArrayStack/range/start:
Stepper used feeds:
(No feeds)
Tensor "model/TensorArrayStack/range/start":
0
tfdbg> s
(2 / 126)  [  H   ] model/transpose/Range/start
(3 / 126)  [  H   ] model/TensorArrayStack/range/start
-->(4 / 126)  [  H   ] model/TensorArrayStack/range/delta
(5 / 126)  [      ] model/transpose/Range/delta
(6 / 126)  [      ] model/TensorArray/size
Continued to model/TensorArrayStack/range/delta:
Stepper used feeds:
(No feeds)
Tensor "model/TensorArrayStack/range/delta":
1
tfdbg> s
(3 / 126)  [  H   ] model/TensorArrayStack/range/start
(4 / 126)  [  H   ] model/TensorArrayStack/range/delta
-->(5 / 126)  [  H   ] model/transpose/Range/delta
(6 / 126)  [      ] model/TensorArray/size
(7 / 126)  [      ] model/TensorArray
Continued to model/transpose/Range/delta:
Stepper used feeds:
(No feeds)
Tensor "model/transpose/Range/delta":
1
tfdbg> s
(4 / 126)  [  H   ] model/TensorArrayStack/range/delta
(5 / 126)  [  H   ] model/transpose/Range/delta
-->(6 / 126)  [  H   ] model/TensorArray/size
(7 / 126)  [      ] model/TensorArray
(8 / 126)  [      ] model/value/weights
Continued to model/TensorArray/size:
Stepper used feeds:
(No feeds)
Tensor "model/TensorArray/size":
1
tfdbg> s
Segmentation fault (core dumped)
ubuntu@ip-10-0-0-9:~$

i also have a very similar issue except it does not work on both cpu and gpu and it produces segmentationfault after i type run.

"Segmentation fault error stands for a failure of the parallelization of your training process on the GPU"

Please take a look on the links ref_1, ref_2 to understand more about the same.

@dgboy2000,
We see you were using an older version of tensorflow(1.x) which is officially considered as end of life. We recommend that you upgrade to latest stable version and let us know if the issue still persists in newer versions.we will get you the right help.Thanks!


Conda environment name no longer appears in prompt

Previously when activating a conda environment, the name of the environment would be prepended to my command prompt. However, that no longer happens. There are no errors and the environment is still activated: it just doesn't appear in the prompt.
A git bisect led me to this commit: https://github.com/robbyrussell/oh-my-zsh/commit/fbcda4d5a92e023388259652652d154558e49ef3

I concur. The changes made to how PROMPT is built in commit fbcda4d have broken the showing of $VIRTUAL_ENV basename in the prompt.

I've reverted the change. Upgrade with upgrade_oh_my_zsh.


Mismatched and missing conversation templates between web-llm and mlc_llm

What
There are a few conversation templates which mlc_llm has but web-llm doesn't, specifically it seems like all of these: llama_default, conv_one_shot, rwkv, gorilla, guanaco, dolly, oasst, stablelm, minigpt, moss, LM, code_gpt:

Assuming I'm reading this correctly and we should actually have a match for each, it seems nice to add versions of these templates to web-llm. Specifically I am most interested in the separator for gptj.
I did considering adding it myself, but I don't quite understand how to map between them. I.e. here is what we have currently:

model
web-llm
mlc_llm

wizardlm

redpajama_chat

vicuna_v1.1

So, my specific questions:

Should there be a 1-1 mapping here?
Which field takes precedent if they differ?
Should all fields that are shared be the same? I.e. is there supposed to be a difference in the roles or seps fields?
Assuming everything should match, is there a way to just use the cpp/conv_templates.cc version of this data so that things can't get out of sync in the future?

Thank you for any help!

+1 Init error, Error: Unknown conv template codellama_instruct

this is now fixed and all convo templates are standardized


[iOS] Make characteristic identifiers consistent across reconnections.

Expected Behavior
Characteristics on a device should have the same id after reconnecting on iOS.
Current Behavior
On iOS when I connect to a device, disconnect, reconnect, ble-plx will throw a CharacteristicNotFound BLEError stating the characteristic with id: {id} cannot be found. I do see this characteristic in the console when we run monitor, but the ids are different. This same flow works on Android. In the documentation it is mentioned to make sure you run manager.discoverAllServicesAndCharacteristicsForDevice, but we do when we connect.
Steps to Reproduce
Please provide detailed steps for reproducing the issue.
I'm not sure this will be a 1 : 1, but the steps in my situation are

boot the app
connect to device
disconnect/hot reload
observe that a control point characteristic exists, but can't be written to on iOS

Context

Library version: 2.0.0
Platform: iOS 13.5.1
JS logs:

I'm not allowed to share too much code, but if anyone has a specific question I can likely answer with smaller snippets. Thank you for any input provided.

I'm excited to inform you that we've released a new version of react-native-ble-plx. Many of the concerns and bugs have been addressed in this update.
If you encounter any issues or have further suggestions, please don't hesitate to open a new issue.

@abursztynowska Fantastic. Thank you for the follow up.


Confusing audio instructions

Hi!
I'm building the project per the instructions on the wiki. In the audio section, you mention that there are two low-band pass filters but that was a left-over from the original design that required two speakers. From that, I'm inferring that Fritzing diagram may not be correct. Is that correct and if so, could you post a correct diagram?
Thanks!

Hey,
if you build the smart alarm like shown in the Fritzing schematic, it will work. This means the Fritzing is correct, even though there is some extra information in it which you could leave out. Meaning the additional low-pass filter you mentioned. Since this project makes use of just one speaker, you also might need to use just one low-pass filter. Just make sure that the pwm audio signal of the Raspberry Pi (e.g. left) is connected to the same channel as the speaker (also left) in the amplifier. Sure thing I'll update the Fritzing to leave out the unneeded low-pass filter... sometime... in the future...
Let me know if there is still something unclear!

Updated Fritzing schematics and parts of the wiki. Now all correct!
check: https://github.com/fgebhart/smart_alarm/wiki#wiring


fix(header): npm expansions that push the other menu items into place instead of coincidentally working

The max-width of 650px was chosen to fit our current font and current words -- any additions would be disruptive to the header, causing wrapping. this gives a bit more breathing room by making all the flexes play together.

discussed this and paired with @aredridel on it. Definite 🐑


feat: Update victim status

Description
Victim's status can be updated by response unit.
Screenshots (if applicable, else remove this line / section)

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added necessary inline code documentation
[ ] I have added tests that prove my fix is effective and that this feature works
[ ] New and existing unit tests pass locally with my changes

Report ID, reporter ID, createdAt, should not be displayed on the modal.
Also fix conflicts.

Resolved conflicts and made changes.


Could not resolve external dependency

I tried adding '@sentry/analytics-next' and when I run watch/build command it throws error
error esbuild error
    Build failed with 1 error:
    src/main.ts:8:24: ERROR: Could not resolve "'@sentry/analytics-next"

I tried adding another dependency i.e @sentry/browser assuming that there might be issue with this library but that also throws the same error
error esbuild error
    Build failed with 1 error:
    src/main.ts:8:24: ERROR: Could not resolve "@sentry/browser"

ofcourse the dependencies are installed in the node_modules directory
Template: React Editor
Node: v18.12.1
@create-figma-plugin/utilities Version: 2.5.0

@yuanqing 👆

figured out the problem, the issue was happening where for main.tsx the config has value of platform set to neutral. Reading from esbuild docs

they reset the main and module fields to be empty when platform: neutral. Not sure what is the exact reason of setting this to neutral in the esbuild's config.

@kamleshchandnani Yes that was the problem for me also, I worked around it by adding build-figma-plugin.main.js file and overriding the mainFields config
/**
 *
 * @param {import('esbuild').BuildOptions} buildOptions
 * @returns  {import('esbuild').BuildOptions}
 */
module.exports = function (buildOptions) {
  return {
    ...buildOptions,
    mainFields: ['module', 'main', 'browser'],
  };
};


Unity3D package

I have seen working example here https://github.com/ahakits/unity-grpc-sample
Is it already just worked? Are there anyway we could ensure it perfectly work in everything?
If it already work perfectly fine could you please making package of it for unity?
I want to use grpc for firestore in unity

Thanks for the link!
I believe we have enough pieces in place to enable basic operation, but Unity support is definitely still in experimental phase and it is not officially supported.
We are looking into improving the support and external contributions are very welcome.
Things that are currently missing:

generating the .unitypackage (unity doesn't use NuGet packages).
verify that loading the grpc_csharp_ext native extension works well on most platforms
more testing
fixes for potential bugs

@jtattermusch I wish we could have -experimental.unitypackage so we would test it immediately and while nothing break we could just use it

I'm trying to piece together a way to build this package automatically using travis.
https://github.com/jsmouret/grpc-unity-package
Help needed for the iOS part :)

iOS support is in!

@jsmouret   I wanted to try your package as it looks promising, but I'm getting
Unloading broken assembly Assets/Plugins/Grpc.Core/lib/net45/Grpc.Core.dll, this assembly can cause crashes in the runtime error - this might be an instance of https://issuetracker.unity3d.com/issues/unity-fails-to-load-net-4-dot-6-assemblies-with-typeloadexception?page=1#comments.
Have you run into something similar? I'm using Unity for Mac 2018.2.0f2

I'm testing with the same Unity version. Are you testing with the example project in the repository?

@jsmouret  I'm using my own example project after copying contents of the zip under my Assets directory.

@jsmouret  I tried with your example project and the zip from  https://github.com/jsmouret/grpc-unity-package/releases/tag/0.0.6 and I'm still getting an error. Are you running on Mac as well?

Yes, you're right, I have the same error with 0.0.6 (which I just removed).
I have retried with 0.0.5 and it is working.
The first time you press the "Say Hello" button, it will complain about MonoPInvokeCallback (which you fixed), but the second time will be ok.

@jsmouret   do you know what the problem was with 0.0.6?

Sorry for the late reply.
Yes, after trying a few combinations, System.Interactive.Async.3.2.0 was the culprit.

Want to applaud your efforts here, gents!  Way to push on this and your efforts are deeply appreciated.

This PR is adding automated builds of a unity package  https://github.com/grpc/grpc/pull/16208. The resulting "package" (inspired by https://github.com/jsmouret/grpc-unity-package) will still be experimental only, but it would be ready for testing.

Experimental package for Unity is now available (and it is being built by our continuous CI automatically).
Instructions how to use:
https://github.com/grpc/grpc/tree/master/src/csharp/experimental#unity
Since it is experimental, we expect there can be issues using the package, so please try it and file an issue if it doesn't work for you.
I'm closing this issue now since the experimental package is in place, let's file new issues for items that come up.

@jtattermusch Thank you very much

Thanks @jtattermusch for this package.
I am getting error when exporting this to Xcode
Undefined symbols for architecture arm64:
"deflateInit2", referenced from:
zlib_compress(grpc_slice_buffer*, grpc_slice_buffer*, int) in libgrpc.a(message_compress.o)
grpc_stream_compression_context_create_gzip(grpc_stream_compression_method) in libgrpc.a(stream_compression_gzip.o)
(maybe you meant: unity_z_deflateInit2, il2cpp_z_deflateInit2 )
do you have any clue?
I am setting my unity project to .net 4.x and unzipping the latest package from daily builds.

@fbernaly  I assume the problem you are seeing is for Unity iOS?

@fbernaly
I also had a similar error, but it was solved in the following way.
In Xcode

Build Phases > Link Binary With Libraries > +
Search "libz"
Choose libz.1.2.xx.tbd (ex libz.1.2.11.tbd)
Push Add Button

@gedw99: https://packages.grpc.io/archive/2018/09/07eecd8421314d62e8df33b14a33203864f91bee-fd8f1312-9873-4354-8a5d-613a05b12336/index.xml

Does it support .net standard 2.0?

@coolwust : they say it is for .net4.x:
https://github.com/grpc/grpc/tree/master/src/csharp/experimental


Harvest Protocol

Spec
Follow the guidelines for harvest on the Seeds Master Economic Spreadsheet and the Seeds distribution
Overview
Harvest is a function of supply and demand.
Demand is measured by a 3 cycle trailing average of Seeds in circulation
Growth is measured by comparing qualifying economic volume (QEV) with previous QEV
When QEV grows, new Seeds are released in proportion to growth. This keeps the value stable.
QEV growth determines new Seeds volume
Actual Seeds created is calculated by taking the new seeds volume as the target, then checking how many have been entering or leaving circulation ->
New Seeds created = (new Seeds volume - Seeds which entered circulation + Seeds that were removed from circulation)
Calculations
Required data storage
Storing all transactions for 3 months - scoped by user, sorted by other party
Keep running QEV? Might be easier than summing everyhing up but QEV is variable depending on which 26 transactions slip in and out of the time window.
Storing total QEV hourly for another 3 months, same as above
Index tricks
Create hybrid index of (name + volume) of other party, this way we easily get the top 26 - already sorted by size
Also sorty by time and erase expired ones, or add them to the compressed QEV pile.
Human outcome
CITIZENs of SEEDS receive a harvest payout every cycle in the form of voice and SEEDS, that is calculated according to the contribution score and economic parameters and the constitution.
Acceptance criteria
Look at your account (providing it has enough contribution score) at the start of the next cycle, and check that you received a payment from SEEDS with the memo "Harvest payout".

QEV questions

Do we store volume of qualifying transactions, or do we store points (volume x rep modifier)?
Growth is calculated vs. previous cycle? Or do we take the average of the previous 3 cycles compared with the 3 before them? - Need exact growth formula to determine growth
Once we have growth, need exact formula for calculating new Seeds volume
Need strategy for updating circulating Seeds... currently updated hourly but we need to store a time series or store them daily somewhere so we have something to compare to. This way we can always figure out how many were taken out of circulation vs. put in in each cycle.
Maybe store circulation with a cycle number which we then use for the growth %
If we have a running trailing cycle growth value we calculate every day, then we need to store circulating daily
Do we need to store how many are burned / planted / sent to exchanges as well, or is circulating vs total enough? We should probably save all of these numbers once every 24h


fix: test change

Fixes or implements VF-XXX
Brief description. What is this change?

Implementation details. How do you make this change?

Setup information

Deployment Notes

Related PRs

branch
PR

other_pr_production
link

other_pr_master
link

Checklist

[ ] this is a breaking change and should publish a new major version
[ ] appropriate tests have been written

bors r+

bors retry

bors retry

bors merge

bors merge

bors retry

bors try

bors try

bors retry

bors merge


Add description and source field name properties to MagicField and SourceField annotations

MagicField does not have a property for description. SourceField takes description from the source class. It would be good to set property description in the annotation.
When using proxy classes, sometimes it's needed to use different name for a property in the GraphQL type than it is in the source class. If we map one class to another, it would be good to also map properties.

Codecov Report

Merging #402 (4569817) into master (b5230f7) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##             master     #402   +/-   ##
=========================================
  Coverage     98.30%   98.30%
- Complexity     1578     1582    +4
=========================================
  Files           147      147
  Lines          4241     4255   +14
=========================================
+ Hits           4169     4183   +14
  Misses           72       72

Impacted Files
Coverage Δ

src/Annotations/MagicField.php
100.00% <100.00%> (ø)

src/Annotations/SourceField.php
100.00% <100.00%> (ø)

src/FieldsBuilder.php
96.95% <100.00%> (+0.01%)
:arrow_up:

Continue to review full report at Codecov.

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

@michael-vostrikov can you please commit a docs update as well.  In particular, the https://graphqlite.thecodingmachine.io/docs/annotations-reference needs updating for description.

@oojacoboo Can you please increment minor version? We would like to pull these changes with composer.

@michael-vostrikov done.


Add variable appProtocol Option to Helm Chart for your Alloy Service for h2c/http2

Request
At the moment it is possible to provide the "extraPorts:" option within the Alloy helm chart and by default the below are set,:
...
    alloy:
      extraPorts:
        - name: "trace-http"
          port: 4318
          targetPort: 4318
          protocol: "TCP"
        - name: "trace-grpc"
          port: 4317
          targetPort: 4317
          protocol: "TCP"
 ...

This Service.yaml is propagated by the serice.yaml within the templates of the helm chart:
{{- $values := (mustMergeOverwrite .Values.alloy (or .Values.agent dict)) -}}
{{- if .Values.service.enabled -}}
apiVersion: v1
kind: Service
metadata:
  name: {{ include "alloy.fullname" . }}
  labels:
    {{- include "alloy.labels" . | nindent 4 }}
  {{- with .Values.service.annotations }}
  annotations:
    {{- toYaml . | nindent 4 }}
  {{- end }}
spec:
  type: {{ .Values.service.type }}
  {{- if .Values.service.clusterIP }}
  clusterIP: {{ .Values.service.clusterIP }}
  {{- end }}
  selector:
    {{- include "alloy.selectorLabels" . | nindent 4 }}
  internalTrafficPolicy: {{.Values.service.internalTrafficPolicy}}
  ports:
    - name: http-metrics
      {{- if eq .Values.service.type "NodePort" }}
      nodePort: {{ .Values.service.nodePort }}
      {{- end }}
      port: {{ $values.listenPort }}
      targetPort: {{ $values.listenPort }}
      protocol: "TCP"
{{- range $portMap := $values.extraPorts }}
    - name: {{ $portMap.name }}
      port: {{ $portMap.port }}
      targetPort: {{ $portMap.targetPort }}
      protocol: {{ coalesce $portMap.protocol "TCP" }}
{{- end }}
{{- end }}

Adding an option or overwrite within the Helm Chart under (for example) alloy:-> extraPorts: [] (not by default, as default appProtocol is omitted) to add the AppProtocol would make it a lot easier for people who are trying to expose the service and connect to it from outside of the Kubernetes/OpenShift clusters on an Ingress or Route. More reasoning within the use case section.
Use case
Why appProtocol?
We were trying to send traces from an alloy instance outside of the Kubernetes/OpenShift clusters to send traces over gRPC towards the Alloy instance on the Kubernetes/OpenShift clusters. We ran into many issues when trying to do so.
Adding an optional appProtocol would allow you to set "h2c" as an appProtocol option, allowing the service to be exposed via Ingress or Route within a Kubernetes/OpenShift Clusters. Once this Ingress/Route is exposed it would then allow gRPC communication for (for example) traces. Allowing an alloy instance on a VM or another Kubernetes/OpenShift clusters, to be able to communicate over gRPC via the exposed Ingress or Route.
Work Arround
We currently add another service manually with an additional route in order to be able to perform the above use case of sending traces over gRPC via an exposed Ingress/Route on Kubernetes/OpenShift:
# Service
apiVersion: v1
kind: Service
metadata:
  name: service-otlp-alloy-h2c
spec:
  selector:
    app.kubernetes.io/instance: service-graph
    app.kubernetes.io/name: alloy
  ports:
    - name: otlp-grpc
      protocol: TCP
      appProtocol: h2c
      port: 4317
      targetPort: 4317
---
# Route
kind: Route
apiVersion: route.openshift.io/v1
metadata:
  name: route-otlp-alloy-h2c
spec:
  to:
    kind: Service
    name: test-grpc-h2c
    weight: 100
  port:
    targetPort: otlp-grpc
  tls:
    termination: edge
    insecureEdgeTerminationPolicy: Redirect
  wildcardPolicy: None

We currently use Kustomize + ArgoCD to deploy the helm charts, so another option would be to use Kustomize to Patch the inline result from the kustomize build . --enable-helm results. But we obviously would prefer if there would be an appProtocol option. That would be amazing, so we could set the appProtocol option on the ports we need the h2c settings in order for gRPC to work via route/ingress.
If you have any questions, let me know.
PS: Also discussed this with @clementduveau before, therefore tagging him here as well.
PS2: Worked on this with colleague @maikel-09

From my POV:

Exposing appProtocol: easy, no breaking changes --> I can take a look
Add explanation in the doc --> This I can do easily

Let me know if you need anything, from check to review! :)

Before I proceed to a PR, any feedback on this commit ?

Thanks! Looks good 😊 Just had the time to go through it! LGTM!
Met vriendelijke groet,
[A red and black logo  Description automatically generated]
benoit schipper
Field CTO
06-11257370
www.hcs-company.comhttp://www.hcs-company.com
From: Clément Duveau @.>
Date: Friday, 16 August 2024 at 12:11
To: grafana/alloy @.>
Cc: Benoit Schipper | HCS company @.>, Author @.>
Subject: Re: [grafana/alloy] Add variable appProtocol Option to Helm Chart for your Alloy Service for h2c/http2 (Issue #1405)
Before I proceed to a PR, any feedback on this commithttps://github.com/clementduveau/alloy/commit/27766cf2aa55cd4d7399b37e7e1da1e7c50ffe98 ?
—
Reply to this email directly, view it on GitHubhttps://github.com/grafana/alloy/issues/1405#issuecomment-2293231518, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ASRMTD3BXOIMQVPRMHY3DI3ZRXF5PAVCNFSM6AAAAABLZ5DILGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEOJTGIZTCNJRHA.
You are receiving this because you authored the thread.Message ID: @.***>

PR ref


Drop support for *_iam_binding and *_iam_policy resources in official-providers

What problem are you facing?
Provider Name: provider-gcp
Provider Version: all...
This issue grew out of a discussion in #squad-control-planes. Google has multiple apis which can be used to configure IAM for a resource. These APIs come in three varieties:

*_iam_binding
*_iam_policy
*_iam_member

The behavior of these API calls make them incompatible with one another. Terraform calls this out in a collection of standard Notes which appear on all IAM resource pages:

Note:
google_project_iam_policy cannot be used in conjunction with google_project_iam_binding, google_project_iam_member, or google_project_iam_audit_config or they will fight over what your policy should be.

Note:
google_project_iam_binding resources can be used in conjunction with google_project_iam_member resources only if they do not grant privilege to the same role.

Note:
The underlying API method projects.setIamPolicy has a lot of constraints which are documented here. In addition to these constraints, IAM Conditions cannot be used with Basic Roles such as Owner. Violating these constraints will result in the API returning 400 error code so please review these if you encounter errors with this resource.

Lastly, terraform offers this warning:

Be careful!
You can accidentally lock yourself out of your project using this resource. Deleting a google_project_iam_policy removes access from anyone without organization-level access to the project. Proceed with caution. It's not recommended to use google_project_iam_policy with your provider project to avoid locking yourself out, and it should generally only be used with projects fully managed by Terraform. If you do use this resource, it is recommended to import the policy before applying the change.

If two users were to implement their permissions using different resources -- say one uses a *_iam_member and another uses a *_iam_policy, those resources would "fight" over the ultimate permissions available in the account. It is also possible, with google_project_iam_policy  and google_organization_iam_policy to catastrophically leave an account or organization with zero permissions configured (to wipe out all IAM data).
How could Official Providers help solve your problem?
Given that Crossplane Managed Resources are meant to be deployed and reconciled individually, only *_iam_member behaves as a Managed Resource. We should drop support for the other two apis.

This makes sense, but only as long as a user can arrive with an IAM policy they want to manage with Crossplane and convert it into a set of IAM members without any loss of functionality. It won't always be a nice conversation, since people will already be creating those policies and might not like to have to break them apart. I think protecting users from themselves is an idea with its heart in the right place, but Crossplane isn't really positioning itself as a "we know better than you" tool. It's meant to be a high fidelity representation of the underlying cloud resources; if google will let you craft an access policy that will lock you out, then so be it. In general, we should let you do that too.

I think it would be very beneficial to at least allow *_binding resources. One of the biggest hurdles we have right now is the one-to-one nature of *_member resources especially in compositions. This has forced us to create helm charts that loop over a list to create multiple iam member XRCs. With *_bindings we could identify the roles we would like to allow in a composition and tie that to a list of members in a definition like the following.
my-folder.yaml
...
spec:
  parameters:
    admins:
    -<EMAIL_ADDRESS>    -<EMAIL_ADDRESS>    -<EMAIL_ADDRESS>...

composiitons.yaml
resources:
- name: folder_admins
  base:
    apiVersion: cloudplatform.gcp.upbound.io/v1beta1
    kind: FolderIAMBinding
    spec:
      forProvider:
        role: roles/resourcemanager.folderAdmin
...
  patches:
  - type: FromCompositeFieldPath
    fromFieldPath: spec.parameters.admins
    toFieldPath: spec.forProvider.members
...
- name: project_creators
  base:
    apiVersion: cloudplatform.gcp.upbound.io/v1beta1
    kind: FolderIAMBinding
    spec:
      forProvider:
        role: roles/resourcemanager.projectCreator
...
  patches:
  - type: FromCompositeFieldPath
    fromFieldPath: spec.parameters.admins
    toFieldPath: spec.forProvider.members


gen失败

Sealos Version
sealos_4.1.5-rc1_linux_amd64.tar.gz
How to reproduce the bug?

What is the expected behavior?
No response
What do you see instead?
No response
Operating environment
- Sealos version:
- Docker version:
- Kubernetes version:
- Operating system:
- Runtime environment:
- Cluster size:
- Additional information:

Additional information
No response

fixed by main code


[Bug]: too many notification for Instance updated from 4.0.0-beta.294 -> 4.0.0-beta.297 while already on the latest version

Description
an already updated server keeps sending notifications to Discord:
Instance updated from 4.0.0-beta.294 -> 4.0.0-beta.297

Minimal Reproduction (if possible, example repository)
n/a
Exception or Error
No response
Version
v4.0.0-beta.294

This should be fixed in the next release (https://github.com/coollabsio/coolify/pull/2469 IIRC).

Yes, from 297+ you won't face this issue 🤞


Converted_Images_to_WebP_for_Better_Optimization

Fixes #140

Converted all relevant images from formats like PNG and JPEG to WebP for better optimization and performance.
WebP offers better compression without significant quality loss, which helps in reducing file sizes and improves page load speed.

Changes:

Replaced existing image formats (JPEG, PNG) with WebP versions.
Updated image references in HTML files to reflect the new WebP file paths.
Verified that images render correctly in browsers that support WebP.

Testing:

Verified on multiple browsers (Chrome, Firefox, etc.) to ensure proper image rendering.
Ensured fallback mechanisms are in place for browsers that do not support WebP (if needed).

Note:  Add gssoc-ext with level3, hacktoberfest-accepted labels!
add level3 because i have done a lot of editing in the files!
@Vimall03

@smog-root, I will assign the labels once i review the code

@smog-root, I will assign the labels once i review the code

Okay!!

And assign me!!@Vimall03 hey.. add level3 not level2!!

I've reviewed the PR, and there are a couple of issues. You mentioned implementing lazy loading in the issue, but it’s not there in the code. Please don’t expect to get a level 3 just for switching .png to .webp—that’s not enough.
Also, tone matters when posting in a public forum. Let’s keep things professional.

Okay dude I got you!!
I asked for a lot!!!


Ensure that layer list has no layers with diplayInLayerSwitcher=false.

Extended GXM layer list so it has no layers with a diplayInLayerSwitcher property set to false.

Thanks for the contribution. The approach taken solves the issue well but has some side-effects.

Since filter() modifies the store itself, these records are effectively gone from the store. In most cases this will result in the associated mappanels store lacking these records as well. This will lead to the mappanels store being out of sync with the real openlayers map.
As filtering is being done in the constructor, I think the layerlist will show non-desired records when these are added to the map after an instance of layerlist has been created. This could probably be solved by registering logic to refilter on layeradd etc. on the configured map. This is a thought of mine, I didn't test this.

if these issues are no problem for the application to be developped, the filtering in this patch can be used to have layerlist not show layers with displayInLayerSwitcher=false.
maybe we can configure the layerlists tpl to exclude those layers instead? Let me know what you think.

Hello @marcjansen ,
thanks for your review, you are right the first patch affects the layer strore itself, which could cause some issues. The above commits now overwrites the collectData function of Ext.List in order to render only those layers who have displayInLayerSwitcher=false without affecting the original LayerStore.
I would be glad if you could take another look at these commits.

Thanks again! This looks good and is a great addition to GXM.


Add media download endpoint

IMPORTANT: This PR makes use of functionality from #52 and #54 so review those first.

This PR adds a new endpoint to support the legacy SMS's media download URLs. Since this endpoint makes heavy usage of logging to explain its flow, 47dcd5a takes the opportunity to increase the default chatty-ness of logging so that the logs will be visible when the application is deployed.
579e915 adds logic to redirect back to the SMS if we can't handle a download request. The existing redirects can directly be handled by the SMS frontend web application but downloads are served by a separate machine. Rather than requiring the configuration of two base URLs for redirection, we require that the web application be configured to handle download URLs as well. The example Apache configuration in the documentation is updated to include this.
956330f implements the download endpoint itself. Some heuristics are used to match the requested URL to the appropriate JWPlatform source. If we cannot find the matching file, we use the redirect functionality from 579e915 to redirect back to the legacy SMS application.
Closes #50

@abrahammartin  I think I should've addressed all your points. I'll tweak the configs for sms-dev to understand the _legacy magic.


[GLUTEN-6557][CH] Try to replace sort merge join with hash join when cannot offload it

What changes were proposed in this pull request?
(Please fill in changes proposed in this fix)
Fixes: #6557
How was this patch tested?
(Please explain how this patch was tested. E.g. unit tests, integration tests, manual tests)
unit tests
(If this patch involves UI changes, please attach a screenshot; otherwise, remove this)

wait for https://github.com/apache/incubator-gluten/pull/6548

merge this after https://github.com/apache/incubator-gluten/pull/6623