Informative events API

Sometimes I got an errors like this.
ERROR client_loop: twitch_irc::client::event_loop: Pool connection 68 has failed due to error (removing it): Did not receive a PONG back after sending PING

How to catch that errors in code? How to treat that?

They are informative, the library automatically handles the error recovery. I‘ll keep this ticket open though as a feature request to add a mechanism to receive the events through an API.

The library automatically handles the error recovery.

Glad to hear, because since that error comes, my program starts to work strange. But how to check in code, is enough channels already loaded? Maybe some traffic stats, or something like that? Should that be monitored outside of crate?

You can use the monitoring feature of this crate- You will need to set up an external Prometheus service to make use of it. An example is available here: https://github.com/robotty/twitch-irc-rs/blob/master/examples/metrics.rs
To view the metrics collected through Prometheus, which is the database that will store the data, you can use something like Grafana. Here are some links to get you started: https://grafana.com/products/cloud/ or self-hosted: https://grafana.com/docs/grafana/latest/getting-started/get-started-grafana-prometheus/#get-started-with-grafana-and-prometheus
I can share a template for a dashboard, I'm going to create a ticket for that enhancement.

You can view the instructions that I want to publish shortly in #208! Feel free to give it a review/request changes should anything need improvement.

They are informative, the library automatically handles the error recovery. I‘ll keep this ticket open though as a feature request to add a mechanism to receive the events through an API.

Got a case, the exact same error happened, connections has been recreated successfully, but some channels lost, that's monitored via metrics. Does channels, which have been counted as type: server, may be lost after reconnect in case of ban or something like that? That behavior confused me a little, because crate doesn't provide a callback about channel ban.

After long-time work, while some channels gets banned, reconnect can trigger loss of that banned channels, which cause connection resources be to unused or partially used.

That is correct, and there's no way to avoid that. This behaviour is, at least in parts, described here: https://docs.rs/twitch-irc/latest/twitch_irc/client/struct.TwitchIRCClient.html#method.join and here: https://docs.rs/twitch-irc/latest/twitch_irc/client/struct.TwitchIRCClient.html#method.get_channel_status
There's no way to work around this: If a channel is banned at the moment the client wants to reconnect it, there is no way to reconnect to it, Twitch simply doesn't allow joining banned channels. You can, however, keep retrying failed channels using join(), as described, a retry attempt will be made if the join is not already confirmed.
I had not considered the fact that this results in underutilized connections to be a problem until now, since the number of channels being joined by the library that get banned should be small in relation to those not getting banned, but there is an open ticket about reducing the number of connections if possible: #13

That is correct, and there's no way to avoid that. This behaviour is, at least in parts, described here: https://docs.rs/twitch-irc/latest/twitch_irc/client/struct.TwitchIRCClient.html#method.join and here: https://docs.rs/twitch-irc/latest/twitch_irc/client/struct.TwitchIRCClient.html#method.get_channel_status
There's no way to work around this: If a channel is banned at the moment the client wants to reconnect it, there is no way to reconnect to it, Twitch simply doesn't allow joining banned channels. You can, however, keep retrying failed channels using join(), as described, a retry attempt will be made if the join is not already confirmed.
I had not considered the fact that this results in underutilized connections to be a problem until now, since the number of channels being joined by the library that get banned should be small in relation to those not getting banned, but there is an open ticket about reducing the number of connections if possible: #13

Is there no way to determine, which channels gets lost in certain connection? If API allow, I can store hashmaps per connection, but I am not sure about that way. In my case, if node already lost that channels, it's useless to spam retry, better let it as is, with manual reconnect in future.
I have multiple shards, every utilize 1000 connections. It's quite good to keep connection to banned chat, but if reconnection already happened due to network issues, it's underutilized resource. Meanwhile, I use join and part directly, no set wanted channels, gonna think more about it.

Is there no way to determine, which channels gets lost in certain connection? If API allow, I can store hashmaps per connection, but I am not sure about that way. In my case, if node already lost that channels, it's useless to spam retry, better let it as is, with manual reconnect in future.

That's what this ticket is about, if I understand correctly. There's currently no API for that

I have multiple shards, every utilize 1000 connections. It's quite good to keep connection to banned chat, but if reconnection already happened due to network issues, it's underutilized resource.

With all due respect, I have a hard time believing this to be a significant source of inefficiency. I run a service that's joined to 166k channels at once, and basically 99.9% to 100% of those are successful. Have you actually monitored the percentage on your services?

Is there no way to determine, which channels gets lost in certain connection? If API allow, I can store hashmaps per connection, but I am not sure about that way. In my case, if node already lost that channels, it's useless to spam retry, better let it as is, with manual reconnect in future.

That's what this ticket is about, if I understand correctly. There's currently no API for that

I have multiple shards, every utilize 1000 connections. It's quite good to keep connection to banned chat, but if reconnection already happened due to network issues, it's underutilized resource.

With all due respect, I have a hard time believing this to be a significant source of inefficiency. I run a service that's joined to 166k channels at once, and basically 99.9% to 100% of those are successful. Have you actually monitored the percentage on your services?

Yes, I mean that's scale when channels count updates slowly, and amount of banned channels became significant. I monitor diff between wanted and server metric named twitchirc_channels. For example, one shard come to 200k channels, and another only 120k channels. I suspect that's banned channels to be culprit.

Is there no way to determine, which channels gets lost in certain connection? If API allow, I can store hashmaps per connection, but I am not sure about that way. In my case, if node already lost that channels, it's useless to spam retry, better let it as is, with manual reconnect in future.

That's what this ticket is about, if I understand correctly. There's currently no API for that

I have multiple shards, every utilize 1000 connections. It's quite good to keep connection to banned chat, but if reconnection already happened due to network issues, it's underutilized resource.

With all due respect, I have a hard time believing this to be a significant source of inefficiency. I run a service that's joined to 166k channels at once, and basically 99.9% to 100% of those are successful. Have you actually monitored the percentage on your services?

Yes, I mean that's scale when channels count updates slowly, and amount of banned channels became significant. I monitor diff between wanted and server metric named twitchirc_channels. For example, one shard come to 200k channels, and another only 120k channels. I suspect that's banned channels to be culprit. Every shard utilize about 1000 connections.


Best scope handler

Hi all, please can you explain me what is the best way to handle user auth and manage her scope authorizations?
For example now I've this situation:
I create a plugin like this to handle login
Future<void> configureServer(Angel app) async {
  // Inizializzazione Authenticator
  var auth = AngelAuth<User>(jwtKey: app.configuration["jwt_secret"] as String, secureCookies: app.environment.isProduction);
  auth.serializer = (u) => u.id;
  auth.deserializer = (id) => _fetchUserById(id, app);
  await app.configure(auth.configureServer);

  auth.strategies['local'] = LocalAuthStrategy((username, password) async {
    var executor = app.container.make<QueryExecutor>();
    // Cerco l'Utente
    var query = UserQuery();
    query.where..username.equals(username);
    var user = await query.getOne(executor);
    if (user != null) {
      if (Password.verify(password, user.hashedPassword)) {
        return user;
      }
    }

    throw AngelHttpException.notAuthenticated();
  });

  // ROUTER - Login
  app.post('/auth/login', auth.authenticate('local'));
}

Future<User> _fetchUserById(id, Angel app) async {
  if (id is String) {
    var executor = app.container.make<QueryExecutor>();
    // Cerco l'Utente
    var query = UserQuery();
    query.where..id.equals(int.tryParse(id));
    var user = await query.getOne(executor);
    if (user != null) {
      return user;
    }
  }
  throw AngelHttpException.notAuthenticated();
}

Now what is the best way to manage the user authorization?

If you've called await app.configure(auth.configureServer), then the User class will be injected into every request, as a factory/lazy singleton.
When you ask the container to make a User instance, it will check the authorization header for a JSON web token, validate its signature to make sure it wasn't forged, and then call auth.deserializer to return a User instance.
All of the following will fetch a user:
app.get('/', (req, res) async {
  // `User` is an async injection, so you MUST call makeAsync
  var user = await req.container.makeAsync<User>();
});

// If you use dependency injection, the user will be resolved for you
app.get('/', ioc((User user) {
  return user.name;
}));

@Expose('/api/my')
class MyCtrl extends Controller {
   // `User` is injected here
   @Expose('/age')
   int getAge(User user) {
      var now = DateTime.now();
      return now.subtract(user.createdAt).inSeconds;
   }
}

There is also a middleware, requireAuthentication<User>(), that you can use that will automatically throw a 403 Forbidden error for clients who are not logged in. As you can imagine, this can be very useful.

angel_auth is for authentication, not authorization (unfortunately both words start the same, so it's a bit confusing). Other than requireAuthentication<User>() (which is often all you need), any granular permissions, etc. are app-specific. Usually this isn't a problem, because logic will always vary from app to app.

Yes this is true, but I intend to handle some request that need user to be logged in.
So for now if into @Expose method use myGet(User user) how can I check if the user is logged in?

That check will be performed automatically. Look at the implementation here: https://github.com/angel-dart/auth/blob/master/lib/src/plugin.dart#L106-L128
If there is no token present when <User> is requested, a 401 will be thrown.

Oh very very good...!!
Regards


Scores based masking in generator is broken

I think the scores based mask adjusting is broken now:
https://github.com/lucidrains/soundstorm-pytorch/blob/1616cdfa50ef80ae45f5984a6d70af8b55efcc24/soundstorm_pytorch/soundstorm.py#L957-L967
scores will always be fully filled with mask_value and so any further sorting and mask adjusting will not do anything meaningful. This happens because mask is set zeros first and then within this block:
if not self.can_mask_prev_unmasked:
    scores = scores.masked_fill(~mask, mask_value)

we reset all scores to mask_value
as a result we never have any scores except mask_value

@inspirit thank you for this
actually a pretty big bug and i wonder how Steven and Lucas even got results with this hanging around
could you check to see if prev_mask addresses this? i've also turned it off, as i don't think the paper had this anyways

@inspirit thank you for this
actually a pretty big bug and i wonder how Steven and Lucas even got results with this hanging around
could you check to see if prev_mask addresses the issue? i've also turned it off as it isn't essential

@inspirit while you are looking at this, could you run the two side by side and let us know which one performs better? i may even remove it if it does not do anything

yeah should be fine now, i was wondering how all the people reported good results so far :)
okay, let me try running 2 experiments, but honestly I dont think it will make much of a difference

yeah should be fine now, i was wondering how all the people reported good results so far :)
okay, let me try running 2 experiments, but honestly I dont think it will make much of a difference

Lucas must have had the flag turned on, unless if that bug was introduced in some commit that came after his experiments
Steven works for some startup, and in that scenario, sometimes researchers / companies quietly fix things without submitting anything upstream

i will need to train few epochs first to have it generate anything good :)

@inspirit how did it go?

thanks! 👌


"Moving" a subtree to a new document...

I am trying to convert a large codebase from using tinyxml to tinyxml2.
In the original code it moves a subtree from one document to another via this way:
Parent->LinkRemoveChild(Element);
NewDoc->LinkEndChild(Element);
but with tinyxml2 it 'controls' the memory model so LinkRemoveChild() no longer exists.
Do you have any suggestions on how to 'move/transfer' a subtree of nodes from one document to another efficiently? ie. Least amount of code futz and smallest amount of memory allocation?
Do I need to use the Visitor pattern now somehow?

+1 for DeepClone!

+another one for DeepClone, this functionality shouldn't have been lost from the upgrade.

Please see PR #558 (awaiting feedback until June 4th 2017)

PR #558 merged.


KG 0.33 - Have pods be routed using podname.pods.tenant.environment.tapis.io

[x] Issue with certs.
[x] Issue with DNS not resolving

Turned out to be explicitly routed tacc.develop.tapis.io/dev.develop.tapis.io breaking wild card DNS stuff.

Fixed after some talks with Don Koehler. Things were working, but we had some overlaping explicit links overwriting wild cards for domains like tacc.develop.tapis.io and dev.develop.tapis.io.


Fix SIWE

Problem:

Nginx exposed the 'default port,' which means port 80.
-> This is the default configuration if a container has multiple ports exposed.

Solution:

If we set the VIRTUAL_PORT (similar to the MediaWiki container), Nginx will find the correct port and expose it.

other:
add docker_name
if the docker name changes, the pkc script no longer works.
Fix #134

Thank you @Zusel


Improve About Section UI

Apply creative and professional Ideas to this About section | Take Ideas from the Internet

Samples (add random text) -

Rules -

Comment below to Get Assigned
The PR Should be sent within 24 hours of Assignment, else will get reassigned to the next person.
The PR should be valid and have no Merge Conflicts
DON'T spoil the Code indentations with any formatting tools such as prettier or VSC format

Do this about page need to be coded or just need the creative new UI for the page?

coded

Hey, @fykaa I am interested to work on the project. Could you please assign me this issue?

Hi, Please assign me this issues.

@shrutilenka You are assigned, Please follow up the instructions

Hello! I would like to contribute on this issue. Please assign me

sure @anushkamandal25


Editor::AnimationPlayer::Active dont work in the instanced mode

If a scene has AnimationPlayer and instanced inside another scene, the main scene can not override the field "Active". The change in state checkbox "active" does not affect the running application.

I believe this issue would have been fixed by the recent changes that make instanced scenes customisable. Feel free to reopen/ask me to reopen if you can still reproduce the issue in a recent git build though!


Method field not present in parsed args

Added this test case to test_flaskparser.py:
import marshmallow

class Schema(marshmallow.Schema):
    foo = fields.Int()
    cube = fields.Method('get_cube')

    def get_cube(self, obj):
        return obj.foo ** 3

def test_method_field(testapp):
    with testapp.test_request_context('/myendpoint?foo=3', method='get'):
        args = parser.parse(Schema(), locations=('query', ))
        assert args == {'foo': 3, 'cube': 27}

Result (cleaned up a bit):
======= FAILURES =======
___ test_method_field ___

testapp = <Flask 'tests.test_flaskparser'>

    def test_method_field(testapp):
        with testapp.test_request_context('/myendpoint?foo=3', method='get'):
            args = parser.parse(Schema(), locations=('query', ))
>           assert args == {'foo': 3, 'cube': 27}
E           assert {'foo': 3} == {'cube': 27, 'foo': 3}
E             Omitting 1 identical items, use -v to show
E             Right contains more items:
E             {u'cube': 27}
E             Use -v to get the full diff

tests/test_flaskparser.py:120: AssertionError
=== 1 failed, 224 passed, 23 skipped, 3 pytest-warnings in 1.43 seconds ===

Same failure on Python 2.6, 2.7 (didn't test Python 3).

Whoops. See marshmallow-code/marshmallow#409
I would like to request that examples be added to the webargs docs using Function and Method fields, as the context shift from the deserialization-focused world of webargs and the serialization-focused custom field examples led me off in the wrong direction. I will updated the issue title to reflect the change, but I think the original example is useful to illustrate my misunderstanding.

I've added a section in the docs that exemplifies the deserialize argument passed to Method and Function.
Feel free to send a docs PR if you think the docs can be clarified further.


Require users to acknowledge changes to policies

Is your feature request related to a problem? Please describe.
It's very easy to wipe out your entire configuration via the CLI.  I've done this multiple times while trying to configure Conjur Enterprise for my organization.
Describe the solution you would like
As with other Infrastructure as Code tools, display a plan for the changes to be made, then request the user to acknowledge those changes.
Proposed Conjur CLI changes:
$ conjur policy replace -f <path-to-delete-policy> -b root
The requested action will perform the following operations:
  DELETE MyOrgDev:group:DevConjurPoc/ConjurDevJenkins-admins
  DELETE MyOrgDev:group:DevConjurPoc-admins
  DELETE MyOrgDev:variable:conjur/authn-jwt/cloudbees-corebanking/audience

Would you like to proceed? [y/N]
>  n

$ conjur policy load -f <path-to-delete-policy> -b root
The requested action will perform the following operations:
  CREATE MyOrgDev:group:DevConjurPoc/ConjurDevJenkins-admins
  CREATE MyOrgDev:group:DevConjurPoc-admins
  UPDATE MyOrgDev:variable:conjur/authn-jwt/cloudbees-corebanking/audience

Would you like to proceed? [y/N]
>  y

$ conjur policy replace -f <path-to-delete-policy> -b root –-auto-approve
The requested action will perform the following operations:
  DELETE MyOrgDev:group:DevConjurPoc/ConjurDevJenkins-admins
  DELETE MyOrgDev:group:DevConjurPoc-admins
  DELETE MyOrgDev:variable:conjur/authn-jwt/cloudbees-corebanking/audience

The –-auto-approve argument has been supplied, so automatically applying the requested changes.

Describe alternatives you have considered
Additional context
I've mentioned this to KK at CyberArk, who's helping us with the build-out, but wanted to raise it here too.

In newer versions of Conjur, we now support a --dry-run option for policy loads. I think this serves the same purpose.

In newer versions of Conjur, we now support a --dry-run option for policy loads. I think this serves the same purpose.

It does, but I am hoping for a change of behaviour - where the default is to dry-run, forcing you to review the changes before accepting them.

Got it. Besides for use by developers, the CLI is also used in automation, which would make this a major breaking change. If we were going to do this we'd need to, at the very least, have it behind a configuration flag. But I don't see it getting much backing right now.


npm install doesn't have the right structure

When installing an npm library programmatically (npm.js), it installs the dependency's dependencies in the main node_modules folder instead of the dependency's modules folder. This create ABitOfAMess.
Needs some research on the -horribly documented- npm dependency.

NPM installation file needs a rewrite, we should discuss this someday.


webapp: az appservice plan create > AttributeError: 'NoneType' object has no attribute 'id'

Describe the bug
Command Name
az appservice plan create
Errors:
'NoneType' object has no attribute 'id'
Traceback (most recent call last):
Local\Temp\pip-unpacked-wheel-2lthyver\knack\cli.py, ln 215, in invoke
azure\cli\core\commands\__init__.py, ln 654, in execute
azure\cli\core\commands\__init__.py, ln 717, in _run_jobs_serially
azure\cli\core\commands\__init__.py, ln 709, in _run_job
azure\cli\command_modules\appservice\commands.py, ln 37, in _ex_handler
azure\cli\core\commands\__init__.py, ln 688, in _run_job
azure\cli\core\commands\__init__.py, ln 325, in __call__
pip-unpacked-wheel-84ckl4fg\azure\cli\core\__init__.py, ln 784, in default_command_handler
azure\cli\command_modules\appservice\custom.py, ln 1701, in create_app_service_plan
AttributeError: 'NoneType' object has no attribute 'id'

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.
rg='webapp-demo-rg'
location='uksouth' # also tried 'westus'
az group create --name $rg --location $location
az configure --defaults group=$rg location=$location

planname='webapp-demo-asplan'
appserviceenv=webapp-demo-asenv

az appservice plan create --name $planname --sku I1 --app-service-environment $appserviceenv --verbose --debug

Expected Behavior
Either a created appservice plan, or a useful error message.
Environment Summary
Windows-10-10.0.18362-SP0
Python 3.6.8
Installer:

azure-cli 2.15.1

Additional Context

appservice

https://github.com/Azure/azure-cli/issues/14287

@dev-playbook thanks for reporting. I am wondering if this is because the default subscription CLI is logged into is different from the subscription these resources are on? can you try the same command with the --subscription parameter at the end.
@madsd since this command is for ASE - tagging you on this as well.

@dev-playbook thanks for reporting. I am wondering if this is because the default subscription CLI is logged into is different from the subscription these resources are on? can you try the same command with the --subscription parameter at the end.
@madsd since this command is for ASE - tagging you on this as well.


Artist duplicate directory detection kinda broken?

Given these artists...
Artist: Doctor Chaos
---
Artist: Rom M
Aliases:
- Doctor Chaos

...you'd expect some kind of directory error, but none is showing up! Very strange.

Possibly related to #340.


Research and documentation about a repo

Making a research about a GitHub repo and document it according to the research template in the wiki

You can find my research about Linux on research tab on the wiki.


all: bump golangci-lint to v1.51.1, test against Go v1.20, drop support for Go v1.18

Let's use crypto/rand.Read.

The crypto/rand package is not a drop-in replacement for math/rand. The API is far less comprehensive than math/rand. We mostly use rand.Intn() but also rand.Uint32(), rand.Float64() and rand.Read(). Given the work required is comprehensive, let's tackle it as a follow-up PR.

The crypto/rand package is not a drop-in replacement for math/rand. The API is far less comprehensive than math/rand. We mostly use rand.Intn() but also rand.Uint32(), rand.Float64() and rand.Read().

That's fair, and furthermore our usage doesn't fall under "almost all use cases" either. To be clear, I'm only concerned about rand.Read() (not the others like rand.Intn() etc.) and only because deprecation means it will be remove eventually.

[…] Given the work required is comprehensive, let's tackle it as a follow-up PR.

FWIW I don't think we need a CSPRNG, non-crypto will do just fine as long as it is fast. Last time I checked the PRNG was the bottleneck when generating random flows from multiple goroutines (because the current implementation uses math/rand's default locked source). It would be great to tackle this issue on the way.

Right, only rand.Read() and rand.Seed() have been deprecated.

deprecation means it will be remove eventually

It actually means their use is discouraged but they won't be removed because this would break the Go compatibility promise (actual removal would require a Go 2 release) so I'm not too concerned about it.

FWIW I don't think we need a CSPRNG, non-crypto will do just fine as long as it is fast.

We use rand.Read() to generated random MAC and IP addresses. Out of curiosity, I wrote a simple bench:
func Benchmark_MAC(b *testing.B) {
       for i := 0; i < b.N; i++ {
               MAC()
       }
}

func Benchmark_IP(b *testing.B) {
       for i := 0; i < b.N; i++ {
               IP()
       }
}

Here's the result with math/rand's Read():
goos: linux
goarch: amd64
pkg: github.com/cilium/fake
cpu: AMD Ryzen 9 3950X 16-Core Processor
Benchmark_MAC-32    	12133753	      153.5 ns/op
Benchmark_IP-32     	4572577	      341.4 ns/op
PASS
ok  	github.com/cilium/fake	4.809s

And here's the result with crypto/rand's Read():
goos: linux
goarch: amd64
pkg: github.com/cilium/fake
cpu: AMD Ryzen 9 3950X 16-Core Processor
Benchmark_MAC-32    	1767763	      747.1 ns/op
Benchmark_IP-32     	1410813	      822.6 ns/op
PASS
ok  	github.com/cilium/fake	4.033s


[GH-19785] - Added timezone settings selected by user to playbook

added a selected for getting the timezone (getCurrentUserTimezone) similar to the one used in the web-app
passed timezone parameter to parse function

resolves #19785

Summary

Ticket Link

Checklist

[ ] Telemetry updated
[ ] Gated by experimental feature flag
[ ] Unit tests updated

Hello @rolwin100,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.

got it @calebroseland will work on it

This PR has been automatically labelled "stale" because it hasn't had recent activity.
A core team member will check in on the status of the PR to help with questions.
Thank you for your contribution!

Hi @rolwin100, just a gentle check in: is there anything further you wanted to do with this? Either way is totally fine! Just checking if there's anything we can help with; else we might want to re-open it if someone else might want to work on it.

Hey sure let me know wht needs to be done @trilopin was telling some tasks for this. Please create a ticket and assign it to me. Thanks

@calebroseland you can assign this to someone


Add Rocket Launch Icon

Closes #704

@LanesGood it's rendering correctly in the map legend, but not in the map. Did you add it to the Mapbox Style?

@willemarcel thanks for the reminder - RocketIcon is now added to the mapbox style.

Confirmed 2D map works:

But 3D is loading the wrong icons - will check if that is fixed in https://github.com/NASA-IMPACT/admg-casei/pull/707

This is the SOLVE campaign


USSD Public functionality - Opt out

@imsickofmaps Please review.

@gsvr I was like "where's all the tests!" then there was a moment of swelling TDD pride:

@imsickofmaps Second pass please.

@gsvr :+1:  good work! This turned into a monster task though, let's try to remember to talk about "right sizing" this kind of thing into chunks in retro on Tuesday.


Finalize BulletStorm with balancing consideration

Description
Add required methods for creating patterns of projectiles (designated locations and directions). Balance the BossRangeAttackComponent and BulletStormTask for "winnable" gameplay.
Add tests for BossRangeAttackComponent
Closes  #439 #430
Type of change
Please delete options that are not relevant.

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] This change requires a documentation update

How Has This Been Tested?
Can only be test manually through gameplay when either Kitsune or Cthulhu enter the last phases that trigger BulletStormTask. Observe how projectiles are created with specific patterns, either from the boss or from fixed locations.
Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged and published in downstream modules

Still need to add test for ProjectileAnimationController, but most of the things are completed.


Help enabling wmma instructions

I used the the example at the bottom of https://github.com/ROCm/Tensile/wiki#quick-example-ubuntu to generate a set of solutions.
However, I noticed that none of the generated solutions are using the WMMA instructions.  My architecture does have HasWMMA=1.
I confirmed that kernel["EnableMatrixInstructions'] is False in the kernel writer code... so that's not good - the problem is probably up the stack from there.
I thought I could add EnableMatrixInstructions to the rocblas_sgemm_example.yaml but I get an error Tensile::FATAL: Invalid parameter name: EnableMatrixInstruction
So:

is it possible to enable and disable matrix instructions through the yaml?  If so how?
if not, is there another way to force this setting on or off?

Thanks!

Hi @spayne, internal ticket has been created to assist with your questions. Thanks!

Hi @spayne, I can't repro with the specific example because something else is broken on my end, but what happens when you generate solutions using one of the WMMA tests (e.g. Tensile/Tests/pre_checkin/wmma/hgemm_wmma.yaml)? This seems to be generating matrix instructions for me. Is this how you're verifying the presence of WMMA instructions, or is there something else you're checking?

Following up on this, it looks like the relevant parameter to add to the yaml is MatrixInstruction, and the documentation is here. Let me know if the WMMA test, which sets this parameter, works for you; otherwise there might be an issue in your configuration.

@schung-amd  I think we need add an option like MFMA  for WMMA in  GenerateTuningConfigurations.py

@jfactory07 From what I can tell WMMA is lumped in with MFMA, as both are matrix core instructions, and as long as Tensile is informed that you want matrix instructions (i.e. through the mfma argument in the .py you linked) it should use WMMA if supported. The documentation isn't very clear, though, and maybe this argument should be named something else; I'll reach out to the internal team about this.

A nuance for WMMA specifically: these instructions are only supported for matrix size 16x16x16, and any value of the MatrixInstruction parameter other than [16,16,16,1] will only result in MFMA instructions and no WMMA instructions.

Closing this, if you need additional guidance feel free to comment and we can reopen it.


CodeQL docs: update titles and small content changes (CodeQL queries)

Partially fixes https://github.com/github/product-documentation/issues/2162.
Summary

Update article titles according to https://docs.google.com/spreadsheets/d/1YQIEfcjP9UaGgTlL-2fG1DKDpcKVwhoJZpsQKqK50OE/edit#gid=258005776
Small content changes where appropriate.

Changes

Original
Updated
Comments

Writing CodeQL queries
CodeQL queries
Article renamed, intro added. Relevant text moved into 'About CodeQL queries'.

Introduction to query files
About CodeQL queries
Article renamed, intro added. Content from 'CodeQL queries' added.

Query metadata
Metadata for CodeQL queries
Article renamed, intro added.

Query help reference
Query help files
Article renamed, intro added.

Defining 'select' statements
Defining the results of a query
Article renamed, intro added.

Locations and strings for QL entities
Providing locations in CodeQL queries
Article renamed, intro added. This topic needs a bit of a rewrite and I'm still unsure about how

Introduction to data flow analysis with CodeQL
About data flow analysis
Article renamed, intro added.

Constructing path queries
Creating path queries
Article renamed, intro added.

Query writing: common performance issues
Troubleshooting query performance
Article renamed, intro added.

Link texts updated for new article titles throughout the 'Learning CodeQL' project.

Comments

I haven't really thought much about easy fixes for localization improvements---I'd like to follow that up once these changes are in.

Thanks for the review @hubwriter. I've followed up your comments and spotted a few other links that were the wrong format. Any further thoughts before we 🚢 this?

🚢


ColumnStore Support for Index Maintenance

Please add full support for maintenance  / optimization of column Store Indexes.

Ola - Any ETA on when this functionality will be included? This is very much needed, as these indexes need the reorganization process to include a command that will move all noncompressed rowgroups into compression.
-- This command will force all CLOSED and OPEN rowgroups into the columnstore.
ALTER INDEX idx_cci_target ON cci_target
REORGANIZE WITH (COMPRESS_ALL_ROW_GROUPS = ON);

I added rudimentary support for the COMPRESS_ALL_ROW_GROUPS option for columnstore index reorgs to the 2019-01-13 13:51:41 version, via a @CompressAllRowGroups parameter, for whatever it's worth.
IndexOptimize_with_CCI.diff.txt

SentryOne's optimizations for large implementations uses Clustered Columnstore Indexes in their repository and requires  "index maintenance, stats update scripts, and defrags should be disabled for all CCI'd and memory optimized staging tables". Do I need to use any specific parameters in the Maintenance Solution jobs to implement that, or does the Solution currently ignore those?

Do i have to use any special parameter to include non clustered columnstoreindex to rebuild ?

Ola, Any ETA on that feature? Thx!

Pretty please implement this :)

We are starting heavy investment into columnstore.  Having some well used and adopted maintenance options here would be very helpful.

I added rudimentary support for the COMPRESS_ALL_ROW_GROUPS option for columnstore index reorgs to the 2019-01-13 13:51:41 version, via a @CompressAllRowGroups parameter, for whatever it's worth.
IndexOptimize_with_CCI.diff.txt

i tried this seems to work ok, anyone else have issues with this?


ResinRequestError: Request error: Unauthorized

Got the following error
/home/kranthi/workspace/resin/resin-log/node_modules/bluebird/js/release/async.js:61
fn = function () { throw arg; };
^
ResinRequestError: Request error: Unauthorized
at /home/kranthi/workspace/resin/resin-log/node_modules/resin-request/build/request.js:198:17
at tryCatcher (/home/kranthi/workspace/resin/resin-log/node_modules/bluebird/js/release/util.js:16:23)
at Promise._settlePromiseFromHandler (/home/kranthi/workspace/resin/resin-log/node_modules/bluebird/js/release/promise.js:512:31)
at Promise._settlePromise (/home/kranthi/workspace/resin/resin-log/node_modules/bluebird/js/release/promise.js:569:18)
at Promise._settlePromise0 (/home/kranthi/workspace/resin/resin-log/node_modules/bluebird/js/release/promise.js:614:10)
at Promise._settlePromises (/home/kranthi/workspace/resin/resin-log/node_modules/bluebird/js/release/promise.js:693:18)
at Async._drainQueue (/home/kranthi/workspace/resin/resin-log/node_modules/bluebird/js/release/async.js:133:16)
at Async._drainQueues (/home/kranthi/workspace/resin/resin-log/node_modules/bluebird/js/release/async.js:143:10)
at Immediate.Async.drainQueues (/home/kranthi/workspace/resin/resin-log/node_modules/bluebird/js/release/async.js:17:14)
at runCallback (timers.js:649:20)
at tryOnImmediate (timers.js:622:5)
at processImmediate [as _immediateCallback] (timers.js:594:5)
code;
`var resin = require('resin-sdk')({
apiUrl: "https://api.resin.io/"
});
const credentials = {
username: '',
password: '*'
};
resin.auth.login(credentials, function(error) {
if (error) throw error;
});`

@kranthisai Ah, I can see what's gone wrong there. See the .login() docs: it takes an object with an email property, not a username. Let me know if that solves your issue, and I can investigate further if not.

Thanks @pimterry . It works.


Fixes regression introduced in 17884411b7f754aaa56e9e8f0daba3838c0c06…

…85 that broke compiling on OS X

Good pickup! Sorry about that.


ARROW-5162: [Rust] [Parquet]Rename mod reader to arrow.

Rename mod reader to arrow,

@sunchao @andygrove @nevi-me Please help review.

@liurenjie1024 Looks good. Could you address the CI failure though?

@sunchao CI error fixed.


query operators does not work

Hello, I am having troubles using query operators. For example the query '"michelle bachelet"' throws tweets including not only "michelle bachelet" exact phrase, but also tweets containing only "michelle", others containing only "bachelet", and others containing both "michelle" and "bachelet" with different distances between those two words. In general AND, OR and exact phrase queries throws all three types of results.
I will appreciate any help with this issue.

You would need to enter "michelle bachelet" (including quotes!).
The Twitter Search API treats the same phrase without quotes as michelle OR bachelet. You can actually try it out at twitter.com/search


Single private_nat_gateway

Error: Error in function call
on .terraform/modules/vpc/terraform-aws-modules-terraform-aws-vpc-5358041/main.tf line 905, in resource "aws_route" "private_nat_gateway":
905:   route_table_id         = element(aws_route_table.private.*.id, count.index)
|----------------
| aws_route_table.private is empty tuple
| count.index is 0
Call to function "element" failed: cannot use element function with an empty
list.
Trying to use single NAT gateway
private_subnets = module.shared_vars.private_vpcs
public_subnets  = module.shared_vars.public_vpcs
enable_nat_gateway = true
single_nat_gateway = true

Hey, @anub1s187. I assume that you've found the solution or root cause, could you please share the solution?

Hey, @L1kbezZz did you ever find a solution to this problem? I am also struggling with a similar issue.


Add Unicode string support

Added in 60396bcef506e5d50a358e8f8a600330d31ec823, there is an issue with encoded URIs which will be raised seperately


Pagination API

Overview
This PR implements a pagination API proposed in RFC.
Testing recommendations
# run test
make eunit apps=couch_mrview tests=check_completion_test
# create database
curl -u adm:pass -X PUT "http://<IP_ADDRESS>:15984/test"
# create documents
curl -u adm:pass -X PUT "http://<IP_ADDRESS>:15984/test/foo" -d '{"value": "foo"}' | jq '.'
curl -u adm:pass -X PUT "http://<IP_ADDRESS>:15984/test/bar" -d '{"value": "bar"}' | jq '.'
curl -u adm:pass -X PUT "http://<IP_ADDRESS>:15984/test/baz" -d '{"value": "baz"}' | jq '.'
# query without pagination API
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?limit=1" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?keys=%5B%22foo%22%2C%20%22bar%22%5D" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?limit=1&discending=true" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?limit=1&start_key=%22bar%22" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?limit=1&startkey_docid=%22doc1%22" | jq '.'
# query using pagination API
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?page_size=1" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?bookmark={bookmark}" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?keys=%5B%22foo%22%2C%20%22bar%22%5D&page_size=1" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?bookmark={bookmark}" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?page_size=1&discending=true" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?bookmark={bookmark}" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?page_size=1&start_key=%22bar%22" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?bookmark={bookmark}" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?page_size=1&startkey_docid=%22doc1%22" | jq '.'
curl -u adm:pass "http://<IP_ADDRESS>:15984/test/_all_docs?bookmark={bookmark}" | jq '.'

Related Issues or Pull Requests

RFC

Checklist

[ ] Code is written and works correctly
[ ] Changes are covered by tests
[ ] Any new configurable parameters are documented in rel/overlay/etc/default.ini
[ ] A PR for documentation changes has been made in https://github.com/apache/couchdb-documentation

The previous page is not yet implemented.

I'll rename bookmark key into next (as per RFC) in one of the commits to follow. Also prev wouldn't be implemented in this PR and would be added latter.

Not implemented parts of the spec are:

first/previous bookamarks are missing
return 400 when we reach max limit for streaming replies (It is unclear how to implement it yet)

I am not sure where to open a documentation update PR. We don't have FDB releated integration branch on https://github.com/apache/couchdb-documentation

@iilyak I think we can do the documentation PR later once we closer to CouchDB 4.x release


Update tutorial-archive.md

Basic summary of changes:

Fixing grammatical and spelling errors
Restructuring the document where beneficial to flow and understanding
Addition of output tables where necessary, removal of irrelevant info
Addition of introductory / explanatory text where beneficial

Specific commentary on the proposed changes, and some general comments on the document:
There are inconsistencies in how the output tables are shown - the tutorial begins with embedded tables, and then from the “Timechart” sections onwards, the output tables are embedded as images / screenshots. This needs to be shown consistently throughout the document.
I was unable to test the actual code language, as I do not have access to Azure Data or an MS account for logging in. I did however check the query language to the best of my ability within the document, cross referencing other Kusto resources.
Section: “Select a subset of columns: project” section - I would include the output table for the above query, but I am missing this information.
Section: “Aggregate groups of rows: summarize” - I would add an output table.
Section “User session example of join” - I cannot include a link to the referenced table as I don’t have access to that information.
When I check my proposed changes the embedded images are not working. The link is written out but the image is not embedded in the document. I cannot figure out how to fix this.  I did try to make adjustments according to Markdown standards, but couldn’t get it exactly right. This is what I tried, by way of example in the “Display a chart: render” section:
There are three places where links to other sections within the document are embedded, but I cannot check if the links are working properly: In “Assign a result to a variable: let” there is a link back to the section “Join data types” In “Calculate percentiles: percentile” there is a link back to the section “Plot a distribution” The list of topics covered in the tutorial, at the beginning of the document.

I felt that if there is a section on joining data from different databases (section: “Combine data from several databases in a query”), there should also be a section on joining data from different tables within the same database. I have added a new section “Combine data from multiple tables: join”. I took some of the information I needed from existing Kusto resources. I felt it was a worthwhile additional section to this tutorial, which is quite an extensive one.  I did not have an output table or chart to include but have indicated where they would appear (shown by {...}).

Section “Combine data from several databases in a query”: I have proposed changes to this section in my PR, but my overall sense is that this section is beyond the scope of this particular tutorial. I would propose that the only text under this section should be:  “Combining data from several databases typically involves using the union operator, which combines the results of two or more queries into a single result set. For more information about combining data from several databases in a query, see cross-database queries {link to the referenced document}.”

@AndyKops - can you complete the CLA https://github.com/MicrosoftDocs/dataexplorer-docs/pull/2192#issuecomment-1960044791 ?

#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team


[Feature request]: create_investigation_visualization output mermaid

What do you need?
Is it possible to output mermaid in addition to leveraging graphviz?

This should actually be quite easy with some testing.


[BUG] dbt deps permission denied for dbt-expectations

Is this a new bug in dbt-expectations?

[x] I believe this is a new bug in dbt-expectations
[x] I have searched the existing issues, and I could not find an existing issue for this bug

Current Behavior
When running poetry run dbt deps it fails during installing of the packages on dbt-expectations giving error messages regarding permissions denied.
Expected Behavior
To dbt deps to run successfully and install all packages specified in the packages.yml
Steps To Reproduce
Our packages.yml config:
packages:

package: dbt-labs/dbt_utils
version: 1.0.0

package: dbt-labs/codegen
version: 0.9.0

package: elementary-data/elementary
version: 0.7.1

package: calogica/dbt_expectations
version: 0.8.2

run dbt deps or poetry run dbt deps
Relevant log output
08:40:51    Installed from version 0.7.1
08:40:51    Updated version available: 0.7.3
08:40:51  Installing calogica/dbt_expectations
08:40:56  Encountered an error:
[Errno 13] Permission denied: 'integration_tests'
08:40:56  Traceback (most recent call last):
File "/usr/lib/python3.8/shutil.py", line 791, in move
os.rename(src, real_dst)
PermissionError: [Errno 13] Permission denied: 'dbt_packages/dbt-expectations-0.8.2' -> 'dbt_packages/dbt_expectations'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/dmw199/.cache/pypoetry/virtualenvs/bica-cli-qaq_ldT7-py3.8/lib/python3.8/site-packages/dbt/main.py", line 136, in main
results, succeeded = handle_and_check(args)
File "/home/dmw199/.cache/pypoetry/virtualenvs/bica-cli-qaq_ldT7-py3.8/lib/python3.8/site-packages/dbt/main.py", line 206, in handle_and_check
task, res = run_from_args(parsed)
File "/home/dmw199/.cache/pypoetry/virtualenvs/bica-cli-qaq_ldT7-py3.8/lib/python3.8/site-packages/dbt/main.py", line 253, in run_from_args
results = task.run()
File "/home/dmw199/.cache/pypoetry/virtualenvs/bica-cli-qaq_ldT7-py3.8/lib/python3.8/site-packages/dbt/task/deps.py", line 75, in run
package.install(self.config, renderer)
File "/home/dmw199/.cache/pypoetry/virtualenvs/bica-cli-qaq_ldT7-py3.8/lib/python3.8/site-packages/dbt/deps/registry.py", line 60, in install
self._install(project, renderer)
File "/home/dmw199/.cache/pypoetry/virtualenvs/bica-cli-qaq_ldT7-py3.8/lib/python3.8/site-packages/dbt/deps/base.py", line 117, in _install
connection_exception_retry(download_untar_fn, 5)
File "/home/dmw199/.cache/pypoetry/virtualenvs/bica-cli-qaq_ldT7-py3.8/lib/python3.8/site-packages/dbt/utils.py", line 616, in _connection_exception_retry
return fn()
File "/home/dmw199/.cache/pypoetry/virtualenvs/bica-cli-qaq_ldT7-py3.8/lib/python3.8/site-packages/dbt/deps/base.py", line 129, in download_and_untar
system.untar_package(tar_path, deps_path, package_name)
File "/home/dmw199/.cache/pypoetry/virtualenvs/bica-cli-qaq_ldT7-py3.8/lib/python3.8/site-packages/dbt/clients/system.py", line 497, in untar_package
dbt.clients.system.rename(downloaded_path, desired_path, force=True)
File "/home/dmw199/.cache/pypoetry/virtualenvs/bica-cli-qaq_ldT7-py3.8/lib/python3.8/site-packages/dbt/clients/system.py", line 485, in rename
shutil.move(from_path, to_path)
File "/usr/lib/python3.8/shutil.py", line 809, in move
rmtree(src)
File "/usr/lib/python3.8/shutil.py", line 718, in rmtree
_rmtree_safe_fd(fd, path, onerror)
File "/usr/lib/python3.8/shutil.py", line 659, in _rmtree_safe_fd
onerror(os.rmdir, fullname, sys.exc_info())
File "/usr/lib/python3.8/shutil.py", line 657, in _rmtree_safe_fd
os.rmdir(entry.name, dir_fd=topfd)
PermissionError: [Errno 13] Permission denied: 'integration_tests'
Environment
- OS: Windows leveraging WSL
- Python: 3.8.10
- dbt: 1.4.4
- dbt-expectations: 0.8.2

Which database adapter are you using with dbt?
dbt-bigquery 1.4.1
Note: dbt-expectations currently does not support database adapters other than the ones listed below.

Postgres
Snowflake
BigQuery

Additional Context
We have an ugly solution now that works. Steps to make it work:

Remove dbt-expectations from packages.yml
Run dbt deps
Successfull installation
Add dbt-expectations 0.8.2 to packages.yml
Run dbt deps again
Succesfull installation

Hi, thanks for opening this issue! I can't repro this locally, so just a couple of comments:

this may or may not be related, but I don't recommend ever pinning to point releases (e.g. 0.8.2), but instead I recommend pinning to major release ranges for all packages, not just dbt-expectations, e.g.

packages:
  - package: calogica/dbt_expectations
    version: [">=0.8.0", "<0.9.0"]

The default instructions on dbt-hub are misleading there imo. That way you get automatic bug fixes etc.

if you're getting permissions errors during dbt depts, I think that's more likely an issue with dbt-core, or something else locally, since dbt-expectations is just a git repo you're cloning during dbt deps.
curious, what if you remove the elementary package, do you still get the error?

Thanks @clausherther So that range you put out there, how is it translated exactly?
Does it say take some version of dbt_expectations between 0.8.0 and 0.9.0 which is compatible? Or does it always select the latest?  Or does it try with the latest, and if that doesn't work it tries with an older version?

Using the range ensures you're automatically getting the latest minor release for each package, and that you don't end up with weird incompatibilities between packages.


pytoml vs toml issue in zipp

Hi,
I used pyp2nix and got the following error during build
$ nix build -f requirements.nix packages
error: --- EvalError -------------------------------------------------------------------------------- nix
at: (39:48) in file: /nix/store/kjgh9m2f43byakaw11rq4wzhgjn2p2kp-source/overrides.nix

    38|   "zipp" = super."zipp".overrideDerivation
    39|     (old: { buildInputs = old.buildInputs ++ [ self."toml" ]; });
      |                                                ^
    40|

attribute 'toml' missing
(use '--show-trace' to show detailed location information)

My requirements.nix:
$ grep "toml" requirements.nix
        self."pytoml"
        self."pytoml"
    "pytoml" = python.mkDerivation {
      name = "pytoml-0.1.21";
        url = "https://files.pythonhosted.org/packages/f4/ba/98ee2054a2d7b8bebd367d442e089489250b6dc2aee558b000e961467212/pytoml-0.1.21.tar.gz";
        homepage = "https://github.com/avakar/pytoml";
$ grep "zipp" requirements.nix
        self."zipp"
    "zipp" = python.mkDerivation {
      name = "zipp-0.6.0";
        url = "https://files.pythonhosted.org/packages/57/dd/585d728479d97d25aeeb9aa470d36a4ad8d0ba5610f84e14770128ce6ff7/zipp-0.6.0.tar.gz";
        homepage = "https://github.com/jaraco/zipp";

Apparently there is some issue because the commonOverrides wants to see "toml" but I only have "pytoml". The following did the trick:
$ diff -C 3 requirements.nix.bak requirements.nix
*** requirements.nix.bak        2020-08-12 12:50:11.203352590 +0200
--- requirements.nix    2020-08-12 12:56:57.326923877 +0200
***************
*** 1123,1128 ****
--- 1123,1129 ----
          description = "A parser for TOML-0.4.0";
        };
      };
+     "toml" = "pytoml"; # add synonym

      "pytz" = python.mkDerivation {
        name = "pytz-2019.3";

(I still get some errors during build, I am not sure whether this is linked. I just wanted to let you know).

Well, I didn't help that much ...
$ nix build --print-build-logs -f requirements.nix packages
warning: unknown setting 'experimental-features'
python3.8-zipp> build input pytoml does not exist
builder for '/nix/store/074sdf97w11zl325jcyjs9snjm5s14cv-python3.8-zipp-0.6.0.drv' failed with exit code 1; last 1 log lines:
  build input pytoml does not exist
error: --- Error ------------------------------------------------------------------------------------ nix
build of '/nix/store/074sdf97w11zl325jcyjs9snjm5s14cv-python3.8-zipp-0.6.0.drv', '/nix/store/8l53f20r158i48fczf2h6h457af527k0-python3.8-importlib-metadata-1.3.0.drv', '/nix/store/k9gxhm5bihr11n5qb72zhb3wbx5249aw-python3.8-aiohttp-3.6.2.drv', '/nix/store/ksisz9rsa6psg4vf8dj3rfri2wi7jz85-python3.8-yarl-1.5.1.drv' failed

Simply removing pytoml from my requirements.txt and replacing it by toml did the trick.


Adds support for multitenancy

See https://weaviate.io/blog/weaviate-1-20-release#multi-tenancy
and https://weaviate.io/developers/weaviate/concepts/data#multi-tenancy for explanations of concept.
See https://weaviate.io/developers/weaviate/manage-data/multi-tenancy for example operations.

@obie Thanks for the contribution!


GEODE-3426: Ignore RestServersJUnitTest when default port is unavailable.

This should correct the Jenkins nightly failures we have seen recently.
====
Thank you for submitting a contribution to Apache Geode.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

[x] Has your PR been rebased against the latest commit within the target branch (typically develop)?

[x] Is your initial contribution a single, squashed commit?

[x] Does gradlew build run cleanly?

[x] Have you written or updated unit tests to verify your changes?

[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and
submit an update to your PR as soon as possible. If you need help, please send an
email to<EMAIL_ADDRESS>

precheckin running.

Precheckin green after changes suggested by @jinmeiliao

precheckin green.


fix(tier4_perception_launch): sync with tier4/autoware_launch

Signed-off-by: kminoda<EMAIL_ADDRESS>Description
The final goal is to replace perception_launch in tier4/autoware_launch with tier4_perception_launch.
As a first step, I would like to add some small modification on tier4_perception_launch to eliminate the difference between two launch files.

Add pointpainting option (related to https://github.com/tier4/autoware_launch/pull/426)
Add use_traffic_light_recognition option (Since some of our products do not launch traffic_light_recognition, i.e. https://github.com/tier4/autoware_launch.x1.eva/blob/4db2aeee1e4196038ca05ec9bebe6dcab82f75f7/perception_launch/launch/perception.launch.xml#L123-L131)
(This may not be necessary) Move centerpoint-related argument declaration to the top of perception.launch.xml to clarify that the parameters can be set from autoware.launch.xml

Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

@miursh @yukkysaito Friendly ping for review :pray:

LGTM
pls get approval by @miursh too


Stop removing cached accessories when API login token fails

Is your feature request related to a problem? Please describe:
For the last three months, every 30 days my Simplisafe login token expires. The plugin doesn't seem to be able to keep it alive. When authentication fails, all cached accessories are deleted from HomeKit instead of being marked as "Not Responding" like other plugins do when they cannot reach a device. This removes these accessories from scenes and automations requiring me to completely re-do all of this work every month.
Describe the solution you'd like:
Stop removing accessories when the API token expires.
Describe alternatives you've considered:
I guess actually setup the messaging system letting me know there's an issue with authentication and requires manual intervention every 30 days. Although, it appears the plugin works correctly right up until the moment the token expires, so this notification system won't prevent cached accessories from getting deleted.
Additional context:
N/A

Hi @elcid2012 . A couple things about this dont make sense:

Sounds like you should check Persist Accessories
Even if the above is not checked (which it should be), accessories wouldn't be removed until the next time you restart Homebridge. When authentication fails it would trigger your failure message (the point of that Status Fault feature), and nothing would change immediately (though yes 'No Response'). If you re-authenticate before restarting there shouldn't be a problem.
There is no time limit on authentication, theoretically it should be able to continue forever. Clearly, that doesnt happen, but it shouldn't literally be "every 30 days". It is actually re-authenticating approximately every hour along the way.

If something above is not working as expected perhaps theres an issue.

Thanks for pointing out “Persist Accessories” which is unchecked. I will monitor it from here. I’ve had to reauthenticate manually on 18 Dec, 17 Jan, and again just today (stopped working at some point but I’ve been too busy with a PhD program lately to catch exactly when it happened most recently). I’ve been writing down the dates and monitoring it for the last three months before submitting a ticket to make sure I’m not crazy.
I see in the logs the authentication attempts which are successful for the most part unless SimpliSafe API is sucking. I’ve also tried not checking the “Remember this device for 30 days” option as well as checking it when authenticating. It does not make a difference.
Hopefully this persist accessories option will fix stuff getting deleted. The 30 day expiration might be out of your control. I’ll set up the messaging system soon to notify me when it’s failing. If you have any other ideas, I’m happy to take them. Thanks again.

I think setting up an automation to let you know when auth fails https://github.com/homebridge-simplisafe3/homebridge-simplisafe3#authentication-failure-notifications
Interesting about 30 days, not how I thought it works: "[refresh tokens] essentially allow a user to remain authenticated forever." but I could be wrong.
Yea, API crapping out is an issue, handling that crappiness is forever a work-in-progress for the plugin, obviously we cant control it but preventing it handling it as gracefully as possible...


An error occurred while processing your request. We really messed up this time...

Logging in to access the support portal results in pic.twitter.com/cug9besQwL— Geoffrey Huntley (@GeoffreyHuntley) July 23, 2018

Nothing is jumping out at me from the logs and I'm having difficulties reproducing this. From what I can tell, these are the steps that should reproduce this issue:

Log out from nuget.org
Go to https://www.nuget.org/packages/Splat/4.1.0/ReportMyPackage
After logging in, you are redirected to an error page

Is this correct?


Custom Automation Account for ASR Mobility updates RunAs Account vs Managed Identity

I am looking at leveraging the auto-updates for the ASR mobility agent.  I wanted to make sure that we could name the automation account (AA) something that conformed to a naming convention.  Fortunately, this is supported.
I ran into an issue during my POC where I did not create the automation account with a RunAs account, because I figured we could leverage a managed identity.  This led to an error that the AA would not have sufficient permissions to manage the updates, even after giving the identity site recovery contributor permissions on the subscription.

While the error does link to this article, It would have been beneficial to me if this was added to the common issues/troubleshooting steps.
My concern is that Azure Automation Run As Account will retire on September 30, 2023.
If I cannot use a managed identity today, I assume this is something that will have to be fixed later on to continue getting automatic updates.
Is managed identity supported and I configured it incorrectly?
Will the RunAs account retirement effect this process?
Any guidance on this would be greatly appreciated.  Thank you for your time.

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

ID: 0c11ae82-7254-7494-1401-ce2c116eb1b6
Version Independent ID: 6e45cb37-357e-14fc-5a98-82f03358985d
Content: Automatic update of the Mobility service in Azure Site Recovery - Azure Site Recovery
Content Source: articles/site-recovery/azure-to-azure-autoupdate.md
Service: site-recovery
GitHub Login: @ankitaduttaMSFT
Microsoft Alias: ankitadutta

@Jared975
Thanks for your feedback! We will investigate and update as appropriate.

@Jared975 Using an automation account with managed identity is not yet supported. We will add support before things retire. Will add an update on how the migration of accounts can be done once the support is added.

@Jared975 We will now close this issue. Please tag me in your reply if you need further assistance.


Bugfix - properly shutdown ProtocolProcessorBootstrapper

Based on https://github.com/andsel/moquette/pull/109 if added a bugfix to properly shutdown the server and also a modified version of the integration test provided by @kazvictor.

Hi  @mjacoby this test it's a little bit convoluted and hard to understand, just to to check that all threads terminate.
For example, in my opinion the scheduling at a fixed rate a thread to check the count of thread and then move forward the latch, it's a little bit non sense; in this case the thread that's running the test could do spin check of the condition (#number of current thread == #of threads at setup time).
Then another thing that doesn't sound good is the if, control structures has to be avoided in tests, else you are verifying  two things, and in this case is used just to debug the test.
Sorry but this PR can't be accepted from my side.
Regards
Andrea


support tagging non-capz resource group via annotation

towards https://github.com/giantswarm/giantswarm/issues/31444
For CAPZ workload clusters, the resource group of the DNS zone is managed by CAPZ and it's possible to add additional tags to it using the cluster chart.
For non-CAPZ workload clusters such functionality does not exist since the resource group is created by the dns operator instead.
This leads to some issues where customers expect certain tags on the resource group to be present.
This PR supports tagging the resource group based on annotations on the infracluster object.

Commented in the other PR.
Looks great! Just one little nitpick about the field's name in the interface. Might make more sense to make it explicit that it's an Azure tag.


Image plugin: "Open link in new window checkbox" is always unchecked

Describe the bug
The "Open link in new window" checkbox of the image plugin, is not showing it's correct state.
To Reproduce
Steps to reproduce the behavior:

Go to https://react-page.github.io/
Click on the image plugin to edit it. (located left of the list that says batteries included at this time)
Add an image, a link and check "Open link in new window"
Click on preview page and click the image (it opens the url that you entered correctly, in a new window)
Back to react page click on edit blocks and click the image again to view it's settings
The "Open link in new window" checkbox is unchecked

Expected behavior
The "Open link in new window" checkbox should show the correct state of the plugin
Screenshots

Desktop (please complete the following information):

OS: Windows
Browser chrome
Version 97.0.4692.99

Additional context
Just want to say thanks for this great plugin, it helps a lot with our current project.

Hello! We have reproduced this issue in our project, too. Are there any plans for a fix?
Thank you in advance!


paket install and paket update is deleting packages.config files.

When there is a paket.references paket is deleting the packages.config file (even when they contain different packages). I'd like to use packages.config for some NuGet packages which setup the solution with powershell scripts, which is not possible with paket. Those changes made by powershell will work on linux (but they must be executed on windows).
Is this by design or a bug?

This is a known issue with an easy workaround.
You can still manage these packages in paket and just set version_in_path to true. Paket will automatically create the packages.config and add these packages. See http://fsprojects.github.io/Paket/nuget-dependencies.html#Putting-the-version-no-into-the-path
The downside of this is that we take full control over the packages.config and since you didn't instruct paket to put stuff in, it assumes you don't want anything in it.

But with this powershell installation scripts are never executed, correct? Is there a workround where I can disable this feature and manage packages.config via visual studio?
Thanks for the fast answer.

I will test this version_in_path but I think this is really confusing (1. that the files are deleted and 2. that version_in_path has something to do with packages.config)

This is a workaround to make xunit.runner work in visual Studio.  We could change this
"feature" to "add only". This would not touch your packages.config, but
then we can't really delete stuff from packages.config if we delete a
package from dependencies file.
One way out of this would be to tag our packages in the packages.config
with a paket flag - do you know how such a flag could look like?
On Sep 1, 2015 9:55 AM, "Matthias Dittrich"<EMAIL_ADDRESS>wrote:

I will test this version_in_path but I think this is really confusing (1.
that the files are deleted and 2. that version_in_path has something to do
with packages.config)
—
Reply to this email directly or view it on GitHub
https://github.com/fsprojects/Paket/issues/1033#issuecomment-136620394.

Ok I re-read the related issues #516, #928 .
I would suggest doing the following:

If no  version_in_path is used in paket.dependencies or paket.lock paket should ignore packages.config everywhere
Detect the deletion of a version_in_path from the previous lockfile.
Otherwise use the current behavior or throw if additional packages are used in packages.config (so when version_in_path is used paket "owns" all packages.config files)

In fact your solution would also work:

add a isPaket attribute to the root xml node. Ignore the file if it is not there.
Throw when we have a version_in_path package but the isPaket attribute is not set in packages.config and the file exists (this indicates that somebody used Visual Studio to add packages, we cannot realistically support this)

Problems/Notes:

When "reinstall all" is used within visual studio, the isPaket attribute (or anything really) will be removed. That's why I think it might be better to save this information somewhere else (use the previous paket.lock file or a new file)
I use a different folder for nuget package restore, this means packages managed by paket will be downloaded twice into different folders. This leads to problems when you use version_in_path and Visual Studio NuGet at the same time (that's why we should prevent this combination).

Even considering the problems it would be a improvement as this would allow us to use paket and nuget in the same solution. (In this scenario I'd like to use paket for build dependencies and nuget for the solution itself). Please tell me what you think and I can maybe try to hack something together ;)
So in essence: I don't see an unproblematic way to support version_in_path side by side with using NuGet in Visual Studio.

To give some more details to my use-case:
We have some packages using the powershell install features, that's why I wanted to use paket for build dependencies and NuGet within the solution. Aside from this I want to simplify the transition for my co-workers. But currently this seems to be impossible/annoying because paket is deleting all the packages.config files. I think this use-case worked fine in the past.
Once at this point it is easy to convert project by project to paket if needed.
Please tell me if I'm doing things the wrong way :)

partly solved in 73ee7c8


android torch off, and iOS

Fix for:

Turn off android torch on disableTorch()
Implemented on/off in iOS

tested on exactly 3 iPhones and 1 android device :smile:
sorry about the iOS code repetition, I know zip about swift but found hints on https://stackoverflow.com/questions/27207278/how-to-turn-flashlight-on-and-off-in-swift/27334447 and basically copied it over twice, once for off and once for on :+1:  Someone feel free to DRY the code by implement a setTorch(bool) in swift code too.

I see there are now 2 PR for this feature :)
Happy with whichever being merged − seems to be a popular feature to fix…

@arnotixe Thank you very much for your contribution! I will merge #78 because it will as well add the functionality to get the current state :)


CAN filter with RTR mask causes infinite loop in MCAN driver on filtered message arrival

Describe the bug
Using a CAN filter with the RTR mask set causes the MCAN driver to hang in can_mcan_get_message when a message that would be filtered arrives.
Tested on STM32G0B1KET6N but it should happen on any platform using the MCAN driver.
The issue is on line 661 where the incoming message never gets ACK'd since the RTR doesn't match. A super simple workaround is to just add *fifo_ack_reg = get_idx; but I'm guessing that isn't a proper fix?
To Reproduce
Here's a minimal application that demonstrates the issue. "done!" never gets printed unless I apply the workaround.
#include <zephyr/zephyr.h>
#include <zephyr/drivers/can.h>
#include <zephyr/device.h>

const struct zcan_filter filter = {
    .id_type  = CAN_STANDARD_IDENTIFIER,
    .id_mask  = 0,
    .rtr      = CAN_DATAFRAME,
    .rtr_mask = 1,
};
CAN_MSGQ_DEFINE(msgq, 8);
const struct device *dev = DEVICE_DT_GET(DT_NODELABEL(can1));

void main(void) {
    can_set_mode(dev, CAN_MODE_LOOPBACK);
    can_add_rx_filter_msgq(dev, &msgq, &filter);
    struct zcan_frame txmsg = {
        .id_type = CAN_STANDARD_IDENTIFIER,
        .rtr = CAN_REMOTEREQUEST,
        .dlc = 0,
    };
    can_send(dev, &txmsg, K_FOREVER, NULL, NULL);
    printk("done!\r\n");
}

Expected behavior
It prints "done!".
Impact
Just a minor annoyance, very low priority.
Logs and console output
Verified in GDB that it's hanging in this function.

Environment

OS: MacOS
GNU Toolchain for the Arm Architecture 11.2-2022.02 (arm-11.14)
v3.1.0

Additional context

Thank you. I can confirm the issue. I am looking into providing a fix.


I have never used seml or MongoDB before. Can someone please tell me hoe to proceed

I installed MongoDB in local system and created conda environment and installed seml in it.
Activate the environment.
I am stuck in running following command.
'''
seml rev_data_collection add config/eval_robustness/csbm/csbm_gcn_lp.yaml start
'''
This is the error I am getting.
OperationFailure: Authentication failed., full error: {'ok': 0.0, 'errmsg': 'Authentication failed.', 'code': 18, 'codeName': 'AuthenticationFailed'}

Hi @rohanmahure, to run the experiments with seml, you need to configure seml to use your local MongoDB installation by running seml configure. (See also the seml-documentation here.)
Furthermore, as you run the experiments locally and not on a cluster with a slurm workload manager, you need to append the --local flag, i.e. run
seml rev_data_collection add config/eval_robustness/csbm/csbm_gcn_lp.yaml start --local

instead.
However, I want to mention that you can do experiments without using a MongoDB or seml by directly calling the run method of the exp_eval_robustness.py file as illustrated in the following jupyter notebook. Here, the configuration is just directly passed as dictionaries to the run method.


Contact via Email

There should be also option for email.. in this and in footer also..
Rather than just give an email in footer.. there should be Email icon like these icons.. Its's more comfortable.. and enhance user experience..

/assign

removed contact us section as all details are given in footer already


Unable to run release on MacOS

When running a boruta-server release on MacOS I get this error:
hostname: illegal option -- i
usage: hostname [-f] [-s | -d] [name-of-host]

This is due to this line: https://github.com/malach-it/boruta-server/blob/master/rel/env.sh.eex#L20 Apparently the -i flag isn't available on MacOS. Happy to create a PR to fix this, but I'm not sure what the best solution would be. A couple things come to mind:

Just use hostname and use hostname instead of IP. I imagine there is a reason IP address is used.
Conditional logic for operating system. Use something like uname and use hostname on MacOS or use ifconfig or dig to determine IP on MacOS.

Happy to create a PR if that is desired.

Hi @Stratus3D ,
Thank you for the bug report.
I think the best would be to have an os conditional statement keeping in mind that having the IP in the Erlang node name was a choice taken for the need of further use. Saying that as a suggestion since only the node name format matters.


Add jshint validation to travis

Also cleaned up some existing jshint issues

Just about all of these options are the default.

Then why have the need to have them in the file?, please remove if they are the default.
I think it would be best just to have only the things that are not default.


no method named hincrby found for type r2d2::PooledConnection<r2d2_redis::RedisConnectionManager> in the current scope

Hi,
It seem that HINCRBY is not reconized using this crate !
Here is what I did, first create a pool:

//Redis Pool
let rmanager = RedisConnectionManager::new("redis://<IP_ADDRESS>:6379").unwrap();
let pool = r2d2::Pool::builder()
   .build(rmanager)
   .unwrap();

Then use it inside a function like this:
let mut connection = pool.get().unwrap();

And finally, I wanted to use the command HINCRBY like this:
connection.hincrby::<String, String, String>("the_key".to_string(), "value_to_incr".to_string(), "1".to_string());

But infortunatelly getting this error message:
no method named `hincrby` found for type `r2d2::PooledConnection<r2d2_redis::RedisConnectionManager>` in the current scope

When using INCR command, it is working well, but I need to use HINCRBY for hash.
Can you tell me where is the problem with it please ?

It's just hincr.

@badboy Thank you sir :)


Fix bug where sometimes holidays aren't detected

If you check if a later date is a holiday first using the business time calendar, it will not detect holidays that happen earlier in the year.
I've fixed that issue here and added some tests pertaining to it.
For an example + some more discussion, see issue https://github.com/seatgeek/businesstime/issues/25

@erwaller you're up for your yearly quota of PR reviews.

Looks good to me! I combined the two holidays tests into something that was a bit more explicit about testing an later holiday before an earlier one.

@agans I can make a release if this is ready for that.


Add ENI limits for all new instance types

Copied from https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-eni.html#AvailableIpPerENI with cg1.4xlarge and hi1.4xlarge manually added.

@SerialVelocity I don't see cg1/hi1 in your PR? The rest looks good to me - thanks for keeping this in sync!

@theatrus What I meant was that the AWS docs don't list cg1/hi1` so I copied all of the instances from the docs, then added the two missing instance types back in.

Got it! Thanks


Bottom part of OTP input does not work

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Log out if you are logged in;
Input you phone or email and press on Continue;
Click on the bottom part of any code input view;
Verify that the view does not get focused if pressed on the bottom part.

Expected Result:
The code input view which was clicked should focus.
Actual Result:
The code input view which was clicked does not focus.
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: 1.3.40-1
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/43996225/aea9ecdf-d9df-4536-a819-b26e18d95b1c
https://github.com/Expensify/App/assets/43996225/f4b73416-884b-42ba-b907-7954a4f71e98
Expensify/Expensify Issue URL:
Issue reported by: @DanutGavrus
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1689248027917769
View all open jobs on GitHub

Proposal
Please re-state the problem that we are trying to solve in this issue.
Bottom part of OTP input does not work
What is the root cause of that problem?
This resulted from this PR that added StyleUtils.getHeightOfMagicCodeInput() to the wrong View.
Right now, we are using 2 Views in parallel in a parent View inside MagicCodeInput.js:
https://github.com/Expensify/App/blob/9e5d4ee9ad4b0711ddb119009d49fa872e662f14/src/components/MagicCodeInput.js#L310-L328

As you may see here:

1.1. Our input gets to have a height of 52px;
1.2. Its parent gets to have a height of only 50px because of a borderBottomWidth: 2;
1.3. Its grandparent gets to have a height of 52px;
Our input can not exceed it's parent's height;

What changes do you think we should make in order to solve the problem?
We should move StyleUtils.getHeightOfMagicCodeInput() in its parent view. After this change, the bottom part of the input works.
This does not cause a regression, as I've re-tested this issue.

@DanutGavrus Green line is not showing when clicked on the bottom line. I have checked already the referenced dupe bug.

I think this is fixed on v1.3.40-1 now. @kavimuru can you check this please?

@DanutGavrus yes please!

@jliexpensify
Hope this helps, it's from the latest staging, as of now v1.3.41-2:
https://github.com/Expensify/App/assets/56603839/52458249-5e47-417d-8fb0-73006fcf7f20

@DanutGavrus interesting - so I have an explanation here! Basically, you need to hover over the Magic Link lines and ensure that the "|" symbol exists before clicking, otherwise it won't work:
https://github.com/Expensify/App/assets/30815269/b88c1047-b840-4280-a9a4-a192c2d47e29
In your video, only the arrow is appearing, so this behaviour seems intentional.

Closing this one out based off my above comments/observations.

@jliexpensify

you need to hover over the Magic Link lines and ensure that the "|" symbol exists before clicking

The arrow changes to "|" symbol automatically when the mouse hovers any "text input" as this is the default browser behavior. Here, on the bottom part, it doesn't.

this behaviour seems intentional

The height of the text input is not correctly set, it's smaller than its available space. The other "text inputs" in our and other apps work on the bottom part(try playing with the new comment field on GitHub for example, or any other "text input").
I think this should be reopened based on these observations, what do you think?

@DanutGavrus thanks for the additional context. Here's what I've said:

The arrow changes to "|" symbol automatically when the mouse hovers any "text input" as this is the default browser behavior.

You've said:

Here, on the bottom part, it doesn't.

So you're essentially saying that if you hover over any of the 6 lines (i.e. "_" ) in the Magic Code or Authenticator section, it should go green? Is that correct, or have I misunderstood you?

@jliexpensify

So you're essentially saying that if you hover over any of the 6 lines (i.e. "_" ) in the Magic Code or Authenticator section, it should go green? Is that correct, or have I misunderstood you?

What I actually mean is that hovering over the black area above the green "_" line, seen in the previous picture, should change the mouse from arrow to | and should allow users to click on it.

Thanks for clarifying, Is ee what you're saying now. I can't recall if we ever had this in place, so have asked internally - https://expensify.slack.com/archives/C01SKUP7QR0/p1689722521311609

Chiming in here, I can see where technically this is a bug. Who made this proposal? I'm not sure I understand the proposed solution but the breakdown of 52px height vs 50px height is correct. That being said... this is such an edge case, I'm not sure if it's even worth worrying about.

Thanks for weighing in Shawn! Given that we have this input:

the breakdown of 52px height vs 50px height is correct

and

this is such an edge case, I'm not sure if it's even worth worrying about.

I'm going to close this GH again.


Add some JS tests

After getting #33 I thought that some tests would be great to have some tests because it's hard to really know if some contributions that fixes one thing doesn't break another.

I think tests that were written by thake (big thanks to him!) are for now enough, so closing this issue.


Signature image bugs

Hi,
I have a very strange problem using signatures on Rainloop. I have added a PNG image in my signature and when I edit a mail everything is okay. But when i open the mail sent in Rainloop, the image is a big gray square.
I have this problem only in Rainloop, the image is well-displayed in many others MUA (like thunderbird).
When I tried to change PNG to SVG, I noticed that the image is not added when the mail is sent.
In Rainloop :

In Thundebird :

For the PNG, I suppose that it's just a display error whereas for svg, I think that it's a at the insertion of the signature

Quite same issue. The signature does not support well images on RainLoop.


feat: Add timer option to preserve cursor position functionality

This commit introduces an optional parameter, 'timer', to the 'preserve_cursor_position' feature.
The inclusion of this parameter helps prevent a potentially jarring cursor jump after a lengthy multiline yank operation with a downwards motion.

Thanks for this PR !
I'm currently on vacation and I can't test and review this for the moment. I'll do this when I come back 😅

No worries no rush - enjoy you vacation!
Here are my configs

highlight = {
on_put = true,
on_yank = true,
timer = 500,
},
preserve_cursor_position = {
enabled = true,
timer = 458,
},

A possible additional improvement, for another PR, could be to conditionally jump back immediately if only one line is yanked.

Hey, Sorry for the late answer.
Can you add a description of this option in the README here : https://github.com/gbprod/yanky.nvim/blob/main/README.md?plain=1#L507 and add the option here : https://github.com/gbprod/yanky.nvim/blob/main/README.md?plain=1#L497
Otherwise, it seems ok :)


Override Key.hashCode to be compatible with equals.

fixes #347

Glad to be of service.
I also have some generic tileset/tilemap/sprite sheet code I could contribute. One problem with it is that it takes a configuration object that requires the dimensions of the graphic file. I believe that information should be figured out by loading the file and examinging it directly. I'm sure Indigo has code that can get the dimensions of an image, but I don't know where to find it.

I accidentally added a new commit, which undid your review. Reverting the commit did not help. Sorry about that. I will clean up the Git history and force-push something cleaner.


Added Code for Login/Signup

Hey @arpit456jain @7saikat7
I have added code for login and signup as said by @arpit456jain
but still my git is unable to detect the older files
for which i made 3 apps

@Atif0604  can you make those apps again in this PR?

I guess i have to make a new PR for it this branch already have that becoz i tried doing what saikat ask to try for
@arpit456jain

ok
@7saikat7 @Snehaa1203   please check this PR once then we are good to go


Use thread pool from concurrent-ruby on ruby server

This changes the server to use a thread pool from the concurrent-ruby gem, which can grow and shrink, and keep a queue.

You have to update templates/grpc.gemspec.template and rerun tools/buildgen/genereate_projects.sh. Other than that, LGTM. It's nice seeing a lot of red in the diff.

@apolcyn @murgatroid99 I see several ruby test failures.  The ruby tests are usually pretty well behaved, so I'm hesitant to re-run the basic tests until we get a success because these might be real race conditions.
If you guys think they are just flakes, feel free to re-run the tests.

@kpayson64 it looks to me like these failures might actually be existing bugs. I'm able to make these same errors occur with this PR, but also with both the current master and v1.0.x branches.
I'm not sure what we want to do about this PR, but I think this error is unrelated to this change, creating a separate issue for it https://github.com/grpc/grpc/issues/7972.

@apolcyn Thanks for verifying! I'll go ahead with the merge.


Update Storybook, fix plainFiles bug, fixFileSizeValidator, export Validator interface

This pull request addresses a problem defined at #18 and all bugs that were found during adding stories.
In summary:

Added storybook - it now supports the newest syntax of the hook. Storybook deployment should run correctly, so CI tests will pass.
fixed fileSizeValidator - now it validates files before parsing, so picking files without reading content works correctly.
fixed a bug when after new selection:  files, plainFiles, errors and filesContent were not cleared correctly
fixed a bug with plainFiles - they were updated even when files did not pass the validation
added export for Validator interface, so it can be imported and used

Overall, this PR turned out to be quite big, but it solves a lot of important issues.

Everything works great, thanks a lot. This will add a lot of value to this package


fix: Updates image on android collect guide

Description

Updates image on android collect guide

Testing required outside of automated testing?

[x] Not Applicable

Screenshots (if appropriate):

[x] Not Applicable

Rollback / Rollforward Procedure

[x] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

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


[MINOR][TEST][Streaming] make "testDir" able to be claened after test.

It's a minor bug in test case. val testDir = null will keep be null as it's immutable, so in finally block, nothing will be cleaned. Another testDir variable created in try block is only visible in try block.
How was this patch tested?
Run existing test case and passed.

Test build #58128 has started for PR 12999 at commit fb17459.

LGTM

Test build #58128 has finished for PR 12999 at commit fb17459.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/58128/
Test PASSed.

Merged to master/2.0


Get defined schemas as python dictionaries

Despite Flasgger gathers up all defined schemas it does not exposes an interfacing method to enable querying them. This PR adds this missing interfacing method: Swagger::get_schema(schema_id)
This may be useful when an application needs to access the schema for further validation steps, such as dropping additional parameters in a request body.

Coverage increased (+0.03%) to 93.038% when pulling b235e989619e9b36e9d4816cb4f9aadcc91cdc2f on allrod5:get-schema into 8944594b06276766d35af6058c00dd2b8ce8b49b on rochacbruno:master.

Coverage increased (+0.03%) to 93.038% when pulling 117f043891823cc63c4f68ce18c4c47b68fe2d90 on allrod5:get-schema into 8944594b06276766d35af6058c00dd2b8ce8b49b on rochacbruno:master.

Coverage increased (+0.03%) to 93.038% when pulling 67040726ae8bfa88f923921f4be8abb0c0b0de56 on allrod5:get-schema into 8944594b06276766d35af6058c00dd2b8ce8b49b on rochacbruno:master.


Update dependencies. Increase version number.

Coverage remained the same at 100.0% when pulling 87dfd890f76bc2c4829c94f6a407d05027fe15e0 on depend_on_6.0.0 into 17c49371ff23383e08b31402f5a45b229ab3dcda on master.


GER Localization of AboutDialog fails on Unicode Characters.

Steps to Reproduce

Set localization to German.
Call showAboutDialog with any content

Expected results:
It should show:
LIZENZEN ANZEIGEN          SCHLIEßEN
Actual results:

Hi @Terranic,
Can you please provide your flutter doctor -v and a minimal complete reproducible code sample?
Thank you

Part 1;
PS C:\Users\Constantin\StudioProjects\sdg4_github> flutter doctor -v
[√] Flutter (Channel stable, 3.0.5, on Microsoft Windows [Version 10.0.22000.856], locale de-DE)
• Flutter version 3.0.5 at C:\dev\flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision f1875d570e (5 weeks ago), 2022-07-13 11:24:16 -0700
• Engine revision e85ea0e79c
• Dart version 2.17.6
• DevTools version 2.12.2
[√] Android toolchain - develop for Android devices (Android SDK version 33.0.0-rc1)
• Android SDK at C:\Users\Constantin\AppData\Local\Android\sdk
• Platform android-33, build-tools 33.0.0-rc1
• Java binary at: C:\Program Files\Android\Android Studio1\jre\bin\java
• Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)
• All Android licenses accepted.
[√] Chrome - develop for the web
• Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe
[√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.0.0)
• Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
• Visual Studio Community 2022 version 17.0.31903.59
• Windows 10 SDK version 10.0.19041.0
[√] Android Studio (version 2020.3)
• Android Studio at C:\Program Files\Android\Android Studio
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.11+9-b60-7590822)
[√] Android Studio (version 2021.2)
• Android Studio at C:\Program Files\Android\Android Studio1
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)
[√] Connected device (4 available)
• sdk gphone64 x86 64 (mobile) • emulator-5554 • android-x64    • Android 12 (API 31) (emulator)
• Windows (desktop)            • windows       • windows-x64    • Microsoft Windows [Version 10.0.22000.856]
• Chrome (web)                 • chrome        • web-javascript • Google Chrome 104.0.5112.81
• Edge (web)                   • edge          • web-javascript • Microsoft Edge 104.0.1293.54
[√] HTTP Host Availability
• All required HTTP hosts are available
• No issues found!

Well, this is an example code - interestingly, it works as expectet...
Trying to find out what is the difference. It does not seem to be a font issue.... looking into it
import 'package:flutter/material.dart';
import 'package:flutter_localizations/flutter_localizations.dart';
import 'package:google_fonts/google_fonts.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  MyApp({super.key});

  final ThemeData lightmode =
      ThemeData(textTheme: GoogleFonts.aBeeZeeTextTheme());

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      supportedLocales: const [
        Locale('de'),
        Locale('en'),
      ],
      localizationsDelegates: const [
        GlobalMaterialLocalizations.delegate,
        GlobalWidgetsLocalizations.delegate,
        GlobalCupertinoLocalizations.delegate,
      ],
      locale: const Locale('de'),
      theme: lightmode,
      darkTheme: lightmode,
      title: "Hello",
      home: Builder(builder: (context) {
        return ElevatedButton(
            onPressed: () =>
                showAboutDialog(context: context, children: [Text("Hello")]),
            child: Text("Click"));
      }),
    );
  }
}

Kindly provide the reproducible sample when you're able to.
Thank you