Sherlock and Array

An optimal solution in C++14 to the problem Sherlock and Array in the Search domain of Algorithms

@RyanFehr I have added a header as well a description to the solution in it.

The header should be formatted as follows

/*
Problem: HackerRank.urlToProblem.com
C++ Version#

Thoughts: A description of your approach to the problem

Time Complexity:  In big-O format
Space Complexity: In big-O format
*/

Please change the file extensions to be .cpp


AttributeError: 'Dense' object has no attribute 'kernel'

Hi, Siavash,
I am trying to run this code about umtra and maml, and get the following error:
No previous checkpoint found!
Traceback (most recent call last):
  File "models/maml/maml.py", line 495, in <module>
    run_mini_imagenet()
  File "models/maml/maml.py", line 490, in run_mini_imagenet
    maml.evaluate(50)
  File "models/maml/maml.py", line 277, in evaluate
    updated_model = self.inner_train_loop(train_ds, train_labels, iterations)
  File "models/maml/maml.py", line 226, in inner_train_loop
    self.create_meta_model(self.updated_models[0], self.model, gradients)
  File "models/maml/maml.py", line 142, in create_meta_model
    updated_model.layers[i].kernel = model.layers[i].kernel - self.lr_inner_ml * gradients[k]
AttributeError: 'Dense' object has no attribute 'kernel'

Do you know why this error would happen?

[ ] Issue solved .
By commenting Line  60-61 in file networks.py


Deselect all does not trigger onItemDeselect events

Hi,
I've installed "angularjs-dropdown-multiselect": "~1.5.0" and I found out an issue in the code.
If you click on Check all button, onItemSelect event is triggered per each item in the model.
If you click on Uncheck All, I'd expect onItemDeselect event to be triggered per each item.
I'm aware of onSelectAll/onDeselectAll events, I just think that Check all/Uncheck all should behave in the same way.
$scope.events = {
onItemSelect: function(item) {
return $log.warn("" + item + " selected"); // is triggered per each item on Check all
},
onItemDeselect: function(item) {
return $log.warn("" + item + " deselected"); // not triggered on Uncheck all
}
};
Hope this will help somebody.

onItemDeselect should not fire on uncheckAll,
onItemSelect should not fire on checkAll
This is the behaviour right now as shown in this plunker


Update Contact validation Form

Project Requirements are as follows:
-The content of the email field has to be in lowercase.
-When the user submits the form, check if the email is in lowercase.
-f the validation is OK, the form is sent.
-If the validation is not OK, you show an error message to the user near the submit button informing them of the error, and the form is not sent.
for More Details about requirements please visit the retuirement page

I missed that information in a hurry, but if you see my previous pull request you will find a details description. Sorry for that.


Malformed TF_STRING tensor; too short to hold number of elements

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
OS Platform and Distribution (e.g., Linux Ubuntu 16.04):  CentOS 7.3
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary): binary
TensorFlow version (use command below): Java API 1.12
Python version:
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version:
GPU model and memory:

Describe the current behavior
I am using Java API for prediction and
I tried to create a tensor of String type using the following Java API:
                    String[] strs = {"element1", "thisissecondelement"};
                    ByteArrayOutputStream outputStream = new ByteArrayOutputStream( );
                    for (String s : strs) {
                        outputStream.write(s.getBytes());
                    }
                    long [] shape = new long[1];
                    shape[0] = strs.length;
                    Tensor<String> t = Tensor.create(String.class, shape,  ByteBuffer.wrap(outputStream.toByteArray());

However, when calling "runner.fetch("predict/Sigmoid:0").run().get(0)" I got the following excetion:
Exception in thread "main" java.lang.IllegalArgumentException: Malformed TF_STRING tensor; too short to hold number of elements.

I looked into the code:

It uses sizeof(tensorflow::uint64) as the size of the element in the byte array. However, the  size of the string element is not fixed.
Describe the expected behavior
The API  runner.fetch("predict/Sigmoid:0").run().get(0)  should run without error.
Code to reproduce the issue
Create a String Tensor using public static <T> Tensor<T> create(Class<T> type, long[] shape, ByteBuffer data)  in org.tensorflow.Tensor.

@asimshankar this seems related to the C API code you wrote. Do you know who should handle this?

I think the following will get what you want:
String[] strs = {"element1", "thisissecondelement"};
byte[][] data = new byte[strs.length][];
for (int i = 0; i < data.length; ++i) {
  data[i] = strs[i].getBytes();
}
Tensor<String> t = Tensors.create(data);
// Alternatively: Tensor<String> t = Tensor.create(data, String.class);

Some explanation:

The sample code provided was using Tensor.create(Class<T> type, long[] shape, ByteBuffer data) which (though easy to miss) requires that the ByteBuffer contain the bytes encoded as required by the TensorFlow C API. (The Javadoc links to the format described in c_api.h). So, the string tensors needed to be encoded with uint64 offset information in addition to the raw bytes, which is why you were getting the error.

The snippet I provided above would probably be what you want instead - using Tensors.create(byte[][][]) which is a convenience wrapper over Tensor.create(Object, Class<T>), whose documentation provides some more examples.

I'm tempted to close this since this doesn't appear to be a bug, just a slight misunderstanding in how to use the API. If I'm mistaken, or if you have suggestions on what would have helped (or how the documentation could be improved) so that you didn't run into this - feel free to re-open.


Update init.py

add SkypeAudioMsg

Looks like there's a few imports missing, I'll go ahead and add those in the right order...


OpenStack attach, detach, destroy

Fixes https://clusterhq.atlassian.net/browse/FLOC-1837
Fixes https://clusterhq.atlassian.net/browse/FLOC-1468
Fixes https://clusterhq.atlassian.net/browse/FLOC-1485
Fixes https://clusterhq.atlassian.net/browse/FLOC-1486
Depends on #1389

Note that this now requires an "openstack" key in acceptance.yml rather than rackspace:
sudo /usr/bin/env CLOUD_PROVIDER=openstack CLOUD_CONFIG_FILE=$HOME/acceptance.yml $(type -p trial) flocker.node.agents.functional.test_cinder.CinderBlockDeviceAPIInterfaceTests

Please address the above comments and submit for review after #1388 and #1389 have landed.

I ... guess that's OK if the tests pass? So address and merge.


chore: remove required flags for repeated module args

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#349
#368  👈
#367
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @NathanFlurry and the rest of your teammates on  Graphite


Load SFTP & FTP modules only when actually needed.

As suggested by @mgrenier in #45

Thanks for your commitment! I had already wrote the same exact lines but did not commit them. I'm publishing a patch right now.


[DOC] Add french train data notebook

PR Description
Please describe the changes proposed in the pull request:
Use a French train dataset to illustrate some basic pyjanitor functions and the difference between adding new column statistics in the call chain verses one at a time.

clean_names
remove_empty
rename_column
drop_columns
join_apply, add_columns

This PR resolves #438.

PR Checklist

Please ensure that you have done the following:

[x] PR in from a fork off your branch. Do not PR from <your_username>:master, but rather from <your_username>:<branch_name>.

[x] If you're not on the contributors list, add yourself to AUTHORS.rst.

Quick Check
To do a very quick check that everything is correct, follow these steps below:
Only added the python notebook to documentation.

Please tag maintainers to review.

@ericmjl

I was unable to run make format on the windows laptop that I brought to Austin, but merged some more recent commits and switched over to my desktop red hat -- now when I run make format from rhel I get "78 files left unchanged."

Thank you for your contribution, @puruckertom!


docsFix docker example doc

Proposed changes
fix run-docker-cluster docs docker volumes:conf

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


#18964 SQLite addnig STRICT typing support

I try to add the strict typing support for SQLite (checkbox in the table declaration).
To do this I had to copy the "tree" tag of plugin.xml form the generic plugin to the sqlite plugin... And also copy all corresponding translations. Is there a way to inherit the generic plugin to avoid copying translations ?

Let's avoid code duplication. Please try using treeInjection

Thanks for your tip, that's what I was looking for!


[3.x] Refactor ServiceConfig::class.

What the diff?
This Pull Request primarily consists of updates and changes related to a software component we use to configure settings for various services, ServiceConfig. The significant changes are as follows:

Change in File Library Imports
Across multiple files, we updated where ServiceConfig is imported from, changing it from the Fluent subdirectory to the primary Orchestration directory. This would ensure we're all using the latest version of ServiceConfig for our settings.

Use of Index-based Option Selection
In the OrchestrateProvider.php file, the method of option selection was changed to use the index of the option rather than its value. This was done to provide a more standardized and error-free way of choosing settings.

Variables Assignment Update
The OrchestrateService.php file introduced assignment expressions for improving the way we define and assign values to certain variables like $name and $id.

Standardization of Settings Retrieval
Methods for settings retrieval(get method) were used more extensively in files like OrchestrateProvider.php and DatabaseDriver.php, providing a more standardized way to get the selected option's values.

Creation of New Source Files
Two new files ServiceConfig.php and ServiceDriver.php were added to the src directory. These files are likely to include the updated configuration options and functionalities we're adopting, creating a better-organized codebase.

Modification in Test Files
Multiple testing files were updated to import the new ServiceConfig path. This ensures our test suites are in alignment with the changes made in the codebase.

Overall, these changes bring a shift towards more secure and efficient ways of managing service configurations, contributing to an improved code quality and enhanced application reliability.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 92.13%. Comparing base (e2cf082) to head (a8565c8).

Additional details and impacted files
@@             Coverage Diff              @@
##             master      #81      +/-   ##
============================================
- Coverage     92.14%   92.13%   -0.02%
- Complexity      189      190       +1
============================================
  Files            22       22
  Lines           662      661       -1
============================================
- Hits            610      609       -1
  Misses           52       52

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Add CloudBees colleagues to some plugins I maintain

@aHenryJard
@aneveux
@kerogers-cloudbees
@amuniz

https://github.com/jenkinsci/aws-credentials-plugin
https://github.com/jenkinsci/kubernetes-plugin
Description

Submitter checklist for adding or changing permissions

Always

[ ] Add link to plugin/component Git repository in description above

For a newly hosted plugin only

[ ] Add link to resolved HOSTING issue in description above

For a new permissions file only

[ ] Make sure the file is created in permissions/ directory
[ ] artifactId (pom.xml) is used for name (permissions YAML file).
[ ] groupId / artifactId (pom.xml) are correctly represented in path (permissions YAML file)
[ ] Check that the file is named plugin-${artifactId}.yml for plugins

When adding new uploaders (this includes newly created permissions files)

[X] Make sure to @mention an existing maintainer to confirm the permissions request, if applicable
[X] Use the Jenkins community (LDAP) account name in the YAML file, not the GitHub account name
[x] Make sure to @mention the users being added so their GitHub account names are known if they require GitHub merge access (see below).
[ ] All newly added users have logged in to Artifactory at least once

Reviewer checklist (not for requesters!)

[ ] Check this if newly added person also needs to be given merge permission to the GitHub repo (please @ the people/person with their GitHub username in this issue as well). If needed, it can be done using an IRC Bot command
[ ] Check that the $pluginId Developers team has Admin permissions while granting the access.
[ ] In the case of plugin adoption, ensure that the Jenkins Jira default assignee is either removed or changed to the new maintainer.
[ ] If security contacts are changed (this includes add/remove), ping the security officer (currently @daniel-beck) in this pull request. If an email contact is changed, wait for approval from the security officer.

There are IRC Bot commands for it

wrt. to

@Vlatombe I assume these people will need GitHub access to the repositories too? (i.e. not just the deployment permission)

I assume these people will need GitHub access to the repositories too?

tbh it's a bit pointless that step, we just always assume they need it. ideally identity systems would be aligned / it would be done automatically as part of the PR.

@timja yeah, hacking on the team definition made me envision indeed how we could version all (most?) GH teams here and "apply" also GH permissions from RPU.

I've retriggered the CI build, all green now. Going to merge given the request comes from an existing maintainer. I will also handle the GH side as need be.

@Vlatombe I believe I've added all of the GH aliases to the two repository teams.
@aHenryJard
@aneveux
@kerogers-cloudbees
@amuniz please confirm you do have write access to these two repositories. Thanks!


[WIP] 2bit gradient compression

Description
Implements 2bit gradient compression by quantizing each value in gradient array to 2bits using two user specified thresholds, one for positive and one for negative values.
Please review and look at the last section with my questions.
@eric-haibin-lin @mli @piiswrong @reminisce @anirudh2290 @bhavinthaker @madjam @cjolivier01
This is a work in progress. I'm currently running this with different kind of models to get performance results.
Important files to review
Operators

two_bit_quantize-inl.h
two_bit_quantize.cc

KVStore local

comm.h

KVStore dist

kvstore_dist.h
kvstore_dist_server.h

Documentation about gradient compression

kvstore.py
two_bit_quantize.cc

Checklist
Essentials

[x] Passed code style checking (make lint)
[ ] Changes are complete (i.e. I finished coding on this PR)
[x] All changes have test coverage
[x] For user-facing API changes, API doc string has been updated.
[x] To my best knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

[x] two-bit-quantize and dequantize operators
[x] Reduce operation in kvstore_local / comm.h
[x] Distributed kvstore changes at worker and server
[x] Tests for operator, local kvstore, distributed kvstore with predefined and random data. The results have been compared with expected values by implementing this logic in python.
[x] API changes for Kvstore, Module and Trainer in python

Comments
Problem
When training large scale deep learning models especially with distributed training, communication becomes a bottleneck for networks whose computation is not high compared to the communication.
Approach
We can compress the gradients by considering only those elements that exceed a threshold. Only these elements are encoded and sent. The elements of the gradient that are near zero can safely be delayed by aggregating them in a residual array. When the updated residual with gradient of next iterations exceed the threshold, these values are sent. Effectively these values are updated at a lower frequency.
On the receiver's end we decompress the data and use the decompressed weights.
Specifically in this PR, 2bit quantization has been implemented.
Two bit quantization
Uses two thresholds to quantize the data, one positive threshold and one negative threshold. Any positive value greater than or equal to the positive threshold is set to one value (say 01), any negative value lower than or equal to the negative threshold is set to second value (say 10), and others are set to third value (say 0). We need three values to represent data in this fashion and hence two bits. We understand this leads to one bit going waste, but that's an optimization to be done later. The error in quantization is accumulated as residual and carried over to the next iterations. This is added in the next iteration to the gradient before quantizing.
An example below with thresholds of -2.0 and 2.0

Format of compressed gradient
The first two elements are the thresholds used for quantization. The third element is the size of the original array. These values are required to dequantize the gradient. Any element from the 4th element, represents compressed gradient. Each value from the 4th element, represents upto 16 elements in the original array. For the example above, we get
compr = [ -2.0, 2.0, 8, 6.1215606E-28]
Note that the binary representation of the last element is
00 01 00 10 01 00 00 10<PHONE_NUMBER>000000
Local kvstore
When using local kvstore, gradients compression only happens when using device communication. When gradients are pushed, before summing them up (Reduce), quantization and dequantization happen.
Example: Say we have 4 GPUs, and the gradients are being summed up on GPU0. Each device quantizes gradients, then sends quantized gradient to GPU0, which performs dequantization of this data before merging it with values from other GPUs. Note that here, there is no need to quantize gradients from GPU0 itself, but it is still being done so that there is no bias for the samples which were processed by GPU0. Please let me know if this is not a good idea.
Dist kvstore
When the set_compress method for kvstore is called, each worker sets those compress params and one worker sends these params to all servers. From then on, when before each value is pushed to the server, it is quantized. The server dequantizes the data and stores it as an array of the original size. When values are pulled from the server, it returns an array of the original size. The same happens when each server is handling shards of the data.
Usage
The reason I used a dictionary compress_params for the arguments was to ensure uniformity when we extend this to other quantization techniques. This is because each technique would take different type and number of parameters.
Operators
compr = mx.nd.contrib.create_2bit(grad)
mx.nd.contrib.quantize_2bit(grad, residual, compr, neg_threshold, pos_threshold)
mx.nd.contrib.dequantize_2bit(compr, decompr)

KVstore
kv = mx.kv.create('dist_sync')
kv.set_compress({'compress':'2bit', 'pos_threshold':0.5, 'neg_threshold':-0.5})

Module
mod = mx.mod.Module(net, compress_params={'compress':'2bit', 'pos_threshold':0.5, 'neg_threshold':-0.5})

Gluon Trainer
trainer = gluon.Trainer(net.collect_params(), 'sgd', {'learning_rate': .1},
                        compress_params={'compress':'2bit', 'pos_threshold':0.5, 'neg_threshold':-0.5})

Questions

[Refer kvstore local section above] Should I not do quantization and dequantization for the gradient on the GPU which is performing reduction?

On running nvprof for the GPU operator with large arrays, most time is taken by the MapPlanKernel and cudaStreamSynchronize like below. For small arrays, the quantize, dequantize operations are on top. Any suggestions to reduce the time taken by these operations in the operator?

Time(%)      Time     Calls       Avg       Min       Max  Name
 48.17%  11.9536s     50002  239.06us  223.23us  357.70us  void mshadow::cuda::MapPlanKernel<mshadow::sv::saveto, int=8, mshadow::expr::Plan<mshadow::Tensor<mshadow::gpu, int=1, float>, float>, mshadow::expr::Plan<mshadow::expr::ScalarExp<float>, float>>(mshadow::gpu, unsigned int, mshadow::Shape<int=2>, int=1)
...

==24796== API calls:
Time(%)      Time     Calls       Avg       Min       Max  Name
 63.81%  26.3938s    200002  131.97us  4.2860us  6.0096ms  cudaStreamSynchronize

Only worker to server communication is compressed. Server to worker communication (during pull) involves sending original sized arrays. I read a couple of papers based on gradient compression. They only exchange gradients, and not the full weights. In MXNet with dist kvstore workers pushes updates to the gradient, but server maintains weights in full and returns full weights. This limits how much communication we can reduce. The full weights are much less sparse than gradients. If the full model weights are compressed, I believe it would lead to much worse accuracy. What do you think?

@solin319 , the operator is a bit slow currently, so it's not showing much speedup. I'm trying to speed it up. Looking for suggestions on improving the speed. I tried replacing the modulus, divide  and multiply operators to use bit operations, and it improved the speed a bit. But it's still bad. For an mlp network, quantize and dequantize operators are taking up 25-30% of the total time for training.


Credential.refreshIfNeeded fails on iOS

Describe the bug?
I am trying to refresh a token using the Credential.refreshIfNeeded API.  However, it always fails stating the request needs a client_id value.  I can see the client_id value is available in the configuration object or in the token.context.clientSettings,  however, I don't ever see it being used when building the APIRequest therefore it fails.   What am I doing wrong?

What is expected to happen?
Refresh of token succeeds
What is the actual behavior?
Refresh of token fails with OktaAPIError invalid_clientId, A client_id must be provided in the request.
Reproduction Steps?
Sign in using the iOS SDK, Store the token using Credential.store.  Let token expire, try to refresh token using Credential.default?.refreshIfNeeded
Additional Information?
No response
SDK Version(s)
OktaAuthFoundation (1.1.0)
OktaOAuth2 (1.1.0)
OktaWebAuthenticationUI (1.1.0)
Build Information
Xcode 14

I'm curious @simplatek, what was the root cause of your issue? If there's some documentation updates, or simplification in the SDK, that might prevent your issue in the future, it would be nice to prevent developer friction in the future.

@daanvermeulen @mikenachbaur-okta Sorry I replied late, but the issue was an easy fix on my end.  The problem was the 'scopes' value must contain 'offline_access' in the Okta.plist configuration.  The reason is you will not get a refresh token if that value is not present.
@mikenachbaur-okta I think one improvement to the SDK is provide a more clear error if we are missing 'offline_access' in the scope.  Something like invalid_refresh_token, 'Refresh token is required to perform a refresh' would been more helpful then 'A client_id must be provided in the request'.
@daanvermeulen You will run into one more issue most likely if you continue refreshing a token, let it expire, prompt for okta credentials again, let token expire, refresh again...I noticed refreshIfNeeded will fail now with an OAuth2ServerError.invalidGrant.  This was fixed on my end also, by having to actually assign the default credential like this:
Credential.default = try Credential.store(token)
I was thinking Credential.store call would update this value, however, that is not the case.  It is set one time and doesn't update to latest credential, so the refreshIfNeeded call pulls the refresh_token from the Credential.default and it is not the latest value therefore producing the error above.

I'm reopening this since there's additional discussion around the topic.
I've created a PR to improve error handling when a refresh token isn't present: https://github.com/okta/okta-mobile-swift/pull/102 if you or anyone else would like to review it.

@daanvermeulen 🤔 That's strange, when refreshing, even after the token has expired, the Credential Storage system should detect that the token has changed, and replace the underlying value in storage with the newly-serialized version.
Since you're having to explicitly assign a token to Credential.default, it's sounding to me like the previous credential isn't being removed.  AuthFoundation supports the use of multiple tokens (for example, you can have multiple users signed in simultaneously), so there might be invalid tokens still sitting in storage.
You can check out this article on how to manage credentials which might clarify some things for you.
@daanvermeulen Please feel free to file a new issue for this specific problem, because it should "Just Work".

@mikenachbaur-okta thanks for updating the SDK.  i'm going to test the Credential.default issue more closely and let ya know what's going on.  I do call try? Credential.default?.remove() after I successfully sign-out on the Okta side.  I don't call that code anywhere else.   Does the previous credential need to be removed prior to store on my end or is this handled internally on the SDK side?

@simplatek Are you encountering situations where the user's session expires and you have to sign back in?
If you want to see what credentials are stored, you can enumerate through Credential.allIDs to see if there are multiple credentials there.
A credential will automatically be removed when you sign out, or revoke, the token. Assigning to default won't necessarily remove an old credential, because the thought is that it can be used to switch between users in an app.

Hi @mikenachbaur-okta ,
Thanks for updating the Okta library. I now get a different issue and let me describe the steps I take to get this issue.
I use the following code to log in and that succeeds:
`guard let issuerUrl = URL(string: appConfiguration.authOKTAIssuer), let redirectUrl = URL(string: appConfiguration.authOKTALoginRedirectUri) else { return }
let auth = WebAuthentication(issuer: issuerUrl,
                             clientId: appConfiguration.authOKTAClientId,
                             scopes: appConfiguration.authOKTAScopes,
                             redirectUri: redirectUrl,
                             additionalParameters: nil)
// Sign in using the above configuration
auth.ephemeralSession = true
let token = try await auth.signIn(from: nil)

// Save the user's tokens
Credential.default = try Credential.store(token)`

After this I force a refresh by using the following code:
    if let credentialTest = Credential.default {       credentialTest.refresh { result in         switch result {         case .failure(let error):           self.errorLogger.send(event: .general(description: "Okta refresh token error: \(String(describing: error.errorDescription)), \(String(describing: error.failureReason)), recovery suggestion: \(String(describing: error.recoverySuggestion))", attributes: nil))           refreshed(false)         case .success:           refreshed(true)         }       }     }
This fails and here is a screenshot I made:

I hope we can come to a fix of this issue. I migrated the old Okta framework to the new Okta Mobile and can't get this to work so far. The old framework with the same settings worked perfectly, also validation of the token.
Kind regards,
Daan Vermeulen

@daanvermeulen Can you share your list of scopes you have?
Also, can you tell me what the "Refresh token behaviour" is set to in your admin dashboard? e.g. go to Applications > [Your App] > General > Refresh Token and see if you have it set to "Rotate token after every use" or "Use persistent token"?

@mikenachbaur-okta
The scopes are as follow:
"scopes": "offline_access openid profile"
I asked the customer what their Okta refresh behavior is since we do not have access to their portal. Will get back to you next week on this.
Thanks for the quick response and the help so far.
Daan

@daanvermeulen @mikenachbaur-okta
Hi, I have the exact same error and the Refresh token behavior is set to "Use persistent token"
hope this help

Alright so I got back info from the client and they say that refreshing is disabled on their side. I guess that does fix the issue that was originally posted and fixed here because it should work correctly if the client turns this on.
What I am still curious about, when using the old Okta framework I used the 'introspect' method and if that said the token was not 'active' then I called the 'renew' method. Now on Okta Mobile there I could no longer find this renew method. Is there an alternative for this?

I have looked into the code in this repository and there is something I don't quite understand.
In OAuthClient, the refresh  function, it tests for the refreshToken.rawValue in clientSettings, and Indeed, the refresh token is not there. It is in token passed in parameters though.
Have I missed something so the refresh token would be also in clientSettings?
Thank you for your help

Alright so I got back info from the client and they say that refreshing is disabled on their side. I guess that does fix the issue that was originally posted and fixed here because it should work correctly if the client turns this on.
What I am still curious about, when using the old Okta framework I used the 'introspect' method and if that said the token was not 'active' then I called the 'renew' method. Now on Okta Mobile there I could no longer find this renew method. Is there an alternative for this?

You can use the Credential.refreshIfNeeded function to renew the access token.

The thing is @simplatek , if I use the refreshIfNeeded, I get logged out after a day or less, does that mean the access token expired and it cannot refresh because there is no refresh token available? It is not a very good user experience. When using the old way with introspect+renew in OktaOidc I was hardly ever logged out so there is surely a difference.

@koswedo Don't worry, I re-opened this bug a few weeks ago because I wanted to get more information about this issue, and wanted to get to the bottom of it. I've never seen this situation in any of my testing, but that doesn't mean that the problem doesn't exist. I'm hopeful that I can figure out what the root cause is, so I can fix it in a TDD fashion.
@daanvermeulen The new SDK has an introspect function, which you can still use to check the validity of a token.
I have a few theories as to what the problem might be, but since I haven't been able to reproduce it, I don't want to try pushing changes in the hopes that the problem goes away. So perhaps you all can help me.
I have two current theories:
Token client settings
First, since AuthFoundation is intended to be generic, supporting different authentication flows and authorization servers (not just Okta), the values required by the Token endpoint for refreshing a token can vary. As a result, the Token class has a Context struct that defines the configuration and "client settings" necessary to trigger a refresh. This way, a token can continue to be refreshed, even if the client configuration may have changed.
The clientSettings property contains information such as the client ID, scopes, and redirect URI necessary by the authorization server to trigger a refresh. This allows the Token to be refreshed independent of the client that was used to create it.
If there's some authorization server configuration that requires additional information to successfully refresh a token which isn't being stored in that object, this could potentially lead to a refresh failing.
Token storage replacement
The new SDK aims to support the storage of multiple credentials simultaneously for more complex use-cases. Since Okta uses JWTs as an access token, and refresh tokens can be rotated, there's no concrete identifier that can be used to semantically compare tokens. As a result, the SDK assigns a unique UUID to a credential when it's first stored. When a token is refreshed, since we know the new token represents the same credential as the one being refreshed, we utilize custom CodingUserInfoKey values to pass the previous UUID to the new token, so when it's stored, the token represents the same logic credential. This allows the keychain TokenStorage implementation to trigger a replace, instead of an add operation.
There's a possibility that this mechanism may be failing. For example, the refresh may succeed, but the new token may not be stored for some reason.
One way to test for this is to check the Credential.allIDs property to see if a refresh is inadvertently creating new tokens for the refreshed value.
Summary
If anyone is able to solidly reproduce this, I would love to get more information. If you can set a debugger breakpoint to help narrow the problem down, or can help me to reproduce the problem locally, I would be very grateful.

Thank you for your help everyone! I believe I tracked down the root cause, and have PR #106 open to fix the issue.  If anyone would like to try this out to verify the fix works on your end, I'll get this released ASAP.

@daanvermeulen @simplatek @koswedo I just released version 1.1.3 which includes this fix, and hopefully addresses this issue. Please let me know if this fixes your issue.

@mikenachbaur-okta Thanks for pushing out another fix.  I will try to validate it also after I get some other things out of the way.  Meanwhile, I'm not sure where to post this question after searching the web for an answer, thought you might now off-hand.   I'm using SSO, redirect model with this iOS SDK.  When we sign-out, we always get redirected to perform this sign-out which is understandable.  However, I'm looking for a way to sign-out without this redirect.  Not just revoking the access/refresh token but also clearing the okta session (shared cookies) in the local browser so we ensure the user signed out fully and must re-enter credentials to sign again.  This use case entails a user signs into our app with Okta, but then un-installs the app.  We need a way to ensure they are signed out of Okta fully so when a fresh install occurs they go thru the standard sign-in flow with credentials required again.   Is there a way to some how clear the cached cookies associated with a given Okta session without redirecting to browser for this?

@simplatek please check the code I shared above, it has the 'auth.ephemeralSession = true' which means that no cookies will be stored, if you have this enabled and logout, you have to enter your credentials over again.
@mikenachbaur-okta I just tested 1.1.2 and tested the 'refresh' method. It returned failing. Then I updated to 1.1.3 and ran the refresh and it returned 'succeeded'. So I guess this is good? Because the client enabled the refresh token now on their end.

Hi @mikenachbaur-okta - Can you please update https://github.com/okta/okta-idx-swift sdk  as well  which internally uses https://github.com/okta/okta-mobile-swift ?

@simplatek please check the code I shared above, it has the 'auth.ephemeralSession = true' which means that no cookies will be stored, if you have this enabled and logout, you have to enter your credentials over again.
@mikenachbaur-okta I just tested 1.1.2 and tested the 'refresh' method. It returned failing. Then I updated to 1.1.3 and ran the refresh and it returned 'succeeded'. So I guess this is good? Because the client enabled the refresh token now on their end.

@daanvermeulen thanks for pointing out the ephemeralSession flag.  I did try that before and while it essential resolves the issue, I'm not 100% sure if it is acceptable in our situation.  We are using Okta for SSO, so I believe if we aren't storing the credentials in the shared cookies, it essentially disables SSO.  I will have to ask our product managers if they are ok with this behavior.  I was looking for a local/server API to clear the shared cookies for a particular okta session, so far haven't found it.  Thanks again.

Hi @mikenachbaur-okta - I tested this sdk version 1.1.3 .. the issue is not fixed yet I believe. If the access token expired and refresh token is still valid this function  private func performRefresh(token: Token, clientSettings: [String: String]) returns failure message saying   ▿ failure : APIClientError
▿ serverError : OAuth2ServerError
- code : AuthFoundation.OAuth2ServerError.Code.invalidGrant
▿ description : Optional
- some : "The refresh token is invalid or expired."
-
@daanvermeulen - you mentioned its working for you...are you getting new access token ?

@Sushree-nayak-2022 The refresh token itself can expire, which means the access token can't be refreshed. It's usually a good practice to set a short access token expiration duration, and a longer refresh token duration.  If the app continues to refresh, the session can be kept alive.

@mikenachbaur-okta ---That's totally correct. What I am saying is access token is not getting refreshed successfully using valid refresh token on SDK 1.1.3  Credential.refreshIfNeeded  is still failing even though I have valid refresh token and access token expired..
Credential.refreshIfNeeded should refresh my access token right?

Hi @mikenachbaur-okta - I was reading your previous comments and was doing some more re I  believe among your 2 theory the issue is in Token storage replacement as you mentioned below . The refresh works fine  and Credential.default also gets updated if my app is still running and I am calling refresh function.
Token storage replacement
The new SDK aims to support the storage of multiple credentials simultaneously for more complex use-cases. Since Okta uses JWTs as an access token, and refresh tokens can be rotated, there's no concrete identifier that can be used to semantically compare tokens. As a result, the SDK assigns a unique UUID to a credential when it's first stored. When a token is refreshed, since we know the new token represents the same credential as the one being refreshed, we utilize custom CodingUserInfoKey values to pass the previous UUID to the new token, so when it's stored, the token represents the same logic credential. This allows the keychain TokenStorage implementation to trigger a replace, instead of an add operation.
There's a possibility that this mechanism may be failing. For example, the refresh may succeed, but the new token may not be stored for some reason.
One way to test for this is to check the Credential.allIDs property to see if a refresh is inadvertently creating new tokens for the refreshed value.

https://developer.okta.com/docs/reference/api/oidc/#parameter-details

@mikenachbaur-okta Thank you for the links you gave me, this is very helpful information.

@Sushree-nayak-2022 I believe the issue you're facing is being tracked by issue #100, and I have a PR and a release that fixes that issue.
@simplatek @daanvermeulen I think this issue was fixed in the recent release, so I'm going to close this issue. If you have further problems, please feel free to log an additional ticket.
Furthermore, if any of you have feature requests, please don't hesitate to log a separate issue for it. Our goal is to improve your developer experience, and if there's something we're missing, please let us know!


Custom server and routing

What problem does this feature solve?
Hi guys, first of all I would like to congratulate you on your great work with Nuxt.
I would like to know how can I create a dynamic route based on a small request or how can I change which component should be rendering for example, because I use Drupal as a content delivered and the route must be controlled by Drupal like: Drupal based routing, so when user access an route I need to get some information about this route from drupal, that returns which page component must be rendering, I used this example to use the async component injection  (https://github.com/nuxt/nuxt.js/blob/dev/examples/async-component-injection/pages/_slug.vue) but with this aproach I lost the power of component page, with the special methods like: asyncData, layout, etc ...
What does the proposed changes look like?
Create a way to change which page component will be rendering.
In the next I found this example:
https://github.com/zeit/next.js/#custom-server-and-routing
https://nextjs.org/docs/routing/imperatively
The example using the Drupal + Next:
http://next-on-drupal.surge.sh/reference/routing#drupal-based-routing
This is a great feature to Drupal dev users to connect Drupal community with Nuxt
Drupal <3 Nuxt

This feature request is available on Nuxt community (#c10174)

Could you use serverMiddleware's and middleware's to resolve this? Or use the vue-router beforeRouteEnter in-component guard to catch all unknown routes and redirect them to your specific page component.
Dont exactly understand how Drupal works or what you need need though unfortunately

Sorry for delay @pimlie, for now I can solve the issue using this aproach (https://github.com/nuxt/nuxt.js/blob/dev/examples/async-component-injection/pages/_slug.vue), and the new fetch api will solve the problem to retrieve data on server side


fix typo in zh-CN translation

[x] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)

Proposed changes
Fix Issue #3002
Checklist

[x] I have read the contribution guidelines
[ ] For non-bugfix PRs, I have discussed this change on the forum/slack team.
[x] I have run grunt to verify the unit tests pass
[ ] I have added suitable unit tests to cover the new/changed functionality

Coverage decreased (-0.03%) to 67.382% when pulling 59526da59dc046f288f6bd424309bc6cb1a0e6a3 on node-red-hitachi:dev-cn into 711794cfe14caecf24a7971c8602a91e0454fd08 on node-red:master.


feat: remove enrichment on placementspecialty delete

When a placement specialty is deleted additional checks are made on
whether the associated placement is already deleted, or whether the
placement already has a new specialty link.
If these are not true then the placement is re-enriched, requesting any
missing data as part of the process.
While there is no guarantee of order received, there is an expectation
that the sync service would eventually get any missing messages, either
the placement deletion or the new placement specialty.
The existing re-enrichment functionality on delete should be removed for
consistency with other related data, which are currently just deleted
without any affect on the placement - deletion nor enrichment.
Any handling of similar scenarios should consider all data deletions
that may affect a placement and ensure consistency for all.
TIS21-2549

As far as I can see, it should be ok. From what I can remember by reading through the old tickets from when we built the synchronization of PlacementSpecialties, I think the re-enrichment was an attempt to leave no loose ends hanging, in case only some of the delete messages got delivered, so that it'd be extra resilient (e.g. only the PlacementSpecialty DELETE message, with the Placement DELETE message getting lost somewhere).
I think the current queuing system makes the whole process much more stable and the chances of "some of the messages" getting lost (timing out) are very slim, so tis-trainee-sync should be able to take care of PlacementSpecialty deletions on its own.


Add GCP deployer

#73

Update Append builder to add command, user, and environment variables to the image manifest directly.
Add GCPJob deployment option.

This change is

/assign @r2d4


image size

size of images in icdar 2015 is 720*1280 and fix for all images
in my dataset size of image is variant , is this important?
Should the size of the images be fixed؟

the preprocessing stuff resize the image. Just set the training image size in the scripts

@ciciphus Where should I set the size؟
please help me to find this part of code

not sure what size u would like to set. In train.sh you can set the training image size(input of the neural network) , but that's not relate to your image size. Cuz it has some other operations like rotate and crop in preprocessing/ssd_vgg_preprocessing.py .


chain annotations and the ExcelPainter

We want to implement chain.annotations as a list (of arbitrary length) of Quantipy text objects, that can be read as headers for the chain. Generally these would be used by a build.
For example:
chain.annotations = [
    {"main": "Subject(s) Taught"},
    {"main": "S3. Base: Total Respondents. What subjects are you teaching?"}
]

In the first instance these should be read by the ExcelPainter for x-chains such that 1 row for each annotation be inserted above the table for that chain.

Resolved by #180.


[BUG] org.opensearch.script.expression.MoreExpressionIT.testStringSpecialValueVariable {p0={"search.concurrent_segment_search.enabled":"false"}}

Describe the bug
org.opensearch.script.expression.MoreExpressionIT.testStringSpecialValueVariable {p0={"search.concurrent_segment_search.enabled":"false"}}  is flaky
Error Message
java.lang.Exception: Test abandoned because suite timeout was reached.

Stacktrace
java.lang.Exception: Test abandoned because suite timeout was reached.
	at __randomizedtesting.SeedInfo.seed([6C6BD00BD78516F2]:0)

Related component
Other
To Reproduce
https://build.ci.opensearch.org/job/gradle-check/33653/testReport/junit/org.opensearch.script.expression/MoreExpressionIT/testStringSpecialValueVariable__p0___search_concurrent_segment_search_enabled___false___/
Expected behavior
Test must always pass
Additional Details
No response

[Triage - attendees 1 2 3 4 5 6 7 8]
@hogesako Thanks for filing


Gracefully handle nested dispatches

Currently, when we happen to have nested dispatches, the last action's returned state prevails, even if they belong to different stores. The nested dispatch still sees the state as if the outer dispatch wasn't executed yet, so it ends up overwriting whatever that outer dispatch did.
Perhaps it's more clear with the failing test that I'm providing here. I'd expect there to either have both dispatches applied, or the dispatcher to throw an exception or a warning, as the original Facebook's Flux dispatcher.
The use case for running into nested dispatches is the classic "need data in componentWillMount", which triggers an action creator that dispatches an action immediately, and is executed as a consequence of a previous dispatch.
I'm leaving this unsolved until we decide the way to go, after that I can fix the test with the expected behavior

Thanks for the failing test case. Best way to start a conversation :-)

The use case for running into nested dispatches is the classic "need data in componentWillMount"

Yes. Let's solve this somehow.
I'm currently busy with time travel but I'm sure @acdlite, @johanneslumpe, @goatslacker could provide valuable insight from their experience building Flux libraries (even on top of FB's dispatcher)..

I do not have a solution for this now but I remember that nested dispatches are something that's difficult to handle on the server-side. Let's say we have the classic react-router example where we want to fetch some data prior to rendering. We added some static handlers to our container components, and inject redux etc etc. to fetch some data. Let's use a promise middleware too. It returns the promise from dispatch so we can wait for all async actions to be completed prior to rendering. If we now have dispatches in componentWillMount which might be async as well, then those would not be caught and we would render our application with possibly half the state we'd need/want.

We could do this:

Throw on nested dispatch just like FB dispatcher.
Let user specify a custom “update scheduler” function to createRedux. They can use it to wrap the dispatch in React.addons.batchedUpdates (#125) -or- to schedule all updates inside requestAnimationFrame. This way dispatching from lifecycle hooks won't be an issue.

Am I making sense?

I think we should probably just throw for now, so that a user at least knows what's going on and isn't stumped by the fact that the state isn't what they expected.
I do like the the requestAnimationFrame idea too. The question is whether it is a good thing to allow that, because those applications would most likely just explode once somebody tries to change to a "normal" scheduler again. But then again, if you do that you most likely know what you're in for.

I think the problem with the last action overriding the entire atom of the first dispatch gets fixed with https://github.com/gaearon/redux/pull/119, since the problem is that the dispatcher is using its internal state to update, which is set after setting the state in the redux instance's state and calling the listeners.
I'm saying this because after that PR gets merged, the nested dispatches would set the whole state as expected, so it could be an option for desired behavior.
Having said that, I'm not sure if this would cause any edge cases, or if it will increase the mental model both on developing redux (taking into account supporting nested dispatches), and in userland.

@gaearon @johanneslumpe just to let you know that it seems rAF may have further issues: https://github.com/facebook/react/issues/3570. In any case, that would be an optimization or a strategy to be decided by the user

I think we should probably just throw for now, so that a user at least knows what's going on and isn't stumped by the fact that the state isn't what they expected.

@leoasis Would you like to implement this as part of this PR?

@gaearon yes, sure! Have you considered what I said in this previous comment? Just to make sure we don't want to go with that route

@leoasis
Oh, I haven't. Hmm.
@acdlite Any opinion here?

This is actually caused by a subtle bug in the current version where setState() triggers the subscribers before assigning to the dispatcher's internal copy of the current state. https://github.com/gaearon/redux/blob/master/src/createDispatcher.js#L9
This is kind of bug that https://github.com/gaearon/redux/pull/119 is intended to avoid by moving all state into the Redux instance. I've added the test to that PR to show that it passed. (Modified slightly — the original version causes an infinite loop because this line is always true:  https://github.com/leoasis/redux/commit/e23b56bf295e0cb649927425692ef85ae408991f#diff-2dce452f5f745e87ca49080c71d81a21R87.)
See the passing test here: https://github.com/gaearon/redux/commit/b71a7fc0ca64a8ce86b67b178ab602d065c6492e

So long story short, nested dispatches in Redux aren't a problem like they are in other libraries, because our "dispatcher" is just a reduce operation.

@acdlite awesome, yeah that's what I thought in https://github.com/gaearon/redux/pull/110#issuecomment-112799258, so let's keep nested dispatches supported and fix that bug in your PR!
Only thing curious about why you had an infinite loop in my test, since that was not happening without the fix. Just asking since it may be a hint of another bug perhaps

@leoasis The infinite loop never kicked off in the original case for the same reason the test failed: the call to getState() inside the subscriber returned the old (original) state, so the nested dispatch was never fired.

@acdlite yeah, realised that right after sending the comment :P

@leoasis :)

Perfect then, since this will be fixed in https://github.com/gaearon/redux/pull/119, I'm closing this one


Usage of diff and patch bindings

I have several problems with diff and patch bindings:

when comparing with empty string it reports one context line (empty string itself), but it probably should consider empty string as no input or provide a way to pass nil as empty input,
it is not possible to specify (fake) filenames used in place of question marks in  --- ? and +++ ?
no way to pass context lines number,
diff triggers if one of files doesn't exist, it is possible to fake such file with /dev/null, but it is platform dependent,
binary files trigger utf8 conversion error, the overall behavior with binary files is yet blurry and it may not be related to bindings

Haven't used patch, but it seems that it works with strings, but not files and possibly requires to split combined diff first.

Ok.. We need Looking for a Rust developer to port patchutils'combinediff and splitdiff.  I'm on it


Invariant Violation using react-native-svg

Hello everyOne !
I have the following error when I try to use react-native-svg

I use react-native-svg like this in my code :

and I call the component like this
import BarChart from './BarChart'
...

I am using react-native-svg : 9.13.3 and expo : 36
I installed react-native-svg with expo install react-native-svg and I already try to relaunch with reset cache.....
save me please lol
have a nice day !

Hi, I do have the same error, but in my case I'm importing the xml source file to use SvgXml component.

Check out this page: https://docs.expo.io/versions/latest/sdk/svg/
I was able to get it working by making a component like this:
import * as React from 'react';
import Svg, { Circle, Rect } from 'react-native-svg';

export default function SvgComponent(props) {
  return (
    <Svg height="50%" width="50%" viewBox="0 0 100 100" {...props}>
      <Circle cx="50" cy="50" r="45" stroke="blue" strokeWidth="2.5" fill="green" />
      <Rect x="15" y="15" width="70" height="70" stroke="red" strokeWidth="2" fill="yellow" />
    </Svg>
  );
}

I believe this problem with expo has already been resolved, so I will close this issue. Feel free to comment here if something is wrong and we can always reopen it then.


Billing success page: fixes

I think the same template is used if Stripe went through, or if an invoice was generated. But this needs changes - the language should be different.

If the user paid by credit card, then redirect to their user account page with a flash message "Registration is complete".
If they chose the invoice, then display the following:
Header: Registration complete pending payment
Text: The invoice for {event title} has been mailed to your user account email address. You can also download it directly:
Buttons: [Download invoice] [My account] [Homepage]

Implemented as part of #65 in commit ed9e9b4:
Updated success page for event registration, updated success email message for event registration creation (it's sent after invoice creation now, and contains different texts for invoice and stripe payment methods).


chores: set default log level to debug

The helm operators from flux require that we have at least a debug log level in order to see the progress and errors happening when the helmrelease controller is trying to reconcile. Having this set by default will help with us with customer issues in the near future.

Can we only set debug logging for the flux controllers?

Can we only set debug logging for the flux controllers

I will check again, but it was my impression that this was challenging with some side affects.


Implement Filterable Class

The PokedexArrayAdapter class was created for displaying custom rows within the ListView. One important feature missing is the ability to filter (search) within the set contained by the array.
Implement the search logic through the Filter class implementation of the array adapter. This is a straightforward comparison operation to discriminate against elements in a set.

Advanced Search portion of filter, needs to filter for:
-Type 1
-Type 2
-Ability
-Generation Available

Egg Groups 1
Egg Groups 2
All 6 Base stats
The ability to include/exclude Primal/Mega/Alternate Forms


[Bug] landing icon is missing in GitHub Repo

Hi, we could find the landing icon in the VSCode; however, in the browser it is missing
Screenshots

VSCode
GitHub

Info
Version: 1.95.3 (Universal)
Commit: f1a4fb101478ce6ec82fe9627c43efbf9e98c813
Date: 2024-11-13T14:50:04.152Z
Electron: 32.2.1
ElectronBuildId: 10427718
Chromium: 128.0.6613.186
Node.js: 20.18.0
V8: 12.8.374.38-electron.0
OS: Darwin x64 24.0.0

Material Icon Theme: 5.14.1
Material Icons for GitHub: 1.8.30

The issue might be due to some delay in the update of the chrome extension. I just checked it again, and it's working now:

Hey @PKief It work successfully, thanks for your kind work!


Store renames permanently and use them in our meta features

Currently we store renames as temporary migrations:
https://github.com/refined-github/refined-github/blob/54f7a885aec1cb97eaccd55456bf90c95e7d6968/source/options-storage.ts#L21
It might be ok for now, but ideally it would be the opposite:

have a regular, static object/map with the renames
use the object to create all migrations at once
use the object for the feature linkifier and rgh-feature-description

We can also drop the dates and make them permanent, even recovering the past renames we had over the years
Originally posted by @fregante in https://github.com/refined-github/refined-github/issues/4865#issuecomment-934402648

A starting point: https://github.com/refined-github/refined-github/pull/4865/commits/6bb969834b146577707dd9c56c9aeed4d5bf2d88

Duplicate of https://github.com/refined-github/refined-github/issues/4801

A good starting point: 6bb9698 (#4865)

It's not, refer to the first comment here

A good starting point: 6bb9698 (#4865)

It's not, refer to the first comment here. All featureWasRenamed calls should be replaced by a single migration function that reads the renamedFeatures object/array

I'm not saying the exact implementation details, it's just to demonstrate the - - feature seen time should at least be handled.


Shell script fails with error message [1] "'from' must be a finite number"

Hi Everyone,
I have a very (very!) limited knowledge of coding, and use the GGIR shell function to easily process GENEActiv .bin files so that I can interpret physical activity and sleep metrics.
This has been working fine, but recently I've been getting an error that I haven't been able to troubleshoot. Apologies if this is a 'rookie mistake' or if it's been covered elsewhere, but hopefully someone can tell me what I'm doing wrong! Any help gratefully appreciated.
Shell I've been trying to run:
g.shell.GGIR(datadir 		 = 	"C:/Users/adamd/Desktop/ADTESTMARInputs",
outputdir 		         =     "C:/Users/adamd/Desktop/ADTESTMAROutputs",
desiredtz		         =	'Pacific/Auckland',
loglocation                  = "C:/Users/adamd/Desktop/ADTESTMARInputs/SleepLog.csv",
relyonsleeplog            = FALSE,
sleeplogidnum            = FALSE,
colid = 1,
coln1 = 2,
mode		=	c(1,2,3,4,5),
strategy		=	2,
maxdur		=	14,
nnights		=	13,
timewindow		=	'MM',
overwrite		=	TRUE,
visualreport	=	TRUE,
do.visual		=	TRUE,
do.report		=	c(2,5),)
and the output:

Part 1
Checking that user has read access permission for all files in data directory: Yes
Checking that user has write access permission for directory specified by argument outputdir: Yes
Busy processing ... see C:/Users/adamd/Desktop/ADTESTMAROutputs/output_ADTESTMARInputs/meta/basic for progress
Errors and warnings for 592 1.bin$message
[1] "'from' must be a finite number"
$call
seq.default(starttime3, (starttime3 + ((nrow(metashort) - 1) *
ws3)), by = ws3)
Errors and warnings for 592 2.bin$message
[1] "'from' must be a finite number"
$call
seq.default(starttime3, (starttime3 + ((nrow(metashort) - 1) *
ws3)), by = ws3)

Part 2
Busy processing ... see C:/Users/adamd/Desktop/ADTESTMAROutputs/output_ADTESTMARInputs/meta/ms2.out for progress
Errors and warnings for NA$message
[1] "cannot open the connection"
$call
readChar(con, 5L, useBytes = TRUE)
Errors and warnings for NA$message
[1] "cannot open the connection"
$call
readChar(con, 5L, useBytes = TRUE)

Part 3
Busy processing ... see C:/Users/adamd/Desktop/ADTESTMAROutputs/output_ADTESTMARInputs/meta/ms3.out for progress
Errors and warnings for NA$message
[1] "cannot open the connection"
$call
readChar(con, 5L, useBytes = TRUE)
Errors and warnings for NA$message
[1] "cannot open the connection"
$call
readChar(con, 5L, useBytes = TRUE)

Part 4
Error in [.data.frame(S, , coln1 + ((i - 1) * 2)) :
undefined columns selected

Hi Vincent,
Thanks for your response. to answer your questions;

I am using the GENEActiv Original from ActivInsights.
I'm working with .bin files, but have tried with .csv as well and keep running into the same issue.
Yes, in the preview window of the GENEActiv software there is data, and the file size indicates that it collected for a few days.
It's only affecting files I've produced recently. When I run a previous file through the same shell function (.bin file created last August) it processes without a hitch and produces the outputs. Since February I've been getting this error. I've tried with two files, both collected from different watches and have the same issue. It gets stuck generating the 'basic' meta file, and thus can't progress to the other steps. I've tried to run it on a different computer as well, but same problem. I'm pretty sure I've been using the latest version of RStudio and GGIR.

Thanks again for looking into it, really appreciate your help.
Adam

Can you try:
library(GENEAread)
data = GENEAread::read.bin(binfile = "C:/yourfile.bin", start = 1, end = 100)
print(head(data$data))
print(head(data$header))

If this works then we at least know that the data can be read. If not then the problem seems to be specific to the bin files or their permissions.
If the above works then try to process the file again with g.shell.GGIR argument do.parallel = FALSE as that would provide a bit more console output to help investigate the issue.

Cool - GENEAread works, there does appear to be data there and it can be read. Rerun of GGIR produces the following:
g.shell.GGIR(datadir 		= 	"C:/Users/adamd/Desktop/ADTESTMARInputs",
outputdir 		=	"C:/Users/adamd/Desktop/ADTESTMAROutputs",
desiredtz		=	'Pacific/Auckland',
loglocation = "C:/Users/adamd/Desktop/ADTESTMARInputs/SleepLog.csv",
do.parallel = FALSE,
relyonsleeplog = FALSE,
sleeplogidnum = FALSE,
colid = 1,
coln1 = 2,
mode		=	c(1,2,3,4,5),
strategy		=	2,
maxdur		=	14,
nnights		=	13,
timewindow		=	'MM',
overwrite		=	TRUE,
visualreport	=	TRUE,
do.visual		=	TRUE,
do.report		=	c(2,5),)
GGIR version:  2.6-0
Do not forget to cite GGIR in your publications via a version number and
Migueles et al. 2019 JMPB. doi: 10.1123/jmpb.2018-0063.
See also: https://cran.r-project.org/package=GGIR/vignettes/GGIR.html#citing-ggir
To make your research reproducible and interpretable always report:
(1) Accelerometer brand and product name
(2) How you configured the accelerometer
(3) Study protocol and wear instructions given to the participants
(4) GGIR version
(5) How GGIR was used: Share the config.csv file or your R script.
(6) How you post-processed / cleaned GGIR output
(7) How reported outcomes relate to the specific variable names in GGIR

Part 1
Checking that user has read access permission for all files in data directory: Yes
Checking that user has write access permission for directory specified by argument outputdir: Yes
P1 file 1
Investigate calibration of the sensors with function g.calibrate:
Number of pages in binary file: 87080
Processing...
Processing took: 0.007 secs .
Loaded 900 records (Approx  0 MB of RAM)
22-02-21 20:30:00.500 (Mon)  to  22-02-21 20:30:22.974 (Mon)
Loading chunk: 1Number of pages in binary file: 87080
Processing...
Processing took: 6.438 secs .
Loaded 1741800 records (Approx  98 MB of RAM)
22-02-21 20:30:00.500 (Mon)  to  22-02-22 08:35:45.474 (Tue)
2Number of pages in binary file: 87080
Processing...
Processing took: 6.021 secs .
Loaded 1741800 records (Approx  98 MB of RAM)
22-02-22 08:35:45.500 (Tue)  to  22-02-22 20:41:30.474 (Tue)
3Number of pages in binary file: 87080
Processing...
Processing took: 5.921 secs .
Loaded 1741800 records (Approx  98 MB of RAM)
22-02-22 20:41:30.500 (Tue)  to  22-02-23 08:47:15.474 (Wed)
4Number of pages in binary file: 87080
Processing...
Processing took: 6.271 secs .
Loaded 1741800 records (Approx  98 MB of RAM)
22-02-23 08:47:15.500 (Wed)  to  22-02-23 20:53:00.474 (Wed)
5Number of pages in binary file: 87080
Processing...
Processing took: 5.925 secs .
Loaded 1741800 records (Approx  98 MB of RAM)
22-02-23 20:53:00.500 (Wed)  to  22-02-24 08:58:45.474 (Thu)
6Number of pages in binary file: 87080
Processing...
Processing took: 6.052 secs .
Loaded 1741800 records (Approx  98 MB of RAM)
22-02-24 08:58:45.500 (Thu)  to  22-02-24 21:04:30.474 (Thu)
7Number of pages in binary file: 87080
Processing...
Processing took: 5.966 secs .
Loaded 1741800 records (Approx  98 MB of RAM)
22-02-24 21:04:30.500 (Thu)  to  22-02-25 09:10:15.474 (Fri)
Extract signal features (metrics) with the g.getmeta function:
Number of pages in binary file: 87080
Processing...
Processing took: 0.003 secs .
Loaded 900 records (Approx  0 MB of RAM)
22-02-21 20:30:00.500 (Mon)  to  22-02-21 20:30:22.974 (Mon)
Loading chunk: 1Number of pages in binary file: 87080
Splitting into  2  chunks.
Processing...
Processing took: 12.034 secs .
Loaded 3483300 records (Approx  195 MB of RAM)
22-02-21 20:30:00.500 (Mon)  to  22-02-22 20:41:22.974 (Tue)
date not recognized
2Number of pages in binary file: 87080
Splitting into  2  chunks.
Processing...
Processing took: 12.154 secs .
Loaded 3483300 records (Approx  195 MB of RAM)
22-02-22 20:41:23.000 (Tue)  to  22-02-23 20:52:45.474 (Wed)
3Number of pages in binary file: 87080
Splitting into  2  chunks.
Processing...
Processing took: 12.2 secs .
Loaded 3483300 records (Approx  195 MB of RAM)
22-02-23 20:52:45.500 (Wed)  to  22-02-24 21:04:07.974 (Thu)
4Number of pages in binary file: 87080
Splitting into  2  chunks.
Processing...
Processing took: 12.671 secs .
Loaded 3483300 records (Approx  195 MB of RAM)
22-02-24 21:04:08.000 (Thu)  to  22-02-25 21:15:30.474 (Fri)
5Number of pages in binary file: 87080
Splitting into  2  chunks.
Processing...
Processing took: 12.271 secs .
Loaded 3483300 records (Approx  195 MB of RAM)
22-02-25 21:15:30.500 (Fri)  to  22-02-26 21:26:52.974 (Sat)
6Number of pages in binary file: 87080
Splitting into  2  chunks.
Processing...
Processing took: 12.349 secs .
Loaded 3483300 records (Approx  195 MB of RAM)
22-02-26 21:26:53.000 (Sat)  to  22-02-27 21:38:15.474 (Sun)
7Number of pages in binary file: 87080
Splitting into  2  chunks.
Processing...
Processing took: 12.2 secs .
Loaded 3483300 records (Approx  195 MB of RAM)
22-02-27 21:38:15.500 (Sun)  to  22-02-28 21:49:37.974 (Mon)
8Number of pages in binary file: 87080
Processing...
Processing took: 6.624 secs .
Loaded 1740900 records (Approx  97 MB of RAM)
22-02-28 21:49:38.000 (Mon)  to  22-03-01 09:55:00.474 (Tue)
Error in seq.default(starttime3, (starttime3 + ((nrow(metashort) - 1) *  :
'from' must be a finite number
In addition: There were 50 or more warnings (use warnings() to see the first 50)
--
I note that when the g.getmeta function runs it returns "date not recognized".
This has jogged my memory. A year or so ago we were having trouble processing files and my colleague had determined that there was some problem with the 'Pacific/Auckland' timezone - specifically with respect to our daylight savings shift. It seemed that files produced at a certain time of the year would fail to run, but files from the other six months would work fine. We never got to the bottom of the issue but the workaround was to use a virtual machine running R in Ubuntu and this worked, so we assumed the problem was specific to Windows in some way. Do you think this could be the same issue?
I'm away and don't have access to my virtual machine right now, but can try to see if it will process these files in a week or so when I get back.

These are the some of the warnings:
Warning messages:
1: In readLines(fc2, n = headlines) : line 26 appears to contain an embedded nul
2: In readLines(fc2, n = headlines) : line 27 appears to contain an embedded nul
3: In readLines(fc2, n = headlines) : line 28 appears to contain an embedded nul
4: In readLines(fc2, n = headlines) : line 29 appears to contain an embedded nul
5: In readLines(fc2, n = headlines) : line 30 appears to contain an embedded nul
6: In readLines(fc2, n = headlines) : line 32 appears to contain an embedded nul
7: In readLines(fc2, n = headlines) : line 45 appears to contain an embedded nul
8: In readLines(fc2, n = headlines) : line 26 appears to contain an embedded nul
9: In readLines(fc2, n = headlines) : line 27 appears to contain an embedded nul
10: In readLines(fc2, n = headlines) : line 28 appears to contain an embedded nul

Are you able to share the problematic file with me (v.vanhees@accelting.com)? I can have a look whether I can reproduce the issue.
Regarding...
Warning messages:
1: In readLines(fc2, n = headlines) : line 26 appears to contain an embedded nul
2: In readLines(fc2, n = headlines) : line 27 appears to contain an embedded nul
3: In readLines(fc2, n = headlines) : line 28 appears to contain an embedded nul

this is R package GENEAread specific and not related to GGIR. I tend to ignore these warnings, and believe I reported it to maintainers at some point via email as they do not have public repo.

I am able to process your file with latest GitHub version of GGIR:
library(remotes)
remotes::install_github("wadpac/GGIR")

Further, I had to add arguments:
idloc = 6
and I had to change the first column in the sleeplog to start with:

ID
onset_N1

592 1
22:09:00

592 2
22:20:00

Because ID needs to match ID in part2_summary.csv file.
It looks like that in your previous GENEActiv data the ID was conveniently stored in the GENEActiv file header while in the new GENEActiv data you did not enter the ID when configuring the accelerometers, by which GGIR can understandably not extract it. This is why you will now need to use argument idloc in order to extract the ID from the filename.

Hello all,
I'm with the same problem as well. I've got a database with data from 1014 participants. However, after part 1, the R program presents the following: "$call Ops.data.frame(meta_temp[1:(nrow(meta_temp) - 1), 2:7], meta_temp[2:nrow(meta_temp),  2:7])"
After that, in part 4, the R program generates just 860 files instead of 1014 (original). Probably, I think that these differences are about this "error".
In part 5, I received the following message as well: "Error in 1:max(summarysleep_tmp$night) : "
I am using the GENEActiv, as well as .bin file. Curiously, these data were performed with other cut-offs in the past, and everything works well. However, I'm updating the cut-off and identified these errors.
Could you help me, please?
Charles.

The discussion above indicates the mistake the others made with idloc and colid. You do not clarify whether that could also be the case for you and you do not share details on how you ran GGIR and what version you used. Please start a new issue with those details included.


Fix errant completions

Fixes #3022
Fixes #3021

The ghost completions were from rope, not jedi, as a result of the preferred submodules.

Ok, so ghost import completions are gone, great job!
But I'm still getting bad completions when running
 import p<TAB>

What I'm seeing is
 import p<TAB>
        pass
        pow
        print
        print
        property

instead of
 import p<TAB>
        pandas
        parser
        path
        pdb
        ...

which is what the IPython console returns.

To test this I'm just opening a new file and writing at its first line:
import p<TAB>

I also tested this on Linux and OSX, with the same results.

Don't worry, I found the error: Rope is returning incorrect import completions, and it's doing it faster than Jedi.
But Rope doesn't have the capability of returning those completions (that's why I added module_completions a long time ago).
I'll fix it in master :-)


Support Function of Rule.use

What problem does this feature solve?
Be consistent with Webpack behavior
Example: https://github.com/unjs/unplugin/blob/856b0736dbb658ffd6cf32d246359683b622b36f/src/webpack/index.ts#LL68C4-L68C4
What does the proposed API of configuration look like?
Type declaration of Webpack:
(data: {
	resource: string;
	realResource: string;
	resourceQuery: string;
	issuer: string;
	compiler: string;
}) => RuleSetUseItem[]

Can you assign this to me? @hardfist


Error in completion queue next

What version of gRPC and what language are you using?
grpc:1.31.0
What operating system (Linux, Windows,...) and version?
ubuntu:16.04
What runtime / compiler are you using (e.g. python version or version of gcc)
python 3.5.6
What did you do?
Could not reproduce
What did you expect to see?
No errors
What did you see instead?
E0913 05:15:51.161517349   54841 completion_queue.cc:1280]   Completion queue next failed: {"created":"@1599974151.161498165","description":"pollset_work","file":"src/core/lib/iomgr/ev_epollex_linux.cc","file_line":321,"referenced_errors":[{"created":"@1599974151.161496624","description":"Invalid argument","errno":22,"file":"src/core/lib/iomgr/ev_epollex_linux.cc","file_line":948,"os_error":"Invalid argument","syscall":"epoll_wait"}]}
and
E0913 05:09:40.453355688  164358 completion_queue.cc:1280]   Completion queue next failed: {"created":"@1599973780.453341299","description":"pollset_work","file":"src/core/lib/iomgr/ev_epollex_linux.cc","file_line":321,"referenced_errors":[{"created":"@1599973780.453339821","description":"Bad file descriptor","errno":9,"file":"src/core/lib/iomgr/ev_epollex_linux.cc","file_line":948,"os_error":"Bad file descriptor","syscall":"epoll_wait"}]}
Anything else we should know about your project / environment?
Sorry I do not have much more information, what would be the steps to dig further? I suspect this to be caused by google-cloud-bigtable or google-cloud-storage since I moved from grpc:1.28 to grpc:1.31.0
Here is the pipdeptree:
- google-cloud-bigtable [required: Any, installed: 1.4.0]
  - google-api-core [required: >=1.14.0,<2.0.0dev, installed: 1.21.0]
    - google-auth [required: >=1.18.0,<2.0dev, installed: 1.18.0]
      - cachetools [required: >=2.0.0,<5.0, installed: 4.1.0]
      - pyasn1-modules [required: >=0.2.1, installed: 0.2.8]
        - pyasn1 [required: >=0.4.6,<0.5.0, installed: 0.4.8]
      - rsa [required: >=3.1.4,<5, installed: 4.6]
        - pyasn1 [required: >=0.1.3, installed: 0.4.8]
      - setuptools [required: >=40.3.0, installed: 46.1.3]
      - six [required: >=1.9.0, installed: 1.15.0]
    - googleapis-common-protos [required: >=1.6.0,<2.0dev, installed: 1.52.0]
      - protobuf [required: >=3.6.0, installed: 3.12.2]
        - setuptools [required: Any, installed: 46.1.3]
        - six [required: >=1.9, installed: 1.15.0]
    - protobuf [required: >=3.12.0, installed: 3.12.2]
      - setuptools [required: Any, installed: 46.1.3]
      - six [required: >=1.9, installed: 1.15.0]
    - pytz [required: Any, installed: 2020.1]
    - requests [required: >=2.18.0,<3.0.0dev, installed: 2.24.0]
      - certifi [required: >=2017.4.17, installed: 2<IP_ADDRESS>]
      - chardet [required: >=3.0.2,<4, installed: 3.0.4]
      - idna [required: >=2.5,<3, installed: 2.8]
      - urllib3 [required: >=1.21.1,<1.26,!=1.25.1,!=1.25.0, installed: 1.25.9]
    - setuptools [required: >=34.0.0, installed: 46.1.3]
    - six [required: >=1.10.0, installed: 1.15.0]
  - google-cloud-core [required: >=1.0.3,<2.0dev, installed: 1.3.0]
    - google-api-core [required: >=1.16.0,<2.0.0dev, installed: 1.21.0]
      - google-auth [required: >=1.18.0,<2.0dev, installed: 1.18.0]
        - cachetools [required: >=2.0.0,<5.0, installed: 4.1.0]
        - pyasn1-modules [required: >=0.2.1, installed: 0.2.8]
          - pyasn1 [required: >=0.4.6,<0.5.0, installed: 0.4.8]
        - rsa [required: >=3.1.4,<5, installed: 4.6]
          - pyasn1 [required: >=0.1.3, installed: 0.4.8]
        - setuptools [required: >=40.3.0, installed: 46.1.3]
        - six [required: >=1.9.0, installed: 1.15.0]
      - googleapis-common-protos [required: >=1.6.0,<2.0dev, installed: 1.52.0]
        - protobuf [required: >=3.6.0, installed: 3.12.2]
          - setuptools [required: Any, installed: 46.1.3]
          - six [required: >=1.9, installed: 1.15.0]
      - protobuf [required: >=3.12.0, installed: 3.12.2]
        - setuptools [required: Any, installed: 46.1.3]
        - six [required: >=1.9, installed: 1.15.0]
      - pytz [required: Any, installed: 2020.1]
      - requests [required: >=2.18.0,<3.0.0dev, installed: 2.24.0]
        - certifi [required: >=2017.4.17, installed: 2<IP_ADDRESS>]
        - chardet [required: >=3.0.2,<4, installed: 3.0.4]
        - idna [required: >=2.5,<3, installed: 2.8]
        - urllib3 [required: >=1.21.1,<1.26,!=1.25.1,!=1.25.0, installed: 1.25.9]
      - setuptools [required: >=34.0.0, installed: 46.1.3]
      - six [required: >=1.10.0, installed: 1.15.0]
  - grpc-google-iam-v1 [required: >=0.12.3,<0.13dev, installed: 0.12.3]
    - googleapis-common-protos [required: >=1.5.2,<2.0.0dev, installed: 1.52.0]
      - protobuf [required: >=3.6.0, installed: 3.12.2]
        - setuptools [required: Any, installed: 46.1.3]
        - six [required: >=1.9, installed: 1.15.0]
    - grpcio [required: >=1.0.0,<2.0.0dev, installed: 1.31.0]
      - six [required: >=1.5.2, installed: 1.15.0]
- google-cloud-storage [required: Any, installed: 1.29.0]
  - google-auth [required: >=1.11.0,<2.0dev, installed: 1.18.0]
    - cachetools [required: >=2.0.0,<5.0, installed: 4.1.0]
    - pyasn1-modules [required: >=0.2.1, installed: 0.2.8]
      - pyasn1 [required: >=0.4.6,<0.5.0, installed: 0.4.8]
    - rsa [required: >=3.1.4,<5, installed: 4.6]
      - pyasn1 [required: >=0.1.3, installed: 0.4.8]
    - setuptools [required: >=40.3.0, installed: 46.1.3]
    - six [required: >=1.9.0, installed: 1.15.0]
  - google-cloud-core [required: >=1.2.0,<2.0dev, installed: 1.3.0]
    - google-api-core [required: >=1.16.0,<2.0.0dev, installed: 1.21.0]
      - google-auth [required: >=1.18.0,<2.0dev, installed: 1.18.0]
        - cachetools [required: >=2.0.0,<5.0, installed: 4.1.0]
        - pyasn1-modules [required: >=0.2.1, installed: 0.2.8]
          - pyasn1 [required: >=0.4.6,<0.5.0, installed: 0.4.8]
        - rsa [required: >=3.1.4,<5, installed: 4.6]
          - pyasn1 [required: >=0.1.3, installed: 0.4.8]
        - setuptools [required: >=40.3.0, installed: 46.1.3]
        - six [required: >=1.9.0, installed: 1.15.0]
      - googleapis-common-protos [required: >=1.6.0,<2.0dev, installed: 1.52.0]
        - protobuf [required: >=3.6.0, installed: 3.12.2]
          - setuptools [required: Any, installed: 46.1.3]
          - six [required: >=1.9, installed: 1.15.0]
      - protobuf [required: >=3.12.0, installed: 3.12.2]
        - setuptools [required: Any, installed: 46.1.3]
        - six [required: >=1.9, installed: 1.15.0]
      - pytz [required: Any, installed: 2020.1]
      - requests [required: >=2.18.0,<3.0.0dev, installed: 2.24.0]
        - certifi [required: >=2017.4.17, installed: 2<IP_ADDRESS>]
        - chardet [required: >=3.0.2,<4, installed: 3.0.4]
        - idna [required: >=2.5,<3, installed: 2.8]
        - urllib3 [required: >=1.21.1,<1.26,!=1.25.1,!=1.25.0, installed: 1.25.9]
      - setuptools [required: >=34.0.0, installed: 46.1.3]
      - six [required: >=1.10.0, installed: 1.15.0]
  - google-resumable-media [required: >=0.5.0,<0.6dev, installed: 0.5.1]
    - six [required: Any, installed: 1.15.0]

@ncarenton Ideally, we will need a reproduction case to work on this issue. Can you provide information about: 1. how was this error being triggered?; 2. led to what behavior?; 3. if you upgrade to 1.32, is the problem fixed?

I have seen similar issue. It is random and rare, happens only during initialization. If it happens application is unusable. I believe file descriptor is corrupted. In my case it is gRPC 1.17. What in general may cause FD to go/initialize badly in polling work?

@pkaminsk please file another issue with detailed error log and reproduction case.
I'm closing this issue as the reporter was inactive.


[Transaction] Transaction admin api get coordinator internal stats.

Motivation
Transaction add admin api getCoordinatorInternalStats
implement
public class CoordinatorInternalStats {

    /** The manage ledger internal stats*/
    public ManagedLedgerInternalStats managedLedgerInternalStats;
}

This is transaction buffer metrics.
Verifying this change
Add the tests for it
Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes
Dependencies (does it add or upgrade a dependency): (no)
The public API: (no)
The schema: (no)
The default values of configurations: (no)
The wire protocol: (no)
The rest endpoints: (no)
The admin cli options: (yes)
Anything that affects deployment: (no)

@Anonymitaet please review doc thanks.


[PT Run] Input delay on empty search box (can't use Run)

Microsoft PowerToys version
0.59.0
Running as admin

[ ] Yes

Area(s) with issue?
PowerToys Run
Steps to reproduce

Open PT Run (without cache enabled) or open PT Run and clear search input.
Type query and press enter.

✔ Expected Behavior
No delay on first query after cleaning the search input.
❌ Actual Behavior
Delay on first query after cleaning search input.
For example:

After typing cmd very fast and hitting enter nothing happens.
In v0.58.0 typing the action keys for settings, time & date or services showed emediatly the results. Now there is a visibal delay.

Note: The second, third, ... query works as expected without delay.
Other Software
No response

This could also be due 'cold cache'

Hey, I just updated to 0.59.0 and I hate this delay
Could it be made optional? it feels less snappy which makes it feels worse
(performance was completely fine for me without the delay, so this delay is pretty much pointless)
Originally posted by @Araxeus in https://github.com/microsoft/PowerToys/pull/18290#issuecomment-1150678670

@crutkas , @jaimecbernardo
I have this problem on my work machine too. And it is not a cold cach bug as it happens on filled search box too. Every first query (start searching) has this problem

Can't really replicate it here. If it happens on first search only that's not too bad, overall.
Making it an option would be sensible, since the old behavior is preferred by some users.

Tweaking the throttle is definitely possible. I'll add it to the PR.

Tweaking the throttle is definitely possible. I'll add it to the PR.

I will wait until you implemented the changes.

@jaimecbernardo , @crutkas
Is there a time plan for releasing the hotfix?

@jaimecbernardo
The bug described in this issue is gone. Nut there is still a delay in program plugin. Whixh makes it to slow for me. Slower than taskbar search.

@jaimecbernardo The bug described in this issue is gone.
But there is still a delay in program plugin. Which makes it to slow for me. Slower than taskbar search. Typing a query and pressing enter emidiatly does nothing. The app doesn't open because the results are schown to slow.
Updated second paragraph at 2022-06-18 10:04 pm (German time)!

Is this a regression, though? Or was it still there before? Is there an issue specific to this Program plugin issue?

@jaimecbernardo The bug described in this issue is gone.
But there is still a delay in program plugin. Which makes it to slow for me. Slower than taskbar search. Typing a query and pressing enter emidiatly does nothing. The app doesn't open because the results are schown to slow.
Updated second paragraph at 2022-06-18 10:04 pm (German time)!

Is this a regression, though? Or was it still there before? Is there an issue specific to this Program plugin issue?

It wasn't before 0.59.0. I don't think we have a different issue.
Can you reproduce it?

@jaimecbernardo The bug described in this issue is gone.
But there is still a delay in program plugin. Which makes it to slow for me. Slower than taskbar search. Typing a query and pressing enter emidiatly does nothing. The app doesn't open because the results are schown to slow.
Updated second paragraph at 2022-06-18 10:04 pm (German time)!

Is this a regression, though? Or was it still there before? Is there an issue specific to this Program plugin issue?

It wasn't before 0.59.0. I don't think we have a different issue.
Can you reproduce it?

I have opened a new issue (#18967). Let's discuss things there.

Fixed with hotfix release 0.59.1


fixed case of operation ID to fix docs generation and have common naming

@salameer please review

Can one of the admins verify this patch?

Automation for azure-sdk-for-js

Automation for azure-sdk-for-ruby

Automation for azure-sdk-for-python

Approving based on discussion with Code generators that changes in the first Character of an operation ID should not introduce breaking changes

Automation for azure-sdk-for-go


fixed critical cve

fixed a critical cve in netpipes allowing arbitrary code execution

please report cve's using security.md guidance thank you for the contribution


Fix pull request URLs

Using pull_request.url generates a URL like https://api.github.com/repos/<org>/<repo>/pulls/<number> which isn't very useful. This commits changes that to https://github.com/<org>/<repo>/pull/<number>.

@AnthonyKinson what you do think, can this be merged?

lgtm. Will wait for Anthony on the final confirmation.

Looks good, Thanks!

@AnthonyKinson can you please regenerate dist/index.js? I forgot to include that in the PR so this change isn't actually working.


Moved TakeCommand from Kerbstuff to SpaceDock

I've released a new version of TakeCommand for KSP 1.1, and it's now being hosted on SpaceDock so I'd like to get CKAN updated to point at the new location.

Please delete TakeCommand.kerbalstuff as part of this PR.

Also, please replace
"x_netkan_license_ok": true",

with
"license": "GPL-3.0",

Merging with my thanks.


Removed trash

This trash actually gets generated from:
https://github.com/elastic/elasticsearch-net/blob/master/src/Tests/Aggregations/Pipeline/MovingAverage/MovingAverageHoltWintersAggregationUsageTests.cs#L112

We will go over all of these and add more assertions and example response handling. PR's there more then welcomed! :smile:


[FLOC-3648] [FLOC-3649] Discover and detach from dead nodes

If we discover a dataset is attached to a dead node, try to detach it in the destination node.
I've not actually seen a passing acceptance test, so no idea if it actually works, but maybe I actually found last bug? :see_no_evil:

Looks good - really nice and clean now that we've refactored blockdevice.py. I've got some comments throughout, but no major refactors requested, so I'll be accepting the PR. Address comments, get some green runs of the test on Jenkins and merge.
I am a little concerned about the acceptance test with the 20 seconds wait. I think I'd prefer to see a couple green runs of the test before we merge, just to double check we aren't just merging in a flaky test and generating more work for the green-ci team.

I've asked Swisscom to try this out, won't merge until we get feedback.

Since the last review I identified and fixed a few bugs:

ICloudAPI was never detected in practice since the check was on the ProcessLifetimeCache that wraps the underlying IBlockDeviceAPI, and doesn't proxy ICloudAPI.
Cinder backend didn't allow detach on remote nodes.
Cinder backend listed all nodes as being live.

Swisscom has run a successful test of this branch.

There is no changelog entry, BTW, since we don't have acceptance tests so I don't want to publicly promise this will work.

New changes to actual code look great, cool to see us be able to solve this issue for people running OpenStack
Some concern regarding:

There is no changelog entry, BTW, since we don't have acceptance tests so I don't want to publicly promise this will work.

Given there is no acceptance test, do we expect people who depend on this functionality to verify it in some sort of staging environment every time before they roll out a new version of flocker?

Is it worth the code complexity in blockdevice.py for functionality that is only needed in certain environments? or is there some way we could hide this complexity off in cinder.py or something?

I think this is probably fine as is, and am fine if it is merged. Although we should be sure to set long term expectations on the testing burden re (1). Without the acceptance test, it seems very possible to me that this functionality might be lost in the future in a refactor.

We'll discuss 1st point yeah. Re 2nd point, this functionality is actually a very general one; in the future you can imagine replacing ICloudAPI with a INodeLiveness API with e.g. a Kubernetes provider that just relies on k8s' notion of being alive.

I'm suspect that this might be increasing our number of API calls by a fairly significant amount. I'm getting RequestLimitExceeded errors when I run two sets of the acceptance at a time at 4pm Pacific time, which hadn't happened in the past.
I might be wrong though, just a lingering suspicion.


CASMINST-4909 & MTL-1836 New LiveCD

New LiveCD with:

cray-site-init: https://github.com/Cray-HPE/cray-site-init/pull/202
pit-init: https://github.com/Cray-HPE/pit-init/pull/46

CD is built.


feat(wallet): Auto-generated wallet in chat.fullstack.cash

PR related to this trello task --> https://trello.com/c/5qfnlbd1

:tada: This PR is included in version 2.3.0 :tada:
Your semantic-release bot :package::rocket:


LineHeight dosen't work equally with english character and chinese word

Environment
[✓] Review the documentation: https://facebook.github.io/react-native
[✓] Search for existing issues: https://github.com/facebook/react-native/issues
[✓] Use the latest React Native release: https://github.com/facebook/react-native/releases
Environment:
OS: macOS High Sierra 10.13.3
Node: 8.9.4
Yarn: 1.3.2
npm: 6.1.0
Watchman: 4.9.0
Xcode: Xcode 9.2 Build version 9C40b
Description
We meet this  problem.when we set parent View width to 20,and inner text as 'aaaaaaaaaa'.We set parent View as lineHeight=20,height=40.so we espect it as showing 2 lines.In English word situation,it work right and show 2 lines, we feel grateful for this  modification.However, when we write Chinese character as '啊啊啊啊啊', it dosen't work right, and just show 1 line. We find that we need to  set height to 42,and requirement met.
Reproducible Demo
Here is an example
https://snack.expo.io/ryk2MdjGX

Same problem here :'(


"save session" dialog prompt only when closing window, not when quitting app using Apple-Q

https://github.com/readium/readium-desktop/blob/321c18b97bdee43f3619de085d2a733f5ad6ccc2/src/main/redux/sagas/win/session/library.ts#L20-L49
=>
https://github.com/readium/readium-desktop/blob/321c18b97bdee43f3619de085d2a733f5ad6ccc2/src/main/redux/sagas/win/library.ts#L245-L249
=>
https://github.com/readium/readium-desktop/blob/321c18b97bdee43f3619de085d2a733f5ad6ccc2/src/main/redux/sagas/win/library.ts#L126-L221

Normally in Electron apps, Apple+Q is captured so that shutting down the app is graceful (with controlled tear-down of services, etc.)
Relevant code to investigate (make sure that the exist is clean):
https://github.com/readium/readium-desktop/blob/321c18b97bdee43f3619de085d2a733f5ad6ccc2/src/main/redux/sagas/persist.ts#L74-L94