SSM parameters and dependencies between stack sets

I may be seriously confused regarding intended scenario for ssm_parameters manifest property.
My understanding is that it is supposed to help with dependencies between stack sets.  Here is a simple example with two stack sets:

network-stack-set - deploys network resources (VPC, security groups, etc)
app-stack-set - deploys resources that rely on VPC deployed by network-stack-set

I expect that I can save output variable from stack instance in SSM parameter within Account/Region where the stack instance is deployed, so it can be consumed by different stack sets, like below:

My expectation is that I can achieve this with the following manifest:
---
region: eu-west-1
version: 2020-01-01

cloudformation_resources:
  - name: network-stackset
    template_file: templates/network.template
    parameter_file: parameters/network.json
    ssm_parameters:
      - name: /org/member/VpcId
        value: $[output_VpcId]
    deploy_method: stack_set
    deploy_to_ou:
      - Custom
    regions:
      - eu-west-1
      - eu-central-1
  - name: app-stackset
    template_file: templates/app.template
    parameter_file: parameters/app.json
    deploy_method: stack_set
    deploy_to_ou:
      - Custom
    regions:
      - eu-west-1
      - eu-central-1

However, what I observe is that /org/member/VpcId SSM parameter is created in master account/region - the account where the solution is deployed (the one with Control Tower enabled). No SSM parameters are created in member accounts, therefore app-stackset deployment fails as it relies on these parameters.
I tracked the issue down to the following lines (note that SSM client is created with default parameters, which means current - master - account and region):
https://github.com/awslabs/aws-control-tower-customizations/blob/b006bd8342ebf03b9458ec11e794ecb3bbba7845/source/state_machine_handler.py#L1010-L1016
Also, may be related to this problem - when Step Function exports CFN output variables to save them in SSM, it does so for the first Account/Region pair returned, which looks incorrect:
https://github.com/awslabs/aws-control-tower-customizations/blob/b006bd8342ebf03b9458ec11e794ecb3bbba7845/source/state_machine_handler.py#L1033-L1037
For now I have to manage SSM parameters manually within CFN templates without relying on the manifest file support. Please let me know if my understanding of the issue is correct - happy to help with PR to address it.

I also tried the approach outlined in Appendix A: Using alfred helper in the CloudFormation parameter files.
I see the same issue there - parameter substitution code in /source/manifest/cfn_params_handler.py tries to access SSM parameters in the master account/region, not in account/region where stack instance should be deployed.
The only way that works for me is a fallback to CloudFormation default parameter values in the template (with the obvious disadvantage that I have to modify the template):
---
AWSTemplateFormatVersion: '2010-09-09'
Description: Dev Template to test overrideparams
Parameters:
  VpcId:
    Type: 'AWS::SSM::Parameter::Value<String>'
    Default: '/org/member/VpcId'

In this case CloudFormation retrieves the parameters during deployment time from the region where stack instance is deployed.

Hello @kolomied,
The alfred functionality does store the SSM parameter key/value pair in the master account. Since you are deploying this in multiple regions alfred function may not help you with your use case.
I agree with your approach to store the VPC id in the local account and region using AWS::SSM::Parameter resource in the stack 1 and use CFN parameter type "'AWS::SSM::Parameter::Value'" in the stack 2 to obtain the value from the local account and region.

@groverlalit Thank you for the response.
Could you also share the intended use case for ssm_parameters manifest property - it is not clear from the documentation when it can be useful.

I am also confused by the documentation as they reference the ability to store outputs using ssm_parameters section but then Appendix A does not cite using this feature at all.  I would think Appendix A would showcase how the alfred retriever would work with the ssm_parameters section.   Are these two things compatible?

@jdonboch @kolomied
Thanks for the feedback.
We understand that Appendix A in the developer guide currently does not refer to the ssm_parameters section of the manifest to the alfred helper but to a generic SSM parameter resource. We have updated our backlog to update the documentation.
To answer your question, yes they are compatible. As we know that a new parameter store key value pair can be created by following methods:

ssm_parameters (in manifest.yaml)
ssm parameter resource embedded in the the CFN template
adding parameter store key value using AWS Console, AWS CLI or AWS SDK.

As long as the SSM parameter exists in the region in the Org master account where the solution is deployed, the alfred helper can read it and replace the parameter value in the parameters.json file.
Hope this helps.

@groverlalit could you explain what the developer guide is trying to tell us in the note that says

Note: The SSM parameter key name may contain a value other than output. For example, if the name is /org/environment-name, the value may production.

Could you give a full example of how to get from a template with outputs to another template that uses that output as a parameter?

@zoellner
Using the example configuration deployed with the solution (S3 or CodeCommit).
If you need the application id from stackset-1 to be passed as parameter to the stackset-2.
Snipper of manifest.yaml (note: incorrect indentation)
# Control Tower Custom CloudFormation Resources
cloudformation_resources:
  - name: stackset-1
    template_file: templates/create-ssm-parameter-keys-1.template
    parameter_file: parameters/create-ssm-parameter-keys-1.json
    deploy_method: stack_set
    deploy_to_account: # :type: list
      - <ACCOUNT_NAME> # and/or
      - <ACCOUNT_NUMBER>
    ssm_parameters:
      - name: /org/member/test-ssm/app-id << Put the value
        value: $[output_ApplicationId]
    regions:
      - <REGION_NAME>
``
  - name: stackset-2
    template_file: templates/create-ssm-parameter-keys-2.template
    parameter_file: parameters/create-ssm-parameter-keys-2.json
    deploy_method: stack_set
    deploy_to_ou: # :type: list
      - <OU_NAME>
    deploy_to_account: # :type: list
      - <ACCOUNT_NAME> # and/or
      - <ACCOUNT_NUMBER>
    regions: # :type: list
      - <REGION_NAME>
You can modify the example-configuration/parameters/create-ssm-parameter-keys-2.json file as follows.
[
  {
    "ParameterKey": "ApplicationId",
    "ParameterValue": "$[alfred_ssm_/org/member/test-ssm/app-id]" << Get the value
  }
...cut...
Hope this helps. Thanks.

I tried using ssm_parameters in a manner described above and also here:
  ssm_parameters:
    - name: "/test/cfct_output/test1"
      value: "123"

and the Build stage of the CfCT pipeline failed with:
ERROR - ["Key 'ssm_parameters' was not defined. Path: '/resources/0'"]

Environment

CfCT v2.1.0
https://github.com/awslabs/aws-control-tower-customizations/commit/8076f8feffeb0025431739df762b017a42db6470

I think this issue should remain open, as the existing documentation on Alfred is either incomplete or incorrect, and following it does not lead to a working solution.
I adapted @groverlalit's suggestion above to manifest v2 (by replacing ssm_parameters with export_outputs). But the fact remains that when running, the builder does not have permission to read parameters on the Management Account  (the one running Control Tower):
Traceback (most recent call last):
--
579 | File "state_machine_trigger.py", line 146, in <module>
580 | main()
581 | File "state_machine_trigger.py", line 80, in main
582 | launch_state_machine_execution(
583 | File "state_machine_trigger.py", line 114, in launch_state_machine_execution
584 | status, failed_list = manager.launch_executions()
585 | File "/codebuild/output/src2809819174/src/cfct/manifest/sm_execution_manager.py", line 56, in launch_executions
586 | return self.run_execution_sequential_mode()
587 | File "/codebuild/output/src2809819174/src/cfct/manifest/sm_execution_manager.py", line 64, in run_execution_sequential_mode
588 | updated_sm_input = self.populate_ssm_params(sm_input)
589 | File "/codebuild/output/src2809819174/src/cfct/manifest/sm_execution_manager.py", line 188, in populate_ssm_params
590 | sm_params = self.param_handler.update_params(transform_params(params))
591 | File "/codebuild/output/src2809819174/src/cfct/manifest/cfn_params_handler.py", line 264, in update_params
592 | value = self._process_alfred_helper(
593 | File "/codebuild/output/src2809819174/src/cfct/manifest/cfn_params_handler.py", line 309, in _process_alfred_helper
594 | value, param_flag = self._update_alfred_ssm(
595 | File "/codebuild/output/src2809819174/src/cfct/manifest/cfn_params_handler.py", line 347, in _update_alfred_ssm
596 | value = self._get_ssm_params(ssm_param_name)
597 | File "/codebuild/output/src2809819174/src/cfct/manifest/cfn_params_handler.py", line 59, in _get_ssm_params
598 | return self.ssm.get_parameter(ssm_parm_name)
599 | File "/codebuild/output/src2809819174/src/cfct/aws/services/ssm.py", line 82, in get_parameter
600 | response = self.ssm_client.get_parameter(Name=name, WithDecryption=True)
601 | File "/codebuild/output/src2809819174/src/botocore/client.py", line 391, in _api_call
602 | return self._make_api_call(operation_name, kwargs)
603 | File "/codebuild/output/src2809819174/src/botocore/client.py", line 719, in _make_api_call
604 | raise error_class(parsed_response, operation_name)
605 | botocore.exceptions.ClientError: An error occurred (AccessDeniedException) when calling the GetParameter operation: User: arn:aws:sts::[MANAGEMENT ACCOUNT ID]:assumed-role/cfct-test-StackSetCodeBuildRole-Zxd5hIHppY2W/AWSCodeBuild-c75fbb40-b676-4ea1-9989-6b3d90ee782d is not authorized to perform: ssm:GetParameter on resource: arn:aws:ssm:us-east-1:[MANAGEMENT ACCOUNT ID]:* because no identity-based policy allows the ssm:GetParameter action

I could not find anything in the documentation to suggest that CfCT's permissions are insufficient by default, or if any customization is required to grant it further access.
This is on CfCT version: 2.6.0.


docs: fixed small error

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Hi @0xflotus Thanks for your contribution. Could you mind to use git commit -s --amend --no-edit to sign your real name and repush it? Thanks
Ref: https://github.com/alibaba/accelerated-container-image/blob/main/docs/CONTRIBUTING.md#sign-your-work

ping @0xflotus would you mind to sign your real name? Thanks!

@0xflotus thanks!


Don't unconditionally prepend "" to a venv PEX's sys.path

https://github.com/pantsbuild/pex/pull/1832#discussion_r1025363133 captures the location of the bug.
sys.path behavior is documented https://docs.python.org/3/library/sys.html#sys.path which shows the prepending to sys.path is dependent on how python is invoked.
And to further prove the point:
$ cat foo.py
print(__import__("sys").path)

$ python -m venv venv
...

$ venv/bin/python foo.py
['/home/josh/work/pants', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/home/josh/work/pants/venv/lib/python3.8/site-packages']

$ venv/bin/python -m foo
['/home/josh/work/pants', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/home/josh/work/pants/venv/lib/python3.8/site-packages']

$ MYCODE=$(cat foo.py) &&  venv/bin/python -c "$MYCODE"
['', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/home/josh/work/pants/venv/lib/python3.8/site-packages']

Related: https://github.com/pantsbuild/pants/issues/17531

@thejcannon, your example shell session is useful and is also true all the way back to Python 2.7 - almost:
$ cat foo.py
import sys; print("\n".join(sys.path))
$ python2.7 foo.py
/home/jsirois/dev/pantsbuild/jsirois-pex
/usr/lib/python2.7
/usr/lib/python2.7/plat-x86_64-linux-gnu
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/usr/local/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages
$ python2.7 -m foo

/usr/lib/python2.7
/usr/lib/python2.7/plat-x86_64-linux-gnu
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/usr/local/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages
$ python2.7 -c "$(cat foo.py)"

/usr/lib/python2.7
/usr/lib/python2.7/plat-x86_64-linux-gnu
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/usr/local/lib/python2.7/dist-packages
/usr/lib/python2.7/dist-packages

In other words, all three of those modes insert CWD at the head of sys.path with sometimes CWD spelled as an absolute path and sometimes as ""; so when PEX acts as an interpreter (via either forcing with PEX_INTERPRETER=1 or else when it has no entry point defined), it should do the same. Currently zipapp mode does this correctly just here:
https://github.com/pantsbuild/pex/blob/67fc7e05315fc347bcf269712814f160c6035efe/pex/pex.py#L627-L631
But venv mode does it unconditionally as you highlight here:
https://github.com/pantsbuild/pex/blob/67fc7e05315fc347bcf269712814f160c6035efe/pex/venv/pex.py#L443-L444


Allow listening on multiple ports?

Wondering how hard would it be to allow for multiple ports to be listened to?
For example when you might need to connect more than one remote ssh server.

It would be possible to support multiple ports, but you actually don't need.  Just a single port can handle connections from multiples remote ssh servers.
I tested here and I could edit files from two remote servers using the same port.
$ ssh -R 52698:<IP_ADDRESS>:52698<EMAIL_ADDRESS>$ ssh -R 52698:<IP_ADDRESS>:52698<EMAIL_ADDRESS>


Feature required to make it 9 O Clock to 3 O Clock

How can i make it anti clock wise 9  O Clock to 3 O Clock .

It is not supported, but it might be implemented. You would have to add some flag for direction and is it is on then image is reversed. Also, you would have to change how touch is understood for this flag turned on.


[WIP] $brooklyn:self().template("freemarker")

Closing in favour of https://github.com/apache/brooklyn-server/pull/786.


Update rpi.md

Ignore the first pull request, this one is with more details for non-programers like me.

If English is not your native language you can get mislead by the headline.  I did read everything and i wanted to enter without a password . But finally i locked out myself and i couldn't log into the pi at all. And then you suggested me to turn that to yes . Anyway you know better than me.

Ok, so sounds like we need to make it a lot clearer that this is really optional and not necessary, and might be harmful if it doesn't work quite right. Would you like to add some more understandable text along those lines like you did for clarifying the rest of it?
On Fri, May 6, 2016 at 8:24 AM -0700, "Hristina Dimova"<EMAIL_ADDRESS>wrote:
If English is not your native language you can get mislead by the headline.  I did read everything and i wanted to enter without a password . But finally i locked out myself and i couldn't log into the pi at all. And then you suggested me to turn that to yes . Anyway you know better than me.
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub

i would love you but i am afraid i don't understand this feature. All i know now is that i have to be careful with it. :)

Fair enough. Let's leave this open until one of us comes up with better text.

Deal

Closing because #272


Black screen & reboot after Standby

Every now and then (in my case a few times a day) the well known black screen & reboot occurs after leaving standby mode, especially after short naps.
Is this a known error, and can I do something about it?
And please let me say "thank you" for your time and work

*** Panic Report ***
panic(cpu 3 caller 0xffffff7f98ffa705): "GPU Panic: mux-regs 3 3 7f 0 0 0 severity 3 switch-state 0 IG FBs 0 EG FBs 1:0 power-state 0 3D idle HDA idle : \n"@/Library/Caches/com.apple.xbs/Sources/AppleGraphicsControl/AppleGraphicsControl-3.14.49/src/AppleMuxControl/kext/GPUPanic.cpp:149
Backtrace (CPU 3), Frame : Return Address


Add some basic tests for metrics and fix an underflow

If a MetricsScheduler gets dropped without running, the Drop handler
triggers an underflow in its info! call. This only happens if an interested
subscriber is registered. This change adds some basic tests that validate
the MetricsScheduler is generating the right values, including in the
Drop case.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Looks like the build failures are Rust 1.51 issues, so opened a separate PR for that, and will rebase this one before merging: https://github.com/awslabs/shuttle/pull/11


"panic: send on closed channel" on amqp confirms

I'm hitting these errors from time to time:
panic: send on closed channel

goroutine 19094 [running]:
github.com/streadway/amqp.(*confirms).confirm(0xc420140000, 0x1, 0xc420140001)
        /home/dmishin/go/src/github.com/streadway/amqp/confirms.go:45 +0xac
github.com/streadway/amqp.(*confirms).One(0xc420140000, 0x1, 0x1001)
        /home/dmishin/go/src/github.com/streadway/amqp/confirms.go:66 +0x8c
github.com/streadway/amqp.(*Channel).dispatch(0xc42021e000, 0xe2ec00, 0xc420b42950)
        /home/dmishin/go/src/github.com/streadway/amqp/channel.go:309 +0x88d
github.com/streadway/amqp.(*Channel).recvMethod(0xc42021e000, 0xe2adc0, 0xc42022e500, 0xc42007a3d8, 0x1)
        /home/dmishin/go/src/github.com/streadway/amqp/channel.go:346 +0x34c
github.com/streadway/amqp.(*Connection).dispatchN(0xc4205d0140, 0xe2adc0, 0xc42022e500)
        /home/dmishin/go/src/github.com/streadway/amqp/connection.go:470 +0xd0
github.com/streadway/amqp.(*Connection).demux(0xc4205d0140, 0xe2adc0, 0xc42022e500)
        /home/dmishin/go/src/github.com/streadway/amqp/connection.go:429 +0x89
github.com/streadway/amqp.(*Connection).reader(0xc4205d0140, 0x7f9c40ee7200, 0xc42016a008)
        /home/dmishin/go/src/github.com/streadway/amqp/connection.go:521 +0x117
created by github.com/streadway/amqp.Open
        /home/dmishin/go/src/github.com/streadway/amqp/connection.go:228 +0x32d

Can't reproduce this in a test case. I'm using the pubsub example in my code. Could somebody help me debug the issue?

I see it happening after a redial, when the connection has been closed. I modified the example to open the channel and exchange for publisher and consumer separately.
The code is here: https://github.com/sdsc/pdm/blob/master/main.go#L124
How can I test this? Should I explicitly close the "NotifyPublish" listener?

I think I fixed it.
This block https://github.com/streadway/amqp/blob/master/_examples/pubsub/pubsub.go#L90-L95 should be inside the sessions loop, since "confirm" channel is being closed when a connection closes.

@dimm0 please submit a PR?

Sure


Add support for blend shapes/shape keys

I haven't seen an issue opened about it and I believe it's a major missing feature. It's extremely difficult to do, say, facial expressions without them and they're often used in animations in a corrective role.
Any thoughts on their place in LOVR? I'd be open to working on them myself if you accept pull requests on such features. I believe some rudimentary support shouldn't be too difficult to get going.

Super interested in adding these (esp. for VRM).  My vague plan would be to expand the animation compute shader (etc/shaders/animator.comp) to manipulate the vertices using the blendshapes, or potentially write a new compute shader for it.  If you have experience with this or want to try taking a stab at it, that would be awesome!

Oh, we would also need to figure out the Lua API

On the train I thought about it more and broke it down into some rough TODOs

[ ] ModelData Blend Shape Structs/Schema
[ ] ModelData Animation Property for Weights
[ ] glTF Sparse Accessors
[ ] glTF Blend Shape Loading (targets, weights)
[ ] Model has array of weights for each node (number per node is not constant!)
[ ] lovrModelCreate loads blend shapes into GPU buffers in some arrangement
[ ] lovrModelAnimate can animate node weights
[ ] lovrModelReskin (maybe renamed to UpdateVertices) dispatches compute shader to do blend shapes
[ ] Lua API for Model:get/setNodeWeight(s)

glTF does not technically support blend shape names but there is a common convention for them, so they can probably be loaded.
Seems the hard part remaining for my understanding is the GPU layout for everything (how the shapes are arranged into buffers and how the compute shader will access them).  A few different ways to do it.

Just got blend shapes working on the blendshapes branch!  The API matches the initial suggestion:

Model:getBlendShapeCount
Model:getBlendShapeName
Model:getBlendShapeWeight(name|index)
Model:setBlendShapeWeight(name|index, weight)

There is no limit on the number of blend shapes, and the weights can be animated using the existing animation system.  Still doing some testing/optimization/fixes on the branch, but it's working with the glTF sample models.


Service levels return false positive NOT_CONFIGURED at times

Platform issue - need to reach out to the right team to address this.

Is this still happening? Monitor...

The root cause of this condition is actually due to the alert on the service level. If there are insufficient signals on the alert, the service level is returning as not configured. The SL shows up this way in the main product also.


 scroll function become invalid if router from other page.

Bug Report
Ionic version:

[x] 4.x
Current behavior:

I use  Methods -> scrollToPoint to scroll to my list position.
If this is as start page ( I visit it directly with url), it works as expected.
But If I router to it from other page, it will not work.

Expected behavior:

it should scroll to the position I give.
Steps to reproduce:

Related code:

Thanks for your issue! Can you log content? It's a better way not to use querySelector. Could you test it with ViewChild from Angular?


Volumes not mounting on amazonec2 driver

For some reason, my volumes don't get mounted when setting up a machine on amazonec2 like shown below
docker-machine create -d amazonec2 mymachine
eval $(docker-machine env mymachine)
docker-compose up

My docker-compose.yml has a volume setup like this
volumes:
    - ..:/app

Everything succeeds but my volumes aren't there when I docker-machine ssh mymachine or when I try accessing my web app.
Is there a workaround for this? Is it a docker/compose specific issue? Or the ec2 driver itself?
I tried to use
docker-machine scp -r . mymachine:/home/ubuntu
docker-compose up

But still no luck.
Thank you!
UPDATE:
I couldn't find my files using this command either. I think it's the ec2 driver itself that's not mounting my local files?
docker run -it -v `pwd`:/app busybox sh

Hi @saada
This is expected behavior for cloud drivers such as amazonec2 where we are not doing any folder sharing for you with the created instance.  It happens to be the case that we mount /Users into the VMs we create locally using shared folders, but nothing of this sort happens with cloud providers.
When you do a docker run with the -v flag, you are specifying to the Docker daemon on that host to use the local (to the daemon) directory from the first part of the argument (before the colon).  Because that directory doesn't exist on the server, only on your local laptop, it will be created by the Docker daemon as an empty directory and its contents will be empty in the container.  If you want to copy the files using docker-machine scp, they will show up on the remote host, but you have to edit your compose file or docker run command to have the correct directory.  That .. in the Compose file will turn into a local path, e.g. /Users/saaba/webapp but the location you copied them to was /home/ubuntu.


vapoursyntheditor: Add version r19

@SpecterShell there is a GitHub repo with releases as well
https://github.com/vapoursynth/vapoursynth

@SpecterShell the version the GitHub repo has is higher as well

@SpecterShell there is a GitHub repo with releases as well vapoursynth/vapoursynth

This pr is VapourSynthEditor, not VapourSynth.

/verify


pip3 install -r requirements.txt does not work

I cloned the repo and created the venv virtual environment using python3.10.12.  Got the following error:
(venv) bryan@mimzy-jetson:~/git/NanoLLM$ pip3 install -r requirements.txt
Requirement already satisfied: torch in ./venv/lib/python3.10/site-packages (from -r requirements.txt (line 1)) (2.2.2)
Requirement already satisfied: torchvision in ./venv/lib/python3.10/site-packages (from -r requirements.txt (line 2)) (0.17.2)
Requirement already satisfied: torchaudio in ./venv/lib/python3.10/site-packages (from -r requirements.txt (line 3)) (2.2.2)
Requirement already satisfied: transformers in ./venv/lib/python3.10/site-packages (from -r requirements.txt (line 4)) (4.39.3)
Requirement already satisfied: tvm in ./venv/lib/python3.10/site-packages (from -r requirements.txt (line 5)) (1.0.0)
ERROR: Could not find a version that satisfies the requirement faiss (from versions: none)
ERROR: No matching distribution found for faiss

@bryanhughes sorry yea still working through the bring-up of this outside of container, I think for now it will just need container because of the myriad of complex dependencies (faiss is a custom install, as are others)


Make pomf.se http again to fix bug (fix issue #7)

srry I'm bad at git

I'm not sure what to do, both work for me. The user who opened pull request #6 says HTTP doesn't work for him. I'd prefer to use HTTPS, as it's secure, but if more people are having this problem I guess I should revert it.


pkg/container-collection: Optimize LookupContainerByMntns

We perform a linear search on all containers to lookup one by its mount ns id. This is not ideal as this code is in the host path (we call it for each event that we capture from the kernel), and likely it has a performance impact when processing a lot of events per second.
Implementation Options
We could create a secondary data structure that indexes the containers by its mount ns id to avoid this linear lookup, however some attention has to be paid to concurrency issues.
ref https://github.com/inspektor-gadget/inspektor-gadget/pull/1281/files#r1084161012

Fixed by https://github.com/inspektor-gadget/inspektor-gadget/pull/1616.


add an API to export Dart VM metrics such as process cpu seconds total, process threads,process open fds, heap bytes

add an API to export Dart VM metrics such as process_cpu_seconds_total, process_threads,process_open_fds, process_heap_bytes.
both C#.NET and Java expose this information, this would facilitate integration with monitoring tools such as Prometheus
I don't know if this issue is related
https://github.com/dart-lang/sdk/issues/49062
https://github.com/dotnet/runtime/blob/c345959e132409b19c692807e313f739bce850ad/src/libraries/System.Diagnostics.Process/src/System/Diagnostics/Process.Linux.cs#L130
https://programtalk.com/vs4/csharp/hanabi1224/Programming-Language-Benchmarks/bench/tool/Linux/procfs/Interop.ProcFsStat.TryReadStatusFile.cs/
https://prometheus.io/docs/instrumenting/writing_clientlibs/#standard-and-runtime-collectors

Could this be made as a package using our C FFI to obtain information from various operating systems?

I think this information has to be exposed by the dart sdk, things like information about the current process, about the garbage collector, CollectionCount, MaxGeneration etc., it would be extremely difficult to reinvent the wheel for this since the dart Vm is already written in c++ and has direct access to the APIs of the operating systems where it runs
Dart today has a ProcessInfo class in dart:io with the current resident set size of memory and maxRss, it would be a matter of adding other properties to this class totalProcessorTime, handleCount , threadsCount , GC collection count etc
o .NET expõe esta informações na class Process  do namespace System.Diagnostics
https://github.com/dotnet/runtime/blob/fe043b489f69a888ad2efd97fbc177c1f25e541d/src/libraries/System.Diagnostics.Process/ref/System.Diagnostics.Process.cs#L118

totalProcessorTime, handleCount , threadsCount
it would be extremely difficult to reinvent the wheel for this since the dart Vm is already written in c++ and has direct access to the APIs of the operating systems where it runs

Those can all be obtained by asking the system (e.g. procfs on linux). I think it would be wonderful if the community made a package for exposing these things. If there's anything missing in our infrastructure that prevents that, we'd be very eager to know about it (we strive to provide mechanism to empower users to do this - e.g. by providing a powerful C FFI).
We prefer to have dart:* libraries expose things that either couldn't be otherwise implemented by users in packages or things that (if written by users in packages) couldn't be optimized / made fast by our compilers. There's several reasons for this:

It's much easier to evolve versioned packages over time compared with dart:* libraries (e.g. very difficult to make breaking changes to dart:* libraries)
It often increases the footprint of the Dart VM (e.g. by adding more C++ code) - making apps bigger for everyone even if functionality is unused.

(A side note: The Dart VM is embeddable by other code, that means e.g. not all threads / not all memory / ... in the process are owned by the Dart VM)

GC collection count etc

We actually expose something like this: A logical GC clock that moves forward when: dart:developers reachabilityBarrier. I don't think we want to expose very detailed information from the VM internals as explicit APIs - as those implementation details may change over time, rendering APIs obsolete. We do expose somewhat more informatino via our  vm-service websocket protocol though.


fix issue that store's liveness may incorrectly marked as unreachable when the store restarts with label changed

close #1401

can you also change the message from region unavailable to store unavailable if it can not able to connect to store. It will help to root cause these type of issues.

can you also change the message from region unavailable to store unavailable if it can not able to connect to store. It will help to root cause these type of issues.

Thanks for the suggestion, we may change this error messge later, but not in this PR, since It's not easy to change.


Support multiple select options when multipart is true.

Hi,
I have seen that when enctype of a form is multipart/form-data and there is a select html tag with multiple as attribute, then only last option is displayed at request.body.fields. I have tried to patched it to include also that case.

Looks good to me, thanks!


Simplify Golang unwrapping function

Can be found here:

https://github.com/G-Research/armada/blob/master/pkg/api/event_util.go#L34

This is basically suggesting we do what I did in the Python client, using:
msg_type = event.message.WhichOneof("events")
message = getattr(event.message, msg_type)

This in theory could be done in Golang, since the WhichOneof is a property of googles protobuf, and we can access attributes at runtime using https://pkg.go.dev/github.com/ssrathi/go-attr

Hey team! Please add your planning poker estimate with ZenHub @dejanzele @jayofdoom @kannon92 @richscott

After looking into this more, it seems that the golang code does not include an equivalent to WhichOneOf to conform to the expected programming standards within golang. I think this issue should be closed


DMRG Improvements

Looks good, this will be good to have!

Yes based on a forum question I realized that seeing the max trunc err by default is helpful in a lot of cases (and for teaching people what’s important to pay attention to).


Stop gt 255 filenames breaking export

Conditionally truncate filenames to stop them going going over 255 chars when they have fileset_ids prepended to them.

I don't have perms to add a label, which is the only failing check left

I don't have perms to add a label, which is the only failing check left

I can add it for you, which label?

Thanks Kirk, I was thinking bug-fix?


Goodbye Version bumps, hello Dependabot!

Issue mentioned here.
📲 What
We can use Dependabot to keep the packages we use updated to the latest versions.
🤔 Why
Move to Dependabot & stop manually checking for version bumps
🛠 How
Dependabot takes the effort out of maintaining our dependencies. We can use it to ensure that our repository automatically keeps up with the latest releases of the packages and applications it depends on.
👀 See
Trello, screenshots, external resources?
https://docs.github.com/en/code-security/supply-chain-security/keeping-your-dependencies-updated-automatically
📋 QA
Go to Insights -> Dependency Graph -> Dependabot

We truly appreciate the Open source community collaboration and suggestionas, and as soon as we can get on our roadmaps room for reviewing the CircleCI integration for externals, and evaluate if we want to add dependabot we will re-visit this PR.


Authenticated SSR (remove )

Currently, no pocketbase queries run in SSR because the user is not authenticated. According to https://github.com/pocketbase/js-sdk#ssr-integration there may be a way to do this better so that we don't have to wrap stuff in <AuthStateguard>

After looking into this more, I found that the Svelte server would need to maintain a separate pocketbase instance for every auth token sent from the frontend (ie, one per user).
It seems that <AuthStateGuard> is actually the better way to go, but it means anything inside <AuthStateGuard> cannot be seo'd.


feat: Add Scrollbar

It would be reallay cool if you make the window resizable

Making it resizeable would maybe work, i will try


Test fail when upgrading to Jasmine 2.0

Greetings,
I just upgraded to Jasmine 2.0 and now some of my tests which leverage jasmine-as-promised are failing with
TypeError: Cannot read property 'call' of undefined
at interceptor
(/app/bower_components/jasmine-as-promised/src/jasmine-as-promised.js:144:21)
at window.runs
(/app/bower_components/jasmine-as-promised/src/jasmine-as-promised.js:219:37)
Line 144:  runs.call( this, function() { ....
From the Jasmine 2.0 upgrade.js page:
"The runs, waits, and waitsFor methods have been removed in favor of allowing functions run as part of the spec to receive and invoke a done callback."
Is there a version of jasmine-as-promised which works with Jasmine 2.0?

https://github.com/charleshansen/mock-promises


FatalError: Illegal instruction is detected by the operating system.

Hi guys,
Great work! I find it super cool and interesting! Thanks for sharing it!
I follow all the instructions for installation, but when I am running the code I have the following logs:
Warning: The default cache directory for DeepSpeed Triton autotune, /a/home/cc/students/csguests/briangordon/.triton/autotune, appears to be on an NFS system. While this is generally acceptable, if you experience slowdowns or hanging when DeepSpeed exits, it is recommended to set the TRITON_CACHE_DIR environment variable to a non-NFS path.
 [WARNING]  async_io requires the dev libaio .so object and headers but these were not found.
 [WARNING]  async_io: please install the libaio-dev package with apt
 [WARNING]  If libaio is already installed (perhaps from source), try setting the CFLAGS and LDFLAGS environment variables to where it can be found.
 [WARNING]  Please specify the CUTLASS repo directory as environment variable $CUTLASS_PATH
 [WARNING]  sparse_attn requires a torch version >= 1.5 and < 2.0 but detected 2.0
 [WARNING]  using untested triton version (2.0.0), only 1.0.0 is known to be compatible
CHANGED init_detector() !
Loads checkpoint by local backend from path: /home/dcor/briangordon/Yonatan_Project/MoAI/moai/sgg/checkpoints/psgtr_r50_epoch_60.pth
download https://paddleocr.bj.bcebos.com/PP-OCRv4/chinese/ch_PP-OCRv4_det_infer.tar to /a/home/cc/students/csguests/briangordon/.paddleocr/whl/det/ch/ch_PP-OCRv4_det_infer/ch_PP-OCRv4_det_infer.tar
download https://paddleocr.bj.bcebos.com/PP-OCRv4/chinese/ch_PP-OCRv4_rec_infer.tar to /a/home/cc/students/csguests/briangordon/.paddleocr/whl/rec/ch/ch_PP-OCRv4_rec_infer/ch_PP-OCRv4_rec_infer.tar
download https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_cls_infer.tar to /a/home/cc/students/csguests/briangordon/.paddleocr/whl/cls/ch_ppocr_mobile_v2.0_cls_infer/ch_ppocr_mobile_v2.0_cls_infer.tar

--------------------------------------
C++ Traceback (most recent call last):
--------------------------------------
0   paddle_infer::Predictor::Predictor(paddle::AnalysisConfig const&)
1   std::unique_ptr<paddle::PaddlePredictor, std::default_delete<paddle::PaddlePredictor> > paddle::CreatePaddlePredictor<paddle::AnalysisConfig, (paddle::PaddleEngineKind)2>(paddle::AnalysisConfig const&)
2   paddle::AnalysisPredictor::Init(std::shared_ptr<paddle::framework::Scope> const&, std::shared_ptr<paddle::framework::ProgramDesc> const&)
3   paddle::AnalysisPredictor::PrepareProgram(std::shared_ptr<paddle::framework::ProgramDesc> const&)
4   paddle::AnalysisPredictor::OptimizeInferenceProgram()
5   paddle::inference::analysis::Analyzer::RunAnalysis(paddle::inference::analysis::Argument*)
6   paddle::inference::analysis::IrAnalysisPass::RunImpl(paddle::inference::analysis::Argument*)
7   paddle::inference::analysis::IRPassManager::Apply(std::unique_ptr<paddle::framework::ir::Graph, std::default_delete<paddle::framework::ir::Graph> >)
8   paddle::framework::ir::Pass::Apply(paddle::framework::ir::Graph*) const
9   paddle::framework::ir::SelfAttentionFusePass::ApplyImpl(paddle::framework::ir::Graph*) const
10  paddle::framework::ir::GraphPatternDetector::operator()(paddle::framework::ir::Graph*, std::function<void (std::map<paddle::framework::ir::PDNode*, paddle::framework::ir::Node*, paddle::framework::ir::GraphPatternDetector::PDNodeCompare, std::allocator<std::pair<paddle::framework::ir::PDNode* const, paddle::framework::ir::Node*> > > const&, paddle::framework::ir::Graph*)>)

----------------------
Error Message Summary:
----------------------
FatalError: `Illegal instruction` is detected by the operating system.
  [TimeInfo: *** Aborted at<PHONE_NUMBER> (unix time) try "date -d @1713962739" if you are using GNU date ***]
  [SignalInfo: *** SIGILL (@0x7f2dead5b07a) received by PID 1631081 (TID 0x7f35fb157180) from PID<PHONE_NUMBER>3354457210 ***]

Can you please help me with this issue?

It seems like paddleocr version error. After moai codes are launched, the paddleocr package may be updated. My server used paddleocr==<IP_ADDRESS>. Then, you can try this version.


Show file size

We can now show file size if required
just pass this in param  config = Config(showFileSize = true)

Thanks for the PR, it looks great, once the requested changes are done, i'll merge it.

There's a missing ability to modify the position of the file size
make sure to add a
sizeTextModifications = {
                    textAlignment = TextView.TEXT_ALIGNMENT_VIEW_START
                    textStyle = TitleTextModifier.TextStyle.ITALIC
                    textColor = Color.WHITE
                    textPadding = 5 // use dp or sp this is only for demonstration purposes
                    textSize = 30f  // use sp this is only for demonstration purposes
                    backgroundColor = Color.GRAY
                    backgroundDrawable = // hmmm maybe also this or edge roundness ?

}

Did not get this can you explain where to do this change?

There's a missing ability to modify the position of the file size
make sure to add a
sizeTextModifications = {
                    textAlignment = TextView.TEXT_ALIGNMENT_VIEW_START
                    textStyle = TitleTextModifier.TextStyle.ITALIC
                    textColor = Color.WHITE
                    textPadding = 5 // use dp or sp this is only for demonstration purposes
                    textSize = 30f  // use sp this is only for demonstration purposes
                    backgroundColor = Color.GRAY
                    backgroundDrawable = // hmmm maybe also this or edge roundness ?

}

Did not get this can you explain where to do this change?

https://github.com/FunkyMuse/MediaPicker/blob/master/core/src/main/java/com/crazylegend/core/modifiers/base/BaseSinglePickerModifier.kt

@FunkyMuse sizeTextModifications requires more changes and I am not getting where to start with as I think it will take values from top method showPicker.

@FunkyMuse sizeTextModifications requires more changes and I am not getting where to start with as I think it will take values from top method showPicker.

It's just one more variable added inside the link I've sent you

@FunkyMuse sizeTextModifications requires more changes and I am not getting where to start with as I think it will take values from top method showPicker.

It's just one more variable added inside the link I've sent you

@Parcelize
open class BaseSinglePickerModifier(
        open val titleTextModifier: TitleTextModifier = TitleTextModifier(),
        open val viewHolderPlaceholderModifier: ImageModifier = ImageModifier(),
        open val noContentTextModifier: TitleTextModifier = TitleTextModifier(),
        open val sizeTextModifier: TitleTextModifier = TitleTextModifier(),
        open var loadingIndicatorTint: Int? = null
) : Parcelable {

    inline fun setupBaseModifier(
            loadingIndicatorColor: Int? = null,
            titleTextModifications: TitleTextModifier.() -> Unit = {},
            placeHolderModifications: ImageModifier.() -> Unit = {},
            placeHolderModifications: ImageModifier.() -> Unit = {},
            sizeTextModifications: TitleTextModifier.() -> Unit = {}) {
        titleTextModifier.titleTextModifications()
        loadingIndicatorTint = loadingIndicatorColor
        viewHolderPlaceholderModifier.placeHolderModifications()
        noContentTextModifier.noContentTextModifications()
        sizeTextModifier.sizeTextModifications()
    }
}

something like this

@FunkyMuse Made changes suggested by you can have a look.

@FunkyMuse Made changes as suggested. Have a look when available.

will do probably tonight or tomorrow, thanks, i'll let you know

Done


Feature/disambiguate predicates

[x] I have read the CONTRIBUTING.

🔗 Closing issues
This closes #48 , closes #47
📖 Summary
We can now specify the Input type of Predicate.match and Predicate.any when its can not be inferred. .match(any: String.self) { $0.isEmpty } .match(any: String.self, when: \.isEmpty) .any(String.self)
The default description change to "a (type)"
🛠 About Implementation
Just a new parameter with default value to Input.self
✅ About Testing
To create this ambiguity we need a Predicate with a generic Input type.
That is why each test has an assertion function.

Codecov Report

Merging #58 into master will not change coverage.
The diff coverage is 76.92%.

@@           Coverage Diff           @@
##           master      #58   +/-   ##
=======================================
  Coverage   97.17%   97.17%
=======================================
  Files          19       19
  Lines         248      248
=======================================
  Hits          241      241
  Misses          7        7

Impacted Files
Coverage Δ

Sources/MockSwift/Predicates/Predicate.swift
86.95% <76.92%> (ø)
: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 e90b4ab...6a59db0. Read the comment docs.


perlbrew plugin

perlbrew is like rbenv for perl. This does the same as the rbenv plugin then :+1:

hey @diegok
can you please seperate the PR into seperate changes? it seems like you added some extra files and changes

Hi @NoahGorny !, wow, a very long time has passed since I've sent this PR. I'm not using bash anymore, but if you find this still helpful I can split as requested. Should I create two PRs? one for perlbrew and one for my theme?

Hi @diegok
If you could do it- it would be great!


Updates documentation to includes forRoot() in imports statment

Current coverage is 84.27% (diff: 100%)

Merging #1366 into development will not change coverage

@@           development      #1366   diff @@
=============================================
  Files               73         73
  Lines             1959       1959
  Methods             17         17
  Messages             0          0
  Branches           262        262
=============================================
  Hits              1651       1651
  Misses             214        214
  Partials            94         94

Powered by Codecov. Last update 753ef76...c199a1f

no worries, I am working on it
http://valorkin.github.io/ng2-bootstrap/#/alerts

Thanks for PR


Span serializers

Took a stab at adding Span<T> serializers. It probably needs some work still. If you already have plans to add these, feel free to close this PR.

timely! I planned to try to update the serializer api later this week or next week. I haven't completely thought this through, but was thinking we want something similar to the new pipelines API which has a GetMemory(int)  method. i.e. avoid allocating memory on serialization if at all possible. Thread safety needs to be maintained as well, which will probably complicate that. The serialization case is more complex than the deserialization case.
https://blogs.msdn.microsoft.com/dotnet/2018/07/09/system-io-pipelines-high-performance-io-in-net/

Interesting, that's way more ambitious than my PR, I'm looking forward to it. I definitely agree it's complex. In particular, I wonder how to handle the case where the message size is unknown (eg. avro). Would the buffer be expandable, or would you ask for a bigger one, or would you ask for another buffer.

@mhowlett I was thinking about this again, the internal (non-generic) Producer allows ideal memory pooling with this PR, here's some example pseudo code,
// The internal producer
IProducer producer...

// RecyclableMemoryStream uses ArrayPool<byte>.Shared
// so it's able to resize if needed, and avoid allocations.
using (var keyStream = new RecyclableMemoryStream())
using (var valueStream = new RecyclableMemoryStream())
{
	SerializeKey(key, keyStream);
	SerializeValue(value, valueStream);

	// AsSpan() slices the underlying buffer,
	// so no extra allocations occur here.
	ReadOnlySpan<byte> keySpan = keyStream.AsSpan();
	ReadOnlySpan<byte> valueSpan = valueStream.AsSpan();

	var task = producer.ProduceAsync(..., keySpan, valueSpan, ...);
}

return task;

I'm going to see if I can get a more concrete example working in the generic producer. It's more tricky, since the user has to return a buffer, but doesn't have a way to dispose/free the buffer afterwards if it's needed.

@xqrzd - sounds like this is likely on the right track (without having fully thought it through). Maybe we could have ISerializer.Serialize(RecyclableMemoryStream stream, string topic, T data).
Another potential point of optimization for producing may be to avoid using MsgFlags.MSG_F_COPY on the producev call. This would mean pinning the key/value memory for longer until the delivery report is available. We need to pin anyway - in many cases there may not be downside to pinning longer.
[this task you've chosen is a tricky thing!]


jump-to-definition for components

The Components inspector section should have a button (or the component's title as clickable) that opens the proper sidecar .utopia.js file, and within that file takes us to the component's entry.
There's three levels of how advanced we can make this:

only open the sidecar file, no jumping inside. (this would already be pretty helpful because the demo project has dozens of files and using the File Navigator is really cumbersome)
Open the sidecar file and jump to where the component's entry is in the exported default object.
(optional) For each property, a context menu option to jump to where the property itself is declared, only if the property declaration is directly in the object literal of the component's declaration
(Ultra Hard Mode, for enthusiasts): For each property, a context menu option to jump to where the property itself is declared, even if the property declaration is a referenced variable in the declaration file

The Components inspector section should have a button (or the component's title as clickable)

The component's title is already clickable, and navigates to the selected component instance in the code.


chore: moved driver/report.md to docs/report.md.

Moreover, output folder will now be libs/ instead of driver/ since we now also change files outside of driver folder.

/hold

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

/unhold

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: Andreagit97, FedeDP
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [Andreagit97,FedeDP]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


FormatException in the inbox tab

There is an error in the inbox tab stating "Something went wrong FormatException" the Retry button doesn't fix the issue.

Is it perhaps possible that you were seeing this behavior on version 2.0.0, rather than the latest 2.1.0? It took some time for the F-Droid build to update, so I would not be surprised. I'm assuming this was fixed with #93, but let me know if you're still having issues on 2.1.0.


Create Progress Badges

It would be good to show the data from results as badges in the README using shields.io.

TOTAL: 274 / 1543  (17.8%)

Get results.py to save a bunch of the stats it currently prints to a JSON file and then use https://shields.io/endpoint to generate badges.

In future maybe consider badges for breakdown of specific technology types but not a priority until every address processed.


Revert TextField.adaptive

The TextField.adaptive() factory shouldn't have landed, this PR reverts the changes from https://github.com/flutter/flutter/pull/68918.
Making all of the Material components into proxies for native look-and-feel widgets has never been a goal. However we have tried to fully support the Material spec's "Cross Platform Guidelines": https://material.io/design/platform-guidance/cross-platform-adaptation.html#cross-platform-guidelines. There are a few places, where muscle memory is an issue, where we will continue to try and automatically adjust aspects of a component's look and feel to match the platform. Currently that's most evident in Textfields and their keyboard, mouse, and context menu behavior.
Creating higher level components that neatly bridge the look-and-feel differences between iOS and Android apps, desktop apps and mobile apps, Windows and MacOS apps, etc, is a worthy and ambitious goal. Cross platform apps will likely include some support of this kind that is tailored to the platforms they aree bridging and the flexibility the app requires. A Flutter platform adaptation package could take a more generic swipe at the problem.

LGTM


Fix full fetch logic (resolves #955)

Summary
Pagination is broken for flows such as the jira subscribe edit workflow. Only 50 projects are currently listed, with no way to retrieve additional projects.
Ticket Link
Fixes https://github.com/mattermost/mattermost-server/issues/955

Hello @relwell,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.
Per the Mattermost Contribution Guide, we need to add you to the list of approved contributors for the Mattermost project.
Please help complete the Mattermost contribution license agreement?
Once you have signed the CLA, please comment with /check-cla and confirm that the CLA check is green.
This is a standard procedure for many open source projects.
Please let us know if you have any questions.
We are very happy to have you join our growing community! If you're not yet a member, please consider joining our Contributors community channel to meet other contributors and discuss new opportunities with the core team.

@mickmister this has been an open issue for some time and is blocking some critical workflows for my team. Happy to work with you on this whenever you find the time. I just signed the CLA.

/check-cla

@mickmister sorry about the issue gaffe -- I've updated it to the proper repo, which should point to the correct issue.
This has been a longstanding problem that we're just trying to get solved to unblock some teams from using better chatops. So for that reason, I've just copied over the suggestion solution from within the chat. My other thought was indeed to simply set the limit to something arbitrarily higher (500 instead of 50, for instance). But if it truly is just a logic problem with pagination, this seems like the better solution.
I'm happy to make any change you'd prefer to see so long as we can get some more projects listed!

Thanks @relwell 👍  I was unaware of that open issue https://github.com/mattermost/mattermost-plugin-jira/issues/955 until now. Thank you very much for solving this 🎉

@AayushChaudhary0001 @mickmister what are the next steps to getting this change merged?

@relwell The change seems simple enough to me. We'll cover this in release testing cc @AayushChaudhary0001


Migrate to charmcraft.yaml

IAM-961

Could you also update canonical/charming-actions/channel to 2.6.2, so that the publish and release actions don't fail?

I was thinking of merging this and letting renovate handle the action update, which will solve the failing pipeline issue on main


Fix oversight: rules override

Fix:
In Gitlab CI yaml syntax, rules use a list of constraints, and lists cannot be merged.
Defining rules in a job, while there is already a rules section in the "template" on_quartz lead to an override of on_quartz rules. This is annoying, but that’s how it is.

PR
Author
Editor
Reviewers
Assignment
Approval
Merge

#2332
@adrienbernede
@tzanio
@tzanio + @pazner
06/14/21
⌛due 06/15/21
⌛due 06/16/21

@v-dobrev @pazner @YohannDudouit. Here is the fix to the undesired commits to autotest.

This PR is now under review (see the table in the PR description). To help with the review process, please do not force push to the branch.

Let’s do a quick check.

LGTM

Merged in next for testing...


docs(readme): add examples of exposed functions

Description
updated readme file with examples of exposed functions for ease of development to other developers.
The proper usage was inferred but not explicitly explained.
Checklist

[ ] All tests passing
[ ] Created tests which fail without the change (if possible)
[x] Extended the README / documentation, if necessary
[x] Commits and PR follow conventions

Add examples of exposed functions

Opened #236 following the commit conventions


Exceptions never catched by IT tests

i have a configuration like arquillian.org , then i change weld container by  the following maven library 👍 <dependency> 			<groupId>org.wildfly.arquillian</groupId> 			<artifactId>wildfly-arquillian-container-managed</artifactId> 			    <version>2.1.0.Alpha1</version> 			<scope>test</scope> 		</dependency>
and use arquillian.xml then i just try to write throw new Exception in a test, and the test is not in failure any idea?

Could you show the test method?

@Test
//@OperateOnDeployment("test")
public void should_create_greeting() throws Exception{
System.out.println("test");
greeter.createGreeting("Earthling");
greeter.greet(System.out, "Earthling");
throw new NullPointerException();
}

in test with weld embbeded it is working the exception is catched

That should fail the build. Try something like Assert.fail() to see if that breaks it. If not my guess would be something in the test is not configured correctly.

i want to make fail the build, but it does not do it.... in fact i detect a probleme because when i test method with null argument nothing append and test pass successfully, an di don't want it... i want when i throw an excption , i want have an error. In fact when a method like service.executeMethod(parameter) throw an exception we exit the code but test will write OK ... why i am doing it, imagine someone change a method and now throw exception because something wrong happen, the build will always work... i want when service send an exception the test will be in failure , for the moment it is not the case

And the assert fail will work because all tests not fail.... good test or bad test

And the test is very simple ! and i change a test with no container wildfly and if i throw an exception the test will FAIL => OK for me

i test it with testNG because i all projects we have it is testNG used

It seemed to work for me. Do you have an example of the project I could look at?
My test was very simple:
@RunWith(Arquillian.class)
public class SimpleServletTest {

    @Deployment
    public static WebArchive deployment() {
        return ShrinkWrap.create(WebArchive.class, "simple-servlet.war")
                .addPackages(true, SimpleServlet.class.getPackage());
    }

    @Test
    public void test() throws Exception {
        throw new NullPointerException();
    }
}

Results :

Tests in error:
  SimpleServletTest.test:57 NullPointer

Tests run: 1, Failures: 0, Errors: 1, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 7.522 s
[INFO] Finished at: 2017-03-03T09:05:15-08:00
[INFO] Final Memory: 24M/246M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.19.1:test (default-test) on project simple-servlet: There are test failures.
[ERROR]
[ERROR] Please refer to /home/jperkins/projects/jboss/examples/javaee/simple-servlet/target/surefire-reports for the individual test results.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

`public class TestException extends Arquillian{
private static String WEBAPP_SRC = "src/main/webapp";

@Inject Greeter greeter;

private static String POM_FILE = "pom.xml";
private static String ARCHIVE_NAME = "test.war";

@Deployment
public static Archive<?> generateDefaultDeployment() {

	// Generate the default WAR used by all *IT tests using @OperateOnDeployment("AofWeb") annotation
	//LOGGER.info("Generating " + ARCHIVE_NAME + " archive ...");

	PomEquippedResolveStage pom = Maven.resolver().loadPomFromFile(POM_FILE);
	ScopeType[] scopes = {ScopeType.COMPILE, ScopeType.IMPORT, ScopeType.TEST}; // no SYSTEM and no PROVIDED
	File[] libs = pom.importDependencies(scopes).resolve().using(TransitiveStrategy.INSTANCE).asFile();

	WebArchive archive =  ShrinkWrap.create(WebArchive.class, ARCHIVE_NAME)
			.addClass(Greeter.class)
		     .addAsLibraries(libs)
	        .addAsWebInfResource(new File(WEBAPP_SRC, "WEB-INF/beans.xml"));
	archive.merge(ShrinkWrap.create(GenericArchive.class).as(ExplodedImporter.class)
		    .importDirectory(WEBAPP_SRC).as(GenericArchive.class),
		    "/", Filters.include(".*\\.(?i)(jpg|js|png|gif|bmp|html|xhtml|css)$"));

	// No need to log the content anymore, the archive is kept in target directory
	// "deploymentExportPath" variable in arquillian.xml
	System.out.println(archive.toString(true));

	return archive;
}

@Test
//@OperateOnDeployment("test")
public void should_create_greeting() throws Exception{
	System.out.println("test");
	greeter.createGreeting("Earthling");
	greeter.greet(System.out, "Earthling");
	//Assert.fail(greeter.createGreeting(null));
	throw new Exception();

}

}`
then pom.xml
`
4.0.0
<groupId>sample.spnego</groupId>
<artifactId>sample-app</artifactId>
<packaging>war</packaging>
<version>1.0</version>
<name>sample-app</name>

<dependencyManagement>
	<dependencies>
		<!-- Define the version of JBoss' Java EE 6 APIs we want to import. Any
			dependencies from org.jboss.spec will have their version defined by this
			BOM -->
		<dependency>
			<groupId>org.jboss.spec</groupId>
			<artifactId>jboss-javaee-6.0</artifactId>
			<version>3.0.3.Final</version>
			<scope>provided</scope>
			<type>pom</type>
		</dependency>
		<dependency>
			<groupId>org.jboss.arquillian</groupId>
			<artifactId>arquillian-bom</artifactId>
			<!-- <version>1.1.8.Final</version> -->
			<version>1.1.12.Final</version>
			<scope>import</scope>
			<type>pom</type>
		</dependency>
		  <dependency>
            <groupId>org.jboss.shrinkwrap.resolver</groupId>
            <artifactId>shrinkwrap-resolver-bom</artifactId>
            <version>2.2.6</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
	</dependencies>
</dependencyManagement>

<dependencies>
	<dependency>
		<groupId>commons-io</groupId>
		<artifactId>commons-io</artifactId>
		<version>2.5</version>
	</dependency>
	<dependency>
		<groupId>org.jboss.spec</groupId>
		<artifactId>jboss-javaee-6.0</artifactId>

		<type>pom</type>
		<scope>provided</scope>
	</dependency>

	<dependency>
		<groupId>org.testng</groupId>
		<artifactId>testng</artifactId>
		<version>6.10</version>
		<scope>test</scope>
	</dependency>
	<dependency>
		<groupId>org.jboss.arquillian.testng</groupId>
		<artifactId>arquillian-testng-container</artifactId>
		<scope>test</scope>
	</dependency>

	<dependency>
		<groupId>org.eu.ingwar.tools</groupId>
		<artifactId>arquillian-suite-extension</artifactId>
		<version>1.1.2</version>
		<scope>test</scope>
	</dependency>
	<dependency>
		<groupId>org.slf4j</groupId>
		<artifactId>slf4j-api</artifactId>
		<version>1.6.4</version>
		<scope>provided</scope>
	</dependency>
		<dependency>
		<groupId>org.eclipse.aether</groupId>
		<artifactId>aether-impl</artifactId>
		<version>1.1.0</version>
	</dependency>
	 <dependency>
        <groupId>org.jboss.shrinkwrap.resolver</groupId>
        <artifactId>shrinkwrap-resolver-depchain</artifactId>
        <scope>test</scope>
        <type>pom</type>

    </dependency>

	<dependency>
		<groupId>org.wildfly.arquillian</groupId>
		<artifactId>wildfly-arquillian-container-managed</artifactId>
		    <version>1.0.0.Alpha1</version>
		<scope>test</scope>
	</dependency>
</dependencies>

<profiles>
	<profile>
		<id>integration</id>
		<build>
			<plugins>
				<!-- <plugin> -->
				<!-- <groupId>org.apache.maven.plugins</groupId> -->
				<!-- <artifactId>maven-surefire-plugin</artifactId> -->
				<!-- <version>2.19.1</version> -->
				<!-- </plugin> -->
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-failsafe-plugin</artifactId>
					<version>2.19.1</version>

					<configuration>
						<systemPropertyVariables>
							<jboss.server.log.dir>C:/dev/servers/wildfly-9.0.2.Final/standalone/log</jboss.server.log.dir>
							<arquillian.launch>jbossas-managed</arquillian.launch>
							<jbossas.startup.timeout>240</jbossas.startup.timeout>

						</systemPropertyVariables>
						<includes>
							<include>*.java</include>
						</includes>
						<!-- <groups>org.jboss.arquillian.testng.Arquillian</groups> -->
					</configuration>
					<executions>
						<execution>
							<goals>
								<goal>integration-test</goal>
								<goal>verify</goal>
							</goals>
						</execution>
					</executions>
				</plugin>
			</plugins>
		</build>

	</profile>
</profiles>

`
and arquillian.xml
`

<!-- Force the use of the Servlet 3.0 protocol with all containers, as it is the most mature -->
<defaultProtocol type="Servlet 3.0" />

<!-- Keep generated archive for inspection
 -->
<engine>
       <property name="deploymentExportPath">target/</property>
</engine>

<!-- Local JBoss/WildFly instance -->
<container qualifier="jbossas-managed" default="true">
    <configuration>
        <property name="jbossHome">${env.JBOSS_HOME}</property>
        <property name="serverConfig">standalone-real-continuous-integration.xml</property>
         <!-- true : server must be started by the user, false : arquillian will start it itself -->
        <property name="allowConnectingToRunningServer">true</property>
    </configuration>
</container>

<!-- Remote JBoss/WildFly instance -->
<container qualifier="jbossas-remote" default="false">
	<configuration>
		<property name="managementAddress">remoteHost</property>
		<property name="managementPort">9999</property>
	</configuration>
</container>

`
i am not using junit but testNG, i will try junit just to see
working configuration
`
4.0.0
org.arquillian.example
arquillian-tutorial
1.0-SNAPSHOT
jar
arquillian-tutorial
http://maven.apache.org

UTF-8

org.jboss.spec
jboss-javaee-6.0
3.0.3.Final
provided
pom

org.jboss.arquillian
arquillian-bom

1.1.12.Final
import
pom

org.jboss.spec
jboss-javaee-6.0
pom
provided

org.jboss.arquillian.testng
arquillian-testng-container
test

javax.enterprise
cdi-api
1.2

org.jboss.arquillian.container
arquillian-weld-ee-embedded-1.1
1.0.0.CR9
test

org.jboss.weld
weld-core
2.3.5.Final
test

org.slf4j
slf4j-simple
1.6.4
test

org.testng
testng
6.10
test

arquillian-tutorial

maven-war-plugin
2.4

false

`

`

<!-- Force the use of the Servlet 3.0 protocol with all containers, as it is the most mature -->
<defaultProtocol type="Servlet 3.0" />

<!-- Keep generated archive for inspection
 -->
<engine>
       <property name="deploymentExportPath">target/</property>
</engine>

<!-- Local JBoss/WildFly instance -->
<container qualifier="jbossas-managed" default="true">
    <configuration>
        <property name="jbossHome">${env.JBOSS_HOME}</property>
        <property name="serverConfig">standalone-real-continuous-integration.xml</property>
         <!-- true : server must be started by the user, false : arquillian will start it itself -->
        <property name="allowConnectingToRunningServer">true</property>
    </configuration>
</container>

<!-- Remote JBoss/WildFly instance -->
<container qualifier="jbossas-remote" default="false">
	<configuration>
		<property name="managementAddress">remoteHost</property>
		<property name="managementPort">9999</property>
	</configuration>
</container>

`

i see it is working with Junit so it is the combinaison of wildfly-arquillian-container and testng container and testNg libraries

when i change this
		<dependency> 			<groupId>org.testng</groupId> 			<artifactId>testng</artifactId> 			<version><IP_ADDRESS></version> 			<scope>test</scope> 		</dependency> 		<dependency> 			<groupId>org.jboss.arquillian.testng</groupId> 			<artifactId>arquillian-testng-container</artifactId> 			<scope>test</scope> 		</dependency>
it is working the build failed

Try a newer version of wildfly-arquillian-container-managed. In that first pom you're using 1.0.0.Alpha1 which is pretty old.

Ah okay, so maybe it's a testng bug then.

i am using 2.0.0 the 1.0.0 is juste a test, how i can do ? because i can't change all my testNG in Junit i have 2500 classes !!!

OK with 6.8 version of testNG it is working

What I meant was if an upgrade to testng fixes it, I would do that. I didn't mean to suggest you switch from testng to JUnit.

finally i downgrade
<dependency> 			<groupId>org.testng</groupId> 			<artifactId>testng</artifactId> 			<version>6.10</version> 			<scope>test</scope> 		</dependency>
to
<dependency> 			<groupId>org.testng</groupId> 			<artifactId>testng</artifactId> 			<version>6.9.10</version> 			<scope>test</scope> 		</dependency>
and now it is working thank you for your help !! have i to contact someone to specify the issue  ?

I honestly have no idea. If a downgrade fixes it I would think the issues is with testng. I really know little about the internals of testng though.


Comment on "acquireTriggersWithinLock" property

/**
* Whether or not the query and update to acquire a Trigger for firing
* should be performed after obtaining an explicit DB lock (to avoid
* possible race conditions on the trigger's db row).  This is the
* behavior prior to Quartz 1.6.3, but is considered unnecessary for most
* databases (due to the nature of the SQL update that is performed),
* and therefore a superfluous performance hit.
*/
public boolean isAcquireTriggersWithinLock() {
return acquireTriggersWithinLock;
}
The property must be set for databases where simple SELECTs are never blocked (for ex. Oracle), it would be very helpful if this information was reflected somewhere in documentation.

Do you mean only in Non-Cluster mode? Because if you are in clustered mode, we automatically use the DB lock already.

Closing outdated, unresolved issues. Please, reopen if still relevant.


error with ionic 5 during building with cordova-plugin-hms-push 5.1.1-301

Hello i have a ionic 5 app with this pluging version:
"@hmscore/cordova-plugin-hms-push": "^5.1.1-301",
"@hmscore/ionic-native-hms-push": "^5.1.1-301"
When i make ionic build i geth this is the error:
ERROR in<EMAIL_ADDRESS>Module build failed (from ./node_modules/@ngtools/webpack/src/index.js):
Error<EMAIL_ADDRESS>is missing from the TypeScript compilation. Please make sure it is in your tsconfig via the 'files' or 'include' property.
The missing file seems to be part of a third party library. TS files in published libraries are often a sign of a badly packaged library. Please open an issue in the library repository to alert its author and ask them to package the library using the Angular Package Format (https://goo.gl/jB3GVv).
at AngularCompilerPlugin.getCompiledFile (/var/www/html/triptrainer/ionic/TripTrainer/node_modules/@ngtools/webpack/src/angular_compiler_plugin.js:949:23)
at plugin.done.then (/var/www/html/triptrainer/ionic/TripTrainer/node_modules/@ngtools/webpack/src/loader.js:43:31)
at process._tickCallback (internal/process/next_tick.js:68:7)
@ ./src/app/shared/service/mqttClient.service.ts 9:0-86 241:12-19 242:12-24
@ ./src/app/app.module.ts
@ ./src/main.ts
@ multi ./src/main.ts
[ERROR] An error occurred while running subprocess ng.
Can you help me?
Thank you

Ok the problem was the import.
If you import the class with this:
from '@hmscore/cordova-plugin-hms-push/ionic-native/;
you get the error.
If you import with this:
from '@hmscore/cordova-plugin-hms-push/ionic-native/dist/ngx';
It works.


Pygame.init() should be on main

Currently our main function looks like this:
def main():
	start.game_loop()
	pygame.quit()

But, what I would like to have to avoid underrun errors and make the code more meaningful is:
def main():
        pygame.init()
	start.game_loop()
	pygame.quit()

The problem is that, I can't easily do that, since when I import the start module there is a dependency.
To initialize the display dimensions object pygame needs to be initialized on start.py file.
monitor = pygame.display.Info()

After digging into that problem, the best and simpler solution is to leave pygame.init() and pygame.quit() on start.py file, which makes a lot of sense based on the module name. The main.py file will not import pygame and will only call the game_loop.


Follow up / Check whether return of multiple unnamed objects, such as in a tuple [1-24]

As an example
import sys
import yaml
from dewret.tasks import task, run
from dewret.renderers.cwl import render

@task()
def paris_coordinates_in_deg() -> tuple[float, float]:
    return 48.856667, 2.351667

result = paris_coordinates_in_deg()
workflow = run(result)
cwl = render(workflow)
yaml.dump(cwl, sys.stdout, indent=2)

complains "TypeError: Cannot render complex type (tuple[float, float]) to CWL."

@philtweir  we should follow up about this issue.

Hey @KamenDimitrov97 , I think you could look into this. There are two possible outcomes or rather reasonable conclusions to this task:

The functionality can be added, which is great, and it should be demonstrated in an example and tested.
There is an significant or fundamental obstacle to adding this functionality, in which case the restriction should be documented.

@philtweir , do you have any comments or suggestions on where to start with this task?

Plan: @KamenDimitrov97 will take over @philtweir 's old work on this, rebase/port, write tests, and fix any remaining bugs, and create the PR.


Take advantage of git tagging

At some point it would be pleasant to start actively using it and have someone go back and tag a few important commits.

Could we just start fresh from 0.0.0/0.0.1 maybe?

Up to you. To me, it currently is "somewhat functional." It really doesn't matter, it would just be nice to have solid versions to look at.

Maybe 0.0.x can be pre-"functional"  and 0.1.+ can be "functional"

@IanMurray it'd be better if w ejust kept the semantic versioning stuff, i.e major:minor:patch. But we're going to start tagging stuff maybe when the parser is done.

@freefouran sounds good

See Why Semantic Versioning Isn't.

@haneefmubarak ahh who cares we'll just use smv

I don't understand the point of that gist rant, either. It doesn't actually say that there's anything concretely defined which is "better" than semantic versioning. On top of that, all of it was just saying "There's no reassurance just because you use SemVer, and things might not go well!" well yeah, of course. Versioning is just for human purposes. I don't care if you reverse it or change it to major.minor.fix.patch.commithash.dayoftheweek.favoritecolor.alpha. Versioning is just to help people say "hey, I have a problem and I'm using version 1.2.3" so someone else can say "oh, it seems like you need 2.2.3" or whatever.
Anyway, doesn't matter. I'm happy with whatever. The main thing is to actually test what you write. There's no version system that will fix that for you.


Update to ANF's best practices

Hi, ANF PM here:
Can you please include a reference to enabling SMB Continuous Availability shares on volumes to ANF's best practices?
A reference to the following pages would be appreciated:
https://docs.microsoft.com/en-us/azure/azure-netapp-files/azure-netapp-files-create-volumes-smb#continuous-availability
https://docs.microsoft.com/en-us/azure/azure-netapp-files/enable-continuous-availability-existing-smb
[Enter feedback here]

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

ID: 6386653c-9f82-1ea7-8f29-377be4e5e3b7
Version Independent ID: a5db2b47-afaf-5917-40cd-740168cad8b6
Content: FSLogix for the enterprise - Azure Architecture Guide
Content Source: docs/example-scenario/wvd/windows-virtual-desktop-fslogix.yml
Service: architecture-center
Sub-service: azure-guide
GitHub Login: @christiaanbrinkhoff
Microsoft Alias: pnp

Thanks for reporting - this issue is under review. This is a Microsoft Internal DevOps Bug ID # 484622

@gvanteylingen We have added an internal work item for our discussion on how best we can incorporate the details suggested . At this point we will close this issue and update the article as and how internal discussion goes .


added custom titles

Closes: #269
Describe the changes you've made
A clear and concise description of what you have done to successfully close your assigned issue. Any new files? or anything you feel to let us know!
Checklist:

[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.(Specially for Backend)
[x] My changes generate no new warnings.

Screenshots

@purnima143  please review it

@purnima143  wasn't it a lvl 2


Topic/pauldokas/updates for zeek5.x

This set of changes silence warnings and errors under Zeek 5.0.X
There's another bug with &is_used in Zeek 5.1.X, so this code still won't work under 5.1.X:
https://github.com/zeek/zeek/issues/2628

Thank you so much!


Not Able to Login Using MQ COnsole

Hi @callumpjackson,
I was able to launch the MQ console using GKE, but does not know what would be the user name and password for the same.
if you can help with the same where and how to recieve the username and password.
Error:
AMQ9660E: SSL key repository: password incorrect or, stash file absent or unusable. [ArithInsert1(408), CommentInsert1(MTLSQMCHL), CommentInsert2(gsk_environment_init)]
Thanks in advance.

Hi,
The above is slightly unclear, are you asking for the default username and password for the web console? Or are you asking about the errors:
AMQ9660E: SSL key repository: password incorrect or, stash file absent or unusable. [ArithInsert1(408), CommentInsert1(MTLSQMCHL), CommentInsert2(gsk_environment_init)]
These are completely different problems, the first is for the web console, while the second is regarding the MQ data port and TLS configuration?

Hi,
While launching the web console i had tried with the user name and password maintained in the secret. But got below error in the logs.
i believe second error is due to client not properly configured.?
I am new to the mq might be missing on the basic errors.

The default web console username is admin and the password is passw0rd
You can find details of this here and also how to customize.
I'm not sure what secret you are referring to?

Closing as no additional communication in 1 month


multiple domains

There is no inherit reason why skydns could not host multiple domain, skydns.local, sykydns.test etc. Only the search path in etcd would change.

I was going to start this so that we can expose internal + external DNS domains for OpenShift and Kube.  My preference would be to attack this in two areas - one, let there be multiple independent domains (as per the discussion above), and two, potentially be able to mirror the same set of names under two roots (for split-horizon internal/external).
For the former, are there any changes since the last discussion here you'd recommend?

brrr, split horizon :)
Let's see, how would the mirroring work? This can work on the Etcd
level, i.e. skydns knows an alternate root in the tree or on the
DNS level by using a DNAME that forwards to the alternate name.
A DNAME adds latency, unless SkyDNS resolves it internally, it
is also more flexible as you can just remove the DNAME from Ectd
and the mirroring stops.
Pointing to a different root in Etcd is easier to implement.

With the custom backend work (for the OpenShift use case) it's easy to remap the backend.  For etcd, I think pointing to a different root key is easier (and more correct).  So then you'd simply have a set of roots - the allowed roots are controlled by the config (or sets of config) and then you'd also need to make sure that the SkyDNS NS/SOA records are proper for each domain.
----- Original Message -----

brrr, split horizon :)
Let's see, how would the mirroring work? This can work on the Etcd
level, i.e. skydns knows an alternate root in the tree or on the
DNS level by using a DNAME that forwards to the alternate name.
A DNAME adds latency, unless SkyDNS resolves it internally, it
is also more flexible as you can just remove the DNAME from Ectd
and the mirroring stops.
Pointing to a different root in Etcd is easier to implement.

Reply to this email directly or view it on GitHub:
https://github.com/skynetservices/skydns/issues/47#issuecomment-87969377

Without getting into split-horizon, I'd appreciate the ability to define multiple first-level domains.

[ Quoting<EMAIL_ADDRESS>in "Re: [skydns] multiple domains (#47)..." ]

Without getting into split-horizon, I'd appreciate the ability to define multiple first-level domains.

Served by this instance of SkyDNS or something more like:
https://github.com/skynetservices/skydns/pull/156 ?
/Miek
--
Miek Gieben

I'd rather they be the same instance  It's not a huge deal, except that we
have a backwards compat problem of not having let space for expanding the
contents of our current domain (we put user-defined stuff in the first
level, and did not leave room for multiple subdomains).
On Mon, Apr 13, 2015 at 8:36 AM, Miek Gieben<EMAIL_ADDRESS>wrote:

[ Quoting<EMAIL_ADDRESS>in "Re: [skydns] multiple domains
(#47)..." ]

Without getting into split-horizon, I'd appreciate the ability to define
multiple first-level domains.

Served by this instance of SkyDNS or something more like:
https://github.com/skynetservices/skydns/pull/156 ?
/Miek
--
Miek Gieben
—
Reply to this email directly or view it on GitHub
https://github.com/skynetservices/skydns/issues/47#issuecomment-92404637
.

For a clean closure: I have not been and can no longer work on this issue. Thanks for your understanding.

NP. should be fairly easy to do actually. i.e. don't foresee any major
obstacles when implementing this.
On 13 Apr 2015 5:51 pm, "W. Mark Kubacki"<EMAIL_ADDRESS>wrote:

For a clean closure: I have not been and can no longer work on this issue.
Thanks for your understanding.
—
Reply to this email directly or view it on GitHub
https://github.com/skynetservices/skydns/issues/47#issuecomment-92423287
.

Hey guys, is there any progress on this?

[ Quoting<EMAIL_ADDRESS>in "Re: [skynetservices/skydns] multipl..." ]

Hey guys, is there any progress on this?

No, this probably also will never happen in SkyDNS. One of the reasons I started
CoreDNS: github.com/coredns/coredns and coredns.io

@miekg thanks for the swift response. i found coredns in the mean time and it does what i want. excellent work!


How can I change the master_port when using deepspeed for multi-GPU on single node, i.e. localhost

When I use default command, it seems to use 29500 as master_port.
However, the master_port seems unchangable,even when I use "--master_port 29501" or change it using "deepspeed.init_distributed(dist_backend='nccl', distributed_port=config.master_port)"
error message:
[W1120 21:36:50.764587163 TCPStore.cpp:358] [c10d] TCP client failed to connect/validate to host <IP_ADDRESS>:29500 - retrying (try=3, timeout=1800000ms, delay=1496ms): Connection reset by peer
Exception raised from recvBytes at ../torch/csrc/distributed/c10d/Utils.hpp:667 (most recent call first):
frame #0: c10::Error::Error(c10::SourceLocation, std::string) + 0x96 (0x7fc06bba0446 in /data/wujiahao/anaconda3/envs/gpt/lib/python3.10/site-packages/torch/lib/libc10.so)
...

I find master_port is specified in constants.py as 29500 and can not be changed by any surface.
I hope this bug can be fixed.

@lovedoubledan, can you share your full command-line to show the example code?

@lovedoubledan, can you share your full command-line to show the example code?
my command line is :
deepspeed --include localhost:4,7 train_stage2.py
--config_file config/gptir3_notokenloss_plus.yaml
--deepspeed --deepspeed_config config/deepspeed_config/gptir.json --master_port 20815

and my code is like:
parser = argparse.ArgumentParser()
# Input Parameters
parser.add_argument('--config_file', type=str, default="config/gptir3_notokenloss_plus.yaml")
parser.add_argument("--local_rank",
type=int,
default=-1,
help="local_rank for distributed training on gpus")
parser.add_argument("--master_port",
type=int,
default=20815)
parser = deepspeed.add_config_arguments(parser)
# parser.add_argument('--deepspeed_config', type=str, default="config/deepspeed_config/gptir.json")
config = parser.parse_args()
...
model_engine, optimizer, _, _ = deepspeed.initialize(args=config,
model=net,
model_parameters=net.configure_parameters(),
distributed_port=config.master_port)

Hi @lovedoubledan - can you share a repro code snippet with us?  Also do you see any warnings printed about the port?  And could you try setting the master port in the ds_config as well to see if that works?


Add auto-completion for datatypes keyed into the Edit Function dialog

Is your feature request related to a problem? Please describe.
When choosing a datatype for a variable in other panels (eg. the Decompile: panel) each key press offers the ability to pick the type from an ever diminishing list of types.  However this isn't available in the freeform text editing area of the Edit Function dialog.
Describe the solution you'd like
This dialog's freeform text area modified to take advantage of datatype auto-completion.
Describe alternatives you've considered
Adding/modifying the types in the  Function Variables section.  This works, but the workflow doesn't!
Additional context
It would also help in remembering the correct type, especially when you have related types using the same starting prefix!

Personally I use the free form edit function specifically for when I don't want the suggestions in my way and for copy/pasting entire signatures (and then removing keywords like const, struct, restrict and union which still aren't supported for some reason).

I also use it that way @astrelsky.  Just another option, maybe?
I also look forward to be able to paste in the likes of:
HGLOBAL LoadResource(
  [in, optional] HMODULE hModule,
  [in]           HRSRC   hResInfo
);

without having to remove unsupported bits and bobs!

We just discussed this and while we think it could be useful in some contexts, we don't see ourselves realistically ever prioritizing it high enough to work on it.

Shame, I though it'd be straight forward, I would've use it a lot!  Never mind.  I understand there are lots of other far more important outstanding bugs/issues/feature requests.


SpotX Documentation

The layout of the spotx documentation is broken

Thanks for pointing this out, it's been fixed.


Create a debug viewer

At present, there's no provided way to visualize the output of a MAGE-SLAM track in order to sanity check it (as a separate issue from GT). A simple visualization app should be provided to serve this function.
Current considerations:

Babylon Native may provide the easiest integration point for creating a visualizer.
Depending on the number of dependencies (for example, Babylon Native has quite a few), it may be preferable for the visualizer app to exist in a separate repository as opposed to being checked into the MAGE-SLAM repository itself. In this way, the visualizer could also serve as an example integration without cluttering other integrations that want to use MAGE-SLAM with different technologies.

Added an extremely preliminary draft visualizer demonstrating one possible form a visualizer could take.
https://microsoft.github.io/mageslam/Visualizers/fossil_visualizer.html
I also added code to the console app to produce a CSV containing the view matrices output in the MAGE-SLAM fossil after tracking has completed. Dragging and dropping this CSV onto a browser with the above web page open will cause the track in the CSV to be visualized (again, currently very preliminary, just shows the per-frame poses for now).
Considerations:

This kind of file-based post facto visualizer, as it contains little complexity and no local dependencies, may be suitable for inclusion in this repository.
More advanced behaviors (better flight controls, additional data (keyframes, map points, time travel) could also be shown by such a visualizer with limited additional complexity, though care would need to be taken with regards to performance.
Integrated visualization -- including direct integration with MAGE-SLAM allowing the algorithm to be tuned and rerun from within the visualizer app -- should likely not be hosted in this repository. Such a visualizer would likely require something like Babylon Native, and the complexity and dependencies associated with that would warrant another repository. However, it is likely that code and visualization logic developed for the less sophisticated visualizations hosted in this repository could be included in and reused by a Babylon Native-based integrated visualization app.


⚠ Bofrost.de has degraded performance

In 157b28e, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1003 ms

Resolved: Bofrost.de performance has improved in fbeaf22 after 16 minutes.


log reformatting

I'd like to be able to blanket apply a command to log output
something like
> pipe <service> pino-colada

This would pipe  stdout through the pino-colada cli (e.g. pretty format it)
> pipe all pino

This would pipe all services stdout through pino cli (e.g. pretty format .. but differently)
and override the previous command
> pipe all sed s/foo/bar/g

This would pipe all services through sed, replacing foo with bar
> pipe all [pino, sed s/foo/bar/g]

pipe all services through pino, then through sed

I tried several approaches to do this, and after failing I was about to open an issue, but I found this one.
Is this possible in any way ? Please ?

MMM,that's one approach,but then you loose the watch and unwatch features from fuge. In my case I moved the command invocation to a bash script and it is working for me

Hello, since I'm using pino I found a solution to this problem. Probably can be easily adapted to other loggers.
My solution was to use a special node script to execute all the services. This node service is the responsible of running the process and piping the standard ooutput to pino.pretty. Is as simple as this:
const pino = require ('pino');
const { spawn } = require ('child_process');
const stream = require ('stream');
const logThrough = new stream.PassThrough ();
const { join } = require ('path');

const trace = _trace (console.log);

const child = spawn (process.execPath,
    [ join (
                process.cwd (), 'index.js'
               )
    ]);

const pretty = pino.pretty ();
pretty.pipe (process.stdout);
child.stdout.pipe (pretty);

Then I just run my script instead of the actual index.js file.
Now I just have to explore the pretty options to make it even prettier.
The @eoinsha solution was not that bad neither. I didn't realized that all the logs are saved to files, no matter if you tail them or not, which is quite nice because allows you to inspect them in any case and pipe them through any log formatter of your choice. You just lost the service name tag


No result by filtering old user/changeset - resource not found

I try the following filter:
"https://osmcha.mapbox.com/?filters={"date__gte":[{"label":"","value":""}],"users":[{"label":"iran_provinces","value":"iran_provinces"}]}"
but no results:

Also I tried to view the changeset 4266075 but I got these errors:

Hi @iriman
The last changeset of iran_provinces was 10 years ago (https://www.openstreetmap.org/user/iran_provinces/history). OSMCha doesn't have changesets created before October 2015.


Adding test coverage

Note that this PR depends on the following other PRs:

[ ] https://github.com/piuccio/node-coverage/pull/29
[ ] https://github.com/ariatemplates/atpackager/pull/27
[ ] https://github.com/attester/attester/pull/162

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@b036530). Click here to learn what that means.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master    #1803   +/-   ##
=========================================
  Coverage          ?   81.08%
=========================================
  Files             ?      597
  Lines             ?    33643
  Branches          ?        0
=========================================
  Hits              ?    27279
  Misses            ?     6364
  Partials          ?        0

Impacted Files
Coverage Δ

src/aria/jsunit/TestCase.js
87.56% <100%> (ø)

src/aria/jsunit/TemplateTestCase.js
92.48% <100%> (ø)

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 b036530...b22b414. Read the comment docs.

@fbasso Thank you for your review!


Plot in Julia always open in the first group

Does this issue occur when all extensions are disabled?: Cannot tell because Julia extension is required to reproduce.

VS Code Version: 1.63
OS Version: Windows 10 Pro

After migration to 1.63: when plotting (in Julia) the prot always open in the first group. Previously, it would open in the group which have plot pane already opened.
Steps to Reproduce:

Install Julia + Julia mode for VS Code + Plots.jl
Make a plot.
Split the screen in VS Code and move the Plot pane there.
Make another plot.

What happens: plot gets shown in the first group
What should happen: plot gets shown in the second group, where the previous plot is.

I do not think it is an extension issue.  I'm getting the same problem with REST Client extension.  First request splits out the Response to the right.  If I run it again, it moves that Response split window back to the first grouping.  So I have to click back into my script.

https://github.com/julia-vscode/julia-vscode/issues/2618

#julia-vscode/julia-vscode/issues/2618


Backport 2.7: Fix memory leak in cert_write example program

Backport of #2056 fixing #1422.

I'm okay with a ChangeLog entry for this, given it's fixing an issue with a GitHub entry.

There's no Jenkins CI pass, but given this fixes an example that isn't tested by the CI, I can accept the PR as it is, without a test pass.


yo reactor not found

@radjivC Could you add here the print of this command, please?
node -v && npm -v && npm list -g --depth=0

I've fixed it a while ago, but I dont remember how. I guess it's all good

It was a pleasure. Sorry for delay in my reply.


Some members on the client table of a Service are void on the client.

I've a service which has a client table as follows:
....
local HotAirBalloonService = Knit.CreateService({
	Name = "HotAirBalloonService",
	RequiredVehicleTag = "HotAirBalloon",
	OnNewVehicle = Signal.new(),
	Client = { Test = RemoteSignal.new()},
})

function HotAirBalloonService.Client:StartEngineExhaustFire(player)
	local vehicle = VehicleService:GetPlayerVehicle(player)

	if not self.Server:IsHotAirBalloon(vehicle) then
		return
	end

	self.Server:StartEngineExhaustFire(vehicle)
end

function HotAirBalloonService.Client:StopEngineExhaustFire(player)
	local vehicle = VehicleService:GetPlayerVehicle(player)

	if not self.Server:IsHotAirBalloon(vehicle) then
		return
	end

	self.Server:StopEngineExhaustFire(vehicle)
end

....

return HotAirBalloonService

However,  the member VehicleStillVelocity is void on the client. Printing the service on the client shows this:

The issue was fixed randomly....