Custom classes & Rails' console reload!

I just updated to PaperTrail master/ 4.0.0.beta2, added PaperTrail::Rails::Engine.eager_load! to config/initializers/papertrail.rb, and now I get the following error when using Rails' console in development:
> PostVersion.first
=> #<PostVersion id: 7 ...
> reload!
> PostVersion.first
PG::UndefinedTable: ERROR:  relation "versions" does not exist

I'm actually not familiar with the `reload!

I'm actually not familiar with the reload! method. What do you use it for?
Also, does it return true or false from the reload! method? And did you try dropping in PaperTrail::Rails::Engine.eager_load! after you executed reload!?

I am using reload! from time to time to play around with local changes and test them in the console immediately without reopening it (in my current case I was debugging performance issues in my application with papertrail's reify method).
Calling PaperTrail::Rails::Engine.eager_load! after reload! didn't help. What does help is to resetting self.abstract_class = true as done in my initializer. I have no clue why this is causing in issue - as far as I know reload! only reloads the application's code and not the code from gems...

PostVersion.first
=> #<PostVersion id: 7 ...
reload!
=> true
PostVersion.first
PG::UndefinedTable: ERROR:  relation "versions" does not exist
PaperTrail::Rails::Engine.eager_load!
=> ["../lib/paper_trail/frameworks/active_record/models"]
PostVersion.first
PG::UndefinedTable: ERROR:  relation "versions" does not exist
PaperTrail::Version.module_eval do; self.abstract_class = true; end
=> #<PostVersion id: 7 ...

I just saw this error outside of the Rails console during a page load: I opened a page that loads a PostVersion in development mode and then edited a file (e.g. adding some code to a controller). When I now reload the page, I get the PG::UndefinedTable: ERROR:  relation "versions" does not exist exception.
Could somebody try to reproduce my issues with reload!? If I am the only one experiencing this, I'll dive into my code and try to find out the reason for this behavior.

Okay, it seems that the application itself must cause the problems. I created a new app with the same gems and initializers, and I can't reproduce the issue there. I can't figure out what else might cause these issues, so I'll just create the versions table and just hope that this will fix all problems. I close the issue for now because it seems it's nothing papertrail can solve...


[WIP]support max-allowed Pods for nodes

xref:

https://github.com/kubernetes-sigs/poseidon/issues/88
https://github.com/kubernetes-sigs/poseidon/pull/112
WIP

/cc @shivramsrivastava

@shivramsrivastava The PR's ready.

@shivramsrivastava PTAL

TL;DR
Schedulers should be cognizant about

Workload-Priority
Predicates/Prerequisite for Workloads

Priority
Instead of a discrete logic of MAX permissible Pods on a Node, would you encourage us having a more condition tree based scheduling?
 Node ---- HAS ----> Pods ---> have ---> Priority
Schedulers could honor Pod Priority [ P1, P2, P3 ] along-side maximum permissible number of Pods.
Scheduler ---> Node A ---> Spawn max `P1` Pods ----> Spaw max `P2` Pods
Predicate
Context
It's a good start to have a Rate-Limiting function for workload scheduling.
However workloads in Production grade systems tend to have criteria like

Affinity/Anti-affinity
Taint tolerant workloads
Volume dependent
Fault-domain resilient

Suggestion

If we abstract the Rate-limit to a be a type of Predicate for scheduling, we could have an elegant predicate-based posidon scheduling.
Reasons

From Business availability stand point, there is a priority for any workload
MUST have Pods need to be scheduled first, followed by Nice-to-Have pods

@shivramsrivastava @m1093782566  @islinwb - RFC

Thanks for your feedback. This is exactly we currently support as part of Poseidon/Firmament scheduler. Node Filtering (Hard Constraints) -> Priority/Scoring (Soft Constraints) -> Taints -> Volume dependency. We are about to incorporate max. pods/node capability to go along with all of the above. If this is what you meant.

@deepak-vij  thanks for the comment. Could I request for a few reference hyperlinks to the documentation for Hard & Soft constraints?

@nrshrivatsan

Taints and Tolerations

Pod Level Affinity/Anti-Affinity

Node Level Affinity/Anti-Affinity

Volumes dependent workloads:
We are currently working on this one, we support only few volumes types and only support pre-bound PVC's and do not support dynamic binding/storage classes. We will publish a document on this soon.

Can you please elaborate on the Rate-Limiting predicate?
Are you suggesting to introduce Rate-Limiting for pods scheduling, as a part of predicate operation?

@shivramsrivastava Love the links!
Rate Limiting

Set of Pods could satisfy Predicates


Invalid zone directive makes zone ineditable

Hello,
If I make a mistake in a zone directive (like add $ORIGIN without adding a domain afterwards), the interface will show an error like Oh ! Une erreur est survenue. $ORIGIN incomplete at /home/ppittoli/perl5/lib/perl5/Net/DNS/ZoneFile.pm line 470, line 11. file /tmp/zones//noinidonoidewoindnoiew.netlib.re line 11 at /home/ppittoli/dnsmanager/bin/../lib/zonefile.pm line 89. and it will be impossible to edit the zone.

Did you go to IRC to talk about this problem?
I removed the file so you should be able to modify your zone again.

Yes. It was me. Thanks for removing the file. However, I think that it would be better to resolve the issue on the code.
Also, I noticed that https://git.karchnu.fr/ is down.

Yes. It was me. Thanks for removing the file. However, I think that it would be better to resolve the issue on the code.

Yep, but won't happen. I rewrote most of the code in a completely different way, so I won't change anything in the current code. I don't know when I will make the final swap.

Also, I noticed that https://git.karchnu.fr/ is down.

Yep, the princess is in another castle Mario.
Link changed, thanks for the warning.


[v2] Cloud only version

Attlassian removed the Self-Hosted version of Jira/Confluence of their product portfolio.
The current codebase was build to support both versions, but since the API's diverge more and more a V2 refactor should be done to support only the Cloud version while keeping the Self-Hosted code in a different repository.
This clean's the code and creates a clear use case for both clients (cloud and self-hosted) without the need of mixing code snippets for compatibility reasons.

Atlassian still provides self-hosted versions, which are called "Data Center". They are basically just a much much much more expensive Server version but with the added benefit of being able to scale.


Update go dependencies to metallb

/kind cleanup
What this PR does / why we need it:
Graceful restart testing needs to bump the dependencies.
Special notes for your reviewer:
NONE

thanks!


Provide a utility script to find and replace all Texas-version operators in a file

The consensus is to use only the unicode variant of Perl 6 operators.  A utility script to find any Texas-variant operators in a file and, optionally, replace  them will be useful as a build-check tool as well as a developer tool.

You mean that we can have a test for that? (https://github.com/perl6/doc/issues/625)
Or that somebody has to write a module that will modify the files? (not a doc issue)
As for the documentation, I think that we should use Texas versions of operators as much as possible, simply because these are typically more readable. In fact, I even think that we should use ‘’ instead of '' because people will often be copying the snippets into perl6 -e.
If you really care about this, perhaps you can get some people to vote or something.

If it's about module to replace ascii to unicode using this table: https://doc.perl6.org/language/unicode_texas#Other_acceptable_single_codepoints - then I can try to do this.

@Altai-man any progress? ;)

@AlexDaniel I was busy with examples compilation and some side work. I hope to start it today/tomorrow.

I've created https://github.com/Altai-man/p6-Texas-To-Uni
Some info... We need to distinguish between code and string literals and don't change literals(NYI). Our texas-to-unicode table has duplicates. Testing is a must. Pull requests are welcome.
This script is still less than awesome, but I'd spend some time soon to make it better, so this issue can be closed.


Installation instructions incorrectly reference location of .env

The instructions say that the .env file is in the bin subdirectory of meta. It is not, it is in root.

Good catch, it is fixed now: https://github.com/ZOSOpenTools/meta/blob/main/README.md

@catherdersoftware please close off if you are ok with the fix


Add functionality to select objects based on measurement features

We can currently iterate over a dip::Measurement object and fish out object IDs for objects that satisfy certain conditions. It would be nice if we could do so without iterating (at least for the simpler conditions).
We also need a function that will erase labels in an image that were not selected. This currently is most easily done using dip::ObjectToMeasurement(), thresholding the resulting image according to the desired conditions, and then applying this mask to the label image. This is not very efficient.
Usage could look like this:
dip::Image img = ...;
dip::Image labels = dip::Label(img);
dip::MeasurementTool msrtool;
auto msr = msrtool.Measure( labels, {}, { "Size" } );
auto keep = ( msr[ "Size" ] > 10 ) & ( msr[ "Size" ] < 20 );
KeepLabels( labels, labels, keep );

The auto keep here would be a set of IDs (alternatively, it could be a map of ID to Boolean, but the advantage of that would be quite minor, only indicating which IDs exist but were not selected).
We'd need to define:
using ObjectSet = tsl::robin_set< dip::uint >; // Represents selected objects

ObjectSet operator==( Measurement::IteratorFeature const& featureValues, Measurement::ValueType value );
ObjectSet operator!=( Measurement::IteratorFeature const& featureValues, Measurement::ValueType value );
ObjectSet operator>( Measurement::IteratorFeature const& featureValues, Measurement::ValueType value );
ObjectSet operator>=( Measurement::IteratorFeature const& featureValues, Measurement::ValueType value );
ObjectSet operator<( Measurement::IteratorFeature const& featureValues, Measurement::ValueType value );
ObjectSet operator<=( Measurement::IteratorFeature const& featureValues, Measurement::ValueType value );

ObjectSet operator&( ObjectSet lhs, ObjectSet rhs ); // Logical AND is a set intersection
ObjectSet operator|( ObjectSet lhs, ObjectSet rhs ); // Logical OR is a set union
ObjectSet operator^( ObjectSet lhs, ObjectSet rhs ); // Logical XOR
ObjectSet operator~( ObjectSet rhs ); // Logical not -- not really necessary
                                      // To implement this one we'd need `ObjectSet` to be a map

// Remove the labels from the image that are not listed in `objects`. If `mode` is `"relabel"`, the output
// labeled image has consecutive labels starting at 1. If it's `"binary"` the output image is binary.
// Otherwise the objects will keep their ID (this is the default).
void KeepLabels( Image const& in, Image& out, ObjectSet const& objects, String const& mode = "" );

The function dip::SmallObjectsRemove() has some code that could be replaced with this functionality (and be more efficient).
The KeepLabels() function proposed here could be implemented in terms of a more generic function MapLabels(), which would map some object IDs to new IDs. So this would be a version of dip::LookupTable::Apply() that specifically maps IDs to IDs, and where pixels with a value that doesn't match any source ID is not changed. Maybe
using ObjectMap = tsl::robin_map< dip::uint, dip::uint >;
void MapLabels( Image const& in, Image& out, ObjectMap const& map );

KeepLabels() then would create the map using objects and mapping either to itself, to new values 1 to N, or to 1s (and create a binary output image), depending on mode.

I’ve implemented this, but comparing features yields a dip::LabelMap, which is a lookup table for labels. Initially these labels map to themselves or to 0 (background). You can modify what a label maps to. Many labels can map to the same value. dip::LabelMap::Apply() transforms a labeled image. a2bfbe9, ede0332.
Next, I’d like to add indexing operations to dip::Measurement and dip::measurement::IteratorFeature so that these can also be relabeled and subsetted (labels that map to 0 would be rows in the measurement table that are dropped). Maybe this is also a dip::LabelMap::Apply() with a measurement table or column as input? Indexing on a measurement seems quite natural to me though:
msr = msr[ msr['Size'] > 50 ];

Indexing into the dip::Measurement object implemented in 2a2f05cf.
I don't think we can easily index into dip::measurement::IteratorFeature. It would require a new object type, since the IteratorFeature references contiguous data in a dip::Measurement object.
I'm going to leave this as it is now.


Add to Community site: Cookie consent, Question slider and Privacy policy

Privacy policy text not ok. ("The website of sensenet.com"). Talked to @huszerlbence, waiting for info.


Identify PlayStation systems

The PlayStation 3, 4 and Vita web browser share a pretty simple structure:
Mozilla/5.0 (Playstation $version[;] $firmware) AppleWebkit(......)

$version: 3, 4, Vita
$firmware: X.XX (i.e. 3.55)
The PlayStation 3 has a semi-colon, appearently, whilst Vita and 4 do not.
To classify:
    const BROWSER_PLAYSTATION = "PlayStation";
    const PLATFORM_PLAYSTATION = "Sony PlayStation";

PS 3 and 4 are "Desktop" and not mobile. Vita is mobile.
Unfortunately I am not perfectly sure of the results for the PSP.
Could they be implemented?

I realize this is issue is a year old but I'm learning GitHub by trying to help that is why I sent a pull request.
@IngwiePhoenix Try this code with my forked version 😃
<?php
require 'lib/Browser.php';

$agent = $_SERVER['HTTP_USER_AGENT'];
$browser = new Browser($agent);
if ($browser->getBrowser() == Browser::BROWSER_PLAYSTATION) {
    echo "Browser = " . $browser->getBrowser();
    echo '
';
    echo "Version = " . $browser->getVersion();
    echo '
';
    echo "isMobile = " . ($browser->isMobile() ? 'true' : 'false');
    echo '
';
    echo "Platform = " . $browser->getPlatform();
}

?>

Closed in https://github.com/cbschuld/Browser.php/commit/a57a9b91c423cc587c38af77a05b544c3e92902b

@IngwiePhoenix @FootballFan141 - was merged & all set; closing.


[Fix]: Card image behavior on Chrome- Fix

Is your feature request related to a problem? Please describe.
Images behave inappropriately on chrome vs other browser

Describe the solution you'd like
I am not sure but according to this solution on stack-overflow, adding max-width of container to 200% might work.
reference: https://stackoverflow.com/questions/40237393/responsive-image-behaves-differently-in-chrome-and-safari
Describe alternatives you've considered
Would work on assigning particular values of width or ask community members to engage, and work on this issue if they have a better approach.
Additional context
https://stackoverflow.com/questions/40237393/responsive-image-behaves-differently-in-chrome-and-safari

assigned @PranavSikarwal


fix(dashboard): Added sign-in message to the dashboard

fix #103

Should have a sign in message or a redirect to home page because with the new app header, the only way a non signed in user would get into dashboard would be if they typed in /dashboard in the url themselves

Should we have a sign in message or a redirect to home page because with the new app header, the only way a non signed in user would get into dashboard would be if they typed in /dashboard in the url themselves

It looks like the dashboard is available through the UI as well. Up to you, we can redirect.

Should we have a sign in message or a redirect to home page because with the new app header, the only way a non signed in user would get into dashboard would be if they typed in /dashboard in the url themselves

It looks like the dashboard is available through the UI as well. Up to you, we can redirect.

The idea behind the navigation changes was that the Dashboard would be hidden unless the user is signed in, same goes for everything under the Dashboard. The user should not have access to "Day of" info unless they are signed in/part of the hackathon.
HackerPack got promoted b/c a user doesn’t need to be signed in to see the HackerPacks, same way they wouldn’t need to be signed in to see the schedule.

Should we have a sign in message or a redirect to home page because with the new app header, the only way a non signed in user would get into dashboard would be if they typed in /dashboard in the url themselves

It looks like the dashboard is available through the UI as well. Up to you, we can redirect.

The idea behind the navigation changes was that the Dashboard would be hidden unless the user is signed in, same goes for everything under the Dashboard. The user should not have access to "Day of" info unless they are signed in/part of the hackathon.
HackerPack got promoted b/c a user doesn’t need to be signed in to see the HackerPacks, same way they wouldn’t need to be signed in to see the schedule.

Ah ok, I'll deal with that when I get home then.

Closing until the issue is more explicit.


Pass Domain through on EKS Provision for Route53 Permissions

When we provision an EKS cluster, we create a Route53NodeInstancePolicy in our cloudformation script that allows full access from the node to administer the route53 records.
See: https://github.com/crossplaneio/crossplane/blob/3bc975537fe11b104779c0deac5d57ed8bf53bd2/pkg/clients/aws/eks/eks.go#L252
Note configuration notes here:
https://github.com/kubernetes-incubator/external-dns/blob/master/docs/tutorials/aws.md
We should improve the security model by limiting to the domain that cluster should operate on:

Pass domain name through from claim
Resolve domain name to actual hosted zone id
Pass hosted zone id to cloudformation script in eks.go client to limit scope of permissions in aws role.

Not relevant anymore.


Remove all lodash methods and remove array spread

Apparently array spread requires the Symbol polyfill:
https://babeljs.io/docs/usage/caveats/
We don't want that!

What's the reasoning behind removing lodash methods?

It added about 10k to the bundle (_baseiteratee being the culprit) :(

Coverage increased (+0.1%) to 98.374% when pulling 52fdde8f817a035a19cb69c4fc005c12d3f63b55 on chore/no-lodash-no-polyfills into 72b08ca65c80365c708ee2596b8869e75ee35348 on master.

Wow!  Alright, I guess that's as good a reason as any.  Anyway, LGTM.

@divmain Sooooo much lodash

@tptee LGTM!

@tptee @baer -- Did you try the lodash-webpack-plugin + normal lodash to get honed lodash methods?

but, as a side note if you're pulling in lodash bespoke packages for one-each uses, it is probably the right choice to completely remove them...

Yeah, it was just single-function packages for assign and find–assign was easy to remove, while find is replaced with an ugly but usable for...in.


Implementation of Auth Backend with Kubernetes Service Account Token

KubeAuthentication integration tests are ignored so far, as local K8S setup (minikube) must be clarified

I'm perfectly fine with using minikube on Travis, we should make sure to skip integration tests if Kubernetes is not running/available.

I removed AuthenticationSteps and associated integration tests.
Normally the service accounts token are mounted automatically mounted into pod.  This behavior can be switched off by setting automountServiceAccountToken to false.
Every service account has an associated K8S secret. This secret holds the public CA of API server and the token.

We could also move the build command to a separated script and retrieve the IP of the minikube.
This would be better than using hard coded <IP_ADDRESS>.
e.g.
.travis.yml
script: ./travis_build.sh
travis_build.sh:
MINIKUBE_IP=$(./minikube ip)
./mvnw clean verify -DMINIKUBE_IP=${MINIKUBE_IP} -P${PROFILE:-ci}

Would ./mvnw clean verify -DMINIKUBE_IP=$(./minikube ip) -P${PROFILE:-ci} work? No need to add further indirections if not required. I don't really have an issue with <IP_ADDRESS>, with Travis, we can export the IP as env variable and propagate it to the init scripts.

OK. I will rework my last change.

I have just started implementing KUBERNETES binding in the spring-cloud-vault. Without the AuthenticationSteps (I removed earlier) I am getting an error (with AuthenticationSteps it works fine).
I am just a little confused ?
Running org.springframework.cloud.vault.config.VaultConfigWithContextTests Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 3.436 sec - in org.springframework.cloud.vault.config.VaultConfigWithContextTests Running org.springframework.cloud.vault.config.VaultConfigKubernetesTests Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.269 sec <<< FAILURE! - in org.springframework.cloud.vault.config.VaultConfigKubernetesTests contextLoads(org.springframework.cloud.vault.config.VaultConfigKubernetesTests)  Time elapsed: 0.003 sec  <<< ERROR! java.lang.IllegalStateException: Failed to load ApplicationContext Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'reactiveVaultTemplate' defined in org.springframework.cloud.vault.config.ReactiveVaultBootstrapConfiguration: Unsatisfied dependency expressed through method 'reactiveVaultTemplate' parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'vaultTokenSupplier' defined in org.springframework.cloud.vault.config.ReactiveVaultBootstrapConfiguration: Unsatisfied dependency expressed through method 'vaultTokenSupplier' parameter 0; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.vault.authentication.AuthenticationStepsFactory' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {} Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'vaultTokenSupplier' defined in org.springframework.cloud.vault.config.ReactiveVaultBootstrapConfiguration: Unsatisfied dependency expressed through method 'vaultTokenSupplier' parameter 0; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.vault.authentication.AuthenticationStepsFactory' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {} Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'org.springframework.vault.authentication.AuthenticationStepsFactory' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {}

AuthenticationSteps is (a AuthenticationStepsFactory bean) is only required if you enable the reactive configuration in Spring Cloud Vault (actually, this discussion would rather belong into https://github.com/spring-cloud/spring-cloud-vault/). Since we removed AuthenticationSteps from the Kubernetes auth, there is no AuthenticationStepsFactory available anymore.
I think we can make it work anyway, if we make the right assumptions. If the JWT associated with the service account never changes while a pod runs, we can pre-fetch the JWT during config bootstrap and provide it in a static way.
That would require to create a variant of  AuthenticationStepsFactory  that takes the JWT token, something like:
Map<String, String> map = … // build the Map with role and jwt
AuthenticationSteps.fromSupplier(() -> map).login("kubernetes/login")

In such a case, does the implementation of AuthenticationStepsFactory belong to spring-cloud-vault or sprig-vault (reverting the removal of createAuthenticationSteps) ?

Belongs in to Spring Cloud Vault. I can take care of that part once Kubernetes support is in place.
Am 28. Okt. 2017, 12:23 +0200 schrieb Michal Budzyn<EMAIL_ADDRESS>
In such a case, does the implementation of AuthenticationStepsFactory belong to spring-cloud-vault or sprig-vault (reverting the removal of createAuthenticationSteps) ?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

OK. Are there any open points preventing merging ?
BTW. As we still use spring boot 1.5, we would like to have Kubernetes Auth also in older release too. Are there obstacles preventing it ?

The following steps are that I need to get familiar with minikube and then I will go on with the merge.
Spring Vault 1.1.x was the last feature release of the 1.x branch. All subsequent releases of 1.1.x are maintenance releases without adding any further features. Spring Cloud Vault 1.1.0 is not GA yet so we can add Kubernetes auth there (basically port your code to Spring Cloud Vault as non-public API) – which would work for Boot 1.5 but only if you use Spring Cloud Vault.
For Spring Cloud Vault 2.0 we can pick up the Kubernetes auth provided in Spring Vault.

Great. I will do some work on Spring Cloud Vault 1.1.0

Thanks for your contribution. That's now merged and polished.


Register with Enterprise server

@markbates

Registration URL fixed up.

This change should be complete now. Registration is attempted if a token is present. However the attempt is best-effort and if registration fails, the server continues to run.

OK, take a look now @markbates
This code now attempts registration and logs any errors. It doesn't do any other error handling at this time.

OK, good to go now?

Looks good now. I had to fix the JSON you were sending up as it was causing a 500 error. You were sending numbers for a few things and it wanted strings.
The error handling works, but it will display a JSON blurb to the screen if there's an error. Are we OK that?
https://github.com/influxdb/enterprise#api-errors

Other than the printed error, I think it looks good. I'll let you handle the merge, since I'm not sure where this should be merged into.

Cool, +1 on the numbers-only change.

Great, thanks for your help, I'll just merge this on green.

Don't mention it. That's what I'm here for. :smile: Plus, it gives me my first core commit!

As for just dumping the JSON to the logs, yeah, I think that's fine. The registration shouldn't fail -- it should rarely happen -- so it if it does, we'll need the info there. That is my reasoning anyway.
The only reason not to would be if there was some sensitive information in the response that shouldn't be logged, but I don't think that is the case.

That's fine, there's nothing sensitive in there at all.

Great, merging now.


Revert "Revert "[FLOC-2484] Make padding top and bottom the same on h…

Fixes https://clusterhq.atlassian.net/browse/FLOC-2484
Reverts ClusterHQ/flocker#1705

All tests are passing, the original passed review, so merging.


chore: migrate from yarn to pnpm package manager

migrate from yarn to pnpm package manager and update commands.

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 100.00%. Comparing base (1b9c978) to head (1ea21e0).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff            @@
##             alpha      #372   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           15        15
  Lines          414       414
  Branches       161       161
=========================================
  Hits           414       414

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


Help wanted

Can you guys give me an example workflow for using your docker fastsurfer:CPU on a Windows 10 host?
Thank you,
-SG

Hey SG,
unfortunately, we do not use windows here :(. Are you encountering any specific problem with running the image? If I am not mistaken, Windows and MAC both use Docker Desktop. For running FastSurfer on MAC, you need to adjust the memory settings because these are set to 2GB by default and FastSurfer needs around 10GB (see also #40 ). According to the Documentation, in Windows it is the same so if you see a similar error you can try to adjust the memory resources accordingly (see: https://docs.docker.com/docker-for-windows/ on how to do it, pretty much the same as for MAC).
Otherwise it would be helpful if you could state where exactly you get stuck.
Hope this helps.
Best,
Leonie

Hey SG,
unfortunately, we do not use windows here :(. Are you encountering any specific problem with running the image? If I am not mistaken, Windows and MAC both use Docker Desktop. For running FastSurfer on MAC, you need to adjust the memory settings because these are set to 2GB by default and FastSurfer needs around 10GB (see also #40 ). According to the Documentation, in Windows it is the same so if you see a similar error you can try to adjust the memory resources accordingly (see: https://docs.docker.com/docker-for-windows/ on how to do it, pretty much the same as for MAC).
Otherwise it would be helpful if you could state where exactly you get stuck.
Hope this helps.
Best,
Leonie


Unable to use 9250s as auxiliary  if the main imu is 20948

[DEBUG] [ICM20948Sensor:0] DMP initialized
[DEBUG] [ICM20948Sensor:0] Using 9 axis configuration
[DEBUG] [ICM20948Sensor:0] Enabled DMP sensor for sensor orientation
[DEBUG] [ICM20948Sensor:0] Set Quat9 to 100Hz frequency
[DEBUG] [ICM20948Sensor:0] FIFO Enabled
[DEBUG] [ICM20948Sensor:0] DMP Enabled
[DEBUG] [ICM20948Sensor:0] Reset DMP
[DEBUG] [ICM20948Sensor:0] Reset FIFO
[INFO ] [MPU9250Sensor:1] Connected to MPU9250 (0x71) at address 0x69
[INFO ] [MPU9250Sensor:1] Flip front to confirm start calibration
[DEBUG] [MPU9250Sensor:1] Starting calibration...
[DEBUG] [MPU9250Sensor:1] Gathering raw data for device calibration...
[INFO ] [MPU9250Sensor:1] Put down the device and wait for baseline gyro reading calibration
[INFO ] [MPU9250Sensor:1] Gently rotate the device while it's gathering accelerometer and magnetometer data
[DEBUG] [MPU9250Sensor:1] Calculating calibration data...
User exception (panic/abort/assert)
--------------- CUT HERE FOR EXCEPTION DECODER ---------------
Unhandled C++ exception: OOM

stack>>>

last failed alloc call: 4020D112(24000)
--------------- CUT HERE FOR EXCEPTION DECODER ---------------
last failed alloc caller: 0x4020d112
ets Jan  8 2013,rst cause:2, boot mode:(3,6)
load 0x4010f000, len 3460, room 16
tail 4
chksum 0xcc
load 0x3fff20b8, len 40, room 4
tail 4
chksum 0xc9
csum 0xc9
v0006f7e0
~ld

Seems like we're running out of memory here :/

weren't memory optimized for 9250 already?

Yep , it can be used alone , but is my main IMU is 20948, and 9250 as aux, i can't finish calibration progress

I made a separate tracker for the waist, But the feet are difficult :<

9250 main, 6500 aux too. can't finish calibration process.

So we need to reduce memory usage of Magneto...

Magneto library doesn't consume much memory. The problem is most likely that DMP image is allocated on stack and takes a lot of space. We should try allocating it on heap and freeing when not needed.

With changing to pgmspace i could free about 14'304 byte heap on ESP8266 no change on ESP32 i think this was already fine before. #138

Should be fixed. Reopen if the issue persists with the latest main.

After this fixed, new issue produced :
When finished calibration, it will work fine with 20948, but if you restart tracker, 9250 will not work anymore(just like you never do a calibration process)
Now the 9250 need recalibrate every time restart the tracker, otherwise it will not work
[OK] Port opened
[DEBUG] [ICM20948Sensor:0] DMP initialized
[DEBUG] [ICM20948Sensor:0] Using 9 axis configuration
[DEBUG] [ICM20948Sensor:0] Enabled DMP sensor for sensor orientation
[DEBUG] [ICM20948Sensor:0] Set Quat9 to 100Hz frequency
[DEBUG] [ICM20948Sensor:0] FIFO Enabled
[DEBUG] [ICM20948Sensor:0] DMP Enabled
[DEBUG] [ICM20948Sensor:0] Reset DMP
[DEBUG] [ICM20948Sensor:0] Reset FIFO
[INFO ] [MPU9250Sensor:1] Connected to MPU9250 (0x71) at address 0x69
[DEBUG] [MPU9250Sensor:1] Enabling DMP...
[DEBUG] [MPU9250Sensor:1] DMP ready! Waiting for first interrupt...
[INFO ] [WiFiHandler] Setting up WiFi
[INFO ] [WiFiHandler] Loaded credentials for SSID potato and pass length 8
[DEBUG] [WiFiHandler] Status: 7
[NOTICE] OTA updates allowed
.[ERROR] [ICM20948Sensor:0] Sensor timeout I2C Address 0x68
...[INFO ] [WiFiHandler] Connected successfully to SSID 'potato', ip address <IP_ADDRESS>
Logs seems to be normal except i got a "Sensor timeout", but in fact, the 20948 is working fine
I had tried it on the other 20948 Main trackers,  same issue

Should be fixed. Reopen if the issue persists with the latest main

I had done some more tests,  I noticed it has some probability that it will work, not completely out of work
The details is in discord
https://discord.com/channels/817184208525983775/912982617010352159/959802967928754176
Sorry to bother you so much, thanks for a lot

seems a different issue with the configuration storage (eeprom). PR #134 should fix that anyway.

#134 in main, see if this works

#134 in main, see if this works

It's work ,thanks


RCP update can't work  (TZ-89)

We make the board with  ESP32-S3-WROOM-1-N16R8 and ESP32-H2-MINI-1-H2.
And it two module connect as follow:
esp32s3            esp32h2
gpio8                tx
gpio45               rx
gnd                  gnd
gpio2                en
gpio3                gpio9

IDF: master(4f0769d)
I run the examples basic_thread_border_router, and try to update the RCP. But it prompts the following error:
I (74) boot:  1 ot�ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x1 (POWERON),boot:0x2b (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3818,len:0x16cc
load:0x403c9700,len:0x4
load:0x403c9704,len:0xbe8
load:0x403cc700,len:0x2ea4
entry 0x403c9904
I (27) boot: ESP-IDF v5.1-dev-4051-g4f0769d2ed-dirty 2nd stage bootloader
I (27) boot: compile time Mar 20 2023 19:31:38
I (28) boot: chip revision: v0.1
I (32) boot.esp32s3: Boot SPI Speed : 80MHz
I (37) boot.esp32s3: SPI Mode       : DIO
I (42) boot.esp32s3: SPI Flash Size : 4MB
I (46) boot: Enabling RNG early entropy source...
I (52) boot: Partibel            Usage          Type ST Offset   Length
I (63) boot:  0 nvs              WiFi data        01 02 00009000 00006000
I (70) boot:  1 otadata          OTA data         01 00 0000f000 00002000
I (77) boot:  2 phy_init         RF data          01 01 00011000 00001000
I (85) boot:  3 ota_0            OTA app          00 10 00020000 00177000
I (92) boot:  4 ota_1            OTA app          00 11 001a0000 00177000
I (100) boot:  5 web_storage      Unknown data     01 82 00317000 0001e000
I (107) boot:  6 rcp_fw           Unknown data     01 82 00335000 000af000
I (115) boot:  7 ot_storage       Unknown data     01 3a 003e4000 00002000
I (123) boot: End of partition table
I (127) esp_image: segment 0: paddr=00020020 vaddr=3c110020 size=3d904h (252164) map
I (181) esp_image: segment 1: paddr=0005d92c vaddr=3fc98400 size=026ech (  9964) load
I (183) esp_image: segment 2: paddr=00060020 vaddr=42000020 size=10f9b8h (1112504) map
I (386) esp_image: segment 3: paddr=0016f9e0 vaddr=3fc9aaec size=01cd8h (  7384) load
I (388) esp_image: segment 4: paddr=001716c0 vaddr=40374000 size=14398h ( 82840) load
I (418) boot: Loaded app from partition at offset 0x20000
I (419) boot: Disabling RNG early entropy source...
I (430) cpu_start: Pro cpu up.
I (430) cpu_start: Starting app cpu, entry point is 0x40375604
0x40375604: call_start_cpu1 at /home/helpsen/esp/esp-idf/components/esp_system/port/cpu_start.c:158

I (0) cpu_start: App cpu up.
I (445) cpu_start: Pro cpu start user code
I (445) cpu_start: cpu freq: 160000000 Hz
I (445) cpu_start: Application informat    esp_ot_br
I (453) cpu_start: App version:      b4d3b6a
I (458) cpu_start: Compile time:     Mar 20 23 19:31:31
I (464) cpu_start: ELF file SHA256:  d4d458fff6fc08ef...
I (470) cpu_start: ESP-IDF:          v5.1-dev-4051-g4f0769d2ed-dirty
I (477) cpu_start: Min chip rev:     v0.0
I (482) cpu_start: Max chip rev:     v0.99
I (487) cpu_start: Chip rev:         v0.1
I (491) heap_init: Initializing.  Can you help us find out what the problem is?

Hi,
There are some sugguestions about the problem as following:
Firstly, the esp-idf commit(4f0769d) is too new, We have the test the stable idf commit(fefb3a9b17) for esp-thread-br, if you MUST use the commit(4f0769d), some changes is required to do. it maybe complicated. The commit(4f0769d) also is fine to realize the function, when I do the complicated changes.
Secondly, If the ESP32S3 has the rest GPIOs, the GPIO45 SHOULD be replaced to others. (I have to change GPIO45 to GPIO48 to do test)
Thirdly, The connection between ESP32S3 and ESP32H2 SHOULD be checked again.
Finally, Using the new esp32s3 and esp32h2 may be help to resolve problem.

Ok, The esp-serial-flasher component does not support the newest module esp32h2 currently, it will be updated soon. So the problem exists in the newest ESP32H2 chip at present.
You can close the OPENTHREAD_BR_AUTO_UPDATE_RCP option in menuconfig, and download the ESP32H2 firmware by esp-tool.

It does not exceed two weeks. Once the component is supported, I will notify you at first.

@gl-chenxiaosheng the esp32h2 flasher feature already has been supported in esp-serial-flasher

Thanks. I will test it today.
I have another question is how do you distinguish between ESP32H2 and ESPH4, what is the difference between them?

The ESP32H4 version printing is ESP32-H2-DevKitC-1 V2.1.
The ESP32H2 version printing is ESP32-H2-DevKitM-1 V1.2
In actual, the ESP32H4 is ESP32H2Beta2 which is pre-production version, it will not continue to maintain in the future.
The ESP32H2 is office production version with multi-pan feature and so on which is more stable and advance.
So I recommend subsequent development with ESP32H2,  if you have it.

OK, I test it today and it report errors as follow:
 did you mean 'esp_loader_change_baudrate'? [-Werror=implicit-function-declaration]
   59 |         ESP_RETURN_ON_ERROR(loader_port_change_baudrate(higher_baudrate), TAG, "Failed to change local port baudrate");
      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~

So I check this API and find it be changed in esp-serial-flasher.
// commit:  d50cb2b01585cd0f8cfb94e1a16ee58c2272054a
esp_loader_error_t loader_port_change_transmission_rate(uint32_t baudrate)
{
    esp_err_t err = uart_set_baudrate(s_uart_port, baudrate);
    return (err == ESP_OK) ? ESP_LOADER_SUCCESS : ESP_LOADER_ERROR_FAIL;
}

// commit: d313587466e61fdb8ba48e789f8455af75971316
esp_loader_error_t loader_port_change_baudrate(uint32_t baudrate)
{
    esp_err_t err = uart_set_baudrate(s_uart_port, baudrate);
    return (err == ESP_OK) ? ESP_LOADER_SUCCESS : ESP_LOADER_ERROR_FAIL;
}

So I modify the API from "loader_port_change_baudrate" to "loader_port_change_transmission_rate" in rcp_update component, and it can work as expect.
Please help to update the component of esp_rcp_update as well. Thanks.

@gl-chenxiaosheng The ESP32-H2 MP is supported on latest master, please help to close the issue if it works for you.

Yes, it work as expect. But i have another question about "Flash size detection failed, falling back to default", will this have any impact?
...
I (179954) RCP_UPDATE: Progress: 100 %
I (179954) RCP_UPDATE: Finished programming
I (180014) RCP_UPDATE: Flash verified
I (180014) RCP_UPDATE: Erasing flash (this may take a while)...
DEBUG: Flash size detection failed, falling back to default
I (181344) RCP_UPDATE: Start programming
I (181354) RCP_UPDATE: binary_size 290464
I (181384) RCP_UPDATE: left size 289440, written 1024
I (181384) RCP_UPDATE: Progress: 0 %
I (181414) RCP_UPDATE: left size 288416, written 2048
I (181414) RCP_UPDATE: Progress: 0 %
I (181454) RCP_UPDATE: left size 287392, written 3072
I (181454) RCP_UPDATE: Progress: 1 %
...

Using the default size is fine. There is no impact on the function of OpenThread Border Router, , so you can ignore the problem.

Ok, Thanks,


Consider supporting C++14 as minimum requirement

Currently, C++17 is the minimal requirement.
Supporting C++14 means:

using boost::hof for is_invocable and apply
remove uses of template auto (need to find a way to provide a smooth transition for C++14 -> C++17, because that would be a breaking change. A macro is probably needed)
replace several uses of _t and _v with their ::type and ::value equivalents

Won't fix. This just implies too many changes, not only in the implementation, there are also some design issues.


Use preparers for monitor testing

dont use standard envvars

Use the test proxy with powershell script to allocat the resource


Unable to download batch of data from s3

Hello,
I am trying to download the dataset that is represented on your repository. The images and accompanying metadata will be very useful for a project I am currently working on. I am currently attempting the file transfer from the S3 bucket specified on your README to an EC2 instance. Currently, I am only attempting to download a single batch of data, 2020_11_19_TimepointDay4, just to validate that it can be done.
I am running the following command:
aws s3 cp --request-payer requester --recursive s3://jump-cellpainting-public/projects/2019_07_11_JUMP-CP-pilots/2020_11_19_TimepointDay4/ . to download it to the current directory in my EC2 instance, but I am getting the following error:
download failed: s3://jump-cellpainting-public/projects/2019_07_11_JUMP-CP-pilots/2020_11_19_TimepointDay4/images/<file_path> to images/<file_path> An error occurred (AccessDenied) when calling the GetObject operation: Access Denied
This occurs for every file in the batch. Even though the images are not downloaded, the corresponding directories are created with their structure intact. However, they are not populated with images.
I also attempted a direct s3 to s3 transfer, with no luck and a similar error:
aws s3 cp --request-payer requester --recursive s3://jump-cellpainting-public/projects/2019_07_11_JUMP-CP-pilots/2020_11_19_TimepointDay4/ s3://ucbelement-jump-cellpainting/projects/2019_07_11_JUMP-CP-pilots/2020_11_19_TimepointDay4/
getting the following error:
copy failed: s3://jump-cellpainting-public/projects/2019_07_11_JUMP-CP-pilots/2020_11_19_TimepointDay4/images/<file_path> to s3://ucbelement-jump-cellpainting/projects/2019_07_11_JUMP-CP-pilots/2020_11_19_TimepointDay4/images/<file_path> An error occurred (AccessDenied) when calling the CopyObject operation: Access Denied
Any suggestions on how to get this file transfer working or perhaps an alternate approach to access these images would be greatly appreciated.
Thank you.

Hi @NiketPatel9 Thank you for your interest in our dataset. I am tagging @shntnu who should be able to help you with this.

Can you try again but using the --no-sign-request flag?

@shntnu
I tried the following command: aws s3 cp --request-payer requester --recursive s3://jump-cellpainting-public/projects/2019_07_11_JUMP-CP-pilots/2020_11_19_TimepointDay4/ . --no-sign-request and variations, and they all lead to the following error:
fatal error: An error occurred (AccessDenied) when calling the ListObjectsV2 operation: Access Denied. I am unsure as to what is causing these permission issues. Do you recommend another method of retrieving this dataset?

Oops, please try the original command again. The permissions were set incorrectly,
aws s3 cp --request-payer requester --recursive s3://jump-cellpainting-public/projects/2019_07_11_JUMP-CP-pilots/2020_11_19_TimepointDay4/ .

LMK if that doesn't work
Please note --request-payer requester  means that your AWS account will be charged for access.

@shntnu
Thank you! That seems to work. I am able to see the files now.

Awesome!
On Tue, Jul 20, 2021 at 12:10 PM NiketPatel9 @.***>
wrote:

@shntnu https://github.com/shntnu
Thank you! That seems to work. I am able to see the files now.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jump-cellpainting/neurips-cpjump1/issues/7#issuecomment-883516326,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJHQPC3RTZMD3LXDVUUHJLTYWNVPANCNFSM5AOC5PVQ
.

@shntnu
One last thing, could you be a bit more specific in terms of costs of file transfer? I am in the US-east-1 region.

Have a look at the data transfer tab on this page
https://aws.amazon.com/s3/pricing/ to get per GB cost
To know the size of a specific folder, you can use the summarize option of
ls
https://docs.aws.amazon.com/cli/latest/reference/s3/ls.html
On Wed, Jul 21, 2021 at 12:06 PM NiketPatel9 @.***>
wrote:

@shntnu https://github.com/shntnu
One last thing, could you be a bit more specific in terms of costs of file
transfer? I am in the US-east-1 region.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/jump-cellpainting/neurips-cpjump1/issues/7#issuecomment-884308517,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJHQPDFTTPICPEWPYAVXUTTY3WAHANCNFSM5AOC5PVQ
.


if multiple master account connected, send message to any of them

the same user account can have multiple connections at the same time, and messages to that user account will be delivered to each of connections, which is nice for client, but not good for master.
goal:
if same user master account have multiple connections, only send message to any of them

2ac8175


Fix package install: remove use of deprecated setuptools.command.test

Fixes #855 , fixes #854
At present the package install fails in typical conditions, as it is incompatible with the latest setuptools. The failure can be reproduced with:
pip wheel --no-cache-dir --use-pep517 "vcrpy (==6.0.1)"

This PR removes the used of deprecated setuptools modules, which has led to the package build breaking when installed in isolated environments.
Once this issue is fixed it would be useful to make a swift patch release, as it appears this issue is having quite a large affect on the wider python ecosystem:
https://github.com/pypa/setuptools/issues/4519

Once this issue is fixed it would be useful to make a swift patch release, as it appears this issue is having quite a large affect on the wider python ecosystem:
https://github.com/pypa/setuptools/issues/4519

A release isn't that urgent as the setuptools removal was reverted

Thanks for the quick fix!


[Feature Request] Add support for multiple Database drivers

Tell us about your feature request
During project creation, I can only select a database driver but there are instances where I would like to have both Redis and MongoDB in a project. I believe this would be a nice feature to have.
Disclaimer

[x] I agree

There was an open ticket #235 , and we closed it. As of right now, we don't think we want to include a niche feature like this in Blueprint.


chore(deps): upgrade dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-2.x" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 325

Questions ?
Please refer to the Backport tool documentation


Netherite pickaxe bonus drops don't work

Player reported issue, netherite pickaxes are configured to give additional drops but this doesn't appear to be working.
Will need to check and verify the private config and also troubleshoot if it works in general and is just a config issue, or whether there is an issue with the mechanic.

bit of a sanity check but did you add both the normal stone ores and the deepslate ores to the extra drops config?
if it were the case that it was just the normal stone ores then that might explain why people are breaking the mostly deepslate diamond ores and not getting any extra

missclick sorry

I think you're right, they appear to be missing the line below, I'll need to test and confirm this fixes it
  tools:
   - netherite_axe

Needs more testing, I haven't been able to figure out why this isn't working. I tried adding the above line but it didn't seem to work still


Getting Socket read timed out error after sometime when application runs after months of upgrading to 12.2 from 8.4

Driver version
Provide the JDBC driver version (e.g. 10.2.0).  :12.2
SQL Server version
Provide the output of executing SELECT @@VERSION on your target SQL Server.
SQL server 2019
Client Operating System
Provide the Operating System the client application is running on.
Cloud and windows server 2019
JAVA/JVM version
Provide the JAVA/JVM version (e.g. java version "1.8.0").
Java version 11.0.20
Table schema
Provide the table schema to repro the issue.
Problem description
Provide full details of the problem.
Expected behavior
After updating the sql server driver to 12.2 frok 8.4 when application runs for longer time and does sql queries at sudden instances in time I am getting read time out exception for the server
A clear and concise description of what you expected to happen.
Actual behavior
I don't want to have this exception
Output of what you actually see.
Error message/stack trace
Complete error message and stack trace.
Any other details that can be helpful
Add any other context about the problem here.
JDBC trace logs
Provide the JDBC driver trace logs.  Instructions can be found here: https://docs.microsoft.com/sql/connect/jdbc/tracing-driver-operation

hi @HarshaVardhan-Sai
Could you please provide more info on how you are using the driver, e.g. code to repro, connection string, error msg/call stack, and trace logs would also be helpful.
There could also be a lot of non-driver related reasons for intermittent connection failures, here is a link to our wiki to help you with troubleshooting.

We are connecting Wildfly to the database
Connection URL will look as jdbc:sqlserver:// [SERVERNAME][INSTANCE NAME]:1433;encrypt=false
Caused by: java.net.SocketTimeoutException: Read timed out
	at java.base/java.net.SocketInputStream.socketRead0(Native Method)
	at java.base/java.net.SocketInputStream.socketRead(SocketInputStream.java:115)
	at java.base/java.net.SocketInputStream.read(SocketInputStream.java:168)
	at java.base/java.net.SocketInputStream.read(SocketInputStream.java:140)
	at com.mssql//com.microsoft.sqlserver.jdbc.TDSChannel$ProxyInputStream.readInternal(IOBuffer.java:1193)
	at com.mssql//com.microsoft.sqlserver.jdbc.TDSChannel$ProxyInputStream.read(IOBuffer.java:1179)
	at com.mssql//com.microsoft.sqlserver.jdbc.TDSChannel.read(IOBuffer.java:2151)

@lilgreenbird Please let me know if additional log statements are required
Thank you

hi @HarshaVardhan-Sai
When does this happen during login or when you are executing queries? Is this intermittent or does this happen every time?
Are you able to reproduce this using a standalone java program only?
It is hard to tell what the cause is since the error call stack shown only show that there was a socket read timeout but there could be a lot of reasons why that could happen.

HI @lilgreenbird
This happens during the query execution. I tried this on standalone java program. The program execution is way too slower when using the 12.2 driver. The same program with same sql statements executes much faster while using the 8.x driver.
This happens at random instances popping up this error in our server logs. The same executions are fine with the old driver. Hence for now the driver version is reverted to an older version. Please let me know if there are some additional details that I could provide you with.

could you please share your repro code

@lilgreenbird there is nothing like repro code as this occurs while running the application. When SQL statements are executed via JDBC this is timeout error occurs at random point.
We also observe this when we try to add a column to a table having huge number of records like 1million records (when executed with jdbc connection).

@HarshaVardhan-Sai
What queries are you executing? We are not aware of any decreased performance issues so there is nothing for us to go by here unless you have some specific examples of what you are doing that is exhibiting this behavior? The error stack above show that it is timing out on a socket read which could occur if the connection to the server is dropped or other network issues. You can control how long the driver will wait before the timeout occurs by specifying a value for socketTimeout.
Also, version 8.x is quite an old release there had been quite a lot of changes in the driver since then . Some of the changes that could affect timing:

default value of loginTimeout has been increased from 15 to 30seconds
Idle Connection Resiliency  feature which auto retries dropped connections. Default values are connectRetryCount=1 and connectRetryInterval=10. You can disable this feature by setting connectRetryCount=0 however unfortunately there is current an bug with this it will still attempt some retries.

You can find descriptions of all the driver connection properties in the following page:
https://learn.microsoft.com/en-us/sql/connect/jdbc/setting-the-connection-properties?view=sql-server-ver16
In addition, we also have a wiki containing links to pages that could help you to troubleshoot intermittent connection failures.

Hi @HarshaVardhan-Sai,
Without further activity, we'll move forward with closing the issue. Please let us know if you need more assistance around the above issue.

Hello @Jeffery-Wasty  and @lilgreenbird  sorry for not checking on this following the comments above and upgrading to 12.4 driver has indeed fixed the issue of slowness. So maybe something in 12.2 was corrected with 12.4 I am not sure but its good with 12.4


Add switch for OTA for all-clusters/shell

Problem
Resolves #20129
Change overview
Update applications to enable/disable OTA requestor based on args.gni
Testing
Verified OTA builds and basic commissioning via all-clusters app.

@bzbarsky-apple Is there a simple way to re-run failed workflows from the PR interface?

Fast tracking, given this has had enough time for review (> 3 days)


Saving to Quest prior to finishing experiment

Hi there,
In the wiki it is mentioned that on Standalone Quest: "When you run a UXF application, it seems currently to only save data if you do not quit mid-way through the experiment.".
Do you know of any way around this? I'm running a study which only uses 1 (long) trial. My aim is of course for all participants to reach the end of the study, but something might come up causing the program to quit prematurely. I'd like to have their data stored even if the app crashes, or they exit out early.
I've tried setting the Session.instance.EndCurrentTrial(); at OnApplicationQuit and OnDisable, but to no avail. However, if I run that same code in for instance a coroutine with a set timer, and then close the app a little while later, the data does get saved.
Best,
Maarten

I haven't done extensive testing, but I think it can be assumed that this is somewhat unavoidable. Oculus Quest does not allow Unity apps to cleanly shut down:
https://forum.unity.com/threads/onapplicationquit-and-ondestroy-is-not-executed-when-exit-app-on-oculus-quest.795942/
However I think there is very little chance of app crash, the Unity engine is pretty stable in general. You could (a) split into smaller trials (the user won't notice), or (b) have some button the user presses/holds to cleanly exit.
Some are suggesting OnApplicationPause, but this will invoke any time you press the Oculus Menu. So you could tell users not to press the Oculus Menu or the experiment will end.
https://stackoverflow.com/questions/55584865/onquit-event-in-oculus-go-app-made-in-unity

Hi Jack,
Thanks for the reply. Your suggestions are excellent, I'll look into those.
Option A I don't quite understand. The issue is that the data doesn't get saved until the full Session is completed, right? So then creating smaller Trials doesn't solve my problem, or am I missing something obvious? Can I also write the files after each Trial?
OnApplicationPause might be a solution indeed. I could theoretically start a new Session if the pause-button was hit accidentally, and have that saved under a second Session number.
Small suggestion regarding the Wiki: could you make the explanation about Quest not quitting gracefully a little more prominent? I must admit I'm a hasty reader, but I missed that comment completely, and tried for a couple of frustrating hours to get it to work.
I'll post some updates once I've tried some of your solutions.
Thanks Jack,
Best,
Maarten

Regarding option A: Data files that a per-trial (e.g. trackers) get saved at the end of each trial.


Conference website

I worked on HTML, CSS, and javascript for this project
featured speakers are dynamically reached from javascript whereby I created an array containing the data.
the page is responsive.
live version URL is: https://tonnymuchui.github.io/Conference/
Video URL: https://www.loom.com/share/81b21ce942f949178731aae7a3bbff0f

fixed navigation links click on the about page
fixed responsive of about page
fixed the Menu button on about navigation
removed !important in about CSS

I added a space between the cards and used the rest of the iconography
replaced each image with the corresponding picture of the speaker
fixed Feature Speakers section dynamic on javascript.
fixed array objects with the information of the speakers, to complete the corresponding section dynamically
added the corresponding text over the images.
I used the footer tag instead of div


Remove k8sclusterresourcefactory as its now unused

:partying_face:

Can you put a proper description please 🦄

/lgtm


Bug Report - Unable to deploy an Application gateway within a ES LZ

Our hybrid landing zone requires PaaS components to be protected by an Infrastructure perimeter,
Thus to enable the ingress for external web traffic to the workload in the LZ we are looking to deploy
FrontDoor -> Application Gateway -> AppService (protected via Private Endpoints)
Our LZ utilises the standard ES policy set in the ES github , that have a few key Policys that apply for this configuration

prevents public IP addresses from being deployed outside of the connectivity subscription
prevents PaaS components utilising public networking (requiring use of private endpoints)
prevents application gateways being deployed without a WAF.

We have been unable to deploy an application gateway with this ES policy configuration as,
a) V2 SKU Application gateways cannot be deployed without public IP addresses, and thus are blocked by the no public IP address policy.
With this issue
"type": "PolicyViolation",
"info": {
"policyDefinitionDisplayName": "Deny creation of Public IP Addresses",
"evaluationDetails": {
"evaluatedExpressions": [
{
"result": "True",
"expressionKind": "Field",
"expression": "type",
"path": "type",
"expressionValue": "Microsoft.Network/publicIPAddresses",
"targetValue": "Microsoft.Network/publicIPAddresses",
"operator": "Equals"
}
]
},
b) V1 WAF Application gateways (which can use a private Front end IP address) cannot be deployed as they are not compliant with the WAF policy
additionalInfo": [
{
"type": "PolicyViolation",
"info": {
"policyDefinitionDisplayName": "Application Gateway should be deployed with WAF enabled",
"evaluationDetails": {
"evaluatedExpressions": [
{
"result": "True",
"expressionKind": "Field",
"expression": "type",
"path": "type",
"expressionValue": "Microsoft.Network/applicationGateways",
"targetValue": "Microsoft.Network/applicationGateways",
"operator": "Equals"
},
{
"result": "True",
"expressionKind": "Field",
"expression": "Microsoft.Network/applicationGateways/sku.name",
"path": "properties.sku.name",
"expressionValue": "WAF_Medium",
"targetValue": "WAF_v2",
"operator": "NotEquals"
}
]
},
"policyDefinitionId": "/providers/Microsoft.Management/managementGroups/mg-hal/providers/Microsoft.Authorization/policyDefinitions/Deny-AppGW-Without-WAF",
"policyDefinitionName": "Deny-AppGW-Without-WAF",
"policyDefinitionEffect": "Deny",
It looks like the policy requires a V2 WAF SKU.
What is the supported configuration for protecting hybrid workloads using a Front Door and an AG?

Hi @davedraffin,
Thanks for raising this issue/query.
Are you able to share an anonymised management group hierarchy and where these policies are assigned at a high-level? Also showing where you are trying to deploy the App GW?
In the default ALZ/ESLZ architecture we would only suggest assigning the Deny-Public-IP policy to the Corp management group.
But modern web app workloads typically would be deployed beneath the Online management group which would permit the application gateway to be deployed as the public IP wouldn't be blocked by policy.

Further recommendations for app delivery in ALZ: https://docs.microsoft.com/en-gb/azure/cloud-adoption-framework/ready/azure-best-practices/plan-for-app-delivery

Hope this helps, let us know

Hi @jtracey93
Yep this is in the corp landing zone here's a copy of our MG group structure. All of our workloads are 'modern' with little or no use of IaaS in the estate. I presume the recommendation therefore to allow public IP's everywhere?

Hi @davedraffin,
Thanks for the rapid reply.
It may be the case indeed. Especially as the other policies ensure WAF is configured and used to provide the inspection/protection capabilities. Alongside other policies like:

Enable DDoS Protection Standard Plan on all VNETs (if using DDoS standard plan)
Deny IP Forwarding (prevents building your own routers etc.)
Ensure App GW use WAF
Deny or Deploy and Append TLS requirements and SSL enforcement on resources without encryption in transit
Public network access should be disabled for PaaS services
etc.

These all help "secure" the workloads in different ways whilst still allowing the agility required.
Hope that helps. Will close the issue but feel free to comment or re-open if not resolved 👍

Public network access should be disabled for PaaS services


Adding builtins

Added the following builtins: addInteger, multiplyInteer, subtractInteger, divideInteger, lessThanInteger.

The force.uplc test in tests/simple is failing because the semantics changed. This is making jenkins unhappy.


[BUG] Using --update flag not working for aarch64-linux

When trying to update feroxbuster via -U/--update flag, the update fails as you can see below:
└─# feroxbuster -U
Checking target-arch... aarch64-linux
Checking current version... v2.9.2
Checking latest released version... v2.9.3
New release found! v2.9.2 --> v2.9.3
New release is compatible

[ERROR] ReleaseError: No asset found for target: `aarch64-linux`

I used to download the zip file aarch64-feroxbuster.zip from the Releases page, and it's compatible and working...so why updating via the tool itself it's not working?
Environment:

System: Kali VM running on MacOS m1
Current version: Feroxbuster v2.9.2

thanks for posting this!
at a glance, i think it's just a naming thing. I just added a zip named aarch64-linux-feroxbuster.zip to the 2.9.3 release page. Can you try again (at your convenience) and report back with what happens?

Yes, it worked. I also thought the same. maybe you can change in the source code that everything that comes after the dash (-) will be ignored and will download aarch64-feroxbuster.zip
anyway, this is the output now :))
└─# feroxbuster -U
Checking target-arch... aarch64-linux
Checking current version... v2.9.2
Checking latest released version... v2.9.3
New release found! v2.9.2 --> v2.9.3
New release is compatible

feroxbuster release status:
  * Current exe: "/usr/bin/feroxbuster"
  * New exe release: "aarch64-linux-feroxbuster.zip"
  * New exe download url: "https://api.github.com/repos/epi052/feroxbuster/releases/assets/104362686"

The new release will be downloaded/extracted and the existing binary will be replaced.
Do you want to continue? [Y/n]
Downloading...
[00:00:00] [========================================] 3.22 MiB/3.22 MiB (0s) Done                                                                                Extracting archive... Done
Replacing binary file... Done

Feroxbuster updated to 2.9.3 version

awesome! yea, this is an easy one. thanks again!

@all-contributors add DrorDvash for bugs


Add androi modules to intellij.idea.community.main.iml (inspired by Intellij with Android run configuraton)

[!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

#69  👈
#60 : 1 other dependent PR (#61 )
#59
#58
#57
#56
#55
#54 : 1 other dependent PR (#65 )
#68
master

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

Join @ermattt and the rest of your teammates on  Graphite

[!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

#69  👈
#60 : 1 other dependent PR (#61 )
#59
#58
#57
#56
#55
#54 : 1 other dependent PR (#65 )
#68
master

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

Join @ermattt and the rest of your teammates on  Graphite


fix(requests) fix parameters changing during request calls

Hmm, what exactly is your use case?
Because normally you have a base endpoint for a model, like /people for a Person model. Then you have actions that are executed against that "base endpoint" like

Person.query()
Person.get({id: 1})
somePersonInstance.$save() which then execs a POST/PUT based on whether we have a new one or an existing model (with id > 0).
somePersonInstance.$destroy()

Beside those already baked in actions, you might add custom ones. That's where you can then customize your endpoint urls. See here for an example

ok, I see, thanks for explanations.


spotify downloading is extremely slow

sometimes it takes more than a minute to download 1 song

was fixed in this update


Display error or warning on deprecated fields inside query editor

Thankfully now we display information about deprecated fields in the docs sidebar, but most people just use autocompletion to write queries. It would be great if there were a way to see inline in the query when you are using a deprecated field so that you don't write new queries that use them.

Thanks for the suggestion @stubailo - @1aurabrown also pointed out that typeahead should also contain deprecation information. Deprecated GraphQL syntax is a special one since using it won't block the query execution - maybe a yellow squiggly line would suggest a warning for deprecation. For typeahead entries, showing (DEPRECATED) in the description box would be sufficient.

@asiandrummer thanks. the change to the ui requires a change to codemirror-graphql in order to pass those fields along with the hints in the typeahead.

@asiandrummer like a yellow squiggly underline? i'll try to do that, styling can easily be updated later.


Encoded sequences can clash with separator byte and cause assertion errors

This causes the assert to fail in TrimSuffixEncoder.java:60:
Dictionary d = Dictionary.read(Paths.get("/tmp/org/languagetool/resource/de/german_synth.dict"));
DictionaryLookup dict = new DictionaryLookup(d);
dict.lookup("anfragen|VER:1:PLU:KJ1:SFT");  // works
dict.lookup("anfragen|DOESNOTEXIST");  // works
dict.lookup("anfragen|VER:1:PLU:KJ1:SFT:NEB");  // AssertionError at TrimSuffixEncoder.java:60

To reproduce, you can get the german_synth.dict from http://search.maven.org/remotecontent?filepath=de/danielnaber/german-pos-dict/1.0/german-pos-dict-1.0.jar
Stacktrace is this:
java.lang.AssertionError
	at morfologik.stemming.TrimSuffixEncoder.decode(TrimSuffixEncoder.java:60)
	at morfologik.stemming.DictionaryLookup.lookup(DictionaryLookup.java:217)
	at org.languagetool.CrashTest.test(CrashTest.java:18)

In a less stripped down case this shows as (at least I assume this is the same issue):
Caused by: java.lang.IndexOutOfBoundsException
	at java.nio.Buffer.checkIndex(Buffer.java:540)
	at java.nio.HeapByteBuffer.get(HeapByteBuffer.java:139)
	at morfologik.stemming.TrimSuffixEncoder.decode(TrimSuffixEncoder.java:62)
	at morfologik.stemming.DictionaryLookup.lookup(DictionaryLookup.java:217)

I'll look into this, thanks Daniel.

Confirmed. The encoded length of the suffix to strip clashes with separator character. Thinking on how to fix this.

Daniel, the simplest workaround for this problem is currently to recompile the dictionary from scratch and substitute the separator character for something with a higher value. Good examples would be ',' or '\t' since these fall below 'A' in ascii range and would wrap around to much longer suffixes.
I didn't invent this encoding scheme, it's a legacy from Janek Daciuk's work. A proper fix would involve some bookkeeping on the encoded string so that we don't accidentally trip on separator character (the input must not contain it, this is verified).

Fixed in 2.1.2. Will publish asap. Thanks for a detailed repro, Daniel!

Thanks for the fast fix, I can confirm it fixes the issue - also without re-building the dictionary, or do you still recommend that?

The fix will work with your existing dictionary if you can/ are willing to upgrade. If you want to stick to 2.1.1, you'll have to rebuild the dictionary with a different separator, unfortunately.


chore(main): release 0.1.0

:robot: I have created a release beep boop
0.1.0 (2024-07-28)
Bug Fixes

add release-please (#2) (2424421)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v0.1.0
:sunflower:


fix: Allow for custom_iam_policy_arns that are unknown at apply

what
Replace the toset() in the aws_iam_role_policy_attachment resource's for_each attribute with a map of name:ARN pairs.
why
Prior to this patch, specifying custom_iam_policy_arns for IAM Policies that do not exist yet and would be created in the same Terraform run that creates the Lambda Execution Role would cause the following error:
│ Error: Invalid for_each argument
│
│   on .terraform/modules/foo.test_lambda/iam-role.tf line 81, in resource "aws_iam_role_policy_attachment" "custom":
│   81:   for_each = local.enabled && length(var.custom_iam_policy_arns) > 0 ? var.custom_iam_policy_arns : toset([])
│     ├────────────────
│     │ local.enabled is true
│     │ var.custom_iam_policy_arns is set of string with 3 elements
│
│ The "for_each" set includes values derived from resource attributes that cannot be determined until apply, and so Terraform cannot determine the full set of keys that will identify the instances of this resource.
│
│ When working with unknown values in for_each, it's better to use a map value where the keys are defined statically in your configuration and where only the values contain apply-time results.
│
│ Alternatively, you could use the -target planning option to first apply only the resources that the for_each value depends on, and then apply a second time to fully converge.

This is due to the ARN's of those policies not being known at apply time and the usage of toset() in the aws_iam_role_policy_attachment resource's for_each parameter. As the set's values are unknown at apply time, Terraform can't create a dependency graph.
references
Similar issues with similar fixes in other CloudPosse modules:

https://github.com/cloudposse/terraform-aws-s3-bucket/pull/202
https://github.com/cloudposse/terraform-aws-ecs-alb-service-task/pull/194

@natemccurdy this looks great. Suggested a simple whitespace change. I just pinged at Cloud Posse again on getting an approval on the README issues you're running into in your other PRs, so we'll get those merged first, you can rebase this PR, and then we'll get it merged. Thanks for the patience!

@natemccurdy thank you
can you please run the following commands and commit the changes

Hi, thanks for looking. I've got 3 other PR's with the exact same issue of the boilerplate and readmes being out of sync. I fixed that in one of those PR's, https://github.com/cloudposse/terraform-aws-lambda-function/pull/45 , so I was hoping that rather than do the same thing 3 times (one for each PR), I can just rebase after merging https://github.com/cloudposse/terraform-aws-lambda-function/pull/45 and only have to do it once.

Done. Thanks for your help @aknysh !

/terratest

Thanks @milldr 🍻


Tensorflow 2.0 throws error

Benepar would now install TF 2.0 by default; this package does not work with tf2.0.
Please update requirements constraint such that TF < 2.0 is required.

Thanks! : )


latestTag should be reachable tag aware

This scenario arises when there exists branches for continuing to maintain multiple version streams.  As an example:
Some breaking changes in a theoretical repo are introduced and released, causing a version bump from 1.x to 2.0.0 on the master branch (standard trunk-based development model).  Maintainers would like to continue supporting 1.x and so create a branch 1.x+ for this purpose.  A couple of bugfixes are applied to 1.x+ but when exercising the release process against that branch, latestTag will still select the v2.0.0 tag from master as 'latest', failing to consider that v2.0.0 is not 'reachable' from the HEAD of 1.x+
latestTag should be 'reachable' aware, which should be possible through using commands like git describe

@pdalpra is there any appetite/support for this change?

(or perhaps the most likely, just a lack of spare cycles? 😉 )

My bad, forgot to answer your message!
Yeah right now I lack spare time, dad of a 1 month old baby 😅😅

In that case, please do ignore this ticket and PR (for the time being 😉) and spend as many moments with your baby as possible  🙂

@pdalpra Thought I would check in on this issue.  We've been using a fork internally that addresses this issue, but have reached a point where we'd like to use this plugin as a dependency in another plugin we're intending to open source.  Would be ideal if we could get this behaviour into this public version so the new plugin could depend on this original rather than our fork.

I was going to suggest that as an option, if you were amenable to it, which it sounds like you are.  Would be happy to assume that role, please feel free to take whatever actions are necessary from your end.  Thanks for the quick response and suggestion!

I think https://github.com/sbt/sbt-autoversion/pull/154 gets us most of the way there, is all that's left to extend write privileges?

Yup, I'll ask the sbt organization maintainers to give your access to the repository, though there is something a bit more problematic: to be able to releade from just a tag release, I need to setup Github actions, which I can't do right now, I'll ask if it's possible.

FYI, just asked on Twitter.


[webview_flutter] Change import of FLTCookieManager.h to relative import

This PR changes the import of FLTCookieManager.h in FlutterWebView.h to a relative import, to hopefully fix it picking up the header across modules.
@stuartmorgan I cannot reproduce the problem in the issue below, but I'm assuming this is the correct fix. Would you please be able to verify?
Related issue:

flutter/flutter#94903

Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the relevant style guides and ran the auto-formatter. (Unlike the flutter/flutter repo, the flutter/plugins repo does use dart format.)
[x] I signed the CLA.
[x] The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy, or this PR is exempt from version changes.
[x] I updated CHANGELOG.md to add a description of the change, following repository CHANGELOG style.
[ ] I updated/added relevant documentation (doc comments with ///).

Only an import change.

[ ] I added new tests to check the change I am making, or this PR is test-exempt.

Only an import change.

[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

This is very critical for us. Please accept this merge.

hello
Why is this issue taking too long to fix
i cannot run the app on ios due to this issue,
Please merge this pr. Thanks

Why is this issue taking too long to fix

It was fixed within a day of being reported.

Please merge this pr.

It was merged over 7 months ago, as you can verify in the activity record above.


Use option to get plotly plots instead of matplotlib

This has been done and will be in the next release (within a week).


KMS permissions not included in documentation

Trying to run python stream_alert_cli.py terraform init and failing due to KMS permissions.
I followed the instructions at https://streamalert.readthedocs.io/account.html for setting up my AWS IAM user.
Initially, I received the error:
* aws_kms_key.stream_alert_secrets: AccessDeniedException: User: arn:aws:iam::CENSORED:user/streamalert is not authorized to perform: kms:CreateKey
	status code: 400, request id: CENSORED

After adding the AWSKeyManagementServicePowerUser permission to the IAM user (not listed as a requirement in the docs), and running again, I received a different KMS-related permissions error:
* aws_kms_key.stream_alert_secrets: Failed to set key rotation for "CENSORED" to true: "AccessDeniedException: User: arn:aws:iam::CENSORED:user/streamalert is not authorized to perform: kms:EnableKeyRotation on resource: arn:aws:kms:us-east-1:CENSORED:key/CENSORED\n\tstatus code: 400, request id: CENSORED"

After manually modifying the encryption key permissions in the AWS console to include the ARN of the streamalert IAM user, I was able to proceed.


compose: Clear stream id when prompting user for stream selection.

Now we clear the stream id from the compose state on opening the stream selection dropdown when no stream is specified.
This fixes the bug where the compose box placeholder text would refer to the previously selected stream, even when the open stream dropdown had no stream selected.
Fixes: CZO issue thread
Screenshots and screen captures:

Self-review checklist

[x] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[x] Explains differences from previous plans (e.g., issue description).
[x] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[x] Each commit is a coherent idea.
[x] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[x] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[x] End-to-end functionality of buttons, interactions and flows.
[x] Corner cases, error conditions, and easily imagined bugs.

Looks like a good and reasonable fix to me. Thanks, @N-Shar-ma!


wrong number of arguments (given 0, expected 1)

Hi there,
Since upgrading to xcov 1.1.1, I have started getting this error from fastlane:
wrong number of arguments (given 0, expected 1)
I am not sure what if it's something to do with how fastlane launch xcov or xcov directly.
Same issue as described here: https://github.com/fastlane/fastlane/issues/8407
Also, everything works on xcov 1.0.1

Hi @valeriomazzeo 👋 always super fast reporting issues!
Integration with Fastlane is broken until they release a new version including this change:
https://github.com/fastlane/fastlane/pull/8400
Hopefully it won't take long!

good to know, thank you very much! :)

This should be fixed now :)

Confirmed 🎉 https://github.com/nakiostudio/EasyPeasy/pull/51


Mongo fix

test!

Codecov Report

Merging #26 into master will increase coverage by 0.01%.
The diff coverage is 28.38%.

@@            Coverage Diff             @@
##           master      #26      +/-   ##
==========================================
+ Coverage   40.93%   40.94%   +0.01%
==========================================
  Files        2590     2589       -1
  Lines       78724    78674      -50
  Branches    10664    10653      -11
==========================================
- Hits        32223    32212      -11
+ Misses      43528    43486      -42
- Partials     2973     2976       +3

Impacted Files
Coverage Δ

...avercorp/pinpoint/plugin/mongo/MongoConstants.java
0% <ø> (ø)
:arrow_up:

...rofiler/context/provider/TraceContextProvider.java
100% <ø> (ø)
:arrow_up:

...pinpoint/profiler/context/DefaultTraceContext.java
56.75% <ø> (+0.91%)
:arrow_up:

...filer/context/module/ApplicationContextModule.java
100% <ø> (ø)
:arrow_up:

...avercorp/pinpoint/web/service/SpanServiceImpl.java
0% <0%> (ø)
:arrow_up:

...rcorp/pinpoint/plugin/mongo/MongoTypeProvider.java
0% <0%> (ø)
:arrow_up:

...m/navercorp/pinpoint/plugin/mongo/MongoConfig.java
0% <0%> (ø)
:arrow_up:

...p/pinpoint/test/PluginVerifierExternalAdaptor.java
0% <0%> (ø)
:arrow_up:

.../interceptor/MongoDriverConnectInterceptor3_7.java
0% <0%> (ø)
:arrow_up:

.../mongo/interceptor/MongoCUDSessionInterceptor.java
0% <0%> (ø)
:arrow_up:

... and 39 more

Continue to review full report at Codecov.

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


Fix name collision error in repeat

Details
Updates the the processing logic for calculate fields inside of repeats so that the index gets properly selected even if there are other questions in the same repeat (but not in the same sub-group) with the same name. More details about the issue and how to recreate it are documented in #815.
The change in logic comes when selecting the child nodes of the repeat entry by the dataNodeName. Previously, just the first node that was found with a matching name was used. However, this might not be the actual calculate node. So, I have updated the logic to filter all the child nodes found with the dataNodeName down to just the one that is also present in the dataNodes array (with all the instances of that calculate field for the repeat). Once the proper dataNode is resolved, the index is calculated correctly and the rest of the processing can proceed without error.
Tests
I am happy to add a new form/test that is specific to this issue if you would like. However, I was able to get test coverage of this issue from the existing tests simply by updating the name of the calculate in the calcs_in_repeats.xml form to match the question in the repeat.  When I ran the form.spec.js tests with the new calculate name, but without the implementation code changes, all of the tests that use the calcs_in_repeats.xml form failed as expected with the following error:
	Error: Uncaught FormLogicError: Could not evaluate: /model/instance[1]/calcs_in_repeats/rep1/num1  * 20, message: Failed to execute 'evaluate' on 'XPathEvaluator': parameter 2 is not of type 'Node'. (/tmp/08991e993b53562045b647f27beae811-bundle.js:37302)
	    at Object.add (/home/jlkuester7/git/enketo-core/src/js/repeat.js:326:19 <- /tmp/08991e993b53562045b647f27beae811-bundle.js:38070:15)
	    at HTMLButtonElement.<anonymous> (/home/jlkuester7/git/enketo-core/src/js/repeat.js:99:18 <- /tmp/08991e993b53562045b647f27beae811-bundle.js:37951:14)
	    at HTMLFormElement.dispatch (/home/jlkuester7/git/enketo-core/node_modules/jquery/dist/jquery.js:5430:27 <- /tmp/08991e993b53562045b647f27beae811-bundle.js:3344:105)
	    at HTMLFormElement.elemData.handle (/home/jlkuester7/git/enketo-core/node_modules/jquery/dist/jquery.js:5234:28 <- /tmp/08991e993b53562045b647f27beae811-bundle.js:3232:118)
	    at Object.trigger (/home/jlkuester7/git/enketo-core/node_modules/jquery/dist/jquery.js:8719:12 <- /tmp/08991e993b53562045b647f27beae811-bundle.js:5288:24)
	    at HTMLButtonElement.<anonymous> (/home/jlkuester7/git/enketo-core/node_modules/jquery/dist/jquery.js:8797:17 <- /tmp/08991e993b53562045b647f27beae811-bundle.js:5334:29)
	    at Function.each (/home/jlkuester7/git/enketo-core/node_modules/jquery/dist/jquery.js:385:19 <- /tmp/08991e993b53562045b647f27beae811-bundle.js:770:30)
	    at jQuery2.fn.init.each (/home/jlkuester7/git/enketo-core/node_modules/jquery/dist/jquery.js:207:17 <- /tmp/08991e993b53562045b647f27beae811-bundle.js:658:28)
	    at jQuery2.fn.init.trigger (/home/jlkuester7/git/enketo-core/node_modules/jquery/dist/jquery.js:8796:15 <- /tmp/08991e993b53562045b647f27beae811-bundle.js:5333:25)

Once the implementation code changes were applied, the test errors were resolved.
Closes #815

Thanks for submitting a PR! I'm taking a look at this now.


Remove circle sector

This PR removes the CircleSector stuff in favour of something a little simpler. It's a bit of an experiment, so I'm not sure if this will ever leave the draft phase.

[x] Relates somewhat to #122 with the overlap tolerance parameter.
[x] Adds and passes relevant tests. (some, not a lot)
[x] Has well-formatted code and documentation.
[x] Profiled.

Benchmark
On VRPTW, avg. over ten seeds with 1h runtime:

category
Main
This PR / tol 0.05
This PR / tol 0.1

C1
413653.2
413715.9
413624.8

C2
161914.0
161911.7
161904.6

R1
473236.7
472958.3
473476.1

R2
277276.7
277151.2
277180.0

RC1
442251.7
442278.5
442496.8

RC2
232344.3
232172.1
232267.2

This PR with tol 0.1 (dda1c3754553ad6d08c2f541f2734d217f9d7034; job ID 3191043; 10x seeds/1h):
 Avg. objective: 333491.7 (min: 333335, max: 333615)
Avg. iterations: 46777.7 (min: 37213, max: 54719)

This PR with tol 0.05 (9a367b12c83863c24a0e623aafe1b2bb8ec3290d; job ID 3197392; 10x seeds/1h):
 Avg. objective: 333364.7 (min: 333266, max: 333541)
Avg. iterations: 65629.2 (min: 54852, max: 73735)

Current main (44814444bdc641a6bd2b97db4f776de9ef94b934; job ID 3194371; 10x seeds/1h):
 Avg. objective: 333446.2 (min: 333378, max: 333578)
Avg. iterations: 53109.8 (min: 42391, max: 60488)

Current main:
                mean       min       max
      inst
obj   C1    413653.2  413399.5  413894.1
      C2    161914.0  161875.7  161940.3
      R1    473236.7  472823.4  473928.7
      R2    277276.7  277137.7  277423.1
      RC1   442251.7  441941.2  442696.9
      RC2   232344.3  232142.0  232515.8
iters C1     86897.7   67948.0   96072.3
      C2     89695.5   70547.7  104632.9
      R1     32816.6   24127.4   39345.9
      R2     31566.0   25629.5   37211.7
      RC1    41553.3   33352.8   49832.1
      RC2    36129.7   30638.5   40896.0

Tol 5%:
                mean       min       max
      inst
obj   C1    413715.9  413506.7  413963.9
      C2    161911.7  161881.9  161940.2
      R1    472958.3  472276.9  473682.5
      R2    277151.2  276883.0  277421.0
      RC1   442278.5  441943.8  442802.4
      RC2   232172.1  232039.6  232297.8
iters C1     68754.8   58413.7   75266.2
      C2    125908.9  104863.5  137205.7
      R1     37943.0   29827.4   46800.1
      R2     55186.0   44400.6   62332.7
      RC1    43416.2   37265.2   48655.1
      RC2    62565.9   52367.9   73215.2

Tol 10%:
                mean       min       max
      inst
obj   C1    413624.8  413419.1  413787.6
      C2    161904.6  161876.3  161952.9
      R1    473476.1  472934.1  474472.5
      R2    277180.0  276856.6  277492.0
      RC1   442496.8  442036.7  442847.5
      RC2   232267.2  232094.3  232446.5
iters C1     49744.7   38400.1   58399.0
      C2     82816.3   65034.2  101933.3
      R1     27435.0   21179.1   33515.0
      R2     40568.2   33302.2   45933.8
      RC1    32510.7   25672.3   40133.3
      RC2    47591.7   35629.1   56144.2

Profiling this doesn't look too bad. std::atan isn't fast, but it doesn't take more than 0.5% of the time, so I don't think it's worth swapping that out for something faster right now.
SWAP* is much more concerning. Something to look into in the future.

Took a little calibrating, but an overlap_tolerance of 5% seems to do the trick.

@leonlan @wouterkool could either/both of you have a look? This PR does the overlap thing for routes in a simpler way than what we currently have with the CircleSector, and that seems to be OK in terms of performance (benchmarks in first comment above).

It's been a while since I touched the CircleSector code, but IIRC, the circle sectors are "pie-slices" that cover the entire route right? And the current PR proposes to simplify this by only looking at the route centroids? Are there any cases where this may go wrong really badly?

We do need to introduce a single parameter (overlap tolerance) required to make it work. I think this new method is less robust, but I prefer the simpler implementation.

(we already have this parameter currently as well, it's not new)
I can see us remove this particular thing pretty quickly anyway, particularly if we do anything about #126. It's more of a temporary solution that at least removes some stuff that's pretty complicated and apparently not really needed.

It's been a while since I touched the CircleSector code, but IIRC, the circle sectors are "pie slices" that cover the entire route right? And the current PR proposes to simplify this by only looking at the route centroids? Are there any cases where this may go wrong really badly?

It could result in very few routes overlapping, which might be bad. But I can't think of a nontrivial example where that'd happen, and in any case, we also still have search and the granular neighbourhood that covers some of that. In other cases, ~1/10th of the circle (+5% or -5% overlap) is enough for the centroids to be "close enough". I think that works particularly well on the random instances (R1/R2) where previously the sectors would overlap almost all the time, but the centroids could be pretty far apart.

(we already have this parameter currently as well, it's not new)

That's true, but it was unused. I don't know when we added this parameter, but HGS-CVRP did not have this parameter.

I can see us remove this particular thing pretty quickly anyway, particularly if we do anything about https://github.com/PyVRP/PyVRP/issues/126. It's more of a temporary solution that at least removes some stuff that's pretty complicated and apparently not really needed.

If we follow up with #126 then I think we should definitely do this. (#126 is very low priority though because I don't have any "route neighbors" ideas right now.)

I don't know when we added this parameter, but HGS-CVRP did not have this parameter.

From what I can gather it's a leftover from the EURO/NeurIPS baseline. We removed it in our implementation because in the end we didn't do this intensification regularly, and then reintroduced it during our performance panic in February :-).


refactor(API endpoints): Use global endpoints

This pull request replaces the hardcoded API endpoints with global variables. This way we can maintain all the endpoints (in case they change) in one place.

:tada: This PR is included in version 2.6.0 :tada:
The release is available on:

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


Develop upstream sync 190520

Merge conflicts list:
both modified:   tensorflow/compiler/xla/service/gpu/BUILD
both modified:   tensorflow/compiler/xla/service/gpu/cudnn_conv_runner.cc
both modified:   tensorflow/contrib/reduce_slice_ops/kernels/reduce_slice_ops_gpu.cu.cc
both modified:   tensorflow/contrib/resampler/kernels/resampler_ops_gpu.cu.cc
both modified:   tensorflow/contrib/seq2seq/kernels/beam_search_ops_gpu.cu.cc
both modified:   tensorflow/core/kernels/BUILD
both modified:   tensorflow/core/kernels/check_numerics_op_gpu.cu.cc
both modified:   tensorflow/core/kernels/concat_lib_gpu_impl.cu.cc
both modified:   tensorflow/core/kernels/cwise_ops.h
both modified:   tensorflow/core/kernels/fused_batch_norm_op.cc
both modified:   tensorflow/core/kernels/lrn_op.cc
both modified:   tensorflow/core/kernels/reduction_gpu_kernels.cu.h
both modified:   tensorflow/core/kernels/svd_op_gpu.cu.cc
both modified:   tensorflow/core/kernels/tridiagonal_matmul_op_gpu.cu.cc
both modified:   tensorflow/core/util/gpu_device_functions.h
both modified:   tensorflow/core/util/gpu_kernel_helper.h
both modified:   tensorflow/core/util/gpu_kernel_helper_test.cu.cc
both modified:   tensorflow/python/distribute/BUILD
both modified:   tensorflow/python/keras/distribute/BUILD
both modified:   tensorflow/stream_executor/gpu/gpu_driver.h
both modified:   tensorflow/tools/ci_build/Dockerfile.gpu

Here's NV path failure info, @deven-amd could you help review it?
ERROR: /workspace/tensorflow/compiler/jit/BUILD:71:12: Traceback (most recent call last):
	File "/workspace/tensorflow/compiler/jit/BUILD", line 68
		cc_library(name = "xla_gpu_jit", visibility =..."], <2 more arguments>)
	File "/workspace/tensorflow/compiler/jit/BUILD", line 71, in cc_library
		if_cuda_is_configured(if_cuda([":jit_compilation_passe..."])) + if_rocm_is_configured(if_rocm([":jit_compilation_passe..."]))
'+' operator applied to incompatible types (select of select, list)

will look into this later tonight

this commit is what is causing us grief:
https://github.com/tensorflow/tensorflow/commit/36e4025cad1fd463e5dbc9d53daf65af8e1547ef
@whchung we need to figure out G's intent behind this change...if we need to make a similar change to the rocm equivalent, it will most likely cause some hiccups.
The quickest "fix" for us maybe to simply undo this change...I will try that locally and if that works I will push out the commit

Return select instead of a list would mean some amount of change on the bazel script. For the time being let’s revert this change in our downstream fork.

yeah...reverting that change seems to get past the initial error, but am running into other issues now...working through them...will push out commits with my progress before I sign off for the day

pushed out some commits that will make the non-xla cuda path to compile.
the XLA cuda compile still has errors

some quick observation:

https://github.com/ROCmSoftwarePlatform/tensorflow-upstream/blob/develop-upstream-sync-190520/tensorflow/core/kernels/avgpooling_op.cc is again incorrectly not carrying TENSORFLOW_USE_ROCM macro which caused quite a few pooling-related tests to fail on rocm and rocm-v2 paths.

https://github.com/ROCmSoftwarePlatform/tensorflow-upstream/blob/develop-upstream-sync-190520/tensorflow/core/kernels/cwise_ops.h#L1015 , std::atan2() is not available on ROCm on GPU path, may need to use ::atan2() or ::atan2f(). check HIP documentation.

cuda path seems to have suffer from interface change

rocm CI has three failed cases:

//tensorflow/python/keras:integration_test
this test passed in my local environment
//tensorflow/python/distribute:keras_saved_model_test
//tensorflow/python/distribute:keras_saved_model_test_gpu
those two tests are newly added, failed in eager mode.

NV path got the following build error in my local environment:
                 from external/eigen_archive/Eigen/src/Core/util/ConfigureVectorization.h:318,
                 from external/eigen_archive/Eigen/Core:22,
                 from ./third_party/eigen3/Eigen/Core:1,
                 from ./tensorflow/compiler/xla/service/cpu/runtime_single_threaded_conv2d.h:19,
                 from tensorflow/compiler/xla/service/cpu/runtime_single_threaded_conv2d.cc:16:
/usr/lib/gcc/x86_64-linux-gnu/5/include/avx512vlbwintrin.h:105:1: error: inlining failed in call to always_inline ‘__m256i _mm256_maskz_loadu_epi16(__mmask16, const void*)’: target specific option mismatch
 _mm256_maskz_loadu_epi16 (__mmask16 __U, void const *__P)_

@deven-amd  @whchung , do you have any ideas on the NV build failure?
The command failed while compiling tensorflow/compiler/xla/service/cpu/runtime_single_threaded_conv2d.cc, however, that file has not been changed for a couple of months. No moves on Eigen commit as well.

Check if Eigen pointers agree. Eigen commit was moved.
this PR: https://github.com/ROCmSoftwarePlatform/tensorflow-upstream/blob/develop-upstream-sync-190520/tensorflow/workspace.bzl#L153
upstream: https://github.com/tensorflow/tensorflow/blob/master/tensorflow/workspace.bzl#L152

was trying to reproduce this error locally (by trying to do a XLA build) and I get the following error
...
tensorflow/compiler/xla/service/gpu/nvptx_compiler.cc: In member function 'std::vector<unsigned char, std::allocator<unsigned char> > xla::gpu::NVPTXCompiler::CompilePtxOrGetCachedResult(stream_executor::StreamExecutor*, const string&, int, int, const xla::HloModuleConfig&)':
tensorflow/compiler/xla/service/gpu/nvptx_compiler.cc:683:48: error: 'PtxOptsFromConfig' was not declared in this scope
             PtxOptsFromConfig(hlo_module_config));
...

m assuming there are two issues at play here, one above and the other as reported by @sunway513 .
let me work on the one I am running into

@whchung the eigen pointer moved after I started the weekly merge process on 190520. But it seems they've revoked the eigen pointer again right after.
Let me try different eigen pointers and see if it is feasible for us to move it without rebasing against the upstream master branch.

12 rocm-xla path tests were failed with the following signature:
2019-05-23 23:01:27.190143: I tensorflow/stream_executor/stream.cc:5499] [stream=0x807bba0,impl=0x7f08cc0] Internal: stream did not block host until done; was already in an error state
2019-05-23 23:01:27.190195: W tensorflow/stream_executor/stream.cc:274] Error blocking host until done in stream destructor: Internal: stream did not block host until done; was already in an error state

@parallelo to give you an heads up. I'm working on getting this PR merged. please hold the weekly merge for this week until this PR gets merged. I'll keep you posted.

@whchung - Sounds good.  Thx for the heads-up.

@parallelo I've fixed the issue on rocm-xla path. Running tests on CI now. I believe the PR is in good shape now. Once this PR is merged you can start the process for this week.

Awesome.  I'll watch for the merge event, then will push forward with this week's iteration.


no new messages in shared inbox

Expected behavior
Retrieval of all accounts in shared inbox.
Actual behavior
No mails are coming, just the spinner is spinning endlessly. If I retrieve messages separately per account it works as expected.
Steps to reproduce

Swipe down to pull messages from different accounts in shared inbox view.
No messages appear.

Environment
K-9 Mail version: 5.715
Android version: 8.1.0
Account type (IMAP, POP3, WebDAV/Exchange): 3x IMAP

Please provide a debug log. See https://github.com/k9mail/k-9/wiki/LoggingErrors