Able to use Disabled/Locked Project Roles after upgrade

Internal reference: SURE-4203
Reported in 2.6.3 patch 1
Issue description:
After upgrade from Rancher 2.5.7 to 2.6.3-patch1, the Disabled/Locked Project Roles is able to being used.
Repro steps:

Installed a fresh rancher 2.5.7
Disabled/locked all Project template roles, less the Project Owner
Upgraded Rancher to 2.6.3-patch1
Was able to use the Project Namespace Creator to a local user

Additional info:
Someone else did the following with Rancher 2.5.7:

Disabled/Locked Project Roles, and there were not able to add a user to a project list/using the disabled/locked Project Roles
Upgrade Rancher to 2.6.3 and they were able to see/list the disabled/locked Project Roles but after saving it, it does not work, no error showed up in UI, and when they tried to edit the Project again, the previous user added is not showed up.

Belief therefore is it's necessary only to fix the listing of the Project Roles during adding a new user to a Project. Also in 2.6.3, the option to select ' Project Creator Default'  to 'Yes' doesn't work also.
@cbron indicated:
"If thats the case, then the UI just needs to filter when adding user and project role, to only the project roles that don't have locked=true.
On a side note, I went back and forth between old and new UI toggling both default-role and locked, and got very odd results. It's like some of the results were cached along the way, or some of the forms weren't accepting both options. Would be worth a look."
Actual behavior:
Previous disabled/locked Project roles in 2.5.7 are being able to use after Rancher upgraded to 2.6.3-patch1
Expected behavior:
Disabled/locked Project roles still locked for use after upgrades (2.5.7 -> 2.6.3-patch1)

@bisht-richa Let me know if you need me to explain this one.
Essentially, you can create a role and then edit it and say it is locked - in the new UI we still allow you to assign it to a user, where we should not.
You should check with @kwwii whether we should hide locked roles, or show them greyed-out with an indication that they are locked and can't be bound to a user.

Can you add an estimate to this ticket before starting

To see this issue:
In dashboard, go to users and auth, roles and cluster roles.
Pick a role e.g. Manage Cluster Backups and select Edit Config from the action menu for it. Set 'Locked` to yes:

Back on the list of roles, you will see it marked as locked:

Go to the explorer view for the local cluster and toCluster and Project Membersand click Add - you'll get this:

You'll see that Manage Cluster Backups is shown - since it is locked, it should not be selectable - I'd suggest disabling the checkbox and adding a lock icon after the name with a tooltip saying that the role is locked.
We need to make sure we do the same for Project roles- this possibly uses the same components, but needs to be verified.

✅ Test Passed on Rancher version v2.7-1eb478f3e77fde8a0328ed99cc3c39a1048442d2-head

Component
Version

Rancher
v2.7-1eb478f3e77fde8a0328ed99cc3c39a1048442d2-head

Dashboard
master "113e1d30a"

Here are the test scenarios that were executed to verify the fix:
Scenario1: Fresh install: v2.7 head and verify that the users cannot be added with locked roles to a project/cluster.

[✅] Log in as an admin and create a downstream cluster.
[✅ ] Verify all nodes, deployments and pods in both the local and downstream clusters are in a healthy state.
[✅] Create 2 standard users "testUser1" and "testUser2"
[✅] In the downstream cluster, assign the role "Create Namespaces" to "testUser1" as a project member and assign the role "Manage Nodes" to "testUser1" as a cluster member.
[✅] Lock the cluster role "Manage Nodes" and the project role "Create Namespace"
[✅] In the downstream cluster, verify that the cluster role "Manage Nodes" and the project role "Create Namespaces" are in a locked state
[✅] In the downstream cluster, attempt to add user "testUser2" as a cluster member with the role "Manage Nodes". Go to the Cluster and Project Members -> "Cluster Membership" -> Click "Add" -> Enter "testUser2" -> select "Custom" -> Verify that the "Manage Nodes" role is disabled/locked and not available for selection.
[✅] In the downstream cluster, attempt to add user "testUser2" as a project member with the role "Create Namespaces". Go to the Cluster and Project Members -> "Project Membership" -> Click "Add" for a project -> Enter "testUser2" -> select "Custom" -> Verify that the "Create Namespaces" role is disabled/locked and not available for selection.
[✅] Verify that user "testUser1" remains a cluster member assigned with the role "Manage Nodes" and a project member assigned with the role "Create Namespaces".
[✅] Unlock the cluster role "Manage Nodes" and the project role "Create Namespace" and verify that the roles can now be used.
[✅] In the downstream cluster, add "testUser2" as a project member with the role "Create Namespaces" and verify that the user is added as a project member. (Verify this in both "Projects/Namespaces" and "Cluster and Project Members" sections of the UI)
[✅] In the downstream cluster, add "testUser2" as a cluster member with the role "Manage Nodes" and verify that the user is added as a cluster member

Scenario2: Recreate the issue with v2.6.3-patch1, upgrade the cluster to v2.7head and verify that the users cannot be added with locked roles to a project/cluster

[✅] Install Rancher v2.6.3-patch1 (To recreate the issue).
[✅] Log in as an admin and create a downstream cluster.
[✅ ] Verify all nodes, deployments and pods in both the local and downstream clusters are in a healthy state.
[✅] Create 2 standard users "testUser1" and "testUser2"
[✅] In the downstream cluster, assign the role "Create Namespaces" to "testUser1" as a project member and assign the role "Manage Nodes" to "testUser1" as a cluster member.
[✅] Lock the cluster role "Manage Nodes" and the project role "Create Namespace"
[✅] In the downstream cluster, verify that the cluster role "Manage Nodes" and the project role "Create Namespaces" are in a locked state
[:x:] In the downstream cluster, add "testUser2" as a project member with the role "Create Namespaces". Issue: UI allowed adding user "testUser2" as a project member with the role "Create Namespaces". Although the UI did not show any error, the API call did throw a 422 Error. However, the user "testUser2" was not reflected in the list of project members .
[✅] Add "testUser2" as a cluster member with the role "Manage Nodes". This worked as expected. UI displayed the following error: { "baseType": "error", "code": "InvalidState", "message": "Role is locked and cannot be assigned", "status": 422, "type": "error" }
[✅] Upgrade the cluster to v2.7-head
[✅] Verify all nodes, deployments and pods in both the local and downstream clusters are in a healthy state.
[✅] In the downstream cluster, Verify that the cluster role "Manage Nodes" and the project role "Create Namespaces" are in a locked state
[✅] Verify that user "testUser1" remains a cluster member assigned with role "Manage Nodes" and aproject member assigned with role "Create Namespaces".
[✅] In the downstream cluster, attempt to add user "testUser2" as a cluster member with role "Manage Nodes". Go to the Cluster and Project Members -> "Cluster Membership" -> Click "Add" -> Enter "testUser2" -> select "Custom" -> Verify that the "Manage Nodes" role is disabled/locked and not available for selection.
[✅] In the downstream cluster, attempt to add user "testUser2" as a project member with the role "Create Namespaces". Go to the Cluster and Project Members -> "Project Membership" -> Click "Add" for a project -> Enter "testUser2" -> select "Custom" -> Verify that the "Create Namespaces" role is disabled/locked and not available for selection.
[✅] Unlock the cluster role "Manage Nodes" and the project role "Create Namespace" and verify that the roles can now be used.
[✅] In the downstream cluster, add "testUser2" as a project member with the role "Create Namespaces" and verify that the user is added as a project member. (Verify this in both "Projects/Namespaces" and "Cluster and Project Members" sections of the UI)
[✅] In the downstream cluster, add "testUser2" as a cluster member with the role "Manage Nodes" and verify that the user is added as a cluster member


bump adaptive-wrap

Handle non-symbol values of face property and don't require easymenu

@hlissner  could you bump this?  wouldn't like to keep this little patch in my .emacs.d :-)

Bump commits must follow a strict format so they remain machine-readable in future CI. Please reword the commit to
Bump adaptive-wrap

emacs-straight/adaptive-wrap@8f60ee7 -> emacs-straight/adaptive-wrap@91e939b

Handle non-symbol values of `face` property and don't require `easymenu`

@hlissner reworded, thanks!

Thanks!


Build menu from apps

Hello,
Here is a nice and important feature for me.
Some people like me prefer to have the code of their project as isolated as possible, frequently at app level, following the django's app structure (models, urls, forms, views...) it's normal if you wish to have the menus on your app too.
On the other hand, i'm working on a Django generator with Yeoman and it's important to me if the menus can be generated from the apps at code generation time, this feature help with this to me so much.
It works like this:
You can still have the menus just in your settings if you wish, but also if you create a file menus.pyon your django apps on the project containing a dictionary called MENUWARE_MENUS that contains list representing your desired menu in each key, this feature will generate the menu for you too appending the menu items as found in every menus.pyfile.
Summarizing, you can have the menus in the settings, in the settings and apps or just in the apps.
Let me know your opinion, doubts or suggestions about this.
I'm very looking forward to achieve an agree on this feature because it will help to me a lot in my generator
Thanks

Milton

Coverage decreased (-0.7%) to 98.944% when pulling d6679f7365dbda52cb562412437cdc4c0e3997c1 on RADYConsultores:build_menu_from_apps into 780dc5e106db1df4a206f65314eef71cd9b55739 on un33k:master.

Coverage decreased (-0.7%) to 98.944% when pulling d6679f7365dbda52cb562412437cdc4c0e3997c1 on RADYConsultores:build_menu_from_apps into 780dc5e106db1df4a206f65314eef71cd9b55739 on un33k:master.

Coverage decreased (-0.7%) to 98.944% when pulling 8b0466311b04e4bc8798eea2ebce495c4cc1e270 on RADYConsultores:build_menu_from_apps into 780dc5e106db1df4a206f65314eef71cd9b55739 on un33k:master.

Coverage decreased (-0.7%) to 98.944% when pulling 8b0466311b04e4bc8798eea2ebce495c4cc1e270 on RADYConsultores:build_menu_from_apps into 780dc5e106db1df4a206f65314eef71cd9b55739 on un33k:master.

Coverage decreased (-0.7%) to 98.944% when pulling 8b0466311b04e4bc8798eea2ebce495c4cc1e270 on RADYConsultores:build_menu_from_apps into 780dc5e106db1df4a206f65314eef71cd9b55739 on un33k:master.

Coverage increased (+0.04%) to 99.648% when pulling 14f182131d877d9507e822badaee150400583870 on RADYConsultores:build_menu_from_apps into 780dc5e106db1df4a206f65314eef71cd9b55739 on un33k:master.


Protocol for Initialization

Would it be out of the scope of the project to add a protocol to init an object with a JSON?
In my projects I use something like the following to have my classes of structs conform to it
public protocol JSONSerializable {
    init?(json: JSON)
}

A possible use of the protocol would be when dealing with complex responses from the server e.g
{
    code: 200,
    error: nil,
    result: {
        title: "SomeTitle"
        }
}

Instead of creating a TitleResponse struct with the following implementation
struct TitleResponse {
    let code: Int
    let title: String?

    init(code: Int, title: String?) {
        self.title = title
        self.code = code
    }

    init?(json: JSON) {
        //Implementation here
    }
}

we could create two completely separate structs

Response<T>
Title

that conform to the JSONSerializable protocol. The implementation would be something like the following the:
struct Response<T: JSONSerializable>: JSONSerializable {
    let code: Int
    let result: T?

    init(code: Int, result: T?) { // Implementation }

    init? (json: JSON) {
        let code = json["code"].intValue
        let result = T(json: json["result"].json
        self.init(code: code, result: result)
    }
}

struct Title: JSONSerializable {
    let title: String

    init(title: String) {
        self.title = title
    }

    init? (json: JSON) {
        guard let title = json["title"].string else {
            return nil
        }
        self.init(title: title)
    }
}

and when needed one could simply create a complex Response object simply by calling the initializer, e.g:
    let response = Response<Title>(json: json)

P.S: This isn't a big deal, but I think it would be convenient to all developers who use the library

Nice example,
Thanks for proposing this.
So from my understanding,
The problem here, is TitleResponse and maybe OtherResponse not reusing code from each other, right?
The solution is to have a generate Response<T>, and T in this particular case means something that can be converted from JSON.
IMHO, from the aspect of abstracting. You this abstraction is perfect. Having a JSONSerializable and constrained type T.
But if we were abstracting it all the way to the library level.

It might cause mental overhead for other people that doesn't know what its for.
In order to move it to the library, we have to make it very generic. like why is the init failable, if it's failable then should we do error reporting, or at least being able to. In the end, it might be to generic to be used in this particular use case.

Anyway, let me know what do you think. 😄

I agree that it might cause some mental overhead for other people. A small explanation would work I think.
Consider this case:

You expect from the server a JSON response that must absolutely contain a field called id that is an integer, and the response might have another field, title, that is optional.
Your object would be the following then
struct SomeObject: SwiftyJSONSerializable {
   let id: Int
   let title: String?

   init(id: Int, title: String) {
       self.id = id
       self.title = title
   }

   init? (json: JSON) {
       guard let id = json["id"].int else { return nil }
       self.init(id: id, title: json["title"].string)
   }
}

If for some reason the server does not send the id field your code will continue to work and you can probably deduce that there was a mandatory field that was missing from the response to begin with.
Someone could argue that having the init throw would be better suited and more generic but I think that it would complicate the code a lot. For my use cases it was sufficient for the init to be failable

hah hah,
That's exactly my point.
Which is for something to be in the library, it will have a lot more to consider.
Like failable init or throw, failable works in your case, but throw can do error reporting and tell you exactly what went wrong. Or even something like Argo.
Maybe I wasn't being clear enough. 😄
What I'm trying to say is, JSONSerializable is a perfect abstraction on response<T> level which close to the final concrete product: response<Title> or response<Other>.
But if we move it into the repo, then the level might be too high. For the two reason I listed.
Apologize if I sound really picky or unreasonable.
Let me know what you think. 😄

I see your point. I will take a look at it.
If I have anything new I will post a new PR


[webportal] Add infiniband to webportal job protocol validation

Coverage remained the same at 34.607% when pulling bdf39b091b65e085d2f521d53d7c0639b92abed5 on yiyi/webportal_fix_job_validation_2 into a8687b3ad9567c45ccc20d70c9d9a3ec04d0195e on pai-1.1.y.


Generate Vanilla Terrain on Map

Currently, the mod loads a flat terrain at differing Y values based on terrain type. This design was done for testing the functionality of the image loader, and needs to be replaced with proper terrain generation, using the same noise parameters that the vanilla terrain generator uses, but controlling for the correct terrain type.

Progress continues on this issue.
My solution involved using the 'terrain' files to store density functions to compute based on what terrain is at the current map position. I ran into a problem when using noise-based density functions inside the terrain file, but fixed it with changes to my 'ImageSampler' density function.
The vanilla density functions did not have the exact functionality I wanted for manipulating values, so i created my own density function called 'RangeMap' that linearly interpolates an input value within a certain range.
All I need to do in order to complete this issue is add additional terrain files, as well as fine-tune the existing ones.


Freestyle Illustration guidelines

Adds baseline illustration guidance to the visuals category of FreeStyle.

Pass. looks good to me 👍


use a single endpoint factory

https://github.com/arturo-ai/arturo-stac-api/blob/fb47dedfbc45df4488f7fa169b76ca1b30a420f1/stac_api/api/routes.py
Endpoint factories wrap a callable in a function that can be executed as a FastAPI route.  Doing so lets us "decorate" the callable with specific request/response models.  Currently we have two factories, one for routes which define the request using a dataclass and one as a pydantic model.

Dataclasses are used because of their support for dependency injection.
Pydantic models are used for static types (no dependency injection).

It would be much better to have a single factory instead which means either (1) use a single request type for all routes or (2) one factory that can understand both dataclass + pydantic models.

Closed with https://github.com/stac-utils/stac-fastapi/pull/126


Unable to UDP in

Followed the article instructions, got the reg keys in, the Adv FW setup.
Connecting internally and externally still defaults to TCP.
Am I doing something wrong?
Thanks  M

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

ID: 31718c09-8c87-c102-d326-c78e5ff018fd
Version Independent ID: 1b15c261-9ea8-e23b-d6a1-b3131dd403b9
Content: Windows Virtual Desktop RDP Shortpath (preview) - Azure
Content Source: articles/virtual-desktop/shortpath.md
Service: virtual-desktop
GitHub Login: @gundarev
Microsoft Alias: denisgun

@ii-batman -
Thanks for brining this to our attention. We will investigate it further and update you shortly.

@ii-batman To better assist you with the issue, can you share few more details.
What network connectivity options are you using?
Did you try restarting the session hosts?
In your setup, do you have NSG's on Subnet or session hosts?

Hi @VikasPullagura-MSFT
Thank you for your quick reply.
What network connectivity options are you using? S2S
Did you try restarting the session hosts? Yes
In your setup, do you have NSG's on Subnet or session hosts? Subnet and added a public IP address to the host
I have configured every node as per the document but I cannot RDP UPD internally (inside our network) or from home
Thanks

@ii-batman Thanks for sharing the details.
Can you please check if same UDP port has been opened on the NSG's. Public IP's are not required if you are using S2S so would remove that?
Can you also try removing and subscribing back the WVD workspace if using WVD client.

@VikasPullagura-MSFT
I am really not seeing this.
From my internal machines I have direct line of site to the SH via S2S and I still cant UDP in...
Externally I cant see the SH except via WVD so thats why I assigned a public IP.
Not sure where to go next...

@ii-batman I would recommend to open a support case as this need deeper investigation and troubleshooting.
Incase you don't have a support plan, let me know so that I can help you by enabling a onetime free support on your subscription.


Support webpack notification on Windows

We are using webpack-error-notification but it doesn't support Windows. I suggest we can use webpack-notifier instead for Windows support. (I'm using Windows on daily basic now)

Sure thing. I am using this one too this days.

Alright. I'll send a PR for this


Docs: Trireme depends on raw iptables module

Believe it or not, some distros do not ship with it.  Sigh.  Better error handling in this case would be nice, but at least docs...

@thockin  We are working to add test coverage both for Trireme (Where that issue actually is) and Trireme-Kubernetes.
We indeed need to catch when raw is not available. I don't think we can make it work without raw.
I'm updating the doc to list a couple requirements.
What distro are you using btw ?

Google's newer image.  The issue will be fixed, but it was not obvious why
it was broken :)
On Thu, Nov 3, 2016 at 12:47 PM, Bernard Van De Walle <
<EMAIL_ADDRESS>wrote:

@thockin https://github.com/thockin We are working to add test coverage
both for Trireme (Where that issue actually is) and Trireme-Kubernetes.
We indeed need to catch when raw is not available. I don't think we can
make it work without raw.
I'm updating the doc to list a couple requirements.
What distro are you using btw ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/aporeto-inc/trireme-kubernetes/issues/25#issuecomment-258253684,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AFVgVMw9GWMOzC-OOJVZ8-nzlH7QrkGCks5q6jprgaJpZM4Koqkd
.

@thockin :
We managed to make Trireme work without the need of the raw table at all.
It is still being tested at this point, but if you use the GKE branch on this repo, it should work out of the box on GKE (we tested this on our end). I imagine that your distro must be somewhat similar:
https://github.com/aporeto-inc/trireme-kubernetes/tree/GKE/deployment
Let us know!

Hi,
I'm trying to activate Trireme on GKE without success. When I apply the policy I've the following error:

time="2017-02-27T16:20:58Z" level=info msg="PID of container" package=enforcerproxy pid=20802
time="2017-02-27T16:20:58Z" level=info msg="Called enforce and launched process" Lauch Process= contexID=4774aa96d4ce package=enforcerproxy
time="2017-02-27T16:20:58Z" level=debug msg="Enforce IP" contextID=4774aa96d4ce package=enforcer
time="2017-02-27T16:20:58Z" level=info msg="ENFORCE STATUS" error= method=Enforce package="remote_enforcer"
time="2017-02-27T16:20:58Z" level=info msg="Called Supervise Start in remote_enforcer" method=Supervise package="remote_enforcer"
time="2017-02-27T16:20:58Z" level=error msg="Received a container event in Remote Enforcer " Msg="Unexpected call to CollectContainer Event" package=remoteEnforcer

What can I verify?
I'm using the "GKE" branch info (like aporeto/trireme-gke image usage).
Instead if I use the trireme-kubernetes image the packet from internet is dropped by the following chain:
Chain TRIREME-Net-d1f2a9d2b745-1 (1 references)
 pkts bytes target     prot opt in     out     source               destination
    0     0 NFQUEUE    tcp  --  *      *       <IP_ADDRESS>/8           <IP_ADDRESS>/0            connbytes 0:3 connbytes mode packets connbytes direction original NFQUEUE balance 4:7
    5   240 DROP       tcp  --  *      *       <IP_ADDRESS>/0            <IP_ADDRESS>/0            state NEW

Is it possible with Trireme to apply an Internet ingress allow?

@thockin : Can you try again on your image? We moved Trireme to a "remote-enforcer" model. This means that we directly provision IPTables on the network namespace of the Pods. We don't need the RAW table anymore

@davidebelloni : The new image we released should make this work as we discussed :)


purge meta objects whthin the graveyard if the library is unassociated

It seems that https://github.com/ros/class_loader/pull/196 is not updated as suggested by the maintainer for a few months. I would like to add @shshlei a co-author to create this PR to fix https://github.com/ros2/rcl/issues/1009.
If this is not the correct way, please feel free to close it.
Co-authored-by: shshlei<EMAIL_ADDRESS>Signed-off-by: Chen Lihui<EMAIL_ADDRESS>

@gbiggs @mjcarroll either of you, could you take a look at this? this is to address memory leak.

Close in favor of https://github.com/ros/class_loader/pull/201


Add empty preslot

From @ArwynFr
Add a preslot with no weapon and only fatigues in the grey lockers

Same as #1 : assignated to @AkenoSyh for training purposes. Can be tried on the script version while this repo is in hard dev state

@AkenoSyh the repo is now stable enough for you to proceed with fixing this issue 😃

Note : the preslot will go to the red lockers now :)


Add encoding methods

From Plato documentation:

Additive - the classic genetic encoding

Homozygous reference is “0”,
Heterozygous is “1”,
Homozygous alternate is “2”.

Dominant

Homozygous reference is “0”
Both heterozygous and homozygous alternate are “1”

Recessive

Homozygous reference and heterozygous are “0”
Homozygous alternate is “1”

Codominant

Each marker uses two variables as a dummy encoding of a categorical variable. The “Het” variable is 1 only when the marker is heterozygous, and the “Hom” variable is 1 only when the marker is homozygous alternate.
Note that this encoding incurs an additional degree of freedom for each marker used, and interactions also incur extra degrees of freedom.

Elastic Data-driven Genetic Encoding (EDGE)

This weighted encoding  is  a  hybrid  between  the  traditional  encodings  and  the  codominant encoding.
For  each  marker,  the  result  from  a  univariate  model  (with  appropriate  covariates)  is used to determine a heterozygous value from marker state to the set {0, x, 1}, where x is chosen such  that  the  model  with  the  encoded  allele  is  identical  to  the  codominant  model.  Then,  this encoded allele is used in the multivariate models. Note that in the univariate and non-interaction case, this encoding is identical to the codominant encoding, but in the case of interactions, incurs fewer degrees of freedom.

Notes

In pandas, codominant encoding can be done using a categorical with 'Het' and 'Hom' categories
All encodings will need to have reference/alternate alleles specified.  Either the Variant type should be updated to include this, or they can be specified at encoding time.
EDGE encoding will be a bit more complicated than the others, requiring additional information.

Added all except EDGE encoding which is moved to it's own issue.  Closed as-of 77a014cf176db2926ad4607155dfbb3e3f724c74


awesome archive

add awesome archive

Repo needs a better description of its intent. I have no idea what it is. Its name is archive, but I see mostly links to newsletters.

@a11y ping


Keyboard key problem

"You can switch POV camera in following keys now.
VR Trigger Button
VR Button2 (A/X in Oculus Quest 2. It depends on VR devices)
any keyboard keys
mouse
You can choose the POV targets now (Male/Female/All)."
I still can't switch to pov no matter how I change the keyboard settings.

Hi,
Did you follow the instructions in release page v1.0 ?
https://github.com/tony246642/KK_MainGameVR/releases


Crash somewhere

Description of the problem:
I found that on Crashlytics, but there is no more debug info there:
Fatal Exception: java.lang.NullPointerException
       at com.journeyapps.barcodescanner.SourceData.(SourceData.java)
       at com.journeyapps.barcodescanner.camera.CameraManager$CameraPreviewCallback.onPreviewFrame(CameraManager.java:101)
       at android.hardware.Camera$EventHandler.handleMessage(Camera.java:986)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:146)
       at android.os.HandlerThread.run(HandlerThread.java:61)

Which library version are you using? 3.4.0.
Which phone/tablet are you using, and which Android version does it run? (e.g. Samsung Galaxy S5,
Android 5.0) Samsung GT-I9305 Android 4.4.4
Don't have more info about issue, but maybe it will help you somehow:)

Thanks, will investigate.

Fixed in 9ec92a510102a2024acc13a596a76f59ccf6616e.


feat: allow us to add serverid and change it on network identity

This pr let's us add a server id to network identity. Had to make some changes to network world to accomadate new id so that it merges both netid and serverid into one unique id.
This allows end user's more so for standalone mirage but can also be done in unity to make a master server and have 2-3 of same maps running and pass info to each other based on same serverid.
I have a working code in branch uwee / lymdun working on for an mmo backbones. It requires some modifications still to mirage for it to allow this new feature to work. I may make another pr to add the modification but I think there might be a better way then way I did in that code project.

Adding a byte to every message seems like a lot for a feature most people wont use.
Might be better to allow multiple worlds instead

Adding a byte to every message seems like a lot for a feature most people wont use.
Might be better to allow multiple worlds instead

Multiple worlds won't solve anything. Its a single byte. We add a lot of features 90% of mirage user's don't even use. So I don't think that should matter.

Multiple worlds won't solve anything.

You didn't explain how this PR solve anything either.
Can you explain the problem you are trying to solve. Looking at the PR code alone I can think of better ways to do the same thing.

Reading the code again. Adding another id for objects seem unnecessary:
The point of netid is to identify an object, adding a second id would now mean you just have 2 ids to identify 1 object. Which just at the surface level sounds super weird.
Another way of looking at this is changing the Id from a 32 bit int, to a 40 bit int. and changing the packed size from 8 bits, to 16 bits. Looking at it from this angle makes it seem un-needed to increase the size because 32 bits is already 4 billion objects.
An alternative could be to add a way to set netid and have the first few bits of it represent server id when needed (maybe with extension methods to get server-id part easier).

Reading the code again. Adding another id for objects seem unnecessary:
The point of netid is to identify an object, adding a second id would now mean you just have 2 ids to identify 1 object. Which just at the surface level sounds super weird.
Another way of looking at this is changing the Id from a 32 bit int, to a 40 bit int. and changing the packed size from 8 bits, to 16 bits. Looking at it from this angle makes it seem un-needed to increase the size because 32 bits is already 4 billion objects.
An alternative could be to add a way to set netid and have the first few bits of it represent server id when needed (maybe with extension methods to get server-id part easier).

I did say what it solves. It allows sharding. As I mentioned in the pr. Currently netid has collision when you try to spin up the same map and want those maps to sync together through a master server. Spawning 1 player on shard 1 will have the same id of spawning player 2 on shard 2. The netid's cant be synced between server's
If you

Multiple worlds won't solve anything.

You didn't explain how this PR solve anything either.
Can you explain the problem you are trying to solve. Looking at the PR code alone I can think of better ways to do the same thing.

Multiple worlds won't solve anything.

You didn't explain how this PR solve anything either.
Can you explain the problem you are trying to solve. Looking at the PR code alone I can think of better ways to do the same thing.

I did explain what I was solving. Current mirage cannot pass info between 2 of the same server's. Each server spins up netid on there own. Adding this id allows to know which server the netid is from.

Reading the code again. Adding another id for objects seem unnecessary:
The point of netid is to identify an object, adding a second id would now mean you just have 2 ids to identify 1 object. Which just at the surface level sounds super weird.
Another way of looking at this is changing the Id from a 32 bit int, to a 40 bit int. and changing the packed size from 8 bits, to 16 bits. Looking at it from this angle makes it seem un-needed to increase the size because 32 bits is already 4 billion objects.
An alternative could be to add a way to set netid and have the first few bits of it represent server id when needed (maybe with extension methods to get server-id part easier).

On your last comment line, I think that would be great to do. I just did not want to make changes to netid, that would be a huge breaking change for end user's. I tried to simplify and make the change at least breaking to end user's. While this adds an extra 8 bit to default user's it does not effect end user's when it gets merged. If we go route of packing netid and serverid into a 32bit I figured that was a huge breaking change and would of been alot worse to try get approved then this.

I think we can allow netid to be set or generated it a different way, and just default to the current way. Kinda like how you are generating the server id here. I think this would be non-breaking.

Maybe an interface like INetIdGenerator and then if that field is null we assign a default generator that just increments an id

Maybe an interface like INetIdGenerator and then if that field is null we assign a default generator that just increments an id
and then you could create a alternative generator to handle serverid stuff too

Will look into this, this weekend and make another branch try test and get working then.


Add new and missing icons

Added new icons to fix the following issues:
Fixes #274
Fixes #273
Fixes #169
Fixes #258
Fixes #256
Fixes #276
Fixes #250
Fixes #279
Fixes #277
Fixes #278
Fixes #280
Fixes #272
Fixes #162
Fixes #281
As well as added missing 32@2x icons for bcbc, mnz, dnr, eql which fixes #216

Is it possible you review this pull request ASAP?

Looks good 👌


[Question]: Document analysis with pictures and texts

Describe your problem
How to parse a file with both pictures and text, for example, a file contains a text and a picture, and the picture is a pure picture

Is it a PDF file?
The pure picture will attach to image caption if it has.

Yes. I just uploaded a pdf file with pictures and text, but it doesn’t seem right when parsed.


Add social media handles to the readme files .

Please assign this issue to me

Hey @ShreeparnaDhara , I want to work on this issue. please assign it to me


Imbedded wallet disconnects and gets stuck after page refresh

Description
When you are using the imbedded wallet and connect to console it works the first time, as soon as you do a refresh the connection is lost and the "GET STARTED" button just takes you to a loading screen that is waiting for you do do something with your wallet, which you cannot.
Steps to Reproduce

Go to console and connect with imbedded wallet
Connect using get started button
Refresh page and see it being disconnected
Try the Get started button again, will just take you to a loading screen which you can only get rid of by deleting cache and cookies and reimporting wallet

Screenshots
https://github.com/user-attachments/assets/a61e2ca8-9ad9-4da4-bfb2-81337318f53e

This is all being wripped up for the target UX so no longer relevant


UX Polish

Mark agendas that already have submitted testimonies.
On the video upload modal, should Back To Agenda Items button appear while uploading or after?
Due to processes, the duplicate testimony error modal will appear right after the uploading modal. Should this be the case?
Reminder that clicking on a tab again should clear the entire nav stack.

Do screens need back buttons? If so should the header for the back button be fixed on the screen?


Ruby 2.2 warnings

I get some warnings running rspec 3.2.1 on ruby 2.2.2 not sure if this is being handled already but these are the warnings

rspec-mocks-3.2.1/lib/rspec/mocks/argument_list_matcher.rb:84: warning: Comparable#== will no more rescue exceptions of #<=> in the next release.
rspec-mocks-3.2.1/lib/rspec/mocks/argument_list_matcher.rb:84: warning: Return nil in #<=> if the comparison is inappropriate or avoid such comparison

Lines: 67, 84 & 87
Also get a warning on fuzzy matcher with the same information:

rspec-support-3.2.2/lib/rspec/support/fuzzy_matcher.rb:15

This seems to be the solution: https://github.com/rdoc/rdoc/commit/23c276de
More info here: https://github.com/rdoc/rdoc/issues/331

Thanks for reporting this!  I've not seen those warnings before.  Can you provide some example code that reproduces these warnings?
Actually, looking at those lines of code you referenced, they are lines where we call == on user objects, so I believe the warning is likely triggered by an object you've defined, not anything internal to RSpec.  We made changes to avoid calling == on user objects in some situations (since it may be defined in such a way that it raises an error) in #924 and rspec/rspec-support#193.  I believe that if you update to rspec HEAD you may see the warnings go away (although if the warnings are due to your objects you should probably consider fixing the definition of <=> to satisfy the warnings).

Closing for lack of a response (and because I believe we've probably already solved this as mentioned above).  Will gladly reopen if @mhenrixon provides an example that demonstrates it's still an issue.

Sorry @myronmarston I've just completely missed the previous commend you made. I'll do some tracking this weekend but something tells me this was already fixed for me somehow.

@myronmarston do you have any gist of what is needed in terms of dependencies to use head for all of rspec? Was going to try some stuff out but keep running into broken dependencies in the current project.

No more warnings after running all the tests with HEAD so this one is totally ok to close! :)

Glad you figured that out.  For future reference, we've put instructions for this in our READMEs:
https://github.com/rspec/rspec-rails#installation

https://github.com/rspec/rspec-rails#installation

Perfect! Thanks a bunch

I continue to see these warnings with Ruby 2.2.3 and RSpec Expectations 3.2.1. Do we believe that the fixes mentioned above have been released?
rspec-expectations-3.2.1/lib/rspec/matchers/built_in/include.rb:95: warning: Return nil in #<=> if the comparison is inappropriate or avoid such comparison.
rspec-expectations-3.2.1/lib/rspec/matchers/built_in/include.rb:95: warning: Comparable#== will no more rescue exceptions of #<=> in the next release.

The fixes are in RSpec 3.3 so please consider upgrading.

RSpec 3.3 so please consider upgrading.

Ugh, of course. I did actually try upgrading, but I had other gems preventing upgrading to 3.3. Thanks for being patient with user error!

Hmm. Still there. I guess I need to do more diving to get to the bottom of it:
rspec-expectations-3.3.1/lib/rspec/matchers/built_in/include.rb:111: warning: Comparable#== will no more rescue exceptions of #<=> in the next release.
rspec-expectations-3.3.1/lib/rspec/matchers/built_in/include.rb:111: warning: Return nil in #<=> if the comparison is inappropriate or avoid such comparison

Ok, so the problem is due to something similar fixed in #924. I had code that boiled down to:
require 'rspec'

class Foo
  include Comparable

  def initialize(a_unique_name)
    @a_unique_name = a_unique_name
  end

  def <=>(other)
    # Note implicit assumption that `other` has the `a_unique_name` method
    @a_unique_name == other.a_unique_name
    # But `AnyArgMatcher` doesn't have that method!
  end
end

RSpec.describe Foo do
  it do
    items = [Foo.new('hi'), Foo.new('bye')]
    expect(items).to include(anything, anything, anything)
  end
end

In my case, the fix is to be more defensive in the <=> method.

Hmm so the warning was generated by your code but appeared to be coming from ours? I'm not sure what we can do to help with that


Docs: update backport commands for jenkins builds

test-backport-1.6

test-backport-1.7

test-backport-1.8

seems like new commands are working as intended

Coverage decreased (-0.003%) to 36.921% when pulling 128dcf2fe5c7cbea0e594c36082896c1d3b617ae on pr/doc-test-backport into 6421eccb846146c907cf89bdf400ef168527d7e3 on master.

@tklauser thanks, fixed that too!


⚠ Processors has degraded performance

In e1a0021, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 85 ms

Resolved: Processors performance has improved in e7da007.


Add ImGui::GetStyle() to sol_imgui.h

I dont think this would work the way you expect it. + does not look too optimal to be honest if it were to be called a lot.

I'm personally against merge till this is rewritten to behave like it should originally. That is, object returned by GetStyle is editable and changes propagate.
You cannot achieve this much more optimally without introducing usertypes.

I'm personally against merge till this is rewritten to behave like it should originally. That is, object returned by GetStyle is editable and changes propagate.
You cannot achieve this much more optimally without introducing usertypes I believe.

Changed to usertype


Fix for weights when development grain not equal to origin grain

Small change to _assign_n_periods_weight_int in development>base.
If development is quarterly, but origin in accident years, for example:
If n_periods= x then the last valuation should be n_periods*4 -1 prior to the last valuation.
So if last valuation is 2006Q1, the minimum valuation to get weights in a 3 yr average should be 2003Q1. In a 5 year average 2001Q1.

This is great.  Thanks for fixing!


bug: incoherent behaviour when filetype is empty

Did you check docs and existing issues?

[X] I have read all the edgy.nvim docs
[X] I have searched the existing issues of edgy.nvim
[X] I have searched the existing issues of plugins related to this issue

Neovim version (nvim -v)
v0.11.0-dev-164+g3a1515bfe
Operating system/version
Linux loric 6.9.3-zen1-1-zen #1 ZEN SMP PREEMPT_DYNAMIC Fri, 31 May 2024 15:14:26 +0000 x86_64 GNU/Linux
Describe the bug
When edgy is configured with a filter but an empty filetype, the window title gets set but the window itself is not controlled by edgy.
I noticed this running Overseer.nvim.

As you can see in the screenshot, the 'Overseer runner' window does not follow edgy config (contrary to the other 2), and is not toggled with edgy.
Steps To Reproduce

Install overseer.nvim
Add { ft = "", filter = function(buf, win) return vim.b.overseer_task ~= nil end, title = "Overseer Runner" } to the edgy bottom section
Run :OverseerToggle

Expected Behavior
The window title should be set and the window should be managed by edgy.
Repro
-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")

-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
  vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end

-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
end
vim.opt.runtimepath:prepend(lazypath)

-- install plugins
local plugins = {
  "folke/tokyonight.nvim",
  "folke/edgy.nvim",
  'stevearc/overseer.nvim',
  -- add any other plugins here
}
require("lazy").setup(plugins, {
  root = root .. "/plugins",
})

vim.cmd.colorscheme("tokyonight")
-- add anything else here
require('overseer').setup()
require('edgy').setup({    bottom = {
      {
        ft = "toggleterm",
        open = "ToggleTerm",
        size = {
          height = 0.3,
        },
        filter = function(_, win)
          return vim.api.nvim_win_get_config(win).relative == ""
        end,
        pinned = true,
      },
      "Trouble",
      { ft = "qf", title = "QuickFix" },
      { ft = "OverseerList", title = "Overseer List" },
      { title = "Overseer Runner", ft = "", filter = function (buf, win)
        return vim.b.overseer_task ~= nil
      end,
        size = {
          height = 0.3,
        },
      }
    },
})

yes, edgy needs a filetype to work


[Feature Request] Make standalone-rice the default for N64 ?

Before submitting your issue or feature request.  DO NOT REQUEST ASSISTANTS FOR PRELOADED IMAGES.  I do not support or condone the use of preloaded ArkOS images.  Preloaded meaning images that come with copyrighted roms preincluded.  Look for support from the creator or supplier of those preloaded images, not from here!  If a ticket is submitted for assistance for such images or if there's an indiciation that a preloaded image is what the support request is for, the issue ticket will be closed with no further response.

This is not Anbernic Stock Emuelec or 351Elec.  ArkOS is a different distribution from those systems and will have differing features.  The only somewhat similarity is that they both use EmulationStation as a frontend.  Even with that, the versions of EmulationStation that's used in between ArkOS and Anbernic Emuelec/351Elec is different with different capabilities.  If there are features you prefer with Anbernic Emuelec/351Elec, just use those distributions instead.  The choice is yours. ✅

Have you reviewed the Frequently Asked Questions available at https://github.com/christianhaitian/arkos/wiki/Frequently-Asked-Questions---RG351P ? ✅

If your issue is related to being able to run certain emulators or ports, have you reviewed the Emulators and Ports section available at https://github.com/christianhaitian/arkos/wiki/ArkOS-Emulators-and-Ports-information for needed bios files and supported rom extensions? ✅

Have you reviewed the known issues section available at https://github.com/christianhaitian/arkos/wiki/Known-issues ? ✅

Describe the Issue (If applicable)
Just a little return on experience, but I feel like the standalone-rice emulator runs most games much better than the default standalone-glide64mk2 emulator.
Especially for 3D games which make up most of N64 games, it doesn't have glitched shadows (maybe some more bugs on textures and effects tho) and seems to have steadier framerates than with Glide 64.
I'm just genuinely wondering why standalone-rice isn't the default cause on the 20 games + or so I tried it seems like the better choice.
What device are you using?
RG353P running the RG353M build 🤡
What version of ArkOS are you on?
04012023

Try Paper Mario which is the only N64 game I play and imo the best N64 game.  It looks better on standalone-glide64mk2 vs standalone-rice and plays well enough.


Working on some transition examples

Hi @chrisvfritz,
As I wanted to help ... I am going through the examples on
https://github.com/vuejs/vuejs.org/blob/2.0/src/guide/transitions.md
When I am done with updating the examples on JSbin will try to update the doc with pull requests.
https://jsbin.com/pecupo/edit?html,js,output
//Best

@rajibahmed Thanks for sharing these! I'm actually almost done updating the transitions guide already and will be pushing it up later today. 😅  Would you mind looking it over when it's done?

@rajibahmed The new transitions guide is up! Would love to hear your thoughts at the main repo. 😄  I'm going to close this for now just to consolidate the 2.0 docs discussion.


Added Mukund Banka to Contributors list

@mukund54, I'm quite elated about your PR. I wanna evolve this project to addresses various problems faced by first-time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a PR and learned that I merged it?


Update simple-oauth2 to 4.1.0

Versions of simple-oauth2 above 3.4.0 do not have the require('simple-oauth2').create() function.

I typically refresh these every 3-4 months to use the latest versions of dependencies.

Resolved by #52. This tutorial no longer uses simple-oauth2. It has been replaced by msal-node.


Enable write in option for directives

Business Context:
I want to enable directives on chapter's allegations to be added manually, similar to what we enabled on #272
As an NOIPM employee
I want to be able to add new NOPD directives when adding an officer allegation
So that I don't have to do a workaround when there's no existing directive I want to add that isn't in the list
In Scope

Update officers-allegations handler to accept directives that weren't already created (by allowing to write in a directive and linking it to a chapter) - database schema updates - this will require a new directive table to be created.
Creating a directive dropdown on the allegations page with the existing directives.
On the same dropdown, allow users to add new directives by writing in - same behavior as adding a new chapter.
Display the selected directive in the expansion panel of the added allegation

Out of Scope - to be done on #294

Update the search to remove the directive keyword search and allow searching only by selecting a rule or paragraph, using the existing dropdown list.

Update the db to remove the directives column on the allegations table and remove it from the table on the frontend

Open Questions
Acceptance Criteria

Scenario:
Given I am adding and allegation to a case
When I select a rule
Then I can select a directive for the allegation from the drop down OR add a new directive by writing them in

Checklist (should be reviewed before grooming as the BA or Pair are writing the card—NOT reviewed for the first time at grooming)

[ ] Ensure to include all necessary mockups to this card.
[ ] Discuss what success/failure user feedback messages would be present, if any occur (front end/back end).
[ ] Discuss Feature Flag: Where could a development flag go to flag off incomplete work? Do we want to keep the flag long-term?
[ ] If this card is part of a sequence of cards, discuss if this card should be blocked until the testing of previous cards in the sequence have been finished.
[ ] Have we added edge cases as ACs that we're considered from a QA perspective
[ ] Should the new functionalities be offered only to users with certain permissions?
[ ] How should this functionality differ between different orgs, and if it does differ, what is the hinge point we should use for that functionality?

Notes:

You'll want to check the letter template as well, since it may change the template value for directive in the letter

I added a directives.csv to localstack-seed-files in instance-files-noipm, so it should auto-load into localstack when you do an down and up with noipm instance files, but I didn't upload it to s3 (we'll need to put it in noipm-seed-files in both our account and NO's account eventually) so that if there are any changes necessary they can be made in instance-files before uploading


Error in MarginTop in LockOut

getting margin in LockoutChampionShip due to a global css variable

issue resolved

Issue Resolved


Problem when linkedIn URL has accents

Is there another way I can write the URL?
I tried URLEncoding, etc.
linkedin-scraper http://cl.linkedin.com/pub/alejandra-peña-lazcano/61/9ab/68/en
/usr/local/bin/linkedin-scraper:13:in `': invalid byte sequence in UTF-8 (ArgumentError)

works fine on linux and mac test on latest ruby and latest gem


Add container app module

1301
PR Checklist

[x] I have added example(s) inside the [./examples/] folder
[x] I have added the example(s) to the integration test list for normal (~30 minutes) or long runner >30 minutes
[x] I have checked the coding conventions as per the wiki
[x] I have checked to ensure there aren't other open Pull Requests for the same update/change?

Description

Does this introduce a breaking change

[ ] YES
[x] NO

Testing

@arnaudlh need to add container_app to https://github.com/Azure/caf-terraform-landingzones/tree/main/caf_solution. What's the process of adding a new feature to these 2 repos? Should the change first go to caf-terraform-landingzones?

@arnaudlh need to add container_app to https://github.com/Azure/caf-terraform-landingzones/tree/main/caf_solution. What's the process of adding a new feature to these 2 repos? Should the change first go to caf-terraform-landingzones?

update the module with examples working, so people can leverage it as standalone
update the azure repo with the new var names and module version constraint.

@arnaudlh fixed the variables file in the example module, it should run fine now. Sorry for the confusion, I was just testing it differently.

I am currently working with this PR code. I hope it gets merged soon. Maybe not the right place but please follow https://github.com/hashicorp/terraform-provider-azurerm/issues/21747 as workload profiles support is something in the future that should be supported by CAF as well.

@arnaudlh I resolved all the comment and rebased the branch. Can you please review?

@arnaudlh @LaurentLesle can you please review this PR?

@trapeznikov I reviewed the PR and would really appreciate if you could add those 2 features and resolve the minor bug as one of my customers also waiting for this resource. Let me know if you need helps. Thanks!

thanks for your contribution @trapeznikov   and for your reviews @iriahk89 @jvdhaterd


Import components from UMD JS file

Material-UI version: 0.18.1
React version:  15.5.4
Browser version: Google Chrome 58.0.3029.110 (64-bit)
I tried to use Material-UI with the sample code written on the usage page:
import MuiThemeProvider from 'material-ui/styles/MuiThemeProvider';
import RaisedButton from 'material-ui/RaisedButton';
import React from 'react';

export default class Home extends React.Component {
  render() {
    return (
      <MuiThemeProvider>
        <RaisedButton label="Default" />
      </MuiThemeProvider>
    );
  }
}

It works during server-side rendering, but not on the client. I use UMD versions of the external dependencies during development to make compile time shorter (so Rollup doesn't have to resolve them). I can't figure out how to import these components so that they can be linked to the bundle.
If I don't specify a global name for it, Rollup tries to guess the name (e.g. MuiThemeProvider), which obviously doesn't work and gives an error on the client:
Uncaught TypeError: Cannot use 'in' operator to search for 'default' in undefined
    at bundle.js:8
    at React__default (bundle.js:4)
    at bundle.js:5

It returns the same error if I specify the global name 'material-ui/styles/MuiThemeProvider': 'material-ui/styles/MuiThemeProvider'. The only thing that kind of works is if I import each component by name:
import { MuiThemeProvider, RaisedButton } from 'material-ui';
import React from 'react';

export default class Home extends React.Component {
  render() {
    return (
      <MuiThemeProvider>
        <RaisedButton label="Default" />
      </MuiThemeProvider>
    );
  }
}

But it still gives the error:
Warning: React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: undefined. You likely forgot to export your component from the file it's defined in. Check the render method of `Home`.
    in Home (created by Route)
    in Route (created by Routes)
    in Routes
    in Router (created by BrowserRouter)
    in BrowserRouter

How could I make this work?

Okay, I realized, that the problem was ,that the UMD file was compiled from v1.0.0-alpha.15 version of Material UI, so I changed the RaisedButton to Button. But now there's some problem with TouchRipple:
Warning: React.createElement: type is invalid -- expected a string (for built-in components) or a class/function (for composite components) but got: undefined. You likely forgot to export your component from the file it's defined in. Check the render method of `TouchRipple`.
    in TouchRipple (created by ButtonBase)
    in button (created by ButtonBase)
    in ButtonBase (created by Button)
    in Button (created by withStyles(Button))
    in withStyles(Button) (created by Home)
    in MuiThemeProvider (created by Home)
    in Home (created by Route)
    in Route (created by Routes)
    in Routes
    in Router (created by BrowserRouter)
    in BrowserRouter

Do I have to do something for this to work?

Nevermind, it was easier to resolve the node components in the bundle.


Tabix localization fails silently in some regions

There is currently an issue where retrieval of PE/SR/RD records from GCS using tabix can fail silently in some regions, resulting in loss of evidence for some variants. This affects modules 00c (CNMOPs), 02, 04, and 05/06.
We have been corresponding with the developer but not all issues could be resolved. We are working on an alternative solution.

Fixed in #26

Fixed in #26


Check or remove republish_withdrawn_document script

We should decide whether or not it's worth keeping this script. If we do decide to keep it, we'll need to check that it works and ensure that it remains working by adding the appropriate test coverage.
From this comment by @h-lame:

republish_withdrawn_document - also works around functionality missing in the UI, although it's functionality that would be more complex to resurrect - the UI doesn't currently present the user with a list of sections that have been removed from the document, so it's not a case of putting a "republish" button on the UI.  We may also have to do more work to move the document out of Manual#removed_documents and back into Manual#documents.  Suspect this could be got rid of and we re-write as/when requested via a support ticket.

This script was removed in #845 which in turn was approved by @h-lame. And given his comment above ("Suspect this could be got rid of and we re-write as/when requested via a support ticket"), I'm happy that it stays deleted for now. Closing.


Remove deprecated request wrappers

High Level Overview of Change
Remove requests that were deprecated for the 2.0 release.
Context of Change
Many request wrappers were just as complicated to use, and their return types were too simplistic in many situations. Instead, we recommend directly calling the request with a Request object and client.request.
Type of Change

[X] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Test Plan
CI Passes

@JST5000 please merge latest main branch

@JST5000 can you merge main?

Superseded by #581


Add a print-cfg subcommand.

The command returns parses a .cton file, builds a CFG, and prints it to
stdout in graphviz format.

Nice!
How about using this to write some tests for the CFG module à la tests/parser?

"How about using this to write some tests for the CFG module à la tests/parser?"
On it! :]


[AMO-133102] - Updated namespace for search advertising campaign object

Please link to the issue #…

@prabhum2 @cmathis

@jishah-adobe Just verify whether the date is sufficient for campaign start date and end date. OR a better format date-time is required.

The fields are stored in following format in our OLTP system - YYYY-MM-DD so it should suffice for us

LGTM


Add SELinux label to docker dev environment bind mounts

Proposed Changes
When using SELinux the nautobot container fails to start because it can't read from the /source/ bind mount. Adding the :z flag to the /source/ bind mount (and maybe others, will confirm) resolves this for SELinux and appears to do nothing on systems not running SELinux (need to confirm).

Justification
Make docker dev environments possible on RHEL and Fedora environments where SELinux is mandatory

May be a safer/better idea to just disable selinux in the containers? Will definitely need more research before implementing


Strip strings before calling the cast

Avoid species name to have heading or trailing spaces.
See:
https://www.decbugs.com/view.php?id=6716

This change is

Reviewed 2 of 2 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


player: avoid duplicated code

Since we have getPlugin(name) at Loader and Player I think it's best to reuse this code.

it seems there's more getPlugin() functions on container and core not to mention hasPlugin(), addPlugin() functions with same code.. should we improve that also?

my bad @flavioribeiro both, container and player handles only container instances while the Loader return the classes.


[BUG] recompiled app crash immediately UnsatisfiedLinkError "libmapbox-common.so"

Information
I'm trying to decompile/recompile a popular app from playstore (strava).
I managed to decompile .\apktool.bat d -r -s .\strava.apk, recompile .\apktool.bat b -f -d .\strava\ --use-aapt2, sign, install
However the app immediatly crash, any idea why ? Looks like some dependance are ommited
Stacktrace/Logcat
08-31 19:51:10.136   988 32545 I<EMAIL_ADDRESS>startService() is called for servicecom.google.android.gms/.gcm.PushMessagingRegistrarProxy
08-31 19:51:10.136 10063 10063 D AndroidRuntime: Shutting down VM
08-31 19:51:10.137 10063 10063 E AndroidRuntime: FATAL EXCEPTION: main
08-31 19:51:10.137 10063 10063 E AndroidRuntime: Process: com.strava, PID: 10063
08-31 19:51:10.137 10063 10063 E AndroidRuntime: java.lang.RuntimeException: Unable to get provider androidx.startup.InitializationProvider: u1.c: u1.c: java.lang.UnsatisfiedLinkError: dlopen failed: library "libmapbox-common.so" not found
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.app.ActivityThread.installProvider(ActivityThread.java:7578)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.app.ActivityThread.installContentProviders(ActivityThread.java:7096)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6985)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.app.ActivityThread.access$1800(ActivityThread.java:270)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2100)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.os.Handler.dispatchMessage(Handler.java:106)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.os.Looper.loop(Looper.java:245)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.app.ActivityThread.main(ActivityThread.java:8024)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at java.lang.reflect.Method.invoke(Native Method)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:631)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:978)
08-31 19:51:10.137 10063 10063 E AndroidRuntime: Caused by: u1.c: u1.c: java.lang.UnsatisfiedLinkError: dlopen failed: library "libmapbox-common.so" not found
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at u1.a.b(ProGuard:17)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at u1.a.a(ProGuard:11)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at androidx.startup.InitializationProvider.onCreate(ProGuard:10)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.content.ContentProvider.attachInfo(ContentProvider.java:2451)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.content.ContentProvider.attachInfo(ContentProvider.java:2421)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at android.app.ActivityThread.installProvider(ActivityThread.java:7573)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        ... 10 more
08-31 19:51:10.137 10063 10063 E AndroidRuntime: Caused by: u1.c: java.lang.UnsatisfiedLinkError: dlopen failed: library "libmapbox-common.so" not found
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at u1.a.b(ProGuard:17)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at u1.a.b(ProGuard:13)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        ... 15 more
08-31 19:51:10.137 10063 10063 E AndroidRuntime: Caused by: java.lang.UnsatisfiedLinkError: dlopen failed: library "libmapbox-common.so" not found
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at java.lang.Runtime.loadLibrary0(Runtime.java:1087)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at java.lang.Runtime.loadLibrary0(Runtime.java:1008)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at java.lang.System.loadLibrary(System.java:1664)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at com.mapbox.common.loader.MapboxLibraryLoader.load(Unknown Source:5)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at com.mapbox.common.CoreInitializer.create(ProGuard:2)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at com.mapbox.common.CoreInitializer.create(ProGuard:1)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        at u1.a.b(ProGuard:14)
08-31 19:51:10.137 10063 10063 E AndroidRuntime:        ... 16 more

APK
link to it.
Questions to ask before submission

Have you tried apktool d, apktool b without changing anything?
yes
If you are trying to install a modified apk, did you resign it?
yes
Are you using the latest apktool version?
yes

try again with this non-bundle version from apkmirror
https://www.apkmirror.com/apk/strava-inc/strava-running-and-cycling-gps/strava-running-and-cycling-gps-270-9-release/strava-run-ride-hike-270-9-android-apk-download/

working ! thanks :)

I assume the cause was that you've backed up a apk which was installed using google play, and the backup program (it's name?) only took 'some' of the bundled packages and packed them up to apk?

I installed the app via GPLAY and manually extracted the apk from my storage using a file explorer app (solid explorer)(I'm rooted, but i'm not sure wether that was a root only operation)

interesting. might be Magisk has another mount of part of the system elsewhere (and APK w/ extractNativeLibs). searching *com.strava* (or *libmapbox*) right from / might find the other parts.
I favor X-Plore for those kind of tasks.

working ! thanks :)

Mind sharing how did you manage to get it working?

apparently the answer from another poster got deleted.
The issue was that my app was from playstore and was somewhat not fully bundled with all dependency
I downloaded the apk from apk mirror instead and got it to work :)


fix: Added a loader || Issue: #838

Added a loader in compare page which fixes issue:#838
The submit button will turn to a loader until the API fetches data, to make sure that the user doesn't get the intuition of the website being lagged or hanged!!

Added a loader in compare page The submit button will turn to a loader until the API fetches data, to make sure that the user doesn't get the intuition of the website being lagged or hanged!!

Can you add relevant videos or screenshots?

Added a loader in compare page The submit button will turn to a loader until the API fetches data, to make sure that the user doesn't get the intuition of the website being lagged or hanged!!

@SrishtiChamoli Can you add relevant videos or screenshots? Also mention the issue no. in the description

Uhmm..sorry couldn't screen record due to some issues, but that is how it looks like! https://github.com/user-attachments/assets/8714f37b-38dc-4e85-8da7-5a214b7fdf23


PWA refreshes on opening youtube Videos and clicking "done"

First of all Kudos on the awesome job ! iOS for PWA this is going to change a lot of things.
I am facing a minor issue in my PWA. When my PWA has an embedded Youtube Videos or an iframe embed. There is a "Done" label on top left label. The entire screen seems to be overlapped by this done label and on clicking it, the PWA refreshes. Can i remove this "Done" label ?
I already added the youtube.com & other iframe sources as external links of the PWA configuration at the time of importing ios pack for the PWA.
See video :
https://drive.google.com/file/d/15y4WoQXzwxPZmOxdCxWUzcUCczClFi06/view?usp=drivesdk

The "Done" bar is made for external redirect-authentication resources when you change the main URL, it allows you to return back if something goes wrong there. What happens if you remove youtube from the domains list?

Yes, if you remove youtube from the list the screen simply refreshes and the PWA loads again.
somehow the firebase powered social logins are also not working, even though I added the firebase app link in the authOrigins.
this is what shows up in settings.swift ,
let authOrigins: [String] = ["youtube.com","vimeo.com","appwplmsio.firebaseapp.com","account.google.com","facebook.com","live.com"]

Another question, I am using firebase for web in the App, do I need to configure it again for the iOS app ? becuase i see this warning message in xcode debug as well
[Firebase/Core][I-COR000003] The default Firebase app has not yet been configured. Add FirebaseApp.configure() to your application initialization. This can be done in in the App Delegate's application(:didFinishLaunchingWithOptions:)(or the@main` struct's initializer in SwiftUI). Read more: https://goo.gl/ctyzm8_

@JudahGabriel so we need to add another list of domains like "resourceOrigins" something like that and do not call "Done" logic for it.
@MrVibe You should understand what you can't use more than 10 bound domains, so choose them consciously. Social logins can use multiple domains in a row, multiple redirects, and you pretty soon can be limited by 10 domains allowed. You should add every domain in the login chain to bound domains.

Another question, I am using firebase for web in the App, do I need to configure it again for the iOS app ? becuase i see this warning message in xcode debug as well
[Firebase/Core][I-COR000003] The default Firebase app has not yet been configured. Add FirebaseApp.configure() to your application initialization. This can be done in in the App Delegate's application(:didFinishLaunchingWithOptions:)(or the@main` struct's initializer in SwiftUI). Read more: https://goo.gl/ctyzm8_

If you don't use pushes, you don't need firebase.

yes thank you, firebase issue is resolved, I had to enter the full firebase app url.
Yes, done logic is not required for Videos etc.

@MrVibe do you fix this? I have created a test page with an iframe youtube video and I have no problem with it...

Yes, I was able to fix this. I had to add some domains in the xCode project and finally our ios App is live. Thank you PWAbuilder .
https://apps.apple.com/us/developer/vibethemes/id1321300155


Unit tests for HA manager investigate method. Refer to CLOUDSTACK-866…

…6 for the code chenges

LGTM :+1:

LGTM

Already merged, looks like bot is not closing PR.


Abitrarily changes user's formatting configuration

Problem:
This plugin does other behinds the scenes stuff that it should not be doing. It arbitrarily imposes the author's idea of how my VIM formatting should be setup. This program is intended to manage plugins. It is intended to be clean, simple, elegant and do one thing and do it very well. Yet is screws up my formatting for no good reason. This plugin should not be doing on-line banking, checking my hard drive for errors, nor formatting my text according to the author's beliefs how text should be formatted. This is broken and needs to be fixed.
Temporary Solution: I had to switch to a GUI editor, then uninstall vim-plug in order to do my work until I figured out what it was doing and tried to prevent this unintended behaviour.
Example:
Pasting into an empty file called "stuff":
/* This is a simple program that will not be pasted into VIM now that I have plugins!
 * How annoying!
 * And here is another line starting with *
 * another line
 * and another! */
import java.util.*;

public class SimpleProgram {

    public static void main(String[] args) {
            //Hey, let's say hello!
            System.out.println("Hello peeps");

            System.out.println("Wazzup?");
    }

}

And here's when I paste exactly the same code into "stuff.java"
/* This is a simple program that will not be pasted into VIM now that I have plugins!
 *  * How annoying!
 *   * And here is another line starting with *
 *    * another line
 *     * and another! */
import java.util.*;

public class SimpleProgram {

            public static void main(String[] args) {
                                    //Hey, let's say hello!
                                    //              System.out.println("Hello peeps");
                                    //
                                    //                              System.out.println("Wazzup?");
                                    //                                      }
                                    //
                                    //                                      }
                                    //

Type:

[x] Bug
[ ] Enhancement
[ ] Feature Request
[ ] Question

OS:

[ ] All/Other
[x] Linux
[ ] OS X
[ ] Windows

Vim:

[x] Terminal Vim
[ ] GVim
[ ] Neovim

Pointers:

https://github.com/junegunn/vim-plug#usage
:help ft-vim-indent
:help 'paste'

The problem is: why is a plugin whose sole purpose is to manage plugins changing the formatting of my data? This is blatant feature creep. It really doesn't make sense to me. Why would you assume that everyone wants the same formatting you do when they download your plugin? It's like Microsoft assuming that by downloading Windows 10, you agree to send information back to MS, unless you specifically take the extra steps to disable it.
Do one thing and do it well. If you want a plugin that changes the formatting of vim, then write a completely separate plugin for that purpose. Does this make sense?

I believe this could be due to filetype plugin indent on (see docs). @salamander2 have you tried the recommendation there?

I gave you enough pointers to learn what's going on, but you don't seem to have read any of the links. vim-plug does not change the formatting of your data, it only enables filetype-specific auto indentation mode of Vim that many plugins require (other plugin managers tell you to do it manually saying it's required, but vim-plug does that for you by default, while providing the instruction for turning it off when it's not desirable, it's a matter of design choice. But since you don't know about the option, don't know if you want or don't want the option, you should have run into the same problem regardless.
When you "paste" some text, Vim thinks you're typing it by hand, so it performs auto-indentation as the text comes in. There are ways to workaround the problem; 'paste' option is one, setting system clipboard as the default register in Vim is another.
https://stackoverflow.com/questions/2514445/turning-off-auto-indent-when-pasting-text-into-vim


[PR on PR] 242_3.25 remove code duplication in test

Coverage remained the same at 100.0% when pulling 26fdad4ef3969e5448c68ed2a4846813bb8de63d on 242_3.24_reduce_code_duplication_in_test into 6ea12525f673399fda3047bc66d28e7aa4da152a on 242_3.25_ApplicationCanceledStateRefactoring.


Support Alibaba's Nacos service discovery

Proposal
Use case. Why is this important?
“Nice to have” is not a good use case. :)

I got the answer
TKS

This is the first time this service discovery is requested. Let's keep this open for a few time to  see if there is a community interest in it. Then, it would need a sponsor from someone from the prometheus team and a pull request, as described in our procedures.

I have the interest to support Nacos. Can I commit a pull request?

Nacos raises many questions, in particular:

How redundant is it with the Kubernetes SD?
What added values is there over DNS SD?
Is there a go client? If yes, does it have kubernetes as dependency? (I am not willing to have 2 SD depending on kubernetes)

I could sponsor that SD, but not now as we have multiple SD in running-in period. Once the new SD's become more mature are we have conclusive answers from above, that could be an option.

We could now explore this. Could you look at the questions previously posted?

Here is the go client for nacos

simple implementation，please see nacos

i need

I think it's better that Nacos provides http sd, Promtheus needs change nothing.

a good idea

did http SD support any authorization? i tryed set bearer_token or basic_auth,but did not work

Looks like HTTP SD support was added in version 2.2.0 of Nacos: https://nacos.io/zh-cn/blog/2.2.0-release.html, so I think this issue is resolved.


feat(metrics): Allow metrics emission for spans

This is a proposed change to the API that allows metrics emission as part of span creation. The idea is that if emit_metrics is set to True, a metric is also created. This also somewhat unifies the APIs with regards to timestamps. The span system uses datetime objects, this now also permits these values in metrics and vice versa.

We need to change the end_timestamp in finish() to allow floats too, to be consistent


Issue 14 15

Since don't have the previous mockup, I fetched the data, but then I checked the current mockup, and feel we might don't need #14 , so comment it and adjust the layout a bit.

closed by commit 54ee2d7 ! Thanks!


Get errors when it comes to eval after one epoch training of kinetics 400...

File "tools/train_recognizer.py", line 90, in
main()
File "tools/train_recognizer.py", line 86, in main
logger=logger)
File "/home/bingzd/mmaction/mmaction/apis/train.py", line 59, in train_network
_non_dist_train(model, dataset, cfg, validate=validate)
File "/home/bingzd/mmaction/mmaction/apis/train.py", line 133, in _non_dist_train
runner.run(data_loaders, cfg.workflow, cfg.total_epochs)
File "/home/bingzd/mmcv/mmcv/runner/runner.py", line 358, in run
epoch_runner(data_loaders[i], **kwargs)
File "/home/bingzd/mmcv/mmcv/runner/runner.py", line 274, in train
self.call_hook('after_train_epoch')
File "/home/bingzd/mmcv/mmcv/runner/runner.py", line 229, in call_hook
getattr(hook, fn_name)(self)
File "/home/bingzd/mmaction/mmaction/core/evaluation/eval_hooks.py", line 60, in after_train_epoch
return_loss=False, rescale=True, **data_gpu)
File "/home/bingzd/anaconda3/envs/mmaction/lib/python3.7/site-packages/torch/nn/modules/module.py", line 493, in call
result = self.forward(*input, **kwargs)
File "/home/bingzd/anaconda3/envs/mmaction/lib/python3.7/site-packages/torch/nn/parallel/data_parallel.py", line 153, in forward
return self.gather(outputs, self.output_device)
File "/home/bingzd/anaconda3/envs/mmaction/lib/python3.7/site-packages/torch/nn/parallel/data_parallel.py", line 165, in gather
return gather(outputs, output_device, dim=self.dim)
File "/home/bingzd/anaconda3/envs/mmaction/lib/python3.7/site-packages/torch/nn/parallel/scatter_gather.py", line 67, in gather
return gather_map(outputs)
File "/home/bingzd/anaconda3/envs/mmaction/lib/python3.7/site-packages/torch/nn/parallel/scatter_gather.py", line 62, in gather_map
return type(out)(map(gather_map, zip(*outputs)))
TypeError: expected sequence object with len >= 0 or a single integer

How do you fix it?


flutter analyze should run pub get in directories it decides it is scanning if they contain pubspec.yaml files

If you run flutter analyze and it decides to analyze multiple directories containing multiple packages such that it will generate a big joint .packages, then we should run pub get in each of those packages as necessary (just as we would if we ran flutter analyze in that package directly).

@danrubel will this be resolved as part of https://github.com/flutter/flutter/issues/10015?

#10015 is closed, but the issue still happens when working with multiple sub packages in a project.
What's the status of this?

Same issue


[ERROR] Connection timed out for zookeeper server connection string (ip:2182) and timeout

project: sharding-proxy
version: 3.1.0
#2172  Question
I got many more warning and error logs as following.
2019-09-12 16:20:05.537 [ HikariPool-56 housekeeper ] - [ WARN  ] [ com.zaxxer.hikari.pool.HikariPool : 668 ] - HikariPool-56 - Thread starvation or clock leap detected (housekeeper delta=59s417ms235μs691ns).
2019-09-12 16:19:59.246 [ HikariPool-79 housekeeper ] - [ WARN  ] [ com.zaxxer.hikari.pool.HikariPool : 668 ] - HikariPool-79 - Thread starvation or clock leap detected (housekeeper delta=48s692ms241μs156ns).
2019-09-12 16:19:59.247 [ HikariPool-29 housekeeper ] - [ WARN  ] [ com.zaxxer.hikari.pool.HikariPool : 668 ] - HikariPool-29 - Thread starvation or clock leap detected (housekeeper delta=59s419ms184μs806ns).
2019-09-12 16:19:59.246 [ HikariPool-2 housekeeper ] - [ WARN  ] [ com.zaxxer.hikari.pool.HikariPool : 668 ] - HikariPool-2 - Thread starvation or clock leap detected (housekeeper delta=54s154ms717μs822ns).
2019-09-12 16:20:06.183 [ ShardingSphere-Command-2 ] - [ INFO  ] [ ShardingSphere-SQL : 71 ] - Rule Type: master-slave
2019-09-12 16:19:59.247 [ HikariPool-50 housekeeper ] - [ WARN  ] [ com.zaxxer.hikari.pool.HikariPool : 668 ] - HikariPool-50 - Thread starvation or clock leap detected (housekeeper delta=1m36s197ms711μs788ns).
2019-09-12 16:19:59.247 [ HikariPool-40 housekeeper ] - [ WARN  ] [ com.zaxxer.hikari.pool.HikariPool : 668 ] - HikariPool-40 - Thread starvation or clock leap detected (housekeeper delta=59s417ms250μs54ns).
2019-09-12 16:19:59.246 [ HikariPool-71 housekeeper ] - [ WARN  ] [ com.zaxxer.hikari.pool.HikariPool : 668 ] - HikariPool-71 - Thread starvation or clock leap detected (housekeeper delta=54s154ms726μs716ns).
2019-09-12 16:19:59.246 [ HikariPool-15 housekeeper ] - [ WARN  ] [ com.zaxxer.hikari.pool.HikariPool : 668 ] - HikariPool-15 - Thread starvation or clock leap detected (housekeeper delta=54s154ms720μs555ns).
[ Curator-Framework-0 ] - [ ERROR ] [ org.apache.curator.ConnectionState : 200 ] - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (12457)
Any suggestions ?

2019-09-12 18:13:14.852 [main-EventThread] ERROR org.apache.curator.ConnectionState - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (6307)
2019-09-12 18:13:21.411 [Curator-Framework-0] ERROR org.apache.curator.ConnectionState - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (12865)
2019-09-12 18:13:28.246 [Curator-Framework-0] ERROR org.apache.curator.ConnectionState - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (19701)
2019-09-12 18:13:34.954 [Curator-Framework-0] ERROR org.apache.curator.ConnectionState - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (6699)
2019-09-12 18:13:14.852 [ main-EventThread ] - [ ERROR ] [ org.apache.curator.ConnectionState : 200 ] - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (6307)
2019-09-12 18:13:21.411 [ Curator-Framework-0 ] - [ ERROR ] [ org.apache.curator.ConnectionState : 200 ] - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (12865)
2019-09-12 18:13:28.246 [ Curator-Framework-0 ] - [ ERROR ] [ org.apache.curator.ConnectionState : 200 ] - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (19701)
2019-09-12 18:13:34.954 [ Curator-Framework-0 ] - [ ERROR ] [ org.apache.curator.ConnectionState : 200 ] - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (6699)

Can your database be connected correctly, e.g. account、password or port?

@geomonlin yes, db account&password&port is correct, it's connectable. it seems that the zookeeper server got some problem but i cant see any errors in the zookeeper log. "<IP_ADDRESS>:2182" is the zk server and zk listened port.

Can zkCli connect your zookeeper server (<IP_ADDRESS>:2182) ?

@sunbufu yes, zk server can be connected from zkCli

@Myshiner. What kind of function is provided by zookeeper in your application,  config center, leaf generator or orchestration?

it's orchestration.

@Myshiner. Could you provide more information about the error? Such as: log, enviroment information and so on. Only connection time out is very hard to dug.

@wgy8283335 the sharding-proxy and zookeeper running on a same machine with OS version Centos Linux release 7.5, sharding-proxy 3.1.0, zookeeper 3.4.13. and the error log as follow(And now i didn't get this kind error any more.)
2019-09-12 18:13:14.852 [main-EventThread] ERROR org.apache.curator.ConnectionState - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (6307)
2019-09-12 18:13:21.411 [Curator-Framework-0] ERROR org.apache.curator.ConnectionState - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (12865)
2019-09-12 18:13:28.246 [Curator-Framework-0] ERROR org.apache.curator.ConnectionState - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (19701)
2019-09-12 18:13:34.954 [Curator-Framework-0] ERROR org.apache.curator.ConnectionState - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (6699)
2019-09-12 18:13:14.852 [ main-EventThread ] - [ ERROR ] [ org.apache.curator.ConnectionState : 200 ] - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (6307)
2019-09-12 18:13:21.411 [ Curator-Framework-0 ] - [ ERROR ] [ org.apache.curator.ConnectionState : 200 ] - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (12865)
2019-09-12 18:13:28.246 [ Curator-Framework-0 ] - [ ERROR ] [ org.apache.curator.ConnectionState : 200 ] - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (19701)
2019-09-12 18:13:34.954 [ Curator-Framework-0 ] - [ ERROR ] [ org.apache.curator.ConnectionState : 200 ] - Connection timed out for connection string (<IP_ADDRESS>:2182) and timeout (500) / elapsed (6699)
Is it something to do with the poolsize of sharding-proxy, the maxPoolSize is set to 50. please see the datasource conf for your reference.
neworiental_v3: !!io.shardingsphere.orchestration.yaml.YamlDataSourceConfiguration
dataSourceClassName: com.zaxxer.hikari.HikariDataSource
properties:
url: jdbc:mysql://<IP_ADDRESS>:4306/neworiental_v3?serverTimezone=UTC&useSSL=false
password:
maxPoolSize: 50
maintenanceIntervalMilliseconds: 30000
connectionTimeoutMilliseconds: 30000
idleTimeoutMilliseconds: 60000
minPoolSize: 1
username:
maxLifetimeMilliseconds: 1800000
slave_v3: !!io.shardingsphere.orchestration.yaml.YamlDataSourceConfiguration
dataSourceClassName: com.zaxxer.hikari.HikariDataSource
properties:
url: jdbc:mysql://<IP_ADDRESS>:4306/neworiental_v3?serverTimezone=UTC&useSSL=false
password:
maxPoolSize: 50
maintenanceIntervalMilliseconds: 30000
connectionTimeoutMilliseconds: 30000
idleTimeoutMilliseconds: 60000
minPoolSize: 1
username:
maxLifetimeMilliseconds: 1800000

@Myshiner . As you said, now I didn't get this kind error anymore. Do you think there was a netowrk problem at that time when the error was happening.

Connection timed out for zookeeper server connection string (ip:2182) and timeout means you really cannot connected zookeeper, please check your env.


Upgrade WF cloud FP and datasources FP

Up to now we were using cloud FP 1.x for WF 26.x (that is compatible with WF 27.x with some limitations), cloud FP 2.x is to be used wirh WF 27.
datasources upgrade is to benefit from latest JDBC driver versions. This FP is fully compatible (at least for now) with WF 26 and WF 27.

Thanks!


Merge branch 'main' of https://github.com/TransformerOptimus/SuperAGI

 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.


BUG Price Update js not updating the price

https://github.com/dynamic/silverstripe-foxy/blob/master/client/src/javascript/product_options.js
This file in general could use an overhaul - we're no longer doing any "selection unavaiable" copy in the form or JS, it's now being done in an AddToCartForm include file. I imagine a lot of this code could be removed.

The script seems to work as long as submitPrice is an ID on the html element holding the price. With this in mind, there is a bug in which a product option with no price modifier is deemed undefined in the script, effectively removing the price from the page. Tracking the html value of the shownPrice var provides a default fallback for cases where an option doesn't have a Price modifier attached.
It's still worth re-working to simplify the script a bit, but as it is very close to working order.


Getting support with using the provisioning tool

Hi, apparently I have to start an issue here to get some support for using the provisioning tool?
Cheers
Andrew

@AquariusDroid1234
Hi Andrew,
Correct. The level of support you can get is explained on the home page:
What level of support can I expect?.
If you have found a bug or other issues and you're able to provide a fix, you're welcome to open a PR.
If you have feature requests, you're also welcome to submit an issue here on Github.
Thanks,
Bill

Ok thanks Bill


Feature Request: RESTFUL API should be supported in python-wechaty

Original Intention
In these days, some developers try to add more abilities to bot, eg: saving chat history, enable restapi in python-wechaty bot and sync the messages between specific rooms. The first one has been accompished, So I wanna to get second done in next days.
How does RESTFUL API work ?
talk is cheap, show the mvp code.
from wechaty import Wechaty, WechatyPlugin

class Bot(Wechaty):
    async def register_blueprints(self, app):
        @app.route('/hello-bot')
        async def say_hello():
            pass

class MessagePlugin(WechatyPlugin):
    async def register_blueprints(self, app):
        @app.route('/send-message-to-my-baby')
        async def say_morning():
            pass

Once you register your blueprint to app, swagger-doc will be generated by default. Above code is simple but powerful.  Do you think so ?
Web Frameworks
There are some great async-based web frameworks, and I will choose the popular & fast one in the design. Please give yourself suggestion: What do you choose ? and Why do you choose it ?
Frameworks:

FastApi
Flask 2.0.x
Sanic
Tornado
Vibora
Quart

I choose FastApi and Quart.

I choose FastApi and Quart.

Can you give the reason why you choose it ?

I choose FastApi because it is async-friendly and can automatically generate Swagger-API.

I choose FastApi and Quart.

Can you give the reason why you choose it ?

FastApi can make route,its usefull for me.Quart is a async-based web  framework like flask.


Change Needed

As shown in the documentation the python code snippets to gather stats using stats API (https://developers.criteo.com/marketing-solutions/v2020/docs/statistics-v1) given parameter  as  start_date,end_date doesn't accept in the way it is shown in the docs respectively, I think the ( _ ) in between need to be removed either in docs or please do change it on python SDK given to accept the ( _ )

Hello !
Thank you for your concern.
We are in the process of migrating our API stack, and https://developers.criteo.com/marketing-solutions/v2020/docs/statistics-v1 is part of the new documentation that is auto generated from our OpenAPI Specifications.
It is indeed possible that is does not match our real python client.
I'll contact the corresponding team.

thanks

Hi,
since i am new to the criteo developer api, is there a posibiility to gather creatives with its respctive placement's hourley?it seems impractical when i am going through the api-doc, can anyone assist me on this.
Thanks


GraphQL conection hang up with message: { type: 'complete' }

Hi!
I am building application which synchronizes live with EOS blockchain. I established graphQL connection like this using dfuse-js:
this.dFuseClient.graphql(graphQLQuery, async (message) => {     // do something });
My connection hang up after a few days and I am wondering how can I prevent it in the future?
I think terminal message I got was:
     console.log(message);     // { type: 'complete' }
and just in case one error message before I got:
     console.log(message);  // {   type: 'error',   errors: [     {       message: 'graphql: hammer search result: rpc error: code = Unavailable desc = transport is closing (trace_id: 4bba6b2d211cb515713be5698c2014e1)'     }   ],   terminal: true }
What should I do in such situation?
How can I make sure connection was closed so I can re establish it?
Or how to make sure connection won't hang up?

The library should reconnect automatically when it encounters a complete message that has attribute terminal: true. Run with debug enables to check what is happening, like why it would not reconnect automatically.
You can run with debug logs enable by starting your script with the environment variable DEBUG="dfuse:*" set. This will show all important protocol level messages. Attach a complete log when you have reproduced the error.
Until investigation is completed, one easy thing to do it to catch the "complete" event and simply restart your stream when it happens.

I did as you proposed and left process fora few weeks to detect when problem occurs, these are the logs I get when connection hang up:

2020-12-24T15:21:55.751Z dfuse:graphql-stream Routing socket message of type 'complete' with id 'dc-0cc18a1523d99-0' to appropriate stream
Error in d fuse graphql client:
Thu, 24 Dec 2020 15:21:55 GMT
{ type: 'complete' }

2020-12-26T02:57:20.657Z dfuse:graphql-stream Routing socket message of type 'complete' with id 'dc-a3dc94eb99323-0' to appropriate stream
Error in d fuse graphql client:
Sat, 26 Dec 2020 02:57:20 GMT
{ type: 'complete' }

2020-12-26T10:39:12.248Z dfuse:graphql-stream Routing socket message of type 'complete' with id 'dc-ae219443ac1df-0' to appropriate stream
Error in d fuse graphql client:
Sat, 26 Dec 2020 10:39:12 GMT
{ type: 'complete' }

Whenever connection hangups I always receive messgae exactly like this, only with ID changed  each time.
Do this messages helps you?

Do you have the full debug logs? What network did you connect to?
If this is a full print of the full received message, it would mean it's a server problem because this is a message that tells the stream to complete without reconnecting.

I enabled dfuse logs according to your sugestion. I set flag DEBUG="dfuse:*" that's complete log I received. There is nothing more printed in the console.

Please also provide the endpoint where to connect to.
The DEBUG="dfuse:*" should be defined as an environment variable, like this for example:
# Exported then run
export DEBUG="dfuse:*"
node index.js

Or

# Inline
DEBUG="dfuse:*" node index.js

If you got it correctly, you should see something like this:
$ DEBUG="dfuse:*" yarn run:example examples/basic/eosio/stream-transfers-graphql.ts
yarn run v1.16.0
$ yarn run ts-node -O '{"module":"commonjs"}' examples/basic/eosio/stream-transfers-graphql.ts
$ /Users/maoueh/work/dfuse/client-js/node_modules/.bin/ts-node -O '{"module":"commonjs"}' examples/basic/eosio/stream-transfers-graphql.ts
  dfuse:http Using `fetch` global value found on 'global' variable (Node.js environment). +0ms
  dfuse:socket:stream Using `WebSocket` global value found on 'global' variable (Node.js environment). +0ms
  dfuse:socket:graphql Using `WebSocket` global value found on 'global' variable (Node.js environment). +0ms
  dfuse:client Inferring API token store default concrete implementation to use +0ms
  ...


Should the datalayer post care more about data types in the receiving table?

For instance should we define what data type we are sending in the config file like so:
{
    "order" :1,
    "fieldName": "test",
    "dataType": "VARCHAR(255)
}

or is this sufficient in the code for postlayer:
				switch s[field.FieldName].(type) {
				case float64:
					columnValues += fmt.Sprintf("%f,", s[field.FieldName])
				case int:
					columnValues += fmt.Sprintf("%s,", s[field.FieldName])
				case bool:
					if s[field.FieldName] == true {
						createBit := fmt.Sprintf("%t", s[field.FieldName])
						columnValues += strings.Replace(createBit, "true", "1", 1)
					} else {
						columnValues += fmt.Sprintf("%s", 0)
					}

				default:
					columnValues += fmt.Sprintf("'%s',", s[field.FieldName])
				}

If we elect to define the data type in the config file we can also support create table if missing. That could be nice.


revert local config settings from .gitignore

Some local setup files (rather than specific to general operation of the repo) were added in #1705.
I would argue that these should go into the local system's global gitignore rather than the repo here

cc: @dankrad

There seem to be some other only locally relevant entries in there. But sure I can set these locally.

I think the only local config items in there  might be the different naming conventions for venv. Other than that, all of those items can and do appear in the normal build and test processes