Dynamic Group Authorization Exceeding Cognito Limits

Which Category is your question related to?
Setting up a GraphQL API
Amplify CLI Version
7.6.26
What AWS Services are you utilizing?
Cognito, DynamoDB, AppSync, DataStore
Provide additional details e.g. code snippets. Be sure to remove any sensitive data.
Background :
We are building an app (in iOS and eventually Android) that manages competitions. Users of the app can create their competition and then invite people to join it. The app provides real time result data and notifications which DataStore and AppSync is really attractive for us to handle. People who join would fall into a few "groups". Administrators who can edit and manage the settings of the Competition. Competitors who can read the information about the competition. And then various other groups with different permissions levels for different aspects with the Competitions (for instance, administrators, timers, book keepers for individual events within the competition.)
Individuals can belong to any of these groups and also be part of any number of Competitions. Therefore there is hierarchy where "Competitions" are at the top and under that are "Permission Groups" and under that are the "Users". Therefore having a Cognito "Admin" or "Editor" group doesn't work since we would need to create multiple versions of these groups for each Competition.
Issue :
This is where the real issue becomes apparent. If we were to use groups in Cognito we would only be able to support 100 or so Competitions and then our App would fail. Because Cognito only support 500 groups (everyone would be in the same User Pool).
A suggestion was made by @josefaidt to use dynamic groups which I had investigated. But that runs into the 500 group limit I believe. However, to be clear in this snippet below does a dynamic group actually reference a Cognito group? I assume it did...
@auth(rules: [
    { allow: owner, operations: [create, read, update] }
    { allow: groups, groupsField: "viewers", operations: [read] }
])

We are converting our app from using a REST interface through API Gateway with Lambdas responding to the endpoints to AppSync and GraphQL. In our existing RDS schema we have the concept of "Competition" > "Competition_Admin" > "Role", "Account".  Competition_Admin would be analogous to a Cognito Group.
Use Case Example :
So for example, User A creates Competition A. The backend also creates an entry in the "Competition_Admin" table where it has a relationship to User and Competition and Role. That entry would have User A, Competition A, and Role Owner (which has full read/write access booleans turned on). The lambdas then check these tables to ensure that if someone is editing/deleting anything in the Competition that they have the appropriate permissions.
Same scenario for User B. They create Competition B and an entry in "Competition_Admin" is created for User B, Competition B, Role Owner.
Continuing on, User A decides to invite User C to be an admin in their Competition A. User C is then added to the "Competition_Admin" with entry of User C, Competition A, Role Admin. This Role, for example, is setup to allow User C to edit settings in Competition A but not delete Competition A.
Finally, User B decides to invite User D to be an admin in their Competition B. "Competition_Admin" entry of User D, Competition B, Role Admin.
So what we have essentially have here is 4 groups. Perhaps only 3 groups since the Role Owner should probably be considered a single group that manages who owns which Competition. But each Competition has its own "Admin" group.
Questions :

Are dynamic groups referencing Cognito Groups or is it more referencing a table within a schema like "Competition_Admin" in the example above? (If it's the latter then we're golden).
Lambda Resolvers : Assuming Question 1 is referencing Cognito Groups then we need to look at custom authentication options. Lambda Resolvers were investigated but they apparently don't work with DataStore which is a requirement for offline storage in our app. Is there a way around this?
Lambda Resolvers pt.2 We are familiar with creating Lambda code. But are also cautious as it seems they then are responsible for loading the data from DynamoDB and then sending it back? We'd be losing all that time saved that Amplify was providing to us through auto generated code.
Extend Amplify-Generated Resolvers - This appears to require us to use VTL code but it does seem that this approach would leave all the rest of the heavy lifting to the Amplify generated code. However we are not familiar at all with VTL code or what "slot" we should insert our code in? (pre-Auth?). Some sample code that would address the example above would be very helpful. Essentially using a "model" in the GraphQL Schema as the authentication criteria. Link to docs below.
https://docs.amplify.aws/cli/graphql/custom-business-logic/#extend-amplify-generated-resolvers
Other options?

So looks like a partial solution is to use the ownerField tag in the @auth rules. For instance here is my model in graphql.schema. Also understanding that dynamic groups do NOT use Cognito groups (thanks @josefaidt ). So the answer to question #1 was positive.
However using groupsField wasn't working and I still think it may point to a Coginto group. Even though I set admins to the username of the second user they had no access. I think this is because its still pointing to some concept of a group which I assume is a Coginto group. If it isn't I'm not sure what it is pointing to???
But then I found ownerField and came up with the below model.
type Blog @model @auth(rules: [
  {allow:owner, operations:[create, read, update, delete]}
  {allow:owner, ownerField: "admins", operations: [update, read] }
])
{
  id: ID!
  name: String
  posts: [Post] @hasMany
  owner: String
  admins: [ID] @auth(rules:[{allow:owner, operations:[create, read, update, delete]}])
}

This works great using the AppSync Query console. I can assign an admin by username and they can read and update the blog entry but they can't delete it. Where as the original owner can delete the blog. Perfect. This is what we want. Also different Blogs with different admins are isolated as well.
However I've now run into the issue that on the iOS side this Use Case is not supported...
I'm seeing the following log output from my test app where I subscribe to changes...
[RemoteSyncEngine] initializeSubscriptions(api:storageAdapter:)
[AuthRuleDecorator] Detected multiple owner type auth rules with a READ operation. We currently do not support this use case. Please limit your type to just one owner auth rule with a READ operation restriction.

The logging continues to spin around and attempt multiple times to get the subscriptions to take.
I'm not sure if this is the AppSync or DataStore implementation causing this error. But I'm not sure how to proceed here. Having subscriptions was one of the key features that attracted us to pursue AppSync with our Amplify project.

Hey @Etep15 :wave: thanks for taking the time to file this and apologies for the confusion! Yes Dynamic Groups auth will use Cognito groups, I misspoke. The owner field as you pointed out is a suitable solution to store user ID's to a field for access rights. From the docs:

With dynamic group authorization, each record contains an attribute specifying what groups should be able to access it. Use the groupsField argument to specify which attribute in the underlying data store holds this group information

Does this also answer questions 2 & 3?

Lambda Resolvers : Assuming Question 1 is referencing Cognito Groups then we need to look at custom authentication options. Lambda Resolvers were investigated but they apparently don't work with DataStore which is a requirement for offline storage in our app. Is there a way around this?
Lambda Resolvers pt.2 We are familiar with creating Lambda code. But are also cautious as it seems they then are responsible for loading the data from DynamoDB and then sending it back? We'd be losing all that time saved that Amplify was providing to us through auto generated code.

It does thank you. I think I still need to dive into Lambda Resolvers in order to kick off things such as a push notification through SNS or Pinpoint on a create or update coming in through AppSync. But that's another topic.
The one remaining issue is the subscriptions piece. While they are a valid configuration they aren't supported with two owner rules with DataStore according to the issue I noted above. #1590. That's the next challenge.
One thing I will note, is that the documentation could be updated. There's some ambiguity which I struggled with in that what does the term "group" mean. For example :

With dynamic group authorization, each record contains an attribute specifying what Cognito groups should be able to access it.

That simple change would've helped a ton. Just a suggestion.
Thanks once again for all your help! I think we are good here. Hope this helps others.

Hey @Etep15 that's a great callout on the docs piece. I'll mark this as a documentation issue 🙂


Remove precision and scale type mapping fallback

Also don't set Size, Precision or Scale in RelationalTypeMapping if the corresponding StoreTypePostfix is not set.

@AndriySvyryd can I poach? Am working in the area on #11896.

@roji Sure, let me know if you have any questions.


photos of nearby cases formatting looks off

The rows of photos are not lining up appropriately. Here is the link: http://ebwiki.org/articles/darius-cole-garrit

This has been fixed.


[BUG] Input value is reset while switching between the pages

Attachment: https://drive.google.com/drive/folders/1L83s34T6dpYbcRvJaqvUJo79glsINsys?usp=sharing
Browser Details: Chrome
Device Details: macOS 10.15.6 (MacBook Pro)
Note: Tried on cloud.
Steps to replicate:

Have 2 pages - Page 1 and Page 2
In Page 1, have an input widget
Deploy the app
In the input widget of page 1, enter an input value
Switch to Page 2 and then switch back to page 1

Expected Result: Since there is no page reload, input value shouldn't disappear from the input box.
Actual Result: Input value disappears from the Input widget.
Note: Above case is when default value isn't set. If the default value is set, it resets to the default value.

@Saket2 there is a page load, data across pages are not persisted today


Add discrete PBR cases to fidelity test suite

@donmccurdy assembled very thorough, discrete PBR tests to compare Three.js and Khronos' WebGL renderer to a (as yet unidentified) ray tracer.
This issue covers work necessary to add similar, discrete comparisons to the <model-viewer> fidelity tests that will land as of #305 .
@jsantell is currently investigating the potential of using Mitsuba as a reference ray tracer for producing screenshots for comparison.

@cdata If we're doing rendering work for 0.5, perhaps this should happen at the beginning of that to make sure we're on the right track?

Yeah, possibly. I don't think we have the time integrate Mitsuba renders ahead of 1.0, although that would be cool. But, we could definitely implement some basic test scenarios using different material spheres each testing some discrete PBR property.

I think the PBR test cases will come from the 3D Commerce group, once they make their samples available.

This is now working, mostly.


Unable to add SPF to domain as CNAME already uses the TXT Value

Hello All,
I came across a scenario where I am unable to add SPF records to my host because the CNAME already exists with the same txt value.
in my case: I have a cname going from psrp.domain.com to rp.postal.domain.com
Now When I run a mail-tester scan- I am getting no valid spf found. The issue is I ve an SPF for @ TXT Value. but unable to add SPF on psrp again because cname uses the same name.
Is there  a solution that I am missing here. I can share the domain name personally.

How to get this fixed. I am just 1 point away on Mail-tester and want to nail it.

Regards,
Biswajit.

@willpower232  Can you guide me on this, please!

Unfortunately a CNAME means that all records for that subdomain get passed on so the only resolution for this problem is to use A/AAAA records instead


Add Module 12 lab files and documents

This is the lab for Module 12, covering scalability and distributed caches. The lab focuses on Azure Redis Cache (the previous version of this lab in course 20487B used the Azure Caching Role, which is deprecated and no longer available). The code for this lab is based on the lab for Module 2, and does not incorporate the entire server- and client-level code for Blue Yonder; it mostly focuses on the data layer and introduces a new ReservationsController implementation with only very simple operations.
The high-level steps for this lab are:

Create an Azure Redis Cache
Store database-originated data in the cache
Retrieve data from the cache
Delete (invalidate) data in the cache
Test the changes by issuing GET and POST requests to the service

Merging due to lack of feedback.


Vagrant driver adding unwanted entry on instance's /etc/hosts file

Issue Type

Bug report

Molecule and Ansible details
ansible --version
ansible <IP_ADDRESS>
molecule --version
molecule, version 1.19.1

Molecule installation method: pip
Ansible installation method: pip

Desired Behaviour
Molecule needs to start a new instance and apply test playbook without apply any unwanted change on guest machine.
Actual Behaviour (Bug report only)
Molecule's builtin Vagrant runtime is always adding a <IP_ADDRESS> entry on guest's /etc/hosts file.

Whats the harm with /etc/hosts having the system's hostname in /etc/hosts?  I don't see the harm in this.

When I set ip address on instance definition, I need system hostname pointing to ip address set, not <IP_ADDRESS>.

That sounds like something that you can fix with ansible.  If you don't like the way /etc/hosts is rendered, ansible can be used to correct it.  I would prefer not to make a change of this nature.

Conditional used on https://github.com/metacloud/molecule/blob/master/molecule/cookiecutter/driver/vagrant-runtime/{{cookiecutter.repo_name}}/vagrantfile#L220 prevents this behavior while using libvirt provider. It is the same case, the difference is that when using virtualbox provider you must set a static ip to see this behavior.

@viniciusfs I'm going to close this.  If you are wanting to change the contents of /etc/hosts, feel free to write a lineinfile patch to your playbook and remove it.

Thank you for your support! I will use libvirt driver that works like expected.


User can view/manage relationship between vClusters and physical clusters

pro tier feature. free tier handcuffed to mgmt. pro tier should allow for host cluster adjustment and needs corresponding visualization.


first stab at limiter

This should behave according to spec, but you (@DavidVorick) should confirm that the test code matches your expectations.

@DavidVorick pls review and incorporate into upload code if this API is satisfactory

Correct me if I'm wrong, but it currently looks like small requests are able to starve large requests? We would want to make sure that if you make a large request, all small requests get denied until the large request is able to go through.
That means you'll need a queue I believe. It also means that technically only one request can be served at a time, which hopefully simplifies the concurrency structure. If you want to use channels, what you would do is have each thread add a channel to the queue along with the size of their resource request. When resources get returned, you check if there are enough resources to unblock the next request (or if there are 0 more resources in use), and then you close that resource's channel to signal that it can unblock.
You'll have to interact with the queue using a lock.

I believe that the current design does not starve large requests. Requests are served on a first-come first-served basis. When a request is accepted, it obtains an exclusive lock. It holds the lock until enough resources are returned to fulfill the request. No other request receives resources while the lock is held.


Redirect config per request

Allows redirect handling to be configured per request.
Motivation:
Redirect configuration is set globally when configuring the HTTPClient. However, it would also be useful to configure redirects on a per request basis. This would mean that a single HTTPClient could be configured and shared widely throughout an application, while retaining the flexibility to tailor specific requests with custom redirect handling should the need arise.
Modifications:
This change adds an optional redirectConfiguration parameter to all request methods of HTTPClient, with a nil default value. When the request is executed the prevailingConfiguration is determined using the redirectConfiguration argument, if set. Otherwise the global configuration is used.
Result:
Allows redirect handling to be configured on a per request basis, closes #196

@swift-server-bot test this please

Before we go down this road, we should take this opportunity to ask ourselves whether there is any other configuration that can sensibly be provided "per call". If there is, we may want to whack it all in at once.

I think I've talked myself into saying that redirect is special here. Most of the others are either managed by the connection pool or cannot safely be changed without invalidating the pool, or are otherwise already handled. So I think I'm ok with the shape of this change. @artemredkin any preference for anything else here?

Oh, one note though @ncke: we can't add optional parameters to these methods, it's a semver major change to do it. We need to add new methods with extra arguments instead.

I'll add new methods rather than the arguments.
I was also wondering whether the Task might be a better place to store redirect state (e.g. count) rather than the Request. I'm concerned that replaying an executed (or executing) Request may copy the dirty redirect state rather than creating pristine state for the second execution, with unexpected results.

Request is a value type: mutations made to that field by HTTPClient are not reflected in your local copy.

I think I've talked myself into saying that redirect is special here. Most of the others are either managed by the connection pool or cannot safely be changed without invalidating the pool, or are otherwise already handled. So I think I'm ok with the shape of this change. @artemredkin any preference for anything else here?

Perhaps we can have a configuration type specific to requests (ie. execute(..., configuration: RequestConfiguration? = nil))? One more option that would be configurable per request would be the ability to specify how Host is represented, as brought up here: https://github.com/swift-server/async-http-client/issues/229#issuecomment-639001947, and having a configuration type we can extend and add to could be useful here.

Oh, one note though @ncke: we can't add optional parameters to these methods, it's a semver major change to do it. We need to add new methods with extra arguments instead.

@Lukasa Most of these methods (ie. the ones that add logging and conveniences for socket paths) are new and haven't actually been released — would modifying those be ok?

@dimitribouniol With regard to simplifying future extension I wondered about retaining the current httpClient.get(...) style for simple cases, but contriving to allow httpClient.with(configuration: ...).get(...) to allow the caller to chain modifications to the execution context before reaching the final verb?

I definitely like the idea of having request configuration. I don't think I love the chaining idea though: I don't think it adds meaningful API clarity. Having a struct you can pass that defines a per-request configuration overload seems sensible though.
As for changing methods, anything that hasn't shipped in an existing release can be changed, yeah.

Just as a heads up, the main development branch has been changed to main, following the Swift policy on this.
This PR has been re-targeted to main and should just work. However when performing rebases etc please keep this in mind -- you may want to fetch the main branch and rebase onto the main branch from now on since master is not up-to-date anymore and is going to be deleted shortly.


posix.mak: Fix clean builds

The modlist-*.ddoc files require DMD, so the first make run will fail.

Actually, this is not enough - we also need to build the Phobos static library to be able to use source DMD.


[MM-58129] Calls: Host controls remove participant, view profile

Summary

Added:

remove participant as host (gives a prompt). I made the Remove option red to be consistent with what we do on the webapp side (and it's a destructive action, so it fits).
remove participant as remove-ee. This is backwards-compatible, you just won't get an alert. I added a new previousCall state to track the last call the user was in. At the moment we only need it for host remove -- there's a race condition where if you receive the hostRemoved wsEvent after the call has disconnected, you won't have the currentCall to compare the ws event to, so you won't know the message was for this client specifically. The previousCall state solves this. Tests for that new state.
The view profile option in the host menu.

Designs: https://www.figma.com/file/8C0ojMc778Zx3a0nm66Edw/MM-56584-Host-Controls?node-id=1277%3A50261&mode=dev
Ticket Link

https://mattermost.atlassian.net/browse/MM-58129

Checklist

[x] Added or updated unit tests (required for all new features)
[x] Has UI changes
[x] Includes text changes and localization file updates
[x] Have tested against the 5 core themes to ensure consistency between them.

Device Information

Android: 13, Pixel 6
Android: 13, Galaxy Tab s7+
iOS: 16.5.1, iPhone 14

Screenshots

Release Note
Calls: Added remove participant & view profile commands

@matthewbirtch Nice catch, it's a mobile bug: https://mattermost.atlassian.net/browse/MM-58190
I'm changing our own code to fix it for us. This is what we have now:

Cherry pick is scheduled.


Docs - ioConfig config index table

Adds a new table to the "ioConfig" section of the ingestion doc, listing the configuration lines that appear inside ioConfig for each ingestion type.
Frankly, not sure how useful this is, but thought I would offer it up :)
This PR has:

[X] been self-reviewed.
[ ] been tested in a test Druid cluster.

@techdocsmith @suneet-s welcome your thoughts on the value of this table...?

Relates to #11936 but I think this is just a partial solution to the issue and in fact might just make the page itself massive and something else that would have to be referenced when ioConfig is enhanced over time.  @techdocsmith I'm thinking that I'll just close this PR and raise one specifically for the other stylistic updates.  Concur?


DTSPO-22117 - correct references to preprod and prd -> nonprod

Jira link
DTSPO-22117
Change description
correct references to preprod and prd -> nonprod
Testing done

Checklist

[X] commit messages are meaningful and follow good commit message guidelines
[ ] README and other documentation has been updated / added (if needed)
[ ] tests have been updated / new tests has been added (if needed)
[ ] Does this PR introduce a breaking change

Plan Result (nonprod_general - TerraformPlanApply)
:warning: Resource Deletion will happen :warning:
This plan contains resource delete operation. Please check the plan result very carefully!
Plan: 4 to add, 1 to change, 4 to destroy.

Create

azurerm_postgresql_database.confluence
azurerm_postgresql_database.crowd
azurerm_postgresql_database.jira
azurerm_postgresql_server.atlassian-server

Update

azurerm_application_gateway.ag

Delete

azurerm_postgresql_database.confluence-prd
azurerm_postgresql_database.crowd-prd
azurerm_postgresql_database.jira-prd
azurerm_postgresql_server.atlassian-preprod-server

Change Result (Click me)

  # azurerm_application_gateway.ag will be updated in-place
  ~ resource "azurerm_application_gateway" "ag" {
        id                                = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.Network/applicationGateways/atlasssian-nonprod-app-gateway"
        name                              = "atlasssian-nonprod-app-gateway"
        tags                              = {
            "application"  = "atlassian"
            "builtFrom"    = "hmcts/atlassian-infrastructure"
            "businessArea" = "Cross-Cutting"
            "criticality"  = "Medium"
            "environment"  = "staging"
            "startupMode"  = "always"
        }
        # (8 unchanged attributes hidden)

      - probe {
          - id                                        = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.Network/applicationGateways/atlasssian-nonprod-app-gateway/probes/appgw-probe-cnf" -> null
          - interval                                  = 30 -> null
          - minimum_servers                           = 0 -> null
          - name                                      = "appgw-probe-cnf" -> null
          - path                                      = "/confluence" -> null
          - pick_host_name_from_backend_http_settings = true -> null
          - port                                      = 0 -> null
          - protocol                                  = "Http" -> null
          - timeout                                   = 30 -> null
          - unhealthy_threshold                       = 3 -> null
            # (1 unchanged attribute hidden)

          - match {
              - status_code = [
                  - "200-399",
                ] -> null
                # (1 unchanged attribute hidden)
            }
        }
      - probe {
          - id                                        = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.Network/applicationGateways/atlasssian-nonprod-app-gateway/probes/appgw-probe-crd" -> null
          - interval                                  = 30 -> null
          - minimum_servers                           = 0 -> null
          - name                                      = "appgw-probe-crd" -> null
          - path                                      = "/crowd" -> null
          - pick_host_name_from_backend_http_settings = true -> null
          - port                                      = 0 -> null
          - protocol                                  = "Http" -> null
          - timeout                                   = 30 -> null
          - unhealthy_threshold                       = 3 -> null
            # (1 unchanged attribute hidden)

          - match {
              - status_code = [
                  - "200-399",
                ] -> null
                # (1 unchanged attribute hidden)
            }
        }
      - probe {
          - id                                        = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.Network/applicationGateways/atlasssian-nonprod-app-gateway/probes/appgw-probe-jira" -> null
          - interval                                  = 30 -> null
          - minimum_servers                           = 0 -> null
          - name                                      = "appgw-probe-jira" -> null
          - path                                      = "/jira/status" -> null
          - pick_host_name_from_backend_http_settings = true -> null
          - port                                      = 0 -> null
          - protocol                                  = "Http" -> null
          - timeout                                   = 30 -> null
          - unhealthy_threshold                       = 3 -> null
            # (1 unchanged attribute hidden)

          - match {
              - status_code = [
                  - "200-399",
                ] -> null
                # (1 unchanged attribute hidden)
            }
        }
      + probe {
          + id                                        = (known after apply)
          + interval                                  = 30
          + minimum_servers                           = 0
          + name                                      = "appgw-probe-cnf"
          + path                                      = "/confluence"
          + pick_host_name_from_backend_http_settings = true
          + protocol                                  = "Http"
          + timeout                                   = 30
          + unhealthy_threshold                       = 3
            # (1 unchanged attribute hidden)
        }
      + probe {
          + id                                        = (known after apply)
          + interval                                  = 30
          + minimum_servers                           = 0
          + name                                      = "appgw-probe-crd"
          + path                                      = "/crowd"
          + pick_host_name_from_backend_http_settings = true
          + protocol                                  = "Http"
          + timeout                                   = 30
          + unhealthy_threshold                       = 3
            # (1 unchanged attribute hidden)
        }
      + probe {
          + id                                        = (known after apply)
          + interval                                  = 30
          + minimum_servers                           = 0
          + name                                      = "appgw-probe-jira"
          + path                                      = "/jira/status"
          + pick_host_name_from_backend_http_settings = true
          + protocol                                  = "Http"
          + timeout                                   = 30
          + unhealthy_threshold                       = 3
            # (1 unchanged attribute hidden)
        }

      - request_routing_rule {
          - http_listener_id            = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.Network/applicationGateways/atlasssian-nonprod-app-gateway/httpListeners/appgw-http-listener" -> null
          - http_listener_name          = "appgw-http-listener" -> null
          - id                          = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.Network/applicationGateways/atlasssian-nonprod-app-gateway/requestRoutingRules/appgw-routing-rule" -> null
          - name                        = "appgw-routing-rule" -> null
          - priority                    = 1 -> null
          - rule_type                   = "PathBasedRouting" -> null
          - url_path_map_id             = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.Network/applicationGateways/atlasssian-nonprod-app-gateway/urlPathMaps/appgw-url-map-path" -> null
          - url_path_map_name           = "appgw-url-map-path" -> null
            # (8 unchanged attributes hidden)
        }
      + request_routing_rule {
          + backend_address_pool_id     = (known after apply)
          + backend_address_pool_name   = "appgw-backend-pool-cnf"
          + backend_http_settings_id    = (known after apply)
          + backend_http_settings_name  = "appgw-backend-settings-cnf"
          + http_listener_id            = (known after apply)
          + http_listener_name          = "appgw-http-listener"
          + id                          = (known after apply)
          + name                        = "appgw-routing-rule"
          + priority                    = 1
          + redirect_configuration_id   = (known after apply)
          + rewrite_rule_set_id         = (known after apply)
          + rule_type                   = "PathBasedRouting"
          + url_path_map_id             = (known after apply)
          + url_path_map_name           = "appgw-url-map-path"
            # (2 unchanged attributes hidden)
        }

        # (18 unchanged blocks hidden)
    }

  # azurerm_postgresql_database.confluence will be created
  + resource "azurerm_postgresql_database" "confluence" {
      + charset             = "UTF8"
      + collation           = "English_United States.1252"
      + id                  = (known after apply)
      + name                = "confluence-nonprod"
      + resource_group_name = "atlassian-nonprod-rg"
      + server_name         = "atlassian-nonprod-server"
    }

  # azurerm_postgresql_database.confluence-prd will be destroyed
  # (because azurerm_postgresql_database.confluence-prd is not in configuration)
  - resource "azurerm_postgresql_database" "confluence-prd" {
      - charset             = "UTF8" -> null
      - collation           = "English_United States.1252" -> null
      - id                  = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.DBforPostgreSQL/servers/atlassian-preprod-server/databases/confluence-prd" -> null
      - name                = "confluence-prd" -> null
      - resource_group_name = "atlassian-nonprod-rg" -> null
      - server_name         = "atlassian-preprod-server" -> null
    }

  # azurerm_postgresql_database.crowd will be created
  + resource "azurerm_postgresql_database" "crowd" {
      + charset             = "UTF8"
      + collation           = "English_United States.1252"
      + id                  = (known after apply)
      + name                = "crowd-nonprod"
      + resource_group_name = "atlassian-nonprod-rg"
      + server_name         = "atlassian-nonprod-server"
    }

  # azurerm_postgresql_database.crowd-prd will be destroyed
  # (because azurerm_postgresql_database.crowd-prd is not in configuration)
  - resource "azurerm_postgresql_database" "crowd-prd" {
      - charset             = "UTF8" -> null
      - collation           = "English_United States.1252" -> null
      - id                  = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.DBforPostgreSQL/servers/atlassian-preprod-server/databases/crowd-prd" -> null
      - name                = "crowd-prd" -> null
      - resource_group_name = "atlassian-nonprod-rg" -> null
      - server_name         = "atlassian-preprod-server" -> null
    }

  # azurerm_postgresql_database.jira will be created
  + resource "azurerm_postgresql_database" "jira" {
      + charset             = "UTF8"
      + collation           = "English_United States.1252"
      + id                  = (known after apply)
      + name                = "jira-nonprod"
      + resource_group_name = "atlassian-nonprod-rg"
      + server_name         = "atlassian-nonprod-server"
    }

  # azurerm_postgresql_database.jira-prd will be destroyed
  # (because azurerm_postgresql_database.jira-prd is not in configuration)
  - resource "azurerm_postgresql_database" "jira-prd" {
      - charset             = "UTF8" -> null
      - collation           = "English_United States.1252" -> null
      - id                  = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.DBforPostgreSQL/servers/atlassian-preprod-server/databases/jira-prd" -> null
      - name                = "jira-prd" -> null
      - resource_group_name = "atlassian-nonprod-rg" -> null
      - server_name         = "atlassian-preprod-server" -> null
    }

  # azurerm_postgresql_server.atlassian-preprod-server will be destroyed
  # (because azurerm_postgresql_server.atlassian-preprod-server is not in configuration)
  - resource "azurerm_postgresql_server" "atlassian-preprod-server" {
      - administrator_login               = (sensitive value) -> null
      - administrator_login_password      = (sensitive value) -> null
      - auto_grow_enabled                 = true -> null
      - backup_retention_days             = 7 -> null
      - create_mode                       = "Default" -> null
      - fqdn                              = "atlassian-preprod-server.postgres.database.azure.com" -> null
      - geo_redundant_backup_enabled      = false -> null
      - id                                = "/subscriptions/b7d2bd5f-b744-4acc-9c73-e068cec2e8d8/resourceGroups/atlassian-nonprod-rg/providers/Microsoft.DBforPostgreSQL/servers/atlassian-preprod-server" -> null
      - infrastructure_encryption_enabled = false -> null
      - location                          = "uksouth" -> null
      - name                              = "atlassian-preprod-server" -> null
      - public_network_access_enabled     = true -> null
      - resource_group_name               = "atlassian-nonprod-rg" -> null
      - sku_name                          = "B_Gen5_2" -> null
      - ssl_enforcement_enabled           = true -> null
      - ssl_minimal_tls_version_enforced  = "TLS1_2" -> null
      - storage_mb                        = 51200 -> null
      - tags                              = {
          - "application"  = "atlassian"
          - "builtFrom"    = "hmcts/atlassian-infrastructure"
          - "businessArea" = "Cross-Cutting"
          - "environment"  = "staging"
        } -> null
      - version                           = "11" -> null
    }

  # azurerm_postgresql_server.atlassian-server will be created
  + resource "azurerm_postgresql_server" "atlassian-server" {
      + administrator_login              = (sensitive value)
      + administrator_login_password     = (sensitive value)
      + auto_grow_enabled                = true
      + backup_retention_days            = (known after apply)
      + create_mode                      = "Default"
      + fqdn                             = (known after apply)
      + geo_redundant_backup_enabled     = false
      + id                               = (known after apply)
      + location                         = "uksouth"
      + name                             = "atlassian-nonprod-server"
      + public_network_access_enabled    = true
      + resource_group_name              = "atlassian-nonprod-rg"
      + sku_name                         = "B_Gen5_2"
      + ssl_enforcement_enabled          = true
      + ssl_minimal_tls_version_enforced = "TLS1_2"
      + storage_mb                       = 51200
      + version                          = "11"
    }

Plan: 4 to add, 1 to change, 4 to destroy.


Remove docs part from website.

Remove docs part from website.
Signed-off-by: Gabriel Mocanu<EMAIL_ADDRESS>

I don't see your point. Those links are for Github and you can see them and the end of the page with Read more...

I mean that in order to add a new track to the bar at the top of the page, one has to link it manually, like so [1]. This doesn't seem to be the case for /docs/. Are you sure it isn't linked somewhere else that you forgot to remove and we don't end up with a broken link?
[1] https://github.com/security-summer-school/security-summer-school.github.io/blob/afee713026f232df68ec8903bb835ae258b1d3fb/content/en/_index.html#L46-L48

You don't have to add it manually. The code that you posted is for this bar that you can find in the home page at the end of the scroll.

Interesting. My bad, then. In this case, I think this is good to go.


Feature: Add support for dragging recent files

What's the Problem?
You can't drag a file from recent files
Solution/Idea
Add support for dragging items from Recent Files widget into other programs

Hello!
May I take this issue?
I am working around the dragging stuff, gonna make a PR for the Issue #8677 and go for this feature afterwards.

Thank you for your feedback, I added this to the todo list.

Working on this task

We should be able to try this again now that #16628 has been merged.


package blang

Can you accept this pull request? Lines hash and breaks are ignored. It's just adding blang to the repos.
Here is the project:
https://github.com/Ganesha2282882/blang

Looks good, but

Use github releases (looks like blang has a release for 26.0)
When the url is git, no hash is needed
Pacstall won't know about the files unless used with stow. Replace install with this:

sudo mkdir -p /usr/src/pacstall/blang/bin
sudo cp blang /usr/src/pacstall/blang/bin
sudo chmod 755 /usr/src/pacstall/blang/bin/blang

OK.

Fixed now.


How to overwrite ELASTICSEARCH_HOSTS and KIBANA_HOST in entrypoint.sh

Hi
I want to use remote elasticsearch and kibana for filebeats to send logs to. How do I overwrite the ELASTICSEARCH_HOSTS and KIBANA_HOST that are being set in the entrypoinst.sh when the container is started? Or would it be more ovious to use the vanilla filebeats docker from elastic instead? I also want to use your zeek docker, but I think that would work as-is.
Thanks
/klaus

Another option would be to fork the repo, change it and rebuild. But honestly that seems to be a lot of work just for a few hostnames that needs to be changed. I won't rule out that this is newbie questions. If so, I humbly apologize but would very much like a few pointers as to where I can find an answer.
Thanks for your great work :)

Allright, been doing a bit of investigation. I need to override the entrypoint. No problem, I do that with the --entrypoint argument to docker run. Where it gets tricky is how I override the two bash variables that defines elasticsearch and kibana hosts.
This doesn't work:
docker run --init -v pwd/docker_volumes/zeek_logs:/pcap  --entrypoint="ELASTICSEARCH_HOSTS=<IP_ADDRESS>:9200 KIBANA_HOST=<IP_ADDRESS>:5601 /usr/local/bin/entrypoint" blacktop/filebeat:7.4.0
[FATAL tini (7)] exec ELASTICSEARCH_HOSTS=<IP_ADDRESS>:9200 KIBANA_HOST=<IP_ADDRESS>:5601 /usr/local/bin/entrypoint failed: No such file or directory
I am guessing that I am doing something basic bash-stuff wrong.  It's really hard to google an answer to this :)


z-index issues with cell-title-toolbar

issues with z-index interactions between sash, nb sticky lines, and cell-title-toolbar.

the cell-title-toolbar was given the highest z-index to avoid issues with the sash.
the sticky lines are given a z-index under the sash to avoid overlapping visual bugs

Need to think about how the cell list view could be reworked to avoid this. The 'overlay' technique creates the z-index issues, so maybe needs a rework to have the cell list view sizing adjust alongside sticky...

fixed via #201837


Create clickjacking-response.md

Document a canned response to the common reports of clickjacking against kubernetes.io

/lgtm


Is there support for std++14/17?

Issue description
Dear team,
My existing CMake project relies on std++17, could I mix and match it with raylib, given that your CMake states:
set(CMAKE_C_FLAGS "-std=gnu99 ${CMAKE_C_FLAGS}")
set(CMAKE_C_STANDARD 11)
Whereas mine:
LANGUAGES CXX C
and:
set_target_properties(${EXAMPLE_001_EXE} PROPERTIES
        CXX_STANDARD 17
        CXX_STANDARD_REQUIRED YES)

Environment
Windows 10, VC 19, Clion + CMake.
Code Example
Provided above, this is a compilation / cmake question.
Thanks,

Made some progress, I can compile link and execute my code.

Thanks for your response! I moved from NanoUI to RayLib after endless issues with CMake.
So far so good, I shall keep you posted:
https://github.com/QuantScientist/TorchRayLib

@QuantScientist Nice! I'll close this issue for now. Great project by the way! :D


currishness, enwreathe

This pull request was generated by the 'mq' tool
[test]
flake rate: 0.4
logical conflict every: 100
sleep for: 300s
[pullrequest]
requests per hour: 30
deps=[c,e]

/trunk merge


Button hasn't updated to new colour

On the 'Volunteer' page:

E2 U2 S4 C8: P16

Checked 13/10/2020 and still needs action.

The Volunteer page has been updated on t3 — needs a sync to appear on live.

Thank you, @AlOneill. I will move to 'Ready for User Testing'

Button is Purple, not ornage. If that is correct this one can be closed.
Geoff


VS Code is still adding /d /c to task commands

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

VS Code Version: 1.74.2
OS Version: Windows 11

Steps to Reproduce (on Windows):

Have an npm task that starts a script.
In the User Preferences, set "terminal.integrated.automationProfile.windows" as such:"terminal.integrated.automationProfile.windows": {
    "path": "nu.exe",
    "args": ["-c"],
},

This is an example; this also works with, e.g. pwsh.exe / ["-Command"].
Run the task.
VS Code will run nu.exe -c /d /c yarn run name rather than nu.exe -c "yarn run name".

This was marked as fixed in #93437, but it isn't. A workaround is given, but is IMO unacceptable. If I modify my shell in user settings, I shouldn't have to modify a tasks.json that many users will use, and whose preferred shells are different. More importantly, a single shell can be specified, so /bin/sh won't work for users on Windows, and cmd.exe / pwsh.exe / whatever won't work for users on Linux. This makes terminal.integrated.automationProfile.* essentially useless.
Since terminal.integrated.automationProfile.* takes an args argument, why add unwanted arguments to it? I understand why defaults may be nice (e.g. set args to ["-Command"] when path is pwsh.exe), but if preferences are explicitly specified, why append new arguments to them if they only work with a single shell?

I'm running into this today, version 1.76.2 while trying to execute a shell script:
The terminal process "C:\msys64\msys2_shell.cmd -defterm -here -no-start -mingw64 /d /c .TransferBuild.sh" terminated with exit code: 127.

I'm using Makefile Tools with MSYS2 build environment and the same bug occurs:
vscode version 1.77.3
settings.json:
	"terminal.integrated.automationProfile.windows": {
		"path": "E:\\msys64\\msys2_shell.cmd",
		"args": ["-msys2", "-defterm", "-no-start", "-where", "${workspaceFolder}"],
	},
	"terminal.integrated.defaultProfile.windows": "MSYS2",

  *  Executing task: 'make.exe' 'all'

  /d: /d: Is a directory

   *  The terminal process "E:\msys64\msys2_shell.cmd -msys2 -defterm -no-start -where E:\dev\npu /d /c 'make.exe' 'all'" terminated with exit code: 126.
   *  Terminal will be reused by tasks, press any key to close it.

Version 1.85.1 still has this problem.

Version 1.91.1 still has it

1.95.3 is still showing this behavior. Using msys64 as a build and test system with tasks and launch scripts is a major pain without being able to use the msys setup script. Manually managing the environment is prone to human error.
Is there any progress on completing this issue or, or merging Legend-Master's solution?


Remove limit on expansions

I am unable to use VSCode for Emmet expansions since I need larger expansions which are able to be done in SublimeText. For example, tag#id$$$*400>some-thing{PLACEHOLDER_1}+some-thing-else{PLACEHOLDER_2}.
This is extremely useful for when parsing large datasets using a regex and inputting data in auto-numbered columns for XML data tables.
It would be nice to not have to keep SublimeText installed for this one small use case.

I know it's old threat but maybe someone will find it useful.
You can change Emmet creating multiple tags limit in file:
Microsoft VS Code\resources\app\extensions\emmet\node_modules\vscode-emmet-helper\out\emmetHelper.js
const multipleMatch = abbreviation.match(/\*(\d+)$/);
if (multipleMatch) {
    return parseInt(multipleMatch[1], 10) <= 100;
}

    return parseInt(multipleMatch[1], 10) <= 100;

change 100 to number that you need, but be careful cause depending on your pc it can hang vscode if you put too much

Hmm useful, but unless you can fix it in a way which persists across updates like the config file it's not really a proper fix.

True, but that's the job for Microsoft, not random user like me ^^

Closing this issue: this package is now using a maxRepeat of 1000.
The maxRepeat field is here:
https://github.com/emmetio/emmet/blob/master/packages/abbreviation/src/types.ts
And we're now calling it here:
https://github.com/microsoft/vscode-emmet-helper/blob/master/src/emmetHelper.ts#L681

Verification steps:

Expand the abbreviation ul>li*10000
Verify that 1002 lines are produced (2 for the ul 1000 for the li)

Verification steps:

Expand the abbreviation ul>li*10000
Verify that 1002 lines are produced (2 for the ul 1000 for the li)


expose ALL_WEEKDAYS constant from index file

I would like to utilize the ALL_WEEKDAYS constant in my app to create a select with weekdays as options. Would love to hear your thoughts and discuss alternatives if you would like to limit the amount of exports in the index file.
Thank you!
Thanks for contributing to rrule!
To submit a pull request, please verify that you have done the following:

[x] Merged in or rebased on the latest master commit
[ ] Linked to an existing bug or issue describing the bug or feature you're
addressing
[ ] Written one or more tests showing that your change works as advertised

Thanks for the contribution!


adding swift wrapper for DiagnosticDataViewer

Merging to unblock. The iOS build is stuck not related to this PR.


Fix a bug that CSS is not processed correctly when ananke_process_css = true and HUGO_ENV=production

Fix a bug that CSS is not processed correctly when ananke_process_css = true and HUGO_ENV=production.

Thanks @ngmy. I think this has been addressed by https://github.com/theNewDynamic/gohugo-theme-ananke/commit/6eb54ab5fd8b4932b0123d1fdf94d8026aa67ef6 which will be part of an imminent release


No styles are specified

No styles are specified errors when executing await RouteTaskCreateAsync. Before executing RouteTaskCreateAsync, it seems that DirectionsStyle can not be configured. If so, can Someone write detailed steps?

@zhongshuiyuan Apologies for the late response.
Can you please reply with information about the ArcGIS Server you're connecting to? This looks like it may be a server error.
Looking at the service used in the samples, there are direction styles defined - NA Desktop, NA Navigation, NA Campus . Does the service page for your service look similar?

I got it, Thinks.


docs: Add machine lifecycle diagram

cc @crawford @sym3tri

Github doesn't show svg's very well, switched to a png.

also @robszumski


[AutoDiff] TF-1041 is done

This test fails with the following error when the implicit differentiable attr is removed:
/usr/local/google/home/marcrasi/swift-base/swift/test/AutoDiff/protocol_requirement_autodiff.swift:177:8: error: type 'MoreDifferentiableFooStruct' does not conform to protocol 'DifferentiableFoo'
struct MoreDifferentiableFooStruct: MoreDifferentiableFoo {
       ^
/usr/local/google/home/marcrasi/swift-base/swift/test/AutoDiff/protocol_requirement_autodiff.swift:174:8: note: protocol requires function 'foo' with type '(MoreDifferentiableFooStruct.T) -> Tracked<Float>'; do you want to add a stub?
  func foo(_ x: T) -> Tracked<Float>
       ^
/usr/local/google/home/marcrasi/swift-base/swift/test/AutoDiff/protocol_requirement_autodiff.swift:167:18: note: protocol requires nested type 'T'; do you want to add it?
  associatedtype T: Differentiable
                 ^

Therefore, TF-1041 is done and we can remove the comment.

@swift-ci Please test tensorflow


A lot of warnings after adding CarouselView.FormsPlugin

I created a new .net standard Xamarin forms project and after adding CarouselView from nuget and build, 26 warnings shows up.
I have called CarouselViewRenderer.Init(); in MainActivity.cs
My environment:
FormsPlugin 5.2.0
Xamarin.Forms <IP_ADDRESS>2510 ( also tried the latest one, still getting the warnings)
Warnings:
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(2,2): Warning XA0106: Skipping test.Droid.Resource.Animation.design_fab_in. Please check that your Nuget Package versions are compatible. (XA0106) (test.Android)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(2,2): Warning XA0106: Skipping test.Droid.Resource.Animation.design_fab_out. Please check that your Nuget Package versions are compatible. (XA0106) (test.Android)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(2,2): Warning XA0106: Skipping test.Droid.Resource.Color.abc_tint_switch_thumb. Please check that your Nuget Package versions are compatible. (XA0106) (test.Android)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(2,2): Warning XA0106: Skipping test.Droid.Resource.Color.design_textinput_error_color_dark. Please check that your Nuget Package versions are compatible. (XA0106) (test.Android)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(2,2): Warning XA0106: Skipping test.Droid.Resource.Color.design_textinput_error_color_light. Please check that your Nuget Package versions are compatible. (XA0106) (test.Android)
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets(2,2): Warning XA0106: Skipping test.Droid.Resource.Layout.abc_action_bar_view_list_nav_layout. Please check that your Nuget Package versions are compatible. (XA0106) (test.Android)
and a lot more similar warnings (26 in total)
thanks

hi
try this https://github.com/AndreiMisiukevich/CardView

thanks a lot, I will give it a try

This warnings will disappear when i release the new version that will support XF.3.4.x and latest Android packages.

still getting error in XF.3.6. and plugin version 5.2.0

please solve this at earliest


Proposal: Introduce bal protoc command to generate source code from .proto files

Summary

The official tool that generates source files from .proto files is protoc. Need to introduce a Ballerina tool that is compatible with protoc.
Goals

Ballerina protobuf generation tool should be in sync with other programming languages such as python and go.
Motivation

To deprecate the bal grpc command and introduce the bal protoc command which is more compatible with protoc.
Description

The current bal grpc command generates source code from a .proto file. The source code includes messages and message encode/decode related code and gRPC client codes. However, this command is not accurate since it combines protobuf with gRPC which are two different concepts.
Other programming languages such as go and python have protoc commands to generate source code from .protoc files. This only generates messages and messages encode/decode related code. The grpc is a plugin on top of that which generates gRPC-related code. For instance,
protoc -I product_info.proto --go_out=plugins=grpc:go/server/ecommerce

In the above command, the grpc is defined as a plugin. We need to introduce a similar command to generate source code from .proto files.
Command:
bal protoc
Flags:
--out | -o - Generated Ballerina source files location with messages and message encode/decode related code
--grpc-out | -g - Generated Ballerina source files location with messages and message encode/decode related code and the services-related code
--imports | -i - Path to a directory in which to look for .proto files when resolving import directives
--grpc-opt - Options to be passed when generating messages and message encode/decode related code and the services-related code
Currently, only mode is a possible option. User can pass  --grpc-opt=mode=service to generate sample service source code or  --grpc-opt=mode=client to generate sample client source code.
Example:
Executing the following command will generate messages and message encode/decode related code.
bal protoc --out go/server/e-commerce hello.proto

Executing the following command will generate messages and message encode/decode related code and the services-related code.
bal protoc --grpc-out go/server/e-commerce --grpc-opt=mode=service hello.proto

Testing

Execute the command with --out flag. Verify that only the messages and message encode/decode related code are generated.
Execute the command with the --grpc-out flag. Verify that messages and messages encode/decode related code and the services-related code are generated.
Assert the content of the generated commands.
Assert that the generated source code do not contain any semantic errors or syntax errors.

The protoc command is used for the protobuf, which only handles messages and message encode/decode related code generation. grpc is a plugin on top of it. better, we look into that aspect as well.
e.g: in golang,
protoc -I product_info.proto --go_out=plugins=grpc:go/server/ecommerce

The latest golang protoc tool commands have been changed. please check the doc[1]
Shall we follow the same approach for the new protoc commands? like,
bal protoc -i --grpc-out go/server/e-commerce --grpc-opt=mode=service hello.proto

Let's list down all parameters.

https://grpc.io/docs/languages/go/quickstart/

LGTM. For the first iteration, we can omit --out parameter as we do not support to use protoc for other protocols. We can introduce once we have the support

@sameerajayasoma @shafreenAnfar can you check and approve

I also suggested this sometime back. But now I have a different view on this.
In the context of Ballerina, this tool generates the Ballerina gRPC service and the client object. By default, it uses the protobuf encoding.  AFAIK, gRPC is not tied to protobuf. See: https://grpc.io/blog/grpc-with-json/
Since the main focus of this tool is to generate Ballerina gRPC services and clients, the current tool name is correct. Let's introduce an option to change the default encoding/serialization to JSON or other serializations.

I want to suggest some changes to bal grpc command signature to make it consistent with other bal commands.
Most of the sub-commands in the bal tool use the following convention:
bal  <subcommand>  <input>
The default output location depends on the particular command, and the location can be customized with the -o <output>, --output <output> option.
For example:

bal grpc demo.proto

If the command is executed inside the package root, copy the generated sources into the generated directory.

I will create another issue with the complete suggestion.

I also suggested this sometime back. But now I have a different view on this.
In the context of Ballerina, this tool generates the Ballerina gRPC service and the client object. By default, it uses the protobuf encoding. AFAIK, gRPC is not tied to protobuf. See: https://grpc.io/blog/grpc-with-json/

No, we need to consider this as a protobuf tool.

Since the main focus of this tool is to generate Ballerina gRPC services and clients, the current tool name is correct. Let's introduce an option to change the default encoding/serialization to JSON or other serializations.


Fix(eos_cli_config_gen): Fix typo in router-bgp.j2

Change Summary
Fixes a typo in the router-bgp.j2 template of eos_cli_config_gen to resolve issues when bfd is set to False under the neighbor configuration.
Related Issue(s)
Fixes #2752
Component(s) name
arista.avd.eos_cli_config_gen
Proposed changes
Revise {{ neighbo.ip_address }} to {{ neighbor.ip_address }}
How to test
Added both BFD True and False use cases to test tenant configurations in the 'evpn_underlay_ebgp_overlay_ebgp' molecule  within the bgp_peers configuration section.
Checklist
User Checklist

N/A

Repository Checklist

[X ] My code has been rebased from devel before I start
[X ] I have read the CONTRIBUTING document.
[X ] My change requires a change to the documentation and documentation have been updated accordingly.
[X ] I have updated molecule CI testing accordingly. (check the box if not applicable)

@carlbuchmann - we will need to cherry-pick this for 3.8.x

@gmuloc I've added the additional test as requested.

@adietrich-ussignal - while reviewing with @gmuloc we noticed another behavior at the cli that required fixing:

no neighbor {{ neighbor.ip_address }} bfd should only be generated when that device is also defined in a peer_group. This was verified at the CLI with EOS version 4.29.3M.
This needed fixing in both the vrf and within the default context.

We also moved all testing to eos_cli_config_gen unit tests.


Meta: Create Channel management-plugin.

For #15.

This now exists: https://github.com/dazeus/dazeus-plugin-channels


No module named 'roslaunch'

I have two ros versions on my VM, ros-noetic for ROS1 and ros-foxy for ROS2. I have sourced the diablo_ws for ros-foxy and colcon to build the package, but when I try to launch any of the launch files in the simulation package, I receive the following error:
Task exception was never retrieved
future: <Task finished name='Task-2' coro=<LaunchService._process_one_event() done, defined at /opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py:226> exception=InvalidLaunchFileError('py')>
Traceback (most recent call last):
File "/home/omar/.local/lib/python3.8/site-packages/xacro/init.py", line 185, in eval_extension
from roslaunch import substitution_args
ModuleNotFoundError: No module named 'roslaunch'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_description_sources/any_launch_file_utilities.py", line 53, in get_launch_description_from_any_launch_file
return loader(launch_file_path)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_description_sources/python_launch_file_utilities.py", line 68, in get_launch_description_from_python_launch_file
return getattr(launch_file_module, 'generate_launch_description')()
File "/home/omar/diablo_ws/install/diablo_simulation/share/diablo_simulation/launch/ctrl.launch.py", line 15, in generate_launch_description
robot_description_config = xacro.process_file(xacro_file)
File "/home/omar/.local/lib/python3.8/site-packages/xacro/init.py", line 1020, in process_file
process_doc(doc, **kwargs)
File "/home/omar/.local/lib/python3.8/site-packages/xacro/init.py", line 967, in process_doc
eval_all(doc.documentElement, macros, symbols)
File "/home/omar/.local/lib/python3.8/site-packages/xacro/init.py", line 839, in eval_all
process_include(node, macros, symbols, eval_all)
File "/home/omar/.local/lib/python3.8/site-packages/xacro/init.py", line 420, in process_include
for filename in get_include_files(filename_spec, symbols):
File "/home/omar/.local/lib/python3.8/site-packages/xacro/init.py", line 371, in get_include_files
filename_spec = abs_filename_spec(eval_text(filename_spec, symbols))
File "/home/omar/.local/lib/python3.8/site-packages/xacro/init.py", line 628, in eval_text
results.append(handle_extension(lex.next()[1][2:-1]))
File "/home/omar/.local/lib/python3.8/site-packages/xacro/init.py", line 618, in handle_extension
return eval_extension("$(%s)" % eval_text(s, symbols))
File "/home/omar/.local/lib/python3.8/site-packages/xacro/init.py", line 189, in eval_extension
raise XacroException("substitution args not supported: ", exc=e)
xacro.XacroException: substitution args not supported:  No module named 'roslaunch'
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 228, in _process_one_event
await self.__process_event(next_event)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_service.py", line 248, in __process_event
visit_all_entities_and_collect_futures(entity, self.__context))
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures
futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 45, in visit_all_entities_and_collect_futures
futures_to_return += visit_all_entities_and_collect_futures(sub_entity, context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/utilities/visit_all_entities_and_collect_futures_impl.py", line 38, in visit_all_entities_and_collect_futures
sub_entities = entity.visit(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/action.py", line 108, in visit
return self.execute(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/actions/include_launch_description.py", line 130, in execute
launch_description = self.__launch_description_source.get_launch_description(context)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_description_source.py", line 84, in get_launch_description
self._get_launch_description(self.__expanded_location)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_description_sources/any_launch_description_source.py", line 53, in _get_launch_description
return get_launch_description_from_any_launch_file(location)
File "/opt/ros/foxy/lib/python3.8/site-packages/launch/launch_description_sources/any_launch_file_utilities.py", line 56, in get_launch_description_from_any_launch_file
raise InvalidLaunchFileError(extension, likely_errors=exceptions)
launch.invalid_launch_file_error.InvalidLaunchFileError: Caught exception when trying to load file of format [py]: substitution args not supported:  No module named 'roslaunch'
I have deleted the ros-noetic version permanently guessing the issue is related to it, but the same error occurs. I hope anyone can help with that.

ros2

This issued is solved and closed.


[toward #5102, refuse ancient servers] RealmInputScreen: Improve validation logic a bit

On the realm-input screen (titled "Welcome"), this changes the input validation logic to be more sensible, I think, and more like what we do elsewhere, like the compose box.
Before, we used a line of red text to represent both client-side validation errors ("invalid URL") and errors we get from the network request (like we've reached some server but it's not actually a Zulip server). The line of text would go away the next time the user submitted, meaning the user could change the input value to something like "chat.zulip.org", and for some time we'd still complain with "Cannot connect" or "Invalid URL" or "Use the server URL, not your email", and that seems confusing.
Also before, the on-submit logic disagreed with the submit button's disabled state about what the validation errors were: the former counted an email address as invalid, while the latter didn't.
Also before, when the submit button was disabled -- the input value was a URL that didn't parse -- you wouldn't get the validation message when you pressed it, because we weren't passing isPressHandledWhenDisabled to the button. You could only get the message to appear by triggering the TextInput's onSubmitEditing, e.g. by pressing the go/enter button on the software keyboard.
Here are some screen recordings from the old behavior. In a separate comment, I'll describe the new behavior in this PR and send some screen recordings of that.

For this one, notice:

I enter my email address. This is bad input, but the submit button doesn't tell me by graying itself out.
I press the submit button, and I get the red text that it's bad input.
I fix the input value by typing "chat.zulip.org" instead, but the message is still there, which is confusing.
(It would go away if I pressed the submit button, so at least there's that; I didn't do so in this recording.)

For this one, notice:

I enter "google.com".
I press the submit button, and I get the red-text line with "Cannot connect to server".
I change the input value by typing "chat.zulip.org" instead, but the message is still there, which is confusing.
(It would go away if I pressed the submit button, so at least there's that; I didn't do so in this recording.)

For this one, notice:

I type an invalid URL, "chat .zulip.org", and the submit button is disabled, signaling invalid input. (That's fine.)
When I press the submit button, it doesn't try the URL, but it also doesn't tell me that there's anything wrong with it, which could be frustrating.
(If I instead hit "go" on the software keyboard, not shown, the red text would show up. But not everyone will try that.)

OK, and after these changes:

For this one, notice:

I enter my email address. This is bad input, and the submit button tells me by graying out.
If I hit the submit button anyway, it tells me what's wrong, which is helpful.
There's no persistent message to bother me while I type something else to try, like the valid "chat.zulip.org".

For this one, notice:

I enter "google.com"
I hit submit, and it contacts Google but then tells me there's a problem.
There's no persistent message to bother me while I type something else to try, like the valid "chat.zulip.org".

For this one, notice:

I type an invalid URL, "chat .zulip.org", and the submit button is disabled, signaling invalid input.
If I hit the submit button anyway, it tells me what's wrong, which is helpful.

Thanks for the review! Revision pushed.

Thanks! Looks good; merging.

Thanks!

And synced with Transifex: c8af6d69e


Make tests more robust with environment variable checks

Background
Environment variables DAPR_RUNTIME_VERSION and DAPR_DASHBOARD_VERSION are used by e2e tests.
https://github.com/dapr/cli/blob/68c2ab84d48892a0deb42e8cb4c3b1fbc356927c/tests/e2e/kubernetes/kubernetes_test.go#L26-L29
https://github.com/dapr/cli/blob/050eb553f2304aca08cdcbae86f44a97552fa121/tests/e2e/standalone/standalone_test.go#L43-L47
Locally, when someone runs make test-e2e-sh without these environment variables set, it fails with the following error:

This does not give any idea on what the actual problem is.

CLI logs | head :
dapr ➜ /go/src/github.com/dapr/cli (master) $ make test-e2e-sh
# The desire here is to download this test dependency without polluting go.mod
# In golang >=1.16 there is a new way to do this with `go install gotest.tools/gotestsum@latest`
# But this doesn't work with <=1.15, so we do it the old way for now
# (see: https://golang.org/ref/mod#go-install)
GO111MODULE=off go get gotest.tools/gotestsum
gotestsum --jsonfile test_output.json --format standard-verbose -- -count=1 -tags=e2e ./tests/e2e/standalone/...
=== RUN   TestStandaloneInstall
=== RUN   TestStandaloneInstall/test_install
    standalone_test.go:190: {"time":"2022-03-07T12:36:21.3888015Z","status":"pending","msg":"Making the jump to hyperspace..."}
        {"time":"2022-03-07T12:36:21.3943455Z","status":"info","msg":"Installing runtime version "}
        {"time":"2022-03-07T12:36:22.1383481Z","status":"pending","msg":"Downloading binaries and setting up components..."}
        {"time":"2022-03-07T12:36:22.2067208Z","status":"failure","msg":"Downloading binaries and setting up components..."}
        {"time":"2022-03-07T12:36:22.2067746Z","status":"failure","msg":"docker: invalid reference format.\nSee 'docker run --help'.\n"}

    standalone_test.go:191:
                Error Trace:    standalone_test.go:191
                Error:          Received unexpected error:
                                exit status 1
                Test:           TestStandaloneInstall/test_install
                Messages:       init failed
=== RUN   TestStandaloneInstall/test_install_from_custom_registry
    standalone_test.go:199: Custom image registry is not set, skipping the test for now..
=== RUN   TestStandaloneInstall/test_run
=== RUN   TestStandaloneInstall/test_run/Normal_exit,_socket:_
    standalone_test.go:386: ℹ  Starting Dapr with id Hyenaberyl-Pixie. HTTP Port: 34507. gRPC Port: 44421
        ❌  fork/exec /home/dapr/.dapr/bin/daprd: no such file or directory

    standalone_test.go:387:
                Error Trace:    standalone_test.go:387
                Error:          Received unexpected error:
                                exit status 1
                Test:           TestStandaloneInstall/test_run/Normal_exit,_socket:_
                Messages:       run failed

Fix
Add checks for environment variables in the tests initialization and fail with a proper error message with they are missing.

@mukundansundar Can this issue be closed? see: https://github.com/dapr/cli/pull/945

@mukundansundar Can this issue be closed? see: #945

closing as part of previous milestone work.


Suggestion: Turn this collection of tips into a github pages site.

This is an awesome resource for whoever wants to learn more about CSS and its practical usage and i think a lot more people would benefit from it if the tips were in the form of documentation or bite sized blogs.

Thanks for the suggestion. It's an interesting idea and if I had the foresight when I started this repo years back I might have done it. Since then there have been several resources that have popped up as CSS resources like moderncss.dev, web.dev, and others. I don't think this would have the same impact or reach.


Is there a way to specify alternate row colors?

Is there a way to specify alternate row colors?

I will close any issue that is opened that doesn't fill out the form. Look at the demos, there is a example of this.


Modify Tooltip

Hallo, maybe someone can help, please? Thanks!

How to modify html of "Tooltip"?

For ex.

Currently there is no option to modify the HTML of the tooltip.
You can do it manually in the plugin https://github.com/object505/tipso/blob/master/src/tipso.js#L116


StreamedRequest Fails on Large File Upload in Chrome When Tab Not in Focus

Hello, first of all, thanks for the library and its maintenance. :)
Issue
We are experiencing an issue when uploading using the StreamedRequest. We are sending the file as the body of the request. Sometimes, for large files, for example, 500MiB, it causes the following error:
TypeError: Failed to fetch
POST https://example.com/upload net::ERR_FAILED

Steps to reproduce
Here are the steps to reproduce it - Using Chrome

Open a new instance
Try uploading a file of 600MB. You can use the openRead API from the File object.
As soon as the file starts uploading, switch to another app.
Let the page lose focus for at least 3 or 4 minutes and the upload fails.
If we come back after 3 or 4 minutes and it hasn't failed, let's switch away from the page for another 1 or 2 minutes.
Then, let's return to our page.
Upload fails.

Related Issues/PRs:
Possibly related to: https://github.com/w3c/ServiceWorker/issues/1246

Have you set BaseRequest.persistentConnection to false?
This may be the work of the browser, to kill inactive tabs e.g. new chromium "memory saver".
As a side note, I may suggest you to try to use WebSockets if you're explicitly targeting browser and control the server.
Alternatively background worker may be the key, but that would probably require either extension or "web app".

Thanks for answering! Do you have any guidance on how I could use the background worker + fetch? My app is primarily a Flutter Web app.

You would have to create dart script and manually compile it to JS, pass that script to worker.
Some docs from web package (upcoming js interop in replacement of dart:html, but they should be pretty much the same): https://api.flutter.dev/flutter/package-web_web/Worker-class.html
Also some old samples available: https://stackoverflow.com/questions/70880505/is-there-currently-a-way-to-compute-a-dart-function-with-webworkers
If you need to use some common infrastructure of the app at the web you have 2 ways:

Split up to some independent modules and import required parts in both the app and worker script.
Try to make a wrapper JS script that would alternate app entrypoint if it is run in web worker. (E.g. wapper sets some global variable, you check for it in main function and alternate to run worker instead of running app).

In any case you would need to some way of passing data to worker, you probably would want to send JS File to worker, here's some info https://stackoverflow.com/questions/33306015/pass-submited-file-to-web-worker-by-refference-with-as-little-overhead-as-possib
As a side note, this seems to be an interesting task, I'll probably try to make a module to simplify this, but no promises yet :P

Also there is seems to be a good solution in this package: https://pub.dev/packages/isolate_manager

I'll close this for now, as this is most likely a browser feature we can't do anything about.
(It's also reasonable to kill background tabs that just wasting bandwidth, browser is not aware what is good or useless job, like ad streaming on background tab).
For anyone stumble upon this issue here are 2 recommendations:

Suggest user not to unfocus tab (or tear it to new window and leave open on foreground)
Use extension to provide background tasks even when tab is closed

Thanks for the support and sorry for the late response. :(
We finally fixed the issue by mixing:

backpressure control https://github.com/ardriveapp/fetch_api/blob/ef5e490d063644d0e875a5402bcd9236e37bd2b1/lib/src/readable_stream_source/readable_stream_source.compatibility_layer.dart

and... removing the flutter_service_worker.js by using the pwa-strategy=none. https://github.com/ardriveapp/ardrive-web/pull/1500.

Actually, we can fix this issue by removing the following code on the flutter_service_worker.js.
.

We are researching more about what's the real reason for the flutter_service_worker.js killing our request, and as soon as I get a solution, I'd be happy to share it. Again, thanks!

Thank you for your investigations!
I'm kind of lost why backpressure may help here, even without it data must be buffered on browser side. Especially if request was in progress.
Later on when we update fetch_api to new interop I hope to add that feature to general interface.


Refactoring fetchQueryOverInterface within QueryManager

Working on #471.
TODO:

[x] Update CHANGELOG.md with your change
[x] Make sure all of the significant new logic is covered by tests
[x] Rebase your changes on master so that they can be merged easily
[x] Make sure all tests and linter rules pass

@stubailo what do you think

@Poincare do you think it would be valuable to start splitting this into multiple files? or would that just make the code harder to follow?

I don't think it would make sense to split most of this stuff into multiple files because it ends up using some of the instance variables of QueryManager. The fetchQueryOverInterface logic should stay in QueryManager in my opinion.

Looks good to me, let's merge as soon as CI passes


Enable Jetty sessions in Pac4jBundle

Very minor thing: as you know, Dropwizard does not enable sessions by default. It's easy to forget to enable them if using a pac4j client that requires them, so it might be useful to have some code that enables sessions if such a client has been specified.
public void build(Environment environment)
{
	boolean sessionsRequired = ...; // maybe from config?
	if (sessionsRequired)
	{
	    MutableServletContextHandler contextHandler = environment.getApplicationContext();
	    if (contextHandler.getSessionHandler() == null)
	    {
	        contextHandler.setSessionHandler(new SessionHandler());
	    }
	}

    ...
}

That's a good idea!


AO-17722: Update ThroughTraceCount

Put the ThroughTraceCount metric in the right place.

Codecov Report

Merging #167 (e5ab91f) into master (1be621f) will increase coverage by 0.07%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #167      +/-   ##
==========================================
+ Coverage   80.33%   80.40%   +0.07%
==========================================
  Files          40       40
  Lines        4262     4262
==========================================
+ Hits         3424     3427       +3
+ Misses        700      698       -2
+ Partials      138      137       -1

Impacted Files
Coverage Δ

v1/ao/internal/reporter/oboe.go
96.35% <100.00%> (ø)

v1/ao/internal/reporter/reporter_grpc.go
67.63% <0.00%> (+0.51%)
:arrow_up:

Continue to review full report at Codecov.

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


oguri: reduce supported platforms

Description of changes
This doesn't work on darwin which has no wayland support.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Since this is for wayland compositors, there are no other platforms to include here, right?

Usually I would inherit (wayland.meta) platforms;, however recently it bugged ofborg because God knows why wayland included Darwin support.

(have I said why I hate the linux-only approach of wayland?)

Wayland works on FreeBSD, and is not far off from NetBSD and OpenBSD.  I have a Nixpkgs branch that can build Sway for FreeBSD, but I'm still in the process of upstreaming it.


Add License

Thanks for bumping the app to use AssetMapper!
What's the license associated with this application?

MIT License added

Thanks!


Problem with updating (Update fails w/ and error message)

I am trying to update the cross references in my document but I keep getting an error
https://docs.google.com/document/d/1c4Rt-3Nu854qH-LVT5LLlbK6QoVSSB-tFeDLpelDw7Q/edit?usp=sharing

Hi Jonathan
It looks like the problem is with the formatting of the equation labels on page 3.
First they are both on the same line, which is not supported at the moment. The add on assumes that each entity is labelled separately. Second, they are formatted inside some sort of box that's not a table (?). Finally, one of them is subscript.
I don't know what aspect of this formatting is causing the error, but I can remove it by placing a single label on the line below the equation in place of what's there.
I think you're choice of formatting might sadly have pushed the add on past its limit! Is it possible to do simple single-line labels for your equations?

David Thorn
Thanks for telling me it is a formatting issue. I was just trying out your
program to see if it works. (I wanted to make sure it wouldn't be too buggy
to use.)
Thanks for responding so quickly.
Now I know what caused it so I can avoid it when writing.
Thanks again,
Jonathan
On Sat, May 15, 2021, 4:49 PM David Rowthorn @.***>
wrote:

Hi Jonathan
It looks like the problem is with the formatting of the equation labels on
page 3.
First they are both on the same line, which is not supported at the
moment. The add on assumes that each entity is labelled separately. Second,
they are formatted inside some sort of box that's not a table (?). Finally,
one of them is subscript.
I don't know what aspect of this formatting is causing the error, but I
can remove it by placing a single label on the line below the equation in
place of what's there.
I think you're choice of formatting might sadly have pushed the add on
past its limit! Is it possible to do simple single-line labels for your
equations?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/davidrthorn/cross_reference/issues/64#issuecomment-841661751,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQG24JHI6BTRVSCYIVNFJBLTNZ3V7ANCNFSM443DYRSQ
.

I discovered that I didn't put the reference link inside the equation box.
The update does it. I had formatted the line originally to have the
equation box in the center and the link justified to the right (on the same
line as the equation box)
On Sat, May 15, 2021 at 4:54 PM David Rowthorn @.***>
wrote:

Closed #64 https://github.com/davidrthorn/cross_reference/issues/64.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/davidrthorn/cross_reference/issues/64#event-4749997006,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AQG24JDKCOALWKZQKQDEBMTTNZ4KTANCNFSM443DYRSQ
.


What is the use of "Context" FASTER

I would like to know what is the real use of "Context".
The docs says.

User-defined context for the operation. Use Empty if there is no context necesssary

Currently my assumption Is, that it is for the application developers to send parameters to IFunctions, and read the values inside the IFunctions implementation. IFunctions can use the value to do some fine grained optimization / customization. If my assemption is correct, will it's usage stays same as now forever.
Thanks in advance.

That is correct. Context allows user to send some operation-specific information to the callback (because the operation call stack is not available in the asynchronous callback).


Outdated example in the personalized branch

The personalized branch in this repository contains an outdated example of the personalized exercise functionality. It does not utilize the personalized instance files properly in the grader since it does not read them through the mounting point /personalized_exercise/ (it did not exist in the early containers).
I have updated the aplus-manual repository with personalized exercise examples that work with Docker and use the special mounting point to read the instance files (in run.sh).

Removed old branch. Refer to manual for help with personalized exercises.


Document HTTP basic auth in the help page of the guide

See: #2459

PR author checklist:

[ ] Added changelog entry, using unclog.
[ ] Added tests: integration (for Hermes) or unit/mock tests (for modules).
[ ] Linked to GitHub issue.
[ ] Updated code comments and documentation (e.g., docs/).
[ ] Tagged one reviewer who will be the one responsible for shepherding this PR.

Reviewer checklist:

[ ] Reviewed Files changed in the GitHub PR explorer.
[ ] Manually tested (in case integration/unit/mock tests are absent).

I will add a changelog entry for #2508 and close it in the PR where we do the update to the next version of tendermint-rs which includes the fix for basic auth.


Custom command issue

Hello,
I am using custom commands to change the audiodevice with nircmd program. Everything works fine just after the commands are created. But after a while one or both of the commands stop working. Any suggestions?
Thanks in advance for any help.

This issue looks very similar but I have the latest version of HA and it doesn't help.

Superannoying bug! I have the same thing happing: testing works, mqtt explorer shows messages being sent, but HWS isn't firing the command. (Testing does work tho).

log20220118_001.txt
log20220118.txt
@sleevezipper do these logs help?
Suddenly the commands weren't working and after removing all files in C:\Users\LNDN\AppData\Local\Apps\2.0 and reinstalling; the commands worked again.

Just wondering if there is a fix yet or maybe even a work around as it has done this to me 3 days in a row now.  The first one in the Commands list works but the 2nd stops working until I remove and re-add.  Thankfully I don't seem to get an orphaned entity everytime I have done this. :-)


Update config.go

change ALPN to nil

Sorry, but the reason for this change is not obvious to me. Can you explain why this is necessary?


Uppcase Letter

Please guide me on how to make this model to work with uppercase letter also...

try setting TARGET_VOCAB_SIZE, and remove the "assert ord()"


CabalVM: Find a portable way to get the directory containing script

The run script doesn't work on Ubuntu. Find an alternative way to generate the script.

Fixed on master.


Allow setting the secret on tokens

On encode_and_sign allow setting a secret so that people can use a custom secret per token for signing. This would be considered 'advanced' since you'd need to provide an identifier to lookup the secret along with the token (maybe)

Perhaps allow reading an unverified header so that an identifier can be put in the header to look up the secret. The secret could then be found and the token can be verified

oh this one is done!


validate: Check configuration against JSON Schema

runtime-spec publishes a JSON Schema covering the configuration format (and other JSON related to runtime-spec).  Reduce duplication of effort by validating configurations against that schema.  For example this gives us lots of range checking:
$ ocitools validate
...
1. linux.resources.oomScoreAdj: Must be greater than or equal to -1000
...

without us having to duplicate all the range-input work that the runtime-spec folks have already done for us.
Only validating the JSON Schema is not sufficient, because --host-specific (e.g. you're running on a Linux box) and cross-property constraits (e.g. must create a new UTS namespace if you set hostname) are difficult/impossible to express in JSON Schema.
See related discussion in #195.

It seems you need to add gojsonschema to godeps

On Wed, Aug 17, 2016 at 11:43:25PM -0700, Ma Shimiao wrote:

It seems you need to add gojsonschema to godeps

I think I've figured that out now, although it took a few tries ;).  I
don't write much Go :p.

I'm not sure what's wrong with your PR. I can't find the changed validate.go in https://github.com/opencontainers/ocitools/pull/197/files

On Wed, Aug 17, 2016 at 11:57:43PM -0700, Ma Shimiao wrote:

I'm not sure what's wrong with your PR. I can't find the changed
validate.go in
https://github.com/opencontainers/ocitools/pull/197/files

That has:
Sorry, we could not display the entire diff because too many files
(392) changed.
I'd suggest trusting godep to have done the autogenerated commit
correctly, and then just reviewing 1.

It looks good to me.
Except, schema.json has been changed to config-shema.json in rumtime's upstream. It seems we have to change URL based on spec version in the later.

On Thu, Aug 18, 2016 at 12:18:41AM -0700, Ma Shimiao wrote:

Except, schema.json has been changed to config-shema.json in
rumtime's upstream. It seems we have to change URL based on spec
version in the later.

Yeah, that's the sort of thing we'll switch on in JSONSchemaURL.

I just pushed 9564b11 → bf09bc2 bumping the commit timestamp to get a
new hash, since GitHub seems to be confused by 9564b11 (never ran
Travis and think's @mrunalp is commenting on an outdated diff 1).

+1 for this, I'll remove duplicated checks like 'mandatory',  or specific enums ('SeccompArch") after this.
can we have less files in vendor? For example 'testsuite' is not necessary.

On Sun, Sep 11, 2016 at 06:45:56AM -0700, David Liang wrote:

can we have less files in vendor? For example 'testsuite' is not
necessary.

I've put my godep invocation in the bf09bc24 commit message.  If I
should be running something else to update godeps, let me know.

Review here seems to have stalled out.  I'm happy to rebase this when folks have time to take another look; just ping me here.

any more comments?   @opencontainers/runtime-tools-maintainers

Please contribute to master branch.

Please contribute to master branch.

I can rebase onto master and change the target branch without filing a new PR and fragmenting discussion.  Can you re-open this PR so I can do that?

Redirected the PR and rebased onto master with bf09bc2 → afd025f.

@wking   Can we use the schema file locally something as image-tools have done? I still don't think downloading is a good way.

On Mon, Jul 24, 2017 at 02:16:05AM +0000, Ma Shimiao wrote:

Can we use the schema file locally something as image-tools have
done?

Maintaining fs.go is a source of useless merge conflicts (e.g. see
@vbatts complaining about that in 1).

I still don't think downloading is a good way.

Previous discussion on that point starting with 2.  What are you
concerned about?  Bandwidth?  Network connectivity?  If you don't like
the explicit-local-directory approach 3, would you accept a local
cache (e.g.
$XDG_CACHE_HOME/oci-runtime-tools/runtime-spec/v1.0.0/config-schema.json
4)?  Then you'd only need network connectivity for the first load
for a given version.
Also note that the JSON Schema we want to use for a v1.0.0 config is
probably going to be a v1.0.x patch release to pick up fixes like
opencontainers/runtime-spec#889.

I've pushed afd025f → cfb2f1c to shift the vendored content from Godeps/_workspace/src to vendor, although I'm not sure why my godep didn't put them there on its own.

I don't think it's a good idea that whether you can validate bundle depends on if your network is OK or not.

But if do as image-spec is not a good way either, I can't think out any better ideas. Maybe we can try to let this in first? @opencontainers/runtime-tools-maintainers

On Fri, Jul 28, 2017 at 03:33:14AM +0000, Ma Shimiao wrote:

I don't think it's a good idea that whether you can validate bundle
depends on if your network is OK or not.

If you use any sort of local caching or --schema override, then
whether you can validate only depends on whether your network was
working when you decided to populate that cache.  And we can provide a
nice tar of all the relevant JSON schemas (under opencontainers.org?)
if we want to make that easy for package managers and such.

@q384566678    wking already works on this year ago +1:
we can review and work on this.

@liangchenye  and I plan to focus on this. @wking  please rebase and update.

ping @wking

Rebased and added some tests with cfb2f1c → 17713b5.

And CI failed

And CI failed

Looks like I forgot to format the Go.  Will do later today.

On Sat, Sep 09, 2017 at 01:52:07PM +0000, W. Trevor King wrote:

Looks like I forgot to format the Go.

Fixed the formatting with 17713b5 → ea82fad.

LGTM

@liangchenye  @q384566678  @mrunalp  PTAL

LGTM


Is it possible to notify client of server error with CloseConnectionMessage?

For ASP.NET SignalR, when initializing the connection fails, it returns a CloseConnectionMessage with error message, https://github.com/Azure/azure-signalr/blob/dev/src/Microsoft.Azure.SignalR.AspNet/Infrastructure/ServiceConnection.cs#L142, however this error message is ignored in the service side, and only the Close action works. Thus, what client experiences is an abnormal disconnection however without any information.

Done.


Manual notification close function

For my project I required a function to manually close a specific error notification, so I've decided to implement it and create as well a visual/testable interaction in the Wpf.Sample project (as shown below).

As I think this might be useful for everyone if the dev gives me branch creation permissions I'll push my version, to a separate branch.

I think, that you can fork project, push changes and then create new merge request?


Adding a test of TCP with TLS termination (test-only change)

This ended up getting a bit larger than I'd anticipated - please let me know if you'd prefer I split things up a bit.  Roughly:

moved existing TCP tests to tcp_proxy_integration_test.cc, adding tcp_proxy.json
moved a bunch of code from ssl_integration_test.cc to ssl_utility.cc, refactored to not use class members
refactor read-until-expected-data-read filter from integration.cc to a standalone class in utility.cc
Finally added a TCP+TLS filter and the SendTlsToTlsListener

I have this theory wherein I start flow control backup with just the network layer (TCP/TLS) but I wanted some basic integration tests before I tack on flow control and make sure resumption works :-)

@alyssawilk FYI TSAN is failing: https://travis-ci.org/lyft/envoy/jobs/248409059

Oy.  It looks like my Stats::IsolatedStoreImpl are not so isolated as
they're supposed to be.  Still trying to track down how* - given I'm out
tomorrow I'll ping back once I've sorted it out.
*It looks like FakeUpstream always has isolated stats
and createClientSslContext which I only ported appears to create its own as
well so more digging required.
On Thu, Jun 29, 2017 at 11:56 AM, Matt Klein<EMAIL_ADDRESS>wrote:

@alyssawilk https://github.com/alyssawilk FYI TSAN is failing:
https://travis-ci.org/lyft/envoy/jobs/248409059
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lyft/envoy/pull/1183#issuecomment-312011254, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ARYFvSBY2GgQBSlivB1Wl1BkEk_yuLdtks5sI8k5gaJpZM4OIG3l
.

Aha, I think I figured it out - new Scopes in the TestIsolatedStoreImpl
were accessing the underlying IsolatedStoreImpl directly, without grabbing
locks.
I've added a TestScopeWrapper for TestIsolatedStoreImpl as a workaround.
If anyone has a more elegant idea for a fix let me know, and no hurry on
reviews since now I'm actually heading out for the 4th.  happy long
weekend, all!
On Thu, Jun 29, 2017 at 3:09 PM, Alyssa (Rzeszutek) Wilk<EMAIL_ADDRESS>
wrote:

Oy.  It looks like my Stats::IsolatedStoreImpl are not so isolated as
they're supposed to be.  Still trying to track down how* - given I'm out
tomorrow I'll ping back once I've sorted it out.
*It looks like FakeUpstream always has isolated stats
and createClientSslContext which I only ported appears to create its own as
well so more digging required.
On Thu, Jun 29, 2017 at 11:56 AM, Matt Klein<EMAIL_ADDRESS>wrote:

@alyssawilk https://github.com/alyssawilk FYI TSAN is failing:
https://travis-ci.org/lyft/envoy/jobs/248409059
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/lyft/envoy/pull/1183#issuecomment-312011254, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ARYFvSBY2GgQBSlivB1Wl1BkEk_yuLdtks5sI8k5gaJpZM4OIG3l
.


fix(nfts): border radius for android ripple container

Description
Moves much of the custom styles logic into the parent view from the touchable to fix the board for Android ripple effect. Also switches to use Flatlist's ItemSeparatorComponent instead of margin bottom.

Android Before
Android After

Android Video
https://github.com/valora-inc/wallet/assets/26950305/40292736-90df-4f8d-91a5-0b0bf836a707
Test plan
Tested locally on Android
Related issues
Fixes: RET-795
Backwards compatibility
Yes

@kathaypacific adjusted to title to be a bit more specific. It's was actually the border radius and margins for all images, but last image being circular was just the easiest to show it on.


should allow user control phone number format

Good point. thanks!

Can you please make a new release on the npm?

@itrethan Sorry for the late of arrival :shipit: ✨  https://github.com/layerssss/Faker-zh-cn.js/releases/tag/0.5.9

@layerssss Thanks, but npm still has 0.5.8 as the latest.

Sorry, i forgot the npm publish, now it should be there.

On 31/05/2016, at 11:24 AM, itrethan<EMAIL_ADDRESS>wrote:
@layerssss https://github.com/layerssss Thanks, but npm still has 0.5.8 as the latest.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/layerssss/Faker-zh-cn.js/pull/1#issuecomment-222565225, or mute the thread https://github.com/notifications/unsubscribe/ABfNGD-oCdmdqvTHypH1vnajrjt8Qg2_ks5qG3G2gaJpZM4InQhP.