helm template shows different output than what is getting deployed, -f values.yaml also further changes behavior

I currently have a very strange behaviour, where helm template shows different annotations, than what is deployed in the cluster afterwards. I provided an example code here https://github.com/BlacCello/helm-template-bug.
You can see the issue when:

Run helm template . and see the annotations section

...
  annotations:
    test1:
    test2:
    test3: "important-annotation"
    ingress.kubernetes.io/rewrite-target: "/$1"
...

Deploy the example as it is with helm upgrade --install -n test --create-namespace test .. See what is deployed in the cluster with kubectl get ingress -n test test -o yaml

...
  annotations:
    meta.helm.sh/release-name: test
    meta.helm.sh/release-namespace: test
...

Both annotations, test3 with "important annotation" and the rewrite-target annotations are missing.

Run helm template . -f values.yaml and see the annotations output, which is semantically the same as 1:

...
  annotations:
    test3: "important-annotation"
    ingress.kubernetes.io/rewrite-target: "/$1"
...

Deploy again to the cluster with values.yaml: helm upgrade --install -n test --create-namespace test . -f values.yaml. Check the ingress resource again:  kubectl get ingress -n test test -o yaml:

...
  annotations:
    ingress.kubernetes.io/rewrite-target: /$1
    meta.helm.sh/release-name: test
    meta.helm.sh/release-namespace: test
    test3: important-annotation
...

Now both annotations were getting deployed as expected and as helm template shows
Final words: I do not understand this, especially that with the first steps without -f values.yaml helm template and helm upgrade/install are doing something different.
Output of helm version:
version.BuildInfo{Version:"v3.12.3", GitCommit:"3a31588ad33fe3b89af5a2a54ee1d25bfe6eaa5e", GitTreeState:"clean", GoVersion:"go1.20.7"}

Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"27", GitVersion:"v1.27.3", GitCommit:"25b4e43193bcda6c7328a6d147b1fb73a33f1598", GitTreeState:"clean", BuildDate:"2023-06-14T09:47:38Z", GoVersion:"go1.20.5", Compiler:"gc", Platform:"darwin/amd64"}
Kustomize Version: v5.0.1
Server Version: version.Info{Major:"1", Minor:"26", GitVersion:"v1.26.7", GitCommit:"84e1fc493a47446df2e155e70fca768d2653a398", GitTreeState:"clean", BuildDate:"2023-07-19T12:16:45Z", GoVersion:"go1.20.6", Compiler:"gc", Platform:"linux/amd64"}

Cloud Provider/Platform (AKS, GKE, Minikube etc.): Rancher

I suspect this may be caused by the Kubernetes cluster. I run helm upgrade --install -n test --create-namespace test . --debug, with the --debug flag so that I could see the YAML generated by Helm. This is what it looks like.

The result is consistent with helm template ..
I saved this YAML in t.yaml and then run kubectl apply -f t.yaml. After that, when I run kubectl get ingress -n test test -o yaml, the annotations section does not have the configuration related to "test".

I can confirm, that with plain k8s manifest the issue also accurs as soon as there is an annotation with a null value.
However, shouldn't helm still should output the same yaml for 1. and 3.? (My assumption: The values.yaml of parent has a higher precedence than the values.yaml of child. So there should not be a difference when I excplicitly specify the values.yaml of the parent chart with -f values.yaml)


Walking very slow....

Previously, I used mineflayer-navigate and it moved much faster, as I switched to pathfinder, its walking speed was 4 seconds per 1 block, is there any configuration to improve its walking speed? Nor can it resist the movement of water

4s / block is not normal, but without more detail we can't help you. For water movement, that's normal to be pushed by water, it should however be able to go against the current (maybe it's related to your first issue). Anyway, walking speed and water movement is controlled by mineflayer's physics, open an issue there https://github.com/PrismarineJS/mineflayer/issues.

@Karang my physics {   gravity: 0.8,   airdrag: 0.98,   yawSpeed: 3,   sprintSpeed: 1.3,   sneakSpeed: 0.3,   stepHeight: 0.6,   negligeableVelocity: 0.003,   soulsandSpeed: 0.4,   ladderMaxSpeed: 0.15,   ladderClimbSpeed: 0.2,   playerHalfWidth: 0.3,   playerHeight: 1.8,   waterInertia: 0.8,   lavaInertia: 0.5,   liquidAcceleration: 0.02,   airborneInertia: 0.91,   airborneAcceleration: 0.02,   defaultSlipperiness: 0.6,   outOfLiquidImpulse: 0.3,   autojumpCooldown: 10,   adjustPositionHeight: [Function (anonymous)],   simulatePlayer: [Function (anonymous)] }

No you need to give more details, like the code you use, the mineflayer version, etc...
Also, try to run the example.

https://youtu.be/mFVM9QG4yQY
{
                command: "подойди",
                func(username) {
                    const {position: p} = bot.players[username].entity;
                    bot.pathfinder.setMovements(defaultMove)
                    bot.pathfinder.setGoal(new GoalNear(p.x, p.y, p.z, 1))
                }
            }```

The full code ? Try to extract a minimal example that reproduce the behavior. Have you tried the example https://github.com/Karang/mineflayer-pathfinder/blob/master/examples/test.js ?

pistons can trigger to update path?

yes any block update close to the path will trigger a path update. Is that your issue ?

yes any block update close to the path will trigger a path update. Is that your issue ?

yes, its problem.... I have big melon farm with many pistons, If it updates with every piston, this is of course a failure

I committed a fix. Could you try it and tell me if it fix your issue ?
In package.json: "mineflayer-pathfinder": "Karang/mineflayer-pathfinder"
Then remove package-lock.json and redo npm install

I committed a fix. Could you try it and tell me if it fix your issue ?
In package.json: "mineflayer-pathfinder": "Karang/mineflayer-pathfinder"
Then remove package-lock.json and redo npm install

I'll try tomorrow, thanks for the support

I committed a fix. Could you try it and tell me if it fix your issue ?
In package.json: "mineflayer-pathfinder": "Karang/mineflayer-pathfinder"
Then remove package-lock.json and redo npm install

@Karang
log.txt
Also thinks for a long time

Are you sure you updated to the latest commit ? (not the release on npm, the master branch on git)
With the fix, unless you are walking on the piston, it shouldn't recompute.

Are you sure you updated to the latest commit ? (not the release on npm, the master branch on git)
With the fix, unless you are walking on the piston, it shouldn't recompute.
Make sure you have these changes 00b4469

yes, i have changes. Everything is also repeated as shown in the log

ok, try the latest version

@Karang He just turns but doesn't move now. Can you give me a copy of the world for testing?

I suppose you meant to ask if you could give me a copy of your world to reproduce the issue ? that would be great

I suppose you meant to ask if you could give me a copy of your world to reproduce the issue ? that would be great

melonfarm.zip
1.12.2 version world

@Karang you have alternative solution?

Not without being able to reproduce. One thing you can try is to monitor the physicTick event to check that its properly called every 50ms.
Add somewhere:
const { performance } = require('perf_hooks')
let start = performance.now()
bot.on('physicTick', () => {
  console.log(performance.now() - start) // should report 50 ms
  start = performance.now()
})

You can also add a log in the path_update event to see if the path is still being recomputed too often.


[FLINK-12484][runtime] remove unnessecary checkpoint lock usages

What is the purpose of the change

Push getCheckpointLock() method from StreamTask down to StreamSourceTask and use MailboxExecutor instead (where possible).

Brief change log

introduce ExecutionDecorator field in StreamTask and MailboxProcessor; for SourceStream task it synchronizes every action on a monitor, for any other task just executes it
migrate ContinuousFileReader to MailboxExecutor; at first, the most simple solution to be checked (for performance degradation)
remove any remaining other getCheckpointLock() usages

Verifying this change
This change is already covered by existing tests, such as 'ContinuousFileProcessingMigrationTest', 'StreamTaskTest', 'ContinuousFileReader' benchmark.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): yes (coarser lock granularity for SourceStreamTask, ignoring priority of actions in 'ContinuousFileReader')
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: yes ('ContinuousFileReader' will no longer snapshot any state)
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? not applicable

@flinkbot run travis


Fortran Best Practices: Floating Point Numbers comparison

The Floating Point Number  section of Fortran Best Practices could be extended with 2 subsections:

comparison of two real numbers;
undesirability of using real as iterator within do loops (it was deprecated in Fortran95 standard).

The motivation.
It's common problem for all programming languages when beginner programmer tries to compare fooating points numbers especially using if statement. It would be usefull to demonstrate more accurate approaches (with use of intrinsic procedures?) of comparing numbers to avoid accuracy and computational issues.
The second problem comes from first one and could results in computational issues.

real(dp) :: tol
tol = 10 * epsilon(1.0_dp)

real(dp), parameter :: tol = 1.0e-10_dp
if (abs(x - y) < tol) then
   print *, "Effectively Equal"
else
   print *, "Not Equal"
end if

Floating-point numbers like 0.1  cannot be represented exactly in binary because their binary form is infinite and repeating. Due to the limited precision of floating-point formats (like 32-bit or 64-bit), these numbers are rounded off to fit within the constrained number of bits. This rounding can lead to small errors in representation and calculations. so it is better to add tolerance and check whether the numbers are close enough.
for second
Use integer iterators and convert them to floating point within the loop:
integer :: i
real(dp) :: step, value
step = 0.1_dp
do i = 0, 10
   value = i * step
   print *, value
end do

@band-a-prend do you want me to write this in the documentation website


"Y" wrong behavior

Y should Yank to the EOL (characterwise).
Actually, the behavior is Yank all line (linewise).

No, I'm wrong. Y has the correct but unintuitive behavior.


Use bytearray for buffers instead of byte strings

Python strings are immutable. Thus, using += operator
on them, creates a copy and leads to quadratic time
complexity.
To measure it, I wrote a small benchmark reflecting
the code in session.py:
import time

def timeit(method):

    def timed(*args, **kw):
        ts = time.time()
        result = method(*args, **kw)
        te = time.time()
        print '%r %2.2f sec' % \
              (method.__name__, te - ts)
        return result

    return timed

ITERATIONS = 1000000
CHUNK = 'a' * 10000

@timeit
def concat():
	send_buffer = ''
 	for i in range(ITERATIONS):
		send_buffer += CHUNK

@timeit
def byte_array():
	send_buffer = bytearray()
 	for i in range(ITERATIONS):
		send_buffer += CHUNK

byte_array()
concat()

I run it 3 times like that and 3 times in different order:
Results:
adam@adam-box:~/Desktop$ python test.py
'concat' 3.26 sec
'byte_array' 1.39 sec
adam@adam-box:~/Desktop$ python test.py
'concat' 3.30 sec
'byte_array' 1.34 sec
adam@adam-box:~/Desktop$ python test.py
'concat' 3.24 sec
'byte_array' 1.40 sec

adam@adam-box:~/Desktop$ python test.py
'byte_array' 1.55 sec
'concat' 3.16 sec
adam@adam-box:~/Desktop$ python test.py
'byte_array' 1.54 sec
'concat' 3.20 sec
adam@adam-box:~/Desktop$ python test.py
'byte_array' 1.60 sec
'concat' 3.19 sec

'concat' average over 6 runs: 3.26 sec
'byte_array' average over 6 runs: 1.46 sec
'byte_array' on average was 2.2x faster.
Tests were for appending a chunk of length 10k,
which can happen (it can be even worse) during spikes.
Additionally, using strings creates a lot of temporary
string objects, which later GC has to collect, which
hits performance even more.
This commit uses mutable bytearrays in place where
immutable strings where concatenated, reducing time
complexity of appending from quadratic to linear.
Specifically, it changes send_buffer and read_buffer
variable types from byte strings to bytearrays.
These were passed to framing.py which previously took
and returned byte strings, for consistency and safety
of usage (not worrying about creating redundant copies)
now they are taking and returning bytearrays.
This commit also eliminates copying when using the slice
operator, e.g. send_buffer[bytes_sent:].
Removing from the front is still quadratic though:
send_buffer = send_buffer[bytes_sent:].
In theory, queue could be used to have it linear.
The problem is that it will be a queue holding bytes.
There's big overhead having that instead of having just
a continuous memory layout under the hood. From
benchmarks I did, neither Queue nor Python's list [] gave
better performance in the range close to real application
(CHUNK size ~10k and number of ITERATIONS ~1M).
Timings were much worse, more than 30 seconds.

@AdamStelmaszczyk The changes look ok to me, but I still feel we are not addressing the main issue:

In smarkets/streaming_api/ssession.py, the send_buffer is still an immutable byte string instead of a bytearray. In particular, in send() we still need to make a copy of the previously buffered frames.

What I think needs to be done is to change the signature of frame_encode (or provide another function) that takes a frame and also a bytearray and appends the encoded frame to the given bytearray.

Then, in send() method, replace:

    self.send_buffer += frame_encode(self.out_payload.SerializeToString())

by something like:
    frame_encode(self.send_buffer, self.out_payload.SerializeToString())

Similarly, in flush(), instead of:

    self.send_buffer = self.send_buffer[bytes_sent:]

use something like
    self.send_buffer = bytearray(self.send_buffer[bytes_sent:])
# or
    self.send_buffer[0:] = self.send_buffer[bytes_sent:]

Similar for the couple of places where self.send_buffer = b'' occurs

@jcpetruzza So I overlooked that I didn't add session.py to the commit, sorry.
I liked frame_encode(self.send_buffer, self.out_payload.SerializeToString()) suggestion, because then we don't create bytearray inside the function, we just append to the given one, so it's done.
Slicing in flush() stayed the same as send_buffer is bytearray.
Decode functions now use bytes, encode use bytearrays. Also re-ordered them in the code, so that the order is more logical.
Should be good now to merge.


Disable triple tap

Settings > Account Management - On triple tapping the wallet currently throws up the wallet's Primary mnemonic and other information. Triple tap needs to be disabled.

completed


kubernetes: 1.22.6 -> 1.23.3

Motivation for this change
Note that 1.23 will be the last release to support docker-shim; which is what the kubernetes NixOS module
is still currently using.   (See https://kubernetes.io/blog/2020/12/02/dockershim-faq/ for more info)
For the bump to 1.24 we will need to move to a CRI runtime like CRI-O or containerd. Both are
packaged in nixpkgs already.
The CRI-O maintainers are nix users, so I have a slight preference on picking CRI-O in the
hope to improve the stability. But they should be interchangeable given they both communicate
with kubernetes through the CRI GRPC API.
cc @saschagrunert . Would you be interested in helping out removing the docker-shim dependency of the kubernetes NixOS module? I think it'd be nice to do that work before 1.24 comes out so it can be dogfooded instead of us getting stuck not being to update once 1.23 is EOL.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] 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/)
22.05 Release Notes (or backporting 21.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
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Note that 1.23 will be the last release to support docker-shim; which is what the kubernetes NixOS module is still currently using. (See https://kubernetes.io/blog/2020/12/02/dockershim-faq/ for more info)
For the bump to 1.24 we will need to move to a CRI runtime like CRI-O or containerd. Both are packaged in nixpkgs already.

Moved to containerd a while ago.

huh I searched for the exact string but didn't see there was already a PR; lets move to the existing PR that is open.
@zowoq ah awesome. that's good news :D. i


Implement 'validator' xml output to enable downstream reporting

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/3110
Originally created by @aphethean on 2021-12-08 18:09:52

Problem to solve
(Summarize the problem we are trying to solve in the form of we need to do [A], so that [B] can [C])
We need to report on and monitor meltano project stability, so that dev teams can confidently promote from development to released.
Target audience
Data Heroes
Further details
As a Data Hero, I would like to execute meltano test and capture the output directly in my existing DevOps tooling.
Proposal
e.g. Azure DevOps

setup a meltano build job in Azure DevOps
setup a meltano test --junit-output-dir=test-results phase
setup an Azure DevOps JUnit publisher pointing at the xml output location test-results

What does success look like, and how can we measure that?
With little effort (less than 5 minutes) I can see a report in DevOps tooling for meltano test results
Regression test

[ ] Write adequate test cases and submit test results
[ ] Test results should be reviewed by a person from the team

Links / references
Related to https://gitlab.com/meltano/meltano/-/issues/2838

View 1 previous comment from the original issue on GitLab

Relevant to what we were talking about in Office Hours today cc @ReubenFrankel @visch @pnadolny13

Still relevant


[resolves #10] Support for contextual xhrPath

@redonkulus @ryanashcraft
This provides an option to the plugin getXhrPath that will get called for each context that is created. In this way, you can hook into the contextOptions.req to generate the xhrPath for that request.

CLA is valid!

CLA is valid!

Coverage remained the same at 100.0% when pulling bd615868358c7a6065a83cc519e5c09e9e1ee25a on dynamicXhrPath into e6da3802878a330c0ace40cf2deaaee9d0813126 on master.

Coverage remained the same at 100.0% when pulling 3e9fe116ee2bec53dc6799723b345d8417d48bd9 on dynamicXhrPath into e6da3802878a330c0ace40cf2deaaee9d0813126 on master.

:shipit:


[BUG] Application cannot start

Describe the bug
2019-08-14 15:36:46 maestral.main ERROR: Authentication error: Maestral's access to your Dropbox has been revoked. Please relink to continue syncing.
Traceback (most recent call last):
File "maestral/client.py", line 118, in get_account_info
File "dropbox/base.py", line 4508, in users_get_current_account
File "dropbox/dropbox.py", line 274, in request
File "dropbox/dropbox.py", line 365, in request_json_string_with_retry
File "dropbox/dropbox.py", line 463, in request_json_string
dropbox.exceptions.AuthError: AuthError('0fc15289f761ee76a47f75086dbf2a59', AuthError('invalid_access_token', None))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "maestral/main.py", line 120, in wrapper
File "maestral/main.py", line 205, in get_account_info
File "maestral/client.py", line 120, in get_account_info
maestral.errors.DropboxAuthError: Authentication error: Maestral's access to your Dropbox has been revoked. Please relink to continue syncing.
2019-08-14 15:40:51 maestral.main ERROR: Authentication error: Maestral's access to your Dropbox has been revoked. Please relink to continue syncing.
Traceback (most recent call last):
File "maestral/client.py", line 118, in get_account_info
File "dropbox/base.py", line 4508, in users_get_current_account
File "dropbox/dropbox.py", line 274, in request
File "dropbox/dropbox.py", line 365, in request_json_string_with_retry
File "dropbox/dropbox.py", line 463, in request_json_string
dropbox.exceptions.AuthError: AuthError('ae966154fc18f3f0da1a1b9588ca5e9a', AuthError('invalid_access_token', None))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "maestral/main.py", line 120, in wrapper
File "maestral/main.py", line 205, in get_account_info
File "maestral/client.py", line 120, in get_account_info
maestral.errors.DropboxAuthError: Authentication error: Maestral's access to your Dropbox has been revoked. Please relink to continue syncing.
To Reproduce
Nothing yet.
Expected behaviour
After revoking the app auth, it should ask to re-add it again.
System (please complete the following information):
macOS Mojave

Yes, thats a known issue. It has been already fixed in the development branch - the fix will be included in the next release (v0.2.7).

Thank you for the update, and your great work on the project!

Great you like it :) The issue should be fixed in the newest release. Could you check if it works for you?

Yup, and it is working 😄

Thank you for the great update!

Good!


Update sriov chart

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
I want sriov to be updated to the latest release
Describe the solution you'd like
A clear and concise description of what you want to happen.
I want sriov to be aupdated to the latest release
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

Did the same validations as mentioned in https://github.com/rancher/rancher/issues/36069#issuecomment-1119748428. Also noticed image versions running on containers in sriov controller daemonset were bumped


Text status pane for arm and drive

We need a way to display the text we receive on status requests or responses from POST requests. This can just be simple JSON formatting in a resizable pane, or whatever styling idea makes sense. This is intended to complement future 2D and 3D status panes.

Addressed in #11


v2.0

V2.0 release with UI support.  This UI currently supports use in Maya and OS level as a standalone however is only currently implemented as an easy install for py35.  If you have your own installation of any Qt Python distro it can use it, however obviously the pip install of those is quite lacking so I cannot support it without this disclaimer.  Currently developed with Python3.5/PyQt5 as standalone and Python2.7/PySide2 in Maya 2017.

v2.0 release for the UI.


GRPC installation hangs PHP 7.3

I am trying to install grpc with php 7.3
OS : Ubuntu 18.04
PHP : 7.3
The installation stuck after sometime
RK=1 -c /tmp/pear/temp/grpc/src/core/ext/xds/xds_client.cc  -fPIC -DPIC -o src/core/ext/xds/.libs/xds_client.o
Instllation hangs in the above line

Looks like there may be problems with your environment. We have tests against 7.3 and Debian/Ubuntu based environments and didn't see a problem. I couldn't reproduce this with a manual test. If you have a more detail reproducible test case (like a docker image), please re-open with those additional details. Thanks.


Issue closed events don't show commit

The website says that “user X closed this in commit Y” but ForkHub only says that the issue was closed by X.

The website also shows closed events that look like the following:
jonan closed issue jonan/ForkHub#8
The app says
jonan closed issue 8 on jonan/ForkHub

Thanks for the feedback!
@fenhl I guess you're talking about issue events aren't you?
@RandomlyKnighted news feed events don't show the commit closing the issue.


Added in commands for color.

I added the commands /changecolor and /customcolor.
/changecolor is essentially the same as doing /nametag but with the color specified in the command
/customcolor takes three inputs, the values of the color in the RGB Format, and then changes the user's nametage to match.
I made this rather quickly, so there are probably a few errors that can occur. Also feel free to change the command names.

Thank you very much! I edited the way it works significantly, I hope you don't mind...
https://github.com/Amaz1/coloured_nametag/commit/a8f45c595d8b7f18db186a4bc0eebe3f9af22eac


Back End for registration Form

Description of the enhancement
I want to change the theme of the registration page like other pages.

what all changes you want to make

what all changes you want to make

sorry, mistakenly I have written contact form. @anushbhatia

if at all you wanted to change the background theme then why you changed the image! changing then again changing?

if at all you wanted to change the background theme then why you changed the image! changing then again changing?

theme means like the other pages not the color.

Please elaborate what does backEnd include @anushbhatia.

yes, connect it to a firebase account and prevent null values

@aashimgarg Do you want to do this as I am new to backend :(?

@aashimgarg If you want to work on this then you can take it :)

The remaining work will be done with the backend specific issues


cask aliases update

Please be sure to check out our contributing guidelines
before submitting your pull request.
Fixes #1866
Proposed Changes

deprecated cask aliases

Updated cask aliases, because old ones are deprecated. Hence brew cask install isn't working anymore, instead use brew install --cask.

Updated cask aliases, because old ones are deprecated. Hence brew cask install isn't working anymore, instead use brew install --cask.

Created #1905 cherry-picking commits from @Rawmanski.

Closed via #1905


Feature request: XML Solution (SLNX) workflow

Visual Studio Preview has a new workflow feature with the .slnx solution as an alternative to the traditional .sln that uses GUID, which is pretty much useless. This type of SLNX seems to make the project structure simpler and the code may also be easier to understand.
I hope the dev team and fellow contributors will agree with this, because this feature will be very helpful.

/extC#

It looks like this is caused by the C# extension. Please file the issue to the C# extension repository. Make sure to check their issue reporting template and provide them relevant information such as the extension version you're using. See also our issue reporting guidelines for more information.
Happy Coding!


Javascript port of pow.Fulfil

Would be great to see a javascript port of pow.Fulfil included in a byte slice within the package, this would make go-pow practical for communication with the browser!

Sounds like a good idea.  First there has to a Javascript port though.


Evaluate glide-hash result without reading $?.

validate-glide is called with errexit enabled (in script/make.sh that sources validate-glide), which means that grep returning a non-zero exit code will cause the script to terminate prematurely. Thus, we will never get to the point where we see the error message.
The fix is to embed the grep check directly inside the if statement.

I added a bogus, manual change to the glide.yml file to demonstrate that the error message is now shown (see Travis CI output) and reverted it afterwards. Post-LGTM, I can either squash manually or we use Github's "squash and merge" feature to keep the Git history clean.
@containous/traefik please take a look :)

LGTM 👍


Add terms of service link on login

On the login screen add the terms of service so that the user is reminded to read it always
"By continuing to use the Wallet you agree to the Terms of Service."
@antuz123  - we need to remind the user often.

Use the note as we have during creating the wallet.

Use the note as we have during creating the wallet.

-Verified this issue on dev app version1.4.2(203)

-Verified this issue on dev app version1.4.2(203)


Consider porting some of Gliss

Scott Kellum has a pretty neat article layout system over at https://github.com/voxmedia/gliss
It would be nice if some of that functionality was built into Lost somehow. Maybe just the ability to pull items to the left and right.

Tried doing this and it ended up a bit funky. Closing this until I have a real idea as to how to incorporate its principles.
Maybe just port Gliss to Stylus and use it alongside Lost?


Translation files not being used

Based on changing values in the files and looking at the code, it doesn't appear that the translation files are being used (ie. en.json and de.json).
The getTranslations() function is not being called.

Hi, the getTranslations() function is called in line 31 in MMM-AlexaControl.js. But the translation files aren't very important. That's only the device names. But you can change them in the Alexa app. So I don't really understand where your problem is.

I didn't realize you can change the names on Alexa.  I set that getTranslations is defined on line 31 but I don't see it getting called anywhere. But as you say it's not that big of a deal if I can change names in Alexa.


fix(text): Fix TTML render timing and line break issues

This changes the SimpleTextDisplayer to flatten text payloads
only starting at non-container cues. Not doing so poses an issue with
'rolled over' caption lines.
E.g., consider:

TTML file N with caption line A from time [1.4, 2.1].
TTML file N+1 with caption lines A from time [1.4, 2.4] and B from time [2.4, 3.4].

If captions A and B are descendants of two different <p> elements, Shaka
currently flattens the text payload from A and B into a single cue that is
rendered onto the display from time [1.4, 3.4]. Therefore, caption A's text
payload is incorrectly showing during time [2.4, 3.4].
The fix updates the SimpleTextDisplayer#append() logic to split up individual
non-container cues into their own VTTCue object. This will not be done at the
TTMLTextParser level to ensure proper style inheritance still occurs for the
(actual) text cues.
Closes #4381

That is an excellent PR description.  Very helpful!


[Question] Why counters starts from NO_DATA rather than 0

Question
https://github.com/prometheus/prometheus/blob/8b5eb562b12f4ea0e0f9126e7b25f5a450687970/promql/functions.go#L70
In above code if there is only one point exist it does not calculate the rate(or increase) of the samples. For example, VictoriaMetrics assumes that counters starts from 0 which looks natural to me. Why prometheus ignores these samples.
Behind the story
I create a counter for my method calls. I use method parameters as my labels. I want to count all the distinct method calls. Some of the parameters only one time used in my method. Thus, when I call the my method increase(query_selector[5m]) if the data is not exist at 5m before  it return 0 as a result (You can imagine query_selector[5m] result [1, 1, 1, 1] with respective timestamps).
Further investigation
query_selector - query_selector offset d is also fails because the right side of the minus returns NO_DATA. Even if left side returns a valid value. This query result with NO_DATA rather than left side value. This problem can be related.

because many counters do not start at zero. e.g. if you have traffic disruption, or you add a target that was never monitored before.
Assuming that a counter starts from zero would be inventing data and returning incorrect values.

If you really have the use case for this, you could do: query_selector - query_selector offset d or query_selector


CircleCI parallelisation

Description
Speed up CircleCI runs. Currently CircleCI takes 45minutes to run the full test suite.
Fixes

#350

Contribution Check List

[ ] All tests pass.
[ ] New functionality includes testing.
[ ] New functionality has been documented in the README if applicable

To note, I'm seeing lots of errors in systemd when poise runs systemctl daemon-reload
See here for an example that occurs pretty regularly

And they fail inconsistently. Can you re run them?

I'm just going to merge this in, and depoise this.

          1 Error

:no_entry_sign:
Please include a CHANGELOG entry.

  Generated by :no_entry_sign: Danger


pass URI string to resolver impls

We were already passing the parsed URI, but now we pass along the URI string as well.

Would this make it possible to remove the uri parameter entirely?

Craig, are you asking whether we can pass only the raw URI string instead of the parsed URI?  I don't think that makes sense, since basically every resolver needs the parsed URI anyway.  If we didn't pass it in, then every resolver impl would need to do the parsing itself.  And the registry needs to do the parsing anyway in order to find the URI scheme, so that would amount to parsing it twice.

Right... I was trying to think through what happens when this becomes a
public API... We should chat separately, but right now making resolver
public likely means making our uri parsing and our json parsing public, and
it's not clear to me that this is desirable.
On Mon, Sep 13, 2021, 8:18 AM Mark D. Roth @.***> wrote:

Craig, are you asking whether we can pass only the raw URI string instead
of the parsed URI? I don't think that makes sense, since basically every
resolver needs the parsed URI anyway. If we didn't pass it in, then every
resolver impl would need to do the parsing itself. And the registry needs
to do the parsing anyway in order to find the URI scheme, so that would
amount to parsing it twice.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/grpc/grpc/pull/27316#issuecomment-918300332, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ACNG45JV7DIMCNFEPHCE45DUBYI5HANCNFSM5D2H5EIA
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Good point.  I agree that it seems undesirable to expose our URI parsing library, but on the other hand, we know that basically all resolver impls will need this functionality, and in the absence of some standard OSS URI-parsing library, resolver impls are likely to try to roll their own (and get it wrong) if we don't provide something.
Anyway, as you say, let's chat further about this separately.

The "Basic Tests Python Windows" failure is an infrastructure timeout.


[MINOR] Supported old note format in case of not having name of note

What is this PR for?
Supporting old format of note which doesn't have name inside. Long time ago, when creating note without specific name, name field become empty string. but it become error while remove note for current master. It will fix this error
What type of PR is it?
[Bug Fix]
Todos

[ ] - Enable getName returns getId if it has empty value

What is the Jira issue?
N/A
How should this be tested?
See the test added
Screenshots (if appropriate)
N/A
Questions:

Does the licenses files need update? No
Is there breaking changes for older versions? No
Does this needs documentation? No

maybe minor, could this automatically fix up the old note so that it will be saved with a name?

LGTM

test this please

Will merge it


Use grid for activation required template

Looks like this now:

Closes #648

:+1:
Looks good, but maybe we should add 'go back to the homepage' or some other link at the bottom so it has some 'action' to follow up from that page. Otherwise looks a bit like a dead end. :)


Remove unused code and update Jenkinsfile name for keptn use case carts app example

Is your feature request related to a problem? Please describe.
going through the onboarding example app use case, there is an extra step to rename Jenkinsfile to Jenkinsfile.ci.   This is not needed if the Jenkins file in the cart repo was renamed to just Jenkinsfile.  Also, in the carts repo having unused files and folders like monspec leads to confusion.
Describe the solution you'd like

in keptn-sockshop/carts repo, remove unused Jenkinsfile, rename Jenkinsfile.ci to just Jenkinsfile.
in keptn-sockshop/carts repo, remove the unused files and sub-folders

monspec sub-directory
manifest sub-directory
ci sub-directory
manifest.yml file

update the keptn docs for the use case to remove the step to rename the Jenkinsfile.

Describe alternatives you've considered
n/a
Additional context
https://keptn.sh/docs/0.2.0/usecases/onboard-carts-service/

keptn use cases won't use Jenkins going forward. Closing for now.


How can rotate a image?

hi,
I want to rotate a image by use follow code, but the result  is same,  the rotate image same with original image.  How worte this code?
Alex
open( "./images/list_1.jpg" );
$editor->rotate(90);
$editor->save( "./images/list_1_rotate.jpg", null, 90 );
$editor->free();

Hello Alex,
It was a bug. Please update to v1.2.1 to fix the issue. Your code is correct.


cmd/go: list -m -json often missing .Origin

Go version
go version go1.22.3 darwin/arm64
Output of go env in your module/workspace:
GO111MODULE=''
GOARCH='arm64'
GOBIN='/Users/josh/bin'
GOCACHE='/Users/josh/Library/Caches/go-build'
GOENV='/Users/josh/Library/Application Support/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='arm64'
GOHOSTOS='darwin'
GOINSECURE=''
GOMODCACHE='/Users/josh/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='darwin'
GOPATH='/Users/josh'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/Users/josh/go/1.22'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/Users/josh/go/1.22/pkg/tool/darwin_arm64'
GOVCS=''
GOVERSION='go1.22.3'
GCCGO='gccgo'
AR='ar'
CC='clang'
CXX='clang++'
CGO_ENABLED='1'
GOMOD='/dev/null'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -ffile-prefix-map=/var/folders/vm/htvrhp4177v2dfhdjlvl0pqh0000gn/T/go-build2633414260=/tmp/go-build -gno-record-gcc-switches -fno-common'

Bug report
This is a regression. With Go 1.22.3:
$ go list -m -json golang.org/x/tools@latest
{
	"Path": "golang.org/x/tools",
	"Version": "v0.21.0",
	"Query": "latest",
	"Time": "2024-05-06T16:54:44Z",
	"GoMod"<EMAIL_ADDRESS>	"GoVersion": "1.19"
}

Note that there is no Origin field.
With Go 1.21.10:
$ go list -m -json golang.org/x/tools@latest
{
	"Path": "golang.org/x/tools",
	"Version": "v0.21.0",
	"Query": "latest",
	"Time": "2024-05-06T16:54:44Z",
	"GoMod"<EMAIL_ADDRESS>	"GoVersion": "1.19",
	"Origin": {
		"VCS": "git",
		"URL": "https://go.googlesource.com/tools",
		"Ref": "refs/tags/v0.21.0",
		"Hash": "cc29c91ba3acb47c1793da56d919cc40def4ea41"
	}
}

Given the conversation in https://github.com/golang/go/issues/57051, it is clear that the intent is that the Origin field be present.
Relevant to https://github.com/golang/go/issues/18387.

Interestingly, GOPROXY=direct go list -m -json golang.org/x/tools@latest seems to work every time.
The VCS info is present in the proxy<EMAIL_ADDRESS>CC @matloob @samthanawalla

@findleyr thanks! That's 80% of a workaround for me!
Unfortunately, the VCS info doesn't appear to always be present in the proxy<EMAIL_ADDRESS>

That VCS info is not always present is, I believe, a known limitation. (CC @suzmue to confirm). The decision was made to not reprocess older versions in the proxy--even ignoring compute resources, we can't guarantee that older versions still exist in at the origin.
But for x/tools@latest, VCS info is present, and yet not returned by go list. That seems like a bug.


How to initialize Elastica client to SSLed not verified host through the monolog configuration

Hello,
I'm trying to create a new elasticsearch handler through the monolog configuration (.yml). This client needs to connect to Elasticsearch server with unverified SSL certificate.
Unfortunately, I'm not able to figure how can I feed the options parameter of the constructor with data through the monolog configuration structure.
public function __construct(Client $client, array $options = array(), $level = Logger::DEBUG, $bubble = true)
Can anyone please help me?

I think this is a mistake I should write this post in SymfonyMonolog instead of here


Cookie

The Python cookie stealer is a tool that can be used in penetration testing and XSS attacks to steal browser cookies from victims. The tool works by setting up a server that listens for incoming requests with a specific cookie value. When a request is received, the tool logs various information about the request, including the date and time, client IP address, user agent, referer, and cookie value, to a file.


Add the possibility to not select an option in mat-select when a mat-option is clicked.

Bug, feature request, or proposal:
When a mat-select contains a list of mat-option elements, and a user clicks on one one of the option, the option clicked shall not be selected in the HTML if mat-select has been given the possibility to not do so.
What is the expected behavior?
N/A.
What is the current behavior?
The option clicked is always selected. See  "private _onSelect(option: MatOption, isUserInput: boolean): void" method in https://github.com/angular/material2/blob/master/src/lib/select/select.ts.
Maybe surrounds the line "option.selected ? this._selectionModel.select(option) : this._selectionModel.deselect(option);" in a if(selectable) statement ? Where 'selectable' would be a mat-select input ?
What are the steps to reproduce?
Basic example of a mat-select containing mat-options.
What is the use-case or motivation for changing an existing behavior?
It would be useful when you need a back-end to perform checks on the value clicked before returning a model to the front-end telling it if the value shall be selected in the HTML or not.
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular Material 6.2.1
Is there anything else we should know?

This sounds very counter-intuitive. Why not do your checks after the element is selected and revert the value if it isn't supposed to be?

Maybe you are right. I do not make the specifications for our software though, I'll ask my project owner.
Historically we used to have our front-end components to behave like so.


intel_adsp: Multiple tests failing after move init code from SYS_INIT.

Describe the bug
After these changes https://github.com/zephyrproject-rtos/zephyr/pull/78235 all intel adsp hardware platforms have the same issues.
tests/drivers/sensor/generic/drivers.sensor.generic
tests/drivers/sensor/generic/drivers.sensor.generic.fpu
tests/kernel/common/kernel.common
tests/kernel/common/kernel.common.minimallibc
tests/kernel/common/kernel.common.misra
tests/kernel/common/kernel.common.picolibc
tests/kernel/events/event_api/kernel.events
tests/kernel/fifo/fifo_api/kernel.fifo
tests/kernel/ipi_optimize/kernel.ipi_optimize.smp
tests/kernel/lifo/lifo_api/kernel.lifo
tests/kernel/lifo/lifo_usage/kernel.lifo.usage
tests/kernel/mbox/mbox_usage/kernel.mailbox.usage
tests/kernel/mem_protect/sys_sem/kernel.memory_protection.sys_sem.nouser
tests/kernel/msgq/msgq_api/kernel.message_queue
tests/kernel/obj_core/obj_core/kernel.obj_core
tests/kernel/obj_core/obj_core_stats/kernel.obj_core.stats
tests/kernel/obj_core/obj_core_stats_api/kernel.obj_core.stats.api
tests/kernel/profiling/profiling_api/kernel.common.profiling
tests/kernel/queue/kernel.queue
tests/kernel/queue/kernel.queue.minimallibc
tests/kernel/semaphore/semaphore/kernel.semaphore
tests/kernel/smp/kernel.multiprocessing.smp
tests/kernel/smp/kernel.multiprocessing.smp.affinity
tests/kernel/smp/kernel.multiprocessing.smp.minimallibc
tests/kernel/smp_abort/kernel.smp_abort
tests/kernel/threads/thread_stack/kernel.threads.thread_stack
tests/kernel/workq/work/kernel.workqueue.api
tests/lib/p4workq/libraries.p4wq

Logs and console output
Logs are different but all appeared after this change.
Environment:

OS: Linux
Toolchain Zephyr SDK 0.16.8
Commit SHA : v3.7.0-3233-g4cc3134aa1c1

you need to give at least a hint of what is failing and what the issue is...


Css Image Slider

I would like to add css image slider can you assign me .

Go ahead 🚀

@irshadmd  Made pr can you check it ?

@irshadmd  Made some fix in files as you said you can check the pr


Not able to download the courses

Hi,
Thank you for sorting the redirect issue. I'm getting the following error now. Could this please be looked at?

Sorry, videos blocked by encryption has no solution at the moment


Add paramater to change profanity filter level for Google Speech Recognition

Greetings
Added the pfilter parameter to adjust the profanity level in recognize_google. The value is sent in the request to the Google Speech Recognition API as the pFilter parameter. Added a line to the function description explaining the new parameter.
Jorge

Hello,
I need to deactivate profanity filter, so I modified my local version to be like this commit:
https://github.com/Uberi/speech_recognition/pull/363/commits/3761f34d5d950d6f3eeca9c058a80f32d85ea124
But still, I'm getting filtered texts.
Would you please add a way to set profanity filter=false in google speech api? It seems pfilter=0 in url is not working anymore.
Thanks.

The API is case sensitive, try pFilter instead. I will test it when I get home.

pFilter is working, thank you


Markdown warning shows no hover

Testing #149979
I would have expected a hover telling me about the error:

Hm now it works.


UIButton.set_dimensions() method does not support dynamic sizes

Describe the bug
The method cannot be called with either of the arguments as -1 because it has an if condition which does not allow for negative values. This means that once a button has been initialised, it is impossible for it to be resized if it dynamically resizes either horizontally or vertically. I suspect this is also the case for other dynamically sized elements
To Reproduce
Steps to reproduce the behaviour:

Initialise a button with any size
Try to resize button usnig UIButton.set_dimensions(-1, 200) # Or any size where atleast one of the dimensions is -1
You'll see that the button has either disappeared or appears in an unexpected size

Expected behaviour
When a button is resized with -1 in any of the sizes, it should be able to resize appropriately. Perhaps if the button didn't already have dynamic sizing, it should be able to switch from dynamically sized to normally sized and vice versa. This should be changed in the UIElement function in the if statement.
Platform and software (please complete the following information):

OS: Windows
Pygame GUI version 0.6.8
Pygame version 2.1

If there are any questions, please feel free to ask and I will do my best to clarify

To be honest, this thing is a little complicated. Because not only buttons have a dynamic attribute, but also the drawable_shape below them has a dynamic attribute. As far as I know, button does not have a method to switch whether it is dynamic or not.
I think it can be solved. Modify the dynamic properties of self and drawable_shape by detecting whether -1 is passed in. Then call the redraw of drawable_shape to solve the problem. I just don't know what impact it will bring.

I might fix that myself if I am free, eventually


Master

Prototype function for whispering messages to users in Twitch Chat.

Current coverage is 51.21%

Merging #32 into whisper will increase coverage by +1.88% as of e35c1e2

@@            whisper     #32   diff @@
=======================================
  Files            40      41     +1
  Stmts          1435    1519    +84
  Branches        232     251    +19
  Methods           0       0
=======================================
+ Hit             708     778    +70
- Partial          80      89     +9
- Missed          647     652     +5

Review entire Coverage Diff as of e35c1e2

Powered by Codecov. Updated on successful CI builds.


changelog?

would it be possible to include even a minimal changelog of changes for each tagged release?

Certainly. I am working on a major refactoring. Will certain be more transparent after v0.2

cool, thanks


Push and use china registry

towards https://github.com/giantswarm/giantswarm/issues/7435

E2E is fucky.

@rossf7  sure I can leave it for tomorrow, ping me when its fixed so i can rebase

@calvix Thanks will do.

@calvix e2e is fixed. You'll need to rebase.

nice and green :) good job @rossf7


React Set Up

In this project I:

Created a React application using Create React App (CRA).
The application is running without errors.

@prolajumokeoni Thank you for your review.


[Docs] Mention request for JAX-CORL

Dear purejaxrl team,
First of all, I would like to express my appreciation for developing the fascinating codebase, purejaxrl
The high-quality single-file implementation in JAX is truly impressive, and I have greatly enjoyed using it, especially PPO(really fast).
As a researcher who predominantly uses JAX due to its speed and efficiency, I recognized the potential value of a offline counterpart of purejaxrl. To address this gap, I recently launched JAX-CORL, which provides single-file implementations of Offline RL algorithms specifically in JAX.
I believe that purejaxrl and JAX-CORL can complement each other as online and offline versions of clean RL in JAX. If you find it suitable, I would be happy if you could mention JAX-CORL in the related work section of your README.
Thank you!

That sounds great! Could you open a PR for it?

Actually I just added it. Great work!

@luchris429 Thank you for your mentioning!!!


TTS Notify

It would be nice to have text-to-speech notifiers (online/offline): google, mary, etc..

use the shell_command component on os x to call 'say' , on Linux call
'espeak'
On Tue, Dec 15, 2015, 07:37 Oleg<EMAIL_ADDRESS>wrote:

It would be nice to have text-to-speech notifiers (online/offline):
google, mary, etc..
—
Reply to this email directly or view it on GitHub
https://github.com/balloob/home-assistant/issues/752.

Ok, but command shell require predefine command, and message for speaking is also predefined..
Now, shell_command component solves my problem with simple tts. Thanks


[Dubbo-5592] Simplify code of  getExtensionLoader method

What is the purpose of the change
fix #5592
Brief changelog
XXXXX
Verifying this change
XXXXX
Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Make sure there is a GITHUB_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GITHUB issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Format the pull request title like [Dubbo-XXX] Fix UnknownException when host config not exist #XXX. Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Run mvn clean install -DskipTests=false & mvn clean test-compile failsafe:integration-test to make sure unit-test and integration-test pass.
[ ] If this contribution is large, please follow the Software Donation Guide.

CI fail.
Try clean cache and ci is rebuiliding now https://travis-ci.org/apache/dubbo/builds/633572460?utm_source=github_status&utm_medium=notification

this change looks ok to me. but somehow CI still fail for this PR.
Currently travis is in maintain, I will try again when it back


Scientific functions only available in landscape screen

On my phone, scientific functions are only available in landscape screen orientation,
not in default portrait screen orientation. Moreover, user even may not know that
scientific functions are present in the app and that they must change the screen
orientation to access them.

Sorry for the inconvenience @r0polach, currently this is intended behaviour(scientific mode requires landscape). I didn't try to add an intro tour or popup dialog when app ran first concerning this.(will be present in the next update)
Concerning portrait, fitting all those buttons and additional ones may not be a issue for larger screen sizes by a drop down or something similar like Google does for its Calculator but there are extra buttons here as well like comma, space, variable selector, etc. I have also found weird issues in really small screen sizes, which makes the UI cut off.(only in portrait mode)
Thanks for reporting this issue and feel free to let me know if you encounter any problems with other modes in yetCalc.

Fixed with new major version upgrade #147


Installing plugin crashes server

Hi,  I'm trying to install this plugin on a fresh instance of Inventree.  When I add the plugin 'inventree-brother-plugin' to my plugins.txt file, the server fails to start and I see this log in my 'inventree-worker' container:
/home/inventree/data/config.yaml exists - skipping
InvenTree translation coverage: 19%
Waiting for database...
Database connection sucessful!
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
Traceback (most recent call last):
  File "/home/inventree/InvenTree/plugin/registry.py", line 273, in collect_plugins
    plugin._get_package_metadata()
  File "/home/inventree/InvenTree/plugin/plugin.py", line 297, in _get_package_metadata
    meta = metadata(cls.__name__)
  File "/usr/local/lib/python3.9/importlib/metadata.py", line 559, in metadata
    return Distribution.from_name(distribution_name).metadata
  File "/usr/local/lib/python3.9/importlib/metadata.py", line 196, in from_name
    raise PackageNotFoundError(name)
importlib.metadata.PackageNotFoundError: BrotherLabelPlugin

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/inventree/InvenTree/plugin/helpers.py", line 68, in handle_error
    package_name = pathlib.Path(package_path).relative_to(install_path).parts[0]
  File "/usr/local/lib/python3.9/pathlib.py", line 939, in relative_to
    raise ValueError("{!r} is not in the subpath of {!r}"
ValueError: '/usr/local/lib/python3.9/importlib/metadata.py' is not in the subpath of '/usr/local/lib/python3.9/site-packages' OR one path is relative and the other is absolute.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/inventree/InvenTree/manage.py", line 23, in <module>
    execute_from_command_line(sys.argv)
  File "/root/.local/lib/python3.9/site-packages/django/core/management/__init__.py", line 419, in execute_from_command_line
    utility.execute()
  File "/root/.local/lib/python3.9/site-packages/django/core/management/__init__.py", line 395, in execute
    django.setup()
  File "/root/.local/lib/python3.9/site-packages/django/__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/root/.local/lib/python3.9/site-packages/django/apps/registry.py", line 122, in populate
    app_config.ready()
  File "/home/inventree/InvenTree/plugin/apps.py", line 46, in ready
    registry.collect_plugins()
  File "/home/inventree/InvenTree/plugin/registry.py", line 276, in collect_plugins
    handle_error(error, do_raise=False, log_name='discovery')
  File "/home/inventree/InvenTree/plugin/helpers.py", line 71, in handle_error
    path_obj = pathlib.Path(package_path).relative_to(settings.BASE_DIR)
  File "/usr/local/lib/python3.9/pathlib.py", line 939, in relative_to
    raise ValueError("{!r} is not in the subpath of {!r}"
ValueError: '/usr/local/lib/python3.9/importlib/metadata.py' is not in the subpath of '/home/inventree/InvenTree' OR one path is relative and the other is absolute.
/home/inventree/data/config.yaml exists - skipping
InvenTree translation coverage: 19%
Waiting for database...
Database connection sucessful!

Any ideas on how to resolve this?

@murray484 with the given information no. What version of InvenTree are you running, what plugin verison, on what OS and with what deployment method?

@matmair I'm running Inventree v0.8.3, plugin version is the latest on pip, running using docker-compose (with the production docker-compose file from the install tutorial) on Ubuntu 22.04.

ValueError: '/usr/local/lib/python3.9/importlib/metadata.py' is not in the subpath of '/usr/local/lib/python3.9/site-packages' OR one path is relative and the other is absolute.

@matmair looks like an issue relating to python venv pathing perhaps?

@SchrodingersGat could be a bug we fixed in 0.8.x release regarding error detection and path traversal. Depends on the executing environment though.

I can reproduce this pretty simply, by adding inventree-brother-plugin to plugins.txt
It looks like the importlib metadata (added recently) errors out, most likely due to pathing if the plugins are installed within the venv context?

I will have a look after work.

It looks like the importlib metadata (added recently) errors out, most likely due to pathing if the plugins are installed within the venv context?

Could be 🤷

Ok on dev I can reproduce, but not in production. The solution I thought of is not working, might have to dig deeper.

@murray484 I have raised an issue in the InvenTree code base, I believe that this is a fundemental error not linked just to this plugin:


Allow concatenate of cube with anonymous dimensions

I just tried to concatenate two cubes like this with contiguous time coords
sea_water_potential_temperature / (degC) (time: 12; depth: 5; *ANONYMOUS*: 1021; *ANONYMOUS*: 1442)
     Dimension coordinates:
          time                                x          -               -                  -
          depth                               -          x               -                  -

Concatenate failed until I added dummy coords to dims 2 and 3 (i.e. lat and lon). I propose that in such circumstances, concatenate assumes that anonymous coords that are the same size and dimension are assumed to be compatible, with a warning issues to the user accordingly.

Closing due to inactivity.


KAFKA-9039: Improve replica fetcher performance for high partition count clusters

Improves the performance of the replica fetcher for high partition count fetch requests, where a majority of the partitions did not update between fetch requests. All benchmarks were run on an r5x.large.
Vanilla
Benchmark                                  (partitionCount)  Mode  Cnt        Score       Error  Units
ReplicaFetcherThreadBenchmark.testFetcher               100  avgt   15    26491.825 ±   438.463  ns/op
ReplicaFetcherThreadBenchmark.testFetcher               500  avgt   15   153941.952 ±  4337.073  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              1000  avgt   15   339868.602 ±  4201.462  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              5000  avgt   15  2588878.448 ± 22172.482  ns/op
From 100 to 5000 partitions the latency increase is 2588878.448 / 26491.825 = 97.
Avoid gettimeofdaycalls in steady state fetch states
854588804d7cf96a10d6e4a74db533deb7e26b55
Benchmark                                  (partitionCount)  Mode  Cnt        Score      Error  Units
ReplicaFetcherThreadBenchmark.testFetcher               100  avgt   15    22685.381 ±  267.727  ns/op
ReplicaFetcherThreadBenchmark.testFetcher               500  avgt   15   113622.521 ± 1854.254  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              1000  avgt   15   273698.740 ± 9269.554  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              5000  avgt   15  2189223.207 ± 1706.945  ns/op
From 100 to 5000 partitions the latency increase is 2189223.207 / 22685.381 = 97X
Avoid copying partition states to maintain fetch offsets
29fdd6094b828153c762f1d99b645481f7200cee
Benchmark                                  (partitionCount)  Mode  Cnt        Score      Error  Units
ReplicaFetcherThreadBenchmark.testFetcher               100  avgt   15    17039.989 ±  609.355  ns/op
ReplicaFetcherThreadBenchmark.testFetcher               500  avgt   15    99371.086 ± 1833.256  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              1000  avgt   15   216071.333 ± 3714.147  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              5000  avgt   15  2035678.223 ± 5195.232  ns/op
From 100 to 5000 partitions the latency increase is 2035678.223 / 17039.989 = 119X
Keep lag alongside PartitionFetchState to avoid expensive isReplicaInSync check
0e57e3e725ff70ad8845681b02873229c3c64544
Benchmark                                  (partitionCount)  Mode  Cnt        Score      Error  Units
ReplicaFetcherThreadBenchmark.testFetcher               100  avgt   15    15131.684 ±  382.088  ns/op
ReplicaFetcherThreadBenchmark.testFetcher               500  avgt   15    86813.843 ± 3346.385  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              1000  avgt   15   193050.381 ± 3281.833  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              5000  avgt   15  1801488.513 ± 2756.355  ns/op
From 100 to 5000 partitions the latency increase is 1801488.513 / 15131.684 = 119X
Fetch session optimizations (mostly presizing the next hashmap, and avoiding making a copy of sessionPartitions, as a deep copy is not required for the ReplicaFetcher)
2614b2417a6aac87e5decbae0a29d4f37ba9c7e3
Benchmark                                  (partitionCount)  Mode  Cnt        Score      Error  Units
ReplicaFetcherThreadBenchmark.testFetcher               100  avgt   15    11386.203 ±  416.701  ns/op
ReplicaFetcherThreadBenchmark.testFetcher               500  avgt   15    60820.292 ± 3163.001  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              1000  avgt   15   146242.158 ± 1937.254  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              5000  avgt   15  1366768.926 ± 3305.712  ns/op
From 100 to 5000 partitions the latency increase is 1366768.926 / 11386.203 = 120

According to profiling, a majority of the rest of the time goes to looking up the logstartoffset for each partition on each pass (https://github.com/apache/kafka/pull/7443/files#diff-a8437f241a5ae585d5805ee769313080R252), and updating the incremental fetch session (). If we can drop those further, we may be able to save another 50-75%.

Thanks for the combo-patch @lbradstreet ! I think this is very helpful. A couple of thoughts on top of my head:

in the baseline, from 100 to 5000 partitions the latency increased by about 97X; in the PR that contains all optimizations, although the absolute latency is reduced, from 100 to 5000 the relative ratio is actually 120X, which is a bit weird. Ideally I'd expect we can achieve close to 50X, i.e. linear to num.partitions.

We should probably look into all the INFO level log4j entries to avoid any expensive evaluations, e.g. the one below

info(s"Beginning/resuming copy of partition $tp from offset ${fetchState.fetchOffset}. " +
        s"Including this partition, there are ${partitionMap.size} remaining partitions to copy by this thread.")

partitionMap.size in Scala is O(n), although the passed-in map is a LinkedHashMap whose size call is O(1). Honestly I do not know which one would be triggered, but worth reducing it to be safe.

One bold idea I have is that in the SessionHandler, we can be even smarter, e.g. to not include all the partitions if we found that the previous request only returns data for N partitions out of all, then in the next buildFetch we could just fetch for the next N partitions.

For 1) I've just updated the description to include the relative ratio of each optimization, it seems that 29fdd60 makes it less scalable with the num.partitions since it's only useful with small num.partitions.

Another wild thought: in doWork we can comment out maybeTruncate and see if that alone is taking up long time compared with the baseline, since in practice maybeTruncate should mostly be no-op, and if itself is taking lots of time we can also make another thorough pass on that function. I can do the benchmark taking from your branch if you think it's a good idea.

For 1) I've just updated the description to include the relative ratio of each optimization, it seems that 29fdd60 makes it less scalable with the num.partitions since it's only useful with small num.partitions.

Thanks! I'm assuming that you're OK with it still, because it still helps across the board? It just helps less for the high partition count case?

Is it always better to construct a new map updated than updating next directly?

It's a good question, and I'm not sure. The idea was that by making next smaller we could make the lookups progressively quicker as we process sessionsPartitions. It did seem to improve performance for our benchmark. I forgot to include the second optimization that it allows us to make https://github.com/apache/kafka/pull/7443/commits/f0bf23acd8198eae0faed67c2414301eccf04dc6. This helps reduce containsKey checks, and is worth keeping if we leave the change to keep the second map in. If not we will need to remove it again.

Thanks! I'm assuming that you're OK with it still, because it still helps across the board? It just helps less for the high partition count case?

Yeah that's okay with me still. Just trying to point it out that with large number of partitions there seems other dominating factors.

@guozhangwang I removed (https://github.com/apache/kafka/pull/7443/commits/32e30ace5865e0a5b769cad626f64bcdf5091faf) most of the risky FetchSessionHandler changes that only showed up in the FetchSessionHandlerBenchmark, as I think we should redesign how the Replica Fetcher incremental fetch session is maintained, rather than try and optimize it further.
I re-ran the benchmark on the r5x.large and it shows very little differences vs the previous commit.
Benchmark                                  (partitionCount)  Mode  Cnt        Score      Error  Units
ReplicaFetcherThreadBenchmark.testFetcher               100  avgt   15    11534.716 ±  327.903  ns/op
ReplicaFetcherThreadBenchmark.testFetcher               500  avgt   15    58781.785 ± 2209.587  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              1000  avgt   15   151653.533 ±  400.809  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              5000  avgt   15  1359152.056 ±  912.209  ns/op

I've run the benchmark from this PR on my laptop and here's the results:
Baseline (trunk)
ReplicaFetcherThreadBenchmark.testFetcher               100  avgt   15    19845.007 ±    95.308  ns/op
ReplicaFetcherThreadBenchmark.testFetcher               500  avgt   15   131247.995 ±   777.615  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              1000  avgt   15   290156.189 ±  1590.831  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              5000  avgt   15  2401985.724 ± 45898.838  ns/op

For 100/500/1000/5000 partitions, the cost scale factor (i.e. score per partition) increased from 1 to 1/1.32/1.46/2.42
This PR:
ReplicaFetcherThreadBenchmark.testFetcher               100  avgt   15     9480.761 ±   303.979  ns/op
ReplicaFetcherThreadBenchmark.testFetcher               500  avgt   15    67359.693 ±  4235.383  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              1000  avgt   15   155223.743 ±  2936.436  ns/op
ReplicaFetcherThreadBenchmark.testFetcher              5000  avgt   15  1297303.182 ± 11500.040  ns/op

The latency reduction ranges between 65% to 50%.
Interesting, for 100/500/1000/5000 partitions, the cost scale factor (i.e. score per partition) increased from 1 to 1/1.42/1.64/2.72, which is higher than the baseline. I means the optimizations we've done in this PR benefits the scenario with less partitions more than larger num.partitions.
Overall, I still think we can merge the PR as-is and continue the next optimizations on top of it.

Is it always better to construct a new map updated than updating next directly?

Resolved by https://github.com/apache/kafka/pull/7443/commits/32e30ace5865e0a5b769cad626f64bcdf5091faf

Build failures are due to broken trunk (https://github.com/apache/kafka/pull/7521)

retest this please

LGTM. I will merge after the jenkins job completes.

Failures in:
2.12
kafka.api.SaslSslAdminClientIntegrationTest.testCreateTopicsResponseMetadataAndConfig
kafka.log.LogCleanerIntegrationTest.testIsThreadFailed
org.apache.kafka.streams.integration.KTableKTableForeignKeyJoinIntegrationTest.doLeftJoinFilterOutRapidlyChangingForeignKeyValues
org.apache.kafka.streams.integration.KTableKTableForeignKeyJoinIntegrationTest.doInnerJoinFilterOutRapidlyChangingForeignKeyValues

2.13:
kafka.admin.ReassignPartitionsClusterTest.shouldTriggerReassignmentWithZnodePrecedenceOnControllerStartupkafka.api.SaslSslAdminClientIntegrationTest.testCreateTopicsResponseMetadataAndConfig


Cant start service Raspbian

Hi i just installed my service
sudo forever-service install serialReader --script serialReader.js -f " -watchDirectory /home/pi/Code/arduino-plant-reader -w"
It worked, but when i sudo service serialReader start. It says starting serialReader and goes back to the commandline. But nothing is running in sudo forever list and when i check status of the service, it says its not running. Somewhere I can debug this?

Best way to debug would be look at /etc/init.d/serialReader file and extract forever start command from the start function and run it directly as sudo, if you are able to make it work typically it should work with the service also.

Sweet, il check it out when i get home

Thanks, worked now


[FEATURE REQUEST] pass sql query via POST request body support for origin_type="clickhouse"

During figure out with trickster in https://github.com/Vertamedia/clickhouse-grafana/issues/281
I found trickster doesn't support pass SQL query via POST request body

Hi @Slach thanks for using Trickster. While the current release of Trickster 1.1.2 does not support POST, we do have that feature completed in master and should have it included in the next release (2.0.0).

@jranson thanks a lot ;) I will test 2.0 release when it will release

are POST support now for clickhouse?


Dynamically setting command filter context does not work

VSCode Version: 1.45.0-insiders
OS Version: Windows 10 19041.207

Problem description
I'm trying to create an extension that will display a command only on certain files, based on a filter I set after my extension has loaded. My package.json for my custom command looks like this:
"contributes": {
    "commands": [
        {
            "command": "myCommand",
            "title": "My Command",
            "category": "MyExtension"
        }
    ],
    "menus": {
        "editor/context": [
            {
                "command": "myCommand",
                "group": "navigation",
                "when": "resource =~ myExtension:myFilter"
            }
        ]
    }
}

Then, once my extension loads, I set the value of my filter myExtension:myFilter with:
await vscode.commands.executeCommand('setContext', 'myExtension:myFilter', '/root((?!badPath))[a-zA-Z0-9_/.]*.(cs|ts|js)$/i');

But, debugging VS Code, I see that when the Regex is evaluated in contextKey.ts, the regex used for comparison is always null (which makes sense, because this.regExp is readonly, and thus won't be updated with my new value). If I copy-paste this Regex so it's statically set in my package.json, the filtering occurs as expected.
I would expect this to work as it does when I'm using a boolean value to filter like so:
"menus": {
    "editor/context": [
        {
            "command": "myCommand",
            "group": "navigation",
            "when": "myExtension:myFilter"
        }
    ]
}

await vscode.commands.executeCommand('setContext', 'myExtension:myFilter', true);

Is it possible to allow these regex filters to be dynamically set? If not, is there a recommended way to only display commands for a subset of files?

Does this issue occur when all extensions are disabled?: Yes/No

Is it possible to allow these regex filters to be dynamically set? If not, is there a recommended way to only display commands for a subset of files?

No - context keys are static, context values can be set with the setContext-command and then context keys are re-evaluated. If you want to match on certain files you must know the match-criteria statically.


perf(jsx/dom): update textContent only when content changes

When there is no update, assing to textContent is not performed to improve performance.
Author should do the followings, if applicable

[x] Add tests
[x] Run tests
[x] yarn denoify to generate files for Deno

I added a little refactoring in f625648, but it is done.

Indeed, we can improve it with your implementation.
Thanks!


Add ability to not wait on child workflows in test suite.

What was changed
Added TestWorkflowEnvironment.SetDetachedChildWait that lets test environments not wait on detached (i.e. abandoned or request-cancel) children before finishing workflow.
Why?
In #470, we introduced a change that causes a parent ExecuteWorkflow to not return until all of its children are completely done. This caused issues for people testing interminable child workflows such as ones started on cron because they never finish.
Alternatively, we could have done something like expose child test workflow environments so people could cancel children themselves. This seems more straightforward however.
Checklist

Closes #614

Wouldn't an explicit shutdown call when all test assertions are fulfilled be a better experience?

The ExecuteWorkflow call never completes because there are child workflows that never complete. They used to complete before #470 was merged.

I have now learned there is no guarantee the child will even run, it depends on order of selector and other things. Going to make it clear in the docs.


Undefined symbols linker error when running app on iOS simulator

Tested versions
4.2.2.stable, 4.3.beta1.mono
System information
Godot v4.2.2.stable - macOS 14.5.0 - GLES3 (Compatibility) - Apple M2 - Apple M2 (8 Threads)
Issue description
iOS export works fine on actual device but throws "Undefined symbols" linker error when attempting to run on any simulator.
Lots of "Ignoring file" warnings on Debug-iphonesimulator/libgodot.a because required architecture is arm64
The only architecture I can choose from the Godot export  tool for iOS is arm64 (Android has multiple available)
Steps to reproduce
Reproducible with a minimal Godot project.
No code, just a single Node2D scene containing a ColorRect.
Minimal reproduction project (MRP)
N/A

Official export templates doesn't include ARM64 simulator binaries (limitation of OSXCross used to build it). You can either build a custom template or use x86-64 simulator (run Xcode under Rosetta).

The latest version of Xcode (15.4) no longer has an option to run under Rosetta and doesn't appear to include any Rosetta simulators. Not sure if Apple have just stopped supporting this.
I noticed there's a PR that could fix this issue (https://github.com/godotengine/godot/pull/92750). I'm guessing this could take a while to make it into the beta.


Spelling and grammar improvements for method documentation.

This set of changes fixes up the most obvious spelling and grammar issues with the internal code documentation. Further improvement on the spelling/grammar on some of the method/class XML documentation still needs to be done.

Thanks!


Test Multiple Suspensions for Same Spinnaker Accounts - EC2, ECS, Lambda

Name of Tester: Jason Coffman (@jasoncoffman)
Date of Test: 25 August 2020
Title of Test: Test Multiple Suspensions for Same Spinnaker Accounts - EC2, ECS, Lambda
Spinnaker Version: 1.21.4
Plugin Version: 0.0.1
Status: PASS
Step 1
Create Spinnaker Account for EC2, ECS, and Lambda by creating a response.json file with the below content to be served via the Golang test server
{
  "SpinnakerAccounts": [
    {
      "AccountId": "111122223333",
      "SpinnakerAccountName": "isengard-2",
      "Regions": [
        "us-west-2"
      ],
      "SpinnakerStatus": "ACTIVE",
      "SpinnakerAssumeRole": "role/spinnakerManaged",
      "SpinnakerProviders": [
        "ec2", "ecs", "lambda"
      ],
      "SpinnakerId": "spinnaker1",
      "CreatedAt": "1598026448909989587",
      "UpdatedAt": "1598027546352397694"
    }
  ],
  "Pagination": {
    "NextUrl": ""
  }
}

Step 2
Execute curl http://localhost:7002/credentials to verify account creation
Expected:
Two accounts are created - one with type: aws and another with type: ecs
Output:
[
  {
    "accountId": "111122223333",
    "accountType": "isengard-2",
    "challengeDestructiveActions": false,
    "cloudProvider": "aws",
    "environment": "isengard-2",
    "name": "isengard-2",
    "permissions": {},
    "primaryAccount": false,
    "providerVersion": "v1",
    "requiredGroupMembership": [],
    "type": "aws"
  },
  {
    "accountId": "111122223333",
    "accountType": "ecs",
    "challengeDestructiveActions": false,
    "cloudProvider": "ecs",
    "environment": "isengard-2",
    "name": "isengard-2-ecs",
    "permissions": {},
    "primaryAccount": false,
    "providerVersion": "v1",
    "requiredGroupMembership": [],
    "type": "ecs"
  }
]

Step 3
Suspend Spinnaker Account for EC2, ECS, and Lambda by editing the response.json file with the below content to be served via the Golang test server
{
  "SpinnakerAccounts": [
    {
      "AccountId": "111122223333",
      "SpinnakerAccountName": "isengard-2",
      "Regions": [
        "us-west-2"
      ],
      "SpinnakerStatus": "SUSPENDED",
      "SpinnakerAssumeRole": "role/spinnakerManaged",
      "SpinnakerProviders": [
        "ec2", "ecs", "lambda"
      ],
      "SpinnakerId": "spinnaker1",
      "CreatedAt": "1598026448909989587",
      "UpdatedAt": "1598027546352397694"
    }
  ],
  "Pagination": {
    "NextUrl": ""
  }
}

Step 4
Execute curl http://localhost:7002/credentials to verify account suspension
Expected
There will be no accounts listed
Output
[
]

Step 5
Update the Spinnaker accounts with the same suspended accounts by editing the response.json file with the below content to be served via the Golang test server
{
  "SpinnakerAccounts": [
    {
      "AccountId": "111122223333",
      "SpinnakerAccountName": "isengard-2",
      "Regions": [
        "us-west-2"
      ],
      "SpinnakerStatus": "SUSPENDED",
      "SpinnakerAssumeRole": "role/spinnakerManaged",
      "SpinnakerProviders": [
        "ec2", "ecs", "lambda"
      ],
      "SpinnakerId": "spinnaker1",
      "CreatedAt": "1598026448909989587",
      "UpdatedAt": "1598027546352397694"
    }
  ],
  "Pagination": {
    "NextUrl": ""
  }
}

Step 6
Execute curl http://localhost:7002/credentials to verify account suspension
Expected
There will neither accounts listed nor errors thrown
Output
[
]

Name of Tester: Jason Coffman (@jasoncoffman)
Date of Test: 26 August 2020
Title of Test: Test Multiple Suspensions for Same Spinnaker Accounts - EC2, ECS, Lambda
Spinnaker Version: 1.21.4
Plugin Version: 0.0.1
Status: PASS
Step 1
Create Spinnaker Account for EC2, ECS, and Lambda by creating a response.json file with the below content to be served via the Golang test server
{
  "SpinnakerAccounts": [
    {
      "AccountId": "111122223333",
      "SpinnakerAccountName": "isengard-2",
      "Regions": [
        "us-west-2"
      ],
      "SpinnakerStatus": "ACTIVE",
      "SpinnakerAssumeRole": "role/spinnakerManaged",
      "SpinnakerProviders": [
        "ec2", "ecs", "lambda"
      ],
      "SpinnakerId": "spinnaker1",
      "CreatedAt": "1598026448909989587",
      "UpdatedAt": "1598027546352397694"
    }
  ],
  "Pagination": {
    "NextUrl": ""
  }
}

Step 2
Execute curl http://localhost:7002/credentials to verify account creation
Expected:
Two accounts are created - one with type: aws and another with type: ecs
Output:
[
  {
    "accountId": "111122223333",
    "accountType": "isengard-2",
    "challengeDestructiveActions": false,
    "cloudProvider": "aws",
    "environment": "isengard-2",
    "name": "isengard-2",
    "permissions": {},
    "primaryAccount": false,
    "providerVersion": "v1",
    "requiredGroupMembership": [],
    "type": "aws"
  },
  {
    "accountId": "111122223333",
    "accountType": "ecs",
    "challengeDestructiveActions": false,
    "cloudProvider": "ecs",
    "environment": "isengard-2",
    "name": "isengard-2-ecs",
    "permissions": {},
    "primaryAccount": false,
    "providerVersion": "v1",
    "requiredGroupMembership": [],
    "type": "ecs"
  }
]

Step 3
Suspend Spinnaker Account for EC2, ECS, and Lambda by editing the response.json file with the below content to be served via the Golang test server
{
  "SpinnakerAccounts": [
    {
      "AccountId": "111122223333",
      "SpinnakerAccountName": "isengard-2",
      "Regions": [
        "us-west-2"
      ],
      "SpinnakerStatus": "SUSPENDED",
      "SpinnakerAssumeRole": "role/spinnakerManaged",
      "SpinnakerProviders": [
        "ec2", "ecs", "lambda"
      ],
      "SpinnakerId": "spinnaker1",
      "CreatedAt": "1598026448909989587",
      "UpdatedAt": "1598027546352397694"
    }
  ],
  "Pagination": {
    "NextUrl": ""
  }
}

Step 4
Execute curl http://localhost:7002/credentials to verify account suspension
Expected
There will be no accounts listed
Output
[
]

Step 5
Update the Spinnaker accounts with the same suspended accounts by editing the response.json file with the below content to be served via the Golang test server
{
  "SpinnakerAccounts": [
    {
      "AccountId": "111122223333",
      "SpinnakerAccountName": "isengard-2",
      "Regions": [
        "us-west-2"
      ],
      "SpinnakerStatus": "SUSPENDED",
      "SpinnakerAssumeRole": "role/spinnakerManaged",
      "SpinnakerProviders": [
        "ec2", "ecs", "lambda"
      ],
      "SpinnakerId": "spinnaker1",
      "CreatedAt": "1598026448909989587",
      "UpdatedAt": "1598027546352397694"
    }
  ],
  "Pagination": {
    "NextUrl": ""
  }
}

Step 6
Execute curl http://localhost:7002/credentials to verify account suspension
Expected
There will neither accounts listed nor errors thrown
Output
[
]


WASI: support emulated signals in InterceptTraps.cpp

When building with _WASI_EMULATED_SIGNAL excluding signal support on WASI is no longer needed.

@swift-ci build toolchain

preset=buildbot_incremental_linux_crosscompile_wasm
@swift-ci Please test with preset Linux Platform

@swift-ci build toolchain windows


Incompatible with delayed_job_active_record v1.4.5

In version v1.4.5 of delayed_job_active_record the loading of Delayed::Backend::ActiveRecord::Job was moved into a railtie which requires it now after initialization. This blows up in delayed_cron_job.rb:27 because  require 'delayed_job_active_record' does not load Delayed::Backend::ActiveRecord::Job.
The reasoning behind this change is documented in https://github.com/collectiveidea/delayed_job_active_record/pull/172.

Thank you for your fast notification of the issue. With those detailed debug hints, it was an easy way to fix this issue. Do you have time for a quick test on your side, based on #28?

Hello @codez that was quick, thanks :smiley:  I just ran into this while upgrading an application to Rails 6.2. and thought it would be helpful to leaf a note. No pressure on my side.
For this to work the after_initialize callback registered by delayed_job_active_record must be triggered before the one registered by delayed_cron_job or? My wild guess is that the could a scenario where this would fail :thinking:

Works great. Thank you.

By requiring delayed_job_active_record first in delayed_cron_job.rb, the callback should also be registered first. So everything should be in the correct order.

A new version of the gem is released.


wallet-core.wasm doesn't load in Worker

Describe the bug
I'm trying to use Workers with wallet-core lib and get this type of error:
Failed to execute 'fetch' on 'WorkerGlobalScope': Failed to parse URL from<EMAIL_ADDRESS>To Reproduce
Steps to reproduce the behavior:
module.exports = function (self) {
self.onmessage = async function (event) {
    const { HDWallet} = await initWasm();
    const wallet = HDWallet.create(128, passphrase || "");

    const result = JSON.stringify({
      mnemonic:  wallet.mnemonic(),
      passphrase: passphrase,
    });
    self.postMessage(result);
  };
};

Screenshots

Additional context
I'm using these plugins:

Hi @ArturLevchuk, could you please clarify if it can't load wallet-core.wasm in a Worker only? Does it work in a main thread (just like without workers)?

Hi @ArturLevchuk, could you please clarify if it can't load wallet-core.wasm in a Worker only? Does it work in a main thread (just like without workers)?

In the main thread it works good. But in Worker it doesn't


Explorer search file - enhancements

I have some requests for the Explorer search file feature:

input not easily editable. For instance, if you want to change the begging of the text, you would have to delete it all and start over (you can't navigate chars)
seems to do only a basic text comparison. No gloob patterns, no regex. No exclude patterns (e.g.: show everything but these files; search everywhere except in some folder).
that last example actualy works via folders that are currently expanded (not so intuitive, though). But there's currently only a command for "File: collapse folders in explorer", both visually and by keyboard. A "File: expand folders in explorer" command is needed, at least via keyboard

It should be, I can navigate chars
It does you have to enable Regex (third icon):

Also If you click on the dots down the search you can filter where it searches

I use Ctrl+P to navigate to where I need, I know this is not what you are asking but just in case you don't know.

@melMass I think he is talking about Type to filter feature in Explorer Tree.

Yes @usernamehw !
Altough I think it could also be only visible while typing. Or, plan simple, a button to unhide that +row.

This is related to the tree.
There are already feature requests that are very similar to this and it might be a dupilcate.
However forwarding to @joaomoreno who owns the tree so he considers it. Thanks

https://github.com/microsoft/vscode/issues/70646


Q&A section should use an off-the-shelf PM framework

Right now Q&A is an extremely primitive set of two strings in the DB. As we've used it this season, it's clear that it would work better as a private message system, something like reddit or many forums have. It would need to be locked down so it stays focused.

or even an embeddable comment system thingy