Hydrostatic masses don't really vary with temperature

Makes me think that my mass calculation is incorrect, they're all basically consistent with each other

Tried setting the dx to 10, in the course of working on issue #426, but it changed nothing with the masses

I now hope that this will have been resolved. The mass I'm measuring for A907 is now broadly agreeing with the prediction from Arnaud et al. for instance. I need to run a sample of a few clusters, but I think my problem was incorrect definition of density profiles

Now that I have fixed how I measure density profiles things are looking much better in the land of hydrostatic masses:
This figure shows masses measured for 10 ACTDR5 clusters:

And there is good agreement with Arnaud et al 2005.
I will say that these masses aren't yet entirely trustworthy because of the known density issue due to the conversion factor, but I hope to fix that soon.
Also the model fits could be being affected by the radius=0 points which exist in the profiles.
However obviously things are starting to work properly now, and I can explore using better models to fit to the profiles for this (and other) samples.
And with that I think I can close this issue, any fixes applied to the density profiles will naturally propagate themselves into the hydrostatic masses


[BUG]'Nan%' was wrongly displayed in Stackbar

if the total value of a series is 0, 'Nan%' will be displayed
Could there be a setting option to choose whether to display it or not when the item value is 0?

@jimnxj
You can upgrade to v2.4.57 which fixes NaN% and adds config options to hide or show empty values or percentages:
config.style.chart.bars.dataLabels.hideEmptyValues: boolean; // default: false
config.style.chart.bars.dataLabels.hideEmptyPercentages: boolean; // default: false

For your use case, you can set true for both.

Seems there is

@jimnxj
Thanks, I fixed the labels. Hasty copy pasting^^


Add sample and samples endpoints

Small addition to add Threat Grid related endpoints. Planning to do a larger refactor later.

Other than the minor gramatical issue this change is good.


METRON-1801 Allow Customization of Elasticsearch Document ID

Currently, the Metron GUID is always used as the Elasticsearch document ID. As documented in METRON-1677, using a randomized UUID like Java's UUID.randomUUID() can negatively impact Elasticsearch performance.  This change allows a user to customize the identifier that is used by Elasticsearch when indexing documents.
A property es.document.id was added that sets the message field that is used to define the document ID when a message is indexed by Elasticsearch.

To allow Elasticsearch to define its own document id, this property should be set to a blank or empty string. The client will not set the document ID and Elasticsearch will define its own.

In most cases allowing Elasticsearch to define the document ID is the most performant option. This is the default behavior.

Metron versions 0.6.0 and earlier defined the document ID using the Metron GUID, which is a randomized UUID using Java's UUID.randomUUID(). Using a randomized UUID can negatively impact Elasticsearch indexing performance. To maintain backwards compatibility with legacy versions of Metron use the following setting.
es.document.id = guid

To use a custom document ID, create an enrichment that defines a new message field; for example one called my_document_id. Then use this field to set the document ID as follows. This will set the document ID to the value of the message field my_document_id.
es.document.id = my_document_id

If a message does not contain the es.document.id field, a warning is issued and no document ID is set by the client.

Changes

The ElasticsearchWriter was updated to allow the document ID to be configurable.

A 'search by GUID' in the REST layer was implicitly using the document ID, whereas it should be using the Metron GUID.

Search results should use the Metron GUID as the ID returned to the UI.  All IDs visible to the user should always be the Metron GUID, not the document ID.

The MPack was updated to allow the user to define the es.document.id on the Metron > Config > Index Settings tab.

The default behavior was changed to allow Elasticsearch to set the document ID.  This is the most performant option in most cases.  I updated the Upgrading.md doc to describe how to revert to the legacy behavior.

Testing

Spin-up a development environment.  You may need to stop the PCAP and/or Profiler topology to free-up slots to allow indexing to occur.
cd metron-deployment/development/centos6
vagrant up

Open the Alerts UI and ensure that alerts are visible.  Notice that the ID listed in the table has not changed.  This will always display the Metron GUID, no matter what ID used for the document.

Click on a GUID in the table to search for a single alert.

Create a meta-alert and ensure that alerts tied to the meta-alert are still discoverable by GUID.

Open Ambari and go to Metron > Configs > Index Settings.  Notice that the default setting of es.document.id is blank, thus allowing Elasticsearch to define its own document ID.

Open Kibana and verify that indeed Elasticsearch is generated its own document IDs.  You will notice an _id field which has been generated by Elasticsearch.  This will be different than the UUID generated by Metron and stored as part of the document as guid.

Stop the indexing topologies using Ambari.

Login to the VM.
vagrant ssh
sudo su -

Delete the existing indices in Elasticsearch.
curl -XDELETE http://node1:9200/bro*
curl -XDELETE http://node1:9200/snort*

Open Ambari, and go to Metron > Configs > Index Settings.  Edit the "Elasticsearch Document ID Source Field" and set it to 'guid'.  This will restore the legacy behavior where the document ID is to the Metron GUID.

Restart the Indexing Topology in Ambari.

Open the Alerts UI and ensure that alerts are visible.  Notice that the ID listed in the table has not changed.  This will always display the Metron GUID, no matter what ID used for the document.

Click on a GUID in the table to search for a single alert.

Create a meta-alert and ensure that alerts tied to the meta-alert are still discoverable by GUID.

Open Kibana and verify that the document ID matches the Metron GUID.

I would also advise running the UI e2e test suite with this change.

Pull Request Checklist

[x] Is there a JIRA ticket associated with this PR? If not one needs to be created at Metron Jira.
[x] Does your PR title start with METRON-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
[x] Has your PR been rebased against the latest commit within the target branch (typically master)?
[x] Have you included steps to reproduce the behavior or problem that is being changed or addressed?
[x] Have you included steps or a guide to how the change may be verified and tested manually?
[x] Have you ensured that the full suite of tests and checks have been executed in the root metron folder via:
[x] Have you written or updated unit tests and or integration tests to verify your changes?
[x] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[x] Have you verified the basic functionality of the build by building and running locally with Vagrant full-dev environment or the equivalent?

Thanks, Nick. So if es.document.id is not provided, as the default, doc id won't be send to ES indexing, right? I guess it would be also nice to provide some guidance on how document ID should be defined (in the case of custom ID). Otherwise, users may create some serious issues with the indexing and search throughput.

@mraliagha I updated the README to (hopefully) better explain your options in using es.document.id.  I sensed by your question that what I had originally was not very clear.

@nickwallen in the case of event logs and the fact that retrieval segmentation would be mostly based on timestamp, it is recommended to use timestamp as a prefix of the id. For example, something like timestamp+hash(original_string).

@mraliagha, that's a good suggestion.  I believe we can functionally achieve that be creating a custom id field in the format you suggest (with a Stellar field transform) and set that field to be the ES id with the Ambari property exposed in this PR.  Do you feel it's worth documenting as an optimization?
I spun this up in full dev and ran through all the testing instructions.  Everything worked as advertised.  I think there are just a couple open questions but this is pretty close in my opinion.

Looks good to me.  +1

@mraliagha, that's a good suggestion. I believe we can functionally achieve that be creating a custom id field in the format you suggest (with a Stellar field transform) and set that field to be the ES id with the Ambari property exposed in this PR. Do you feel it's worth documenting as an optimization?

Yes, I think it is worth documenting as people can easily create serious issues with Lucene based indexers by messing with ID. It can give users an understanding of where it is safe to play with the ID and what the recommendations are. I see if I can find any articles to share it as a part of the manual.

This change was reverted here.  A new pull request will be opened with the functionality. See also this mailing list thread.


fix(votes, committee_meetings):  upgrade [senate.gov, clerk.house.gov] protocol to https

Summary
This PR…

Upgrades the protocol of the URLs used to download from senate.gov and clerk.house.gov to use https.
Enables redirects on the request library (scraperlib)

scraperlib's allow_redirect docs
Fixes: https://github.com/unitedstates/congress/issues/286

No problem! Thanks for open sourcing this. I'm using it for https://Congress.wiki 😄


fix: values changes

This PR contains all the value changes required for previous PRs and:

Rename of obj.buckets prop
Removal of apiName legacy
Set versions

@srodenhuis Please take a look at https://github.com/linode/apl-core/commit/79c354abef77532a38d8d409f3d550e3bfe49b5b, which I have done so I get a functional APL again. I can push the commit on top of this branch if you agree.


check spelling in samples

I've spotted a few areas where spelling errors are present, given the churn of the source; I'm raising a issue as opposed to a pull request;
DefaultPresenceHublifetimeMenager
RedisPresenceHublifetimeMenager

1ae4d3e042381361a4f2c35740f53df175a65f54


Support forcing values to uInt64 and Int64

I'm working with a device which sends and receives data using msgPack. However, for certain commands it expects the data to be encoded using uInt64 or a Int64 value regardless of whether a smaller type can be used.

Gonna merge this but going to move the forcedOutput type parameter to the MoshiPack constructor somehow

I hadn't thought of doing it that way. I don't mind refactoring my PR.

Sure see what you come up with. Can you update MoshiPack class constructor so it accepts some sort of builder options for itself.
I was thinking the options to add would be:
MessageWriter.WriteAllIntsAsType
MessageWriter.WriteAllFloatingPointAsType
These options would be passed off to the writer that it uses
Where each could be a designated value that forces what ints and floats will be written as
There is code in there that forces a float/double into an int if it has nothing after a decimal place, so this could be useful

Got an update coming for this I've been working on


Generate User Rating Report

Description

There should be a general report that can be generated by site super admins that compiles a list of all players / DMs that have played at DnD MTL events over a given date interval. The report should include a users overall rating / a breakdown of their strengths and weaknesses.
Possible Implementation

Laravel Backpack does seem to support table level operations, this might be a good way to achieve this. Otherwise a single action controller might also be a viable solution for this.
Out of scope

Requirements / Restrictions

There must be the ability to filter out non-event ratings from the result set, seeing as home games are mostly irrelevant for the purpose of statistics tracking withing DnD MTL.

Hey team! Please add your planning poker estimate with ZenHub @bcobo341 @IanjhPhillips @JasonGadoury @RobertoNittolo


Bump version + temporarily disable windows.

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

It appears that the website previously used for Windows builds has been shutdown. I think the longer term solution would be to build FFmpeg from source; however, that will require some effort. I propose that we temporarily disable Windows builds for the sake of continuing feature development / version bumping of the macOS and linux builds.
TL;DR -- This PR does the following:

Bumps version.
Disables Windows builds temporarily (not technically "builds" since we were just copying a build into expected locations.)

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@conda-forge-admin, rerender

Issue with 4.4 on macOS: http://fftrac-bg.ffmpeg.org/ticket/9242

Hi! This is the friendly automated conda-forge-linting service.
I wanted to let you know that I linted all conda-recipes in your PR (recipe) and found some lint.
Here's what I've got...
For recipe:

There are too few lines.  There should be one empty line at the end of the file.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@sdvillal, @ocefpaf, would you mind taking a look at this? To summarize, the main changes are:

Bump version.
Grab source from https://github.com/FFmpeg/FFmpeg/releases to unify downloads for multiple operating systems.
Disabling Windows builds temporarily following the closing of https://ffmpeg.zeranoe.com to unblock development on MacOS + Linux. I think the long term solution would be building FFmpeg from source on Windows, but that will of course take some work.


Faster webpack compile time

Hi there,
when adding custom CSS into a separate file, webpack should not have to compile the whole tailwindcss again, but only the changes in application.scss.
Moreover, I personally like it to have the custom CSS in a separate file and not in between the tailwind includes.
See: https://github.com/tailwindlabs/tailwindcss/issues/443#issuecomment-735583969
Before

After

I hope this will help others too. 😄

This is awesome @codingluke! Indeed on our app this speeds up compilation time ~3x.
Maybe we could organize the files a bit differently such as:
stylesheets/
  components/
  base.scss
  components.scss
  tailwind.config.js
  utilities.css

// base.scss

// This injects Tailwind's base styles, which is a combination of Normalize.css and additional base styles.
@import 'tailwindcss/base';

// Add custom base styles, applied after the tailwind-base classes

// components.scss
`@import 'tailwindcss/components';`

 // Custom components....

// utilities.scss

// This injects all of Tailwind's utility classes, generated based on your config file.
@import 'tailwindcss/utilities';

// Include vendor css.

// application.js

// These are imported separately for faster Webpack recompilation
import "stylesheets/base.scss"
import "stylesheets/components.scss"
import "stylesheets/utilities.scss"

Hi @dixpac, Thanks for your input :)
I see your the point! However, isn't application.scss kind of a convention name in Rails? Also I am not sure if the custom CSS can go directly after the `@import "tailwindcss/base". I have to check the benchmarks first.
Anyways, before I spend too much time, I would like to have @dhh feedback for the naming as naming is hard ;)

@dixpac, I just checked the benchmarks, it is totally fine with your structure too 👍  So when everybody can confirm on this I will adapt it.


SSR Collection Page

Context:
SSR DP Collection page currently takes 3 seconds to render:
https://search.google.com/search-console/core-web-vitals/drilldown?resource_id=sc-domain%3Acellxgene.cziscience.com&item_key=CAMQARgC&hl=en
SSR: https://tanstack.com/query/v4/docs/guides/ssr

Hi Timmy, should this issue be closed? Noticed that its parent epic and blocked by issue have both been closed.

Thanks Kuni! Since it doesn't seem like SEO team has issues with page loading performance so far, I'll close it and reopen it if needed in the future 😄🤘


Add Music Plus

Platform: iOS
Link: https://testflight.apple.com/join/w9ULfWqR
Official Site: https://musicplus.pro

Added.


create json legend for multiple layers

Thanks @stijn-at-work
just for reference, review and discussion can be found here: https://github.com/mapproxy/mapproxy/pull/614


Any pretrained TTS models available ?

I would like to test some TTS model which is already available, especially this one (https://arxiv.org/abs/2106.06103)

Hi,
thank you for your interest!
You can find the multi speaker TTS model we pretrained using icefall on
VCTK here
https://huggingface.co/zrjin/icefall-tts-vctk-vits-2023-12-05
Best Regards
Jin
On Fri, 2 Feb 2024 at 18:03 uni-saurabh-vyas @.***>
wrote:

I would like to test some TTS model which is already available, especially
this one (https://arxiv.org/abs/2106.06103)
—
Reply to this email directly, view it on GitHub
https://github.com/k2-fsa/icefall/issues/1486, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOON42B72YAR4IKT6WKMXETYRS2YFAVCNFSM6AAAAABCWM2W6CVHI2DSMVQWIX3LMV43ASLTON2WKOZSGEYTINJVGE4DANQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Thanks!

https://arxiv.org/abs/2106.06103

There are a lot of pre-trained VITS models, though they are in ONNX format.
Please see
https://github.com/k2-fsa/sherpa-onnx/releases/tag/tts-models
You can find the corresponding checkpoints from piper
https://huggingface.co/spaces/k2-fsa/text-to-speech
We have a huggingface space that you can test all of the pre-trained models.


Implement is (not) defined feature

Fixes https://github.com/rinja-rs/rinja/issues/62.
I'm not super happy about how I implemented the parser part (the little "cheat") but found it easier to be done this way to keep the same logic as the other operators. But it forced to have some more error checking.
The other downside is that it makes the code to generate the if/else branches a bit messy. If you have ideas on how to make it look better by any chance?

Sorry, but I won't find the time to review before Friday/Saturday.

Sorry, but I won't find the time to review before Friday/Saturday.

You say that and then provide suggestion right away. 😆
But in any case, it's not in a hurry. So please review when you have time and motivation to keep this project fun for you. :)

Finally applied your suggestion for the parser. Looks much better like this, thanks!

The other downside is that it makes the code to generate the if/else branches a bit messy. If you have ideas on how to make it look better by any chance?

Thinking some more about this, I think we can simply create a new very small AST for conditions which would simply remove the conditions (and their associated block) that won't be rendered and then the function can simply loop through them instead of the whole state machine. Gonna do that.

Moved the logic out of the write_if method. Much closer to what it originally was.

Moved the logic out of the write_if method. Much closer to what it originally was.

Thank you, much easier to read! I give you a proper review soon-ish.

Sorry for the iterative reviews! It's a bit hard for me to wrap my head around this feature.

Sorry for the iterative reviews! It's a bit hard for me to wrap my head around this feature.

It's fine. Don't hesitate if you need some clarifications or any help to understand the code (which, if not easy to understand, should be more documented! So don't hesitate to tell me what's unclear so I can add code comments :smiley:)

I pushed a commit to remove the line of unsafe code. I actually wanted to look if it was easily possible to remove it, and the best test was implementing it. :D
The code looks good, and after reading your comments properly, I understand it perfectly (I think). Great work!

Fixed the merge conflict and applied your suggestion. :)

I pushed a commit to remove the line of unsafe code. I actually wanted to look if it was easily possible to remove it, and the best test was implementing it. :D

That's my first implementation. I removed it to reduce the number of lifetimes. If you prefer with references, then I'm fine with it. :)

The code looks good, and after reading your comments properly, I understand it perfectly (I think). Great work!

Awesome! \o/

Reverted wrong nested ui tests changes.


feat(router): enable ssl caching and expose ssl_protocols for configuration

This pull will enable ssl session caching by default and reduce the ssl_buffer size to 4k to slightly increase the time-to-first-byte. Additionally it makes ssl_protocols configurable.
I split out the SSL configuration to a separate config file. As a side effect, the ssl_dhparam option is now affecting domain certificates, as it was likely intended to.
With the current SSL settings and these, it's now possible to score an A+ on https://www.ssllabs.com/ssltest.

I love the splitting out of the SSL config to its own file. Code LGTM!

This seems to have passed Jenkins, and is good to merge pending another review.

@bacongobbler You're correct. However, many load balancers have sticky sessions which will always direct a user's requests to the same router.

We might want to hide that under a feature flag if that's the case. many != all. I agree that this would be handy but some users may be confused when they upgrade and suddenly have their apps change because the routers enabled session caching. :)

@bacongobbler I can certainly do that, however having it on by default shouldn't cause any change in functionality since session ids were already being assigned by Nginx. It would be a strong preference of mine to turn caching on by default and instruct users to enable sticky session in their load balancers, but it's your call.
As an aside, I've always found the default of 'none' to be slightly odd. It causes Nginx to assign an id that client are supposed to send back. However, when the value of 'none' is used the server completely ignores the id from the client resulting in, though small, unnecessary overhead. A better default would be 'off' in which the server doesn't even assign the ids.

I think we'd like a feature flag on it, at least while we get some evidence about what its impact will be. Sound reasonable, @croemmich

@technosophos Sounds good, I'll push an update soon!

The feature flag is in place, thanks!

Code LGTM.
We should manually verify.

Code LGTM, but this still needs some manual testing, and it would be great if @aledbf also signed off on it.

@wenzowski also typically likes to see these sorts of changes

@croemmich is it reasonable to have the default be ssl_session_tickets on; instead? I'm not that knowledgeable in this area, but TLS session resumption seems like a win, and I trust @aledbf's experience with this.

@mboersma Yes, but probably only if we make sure all of the nodes have the same ssl_session_ticket_key. I'll include that as well as frequent rotation of the keys.

I'll include that as well as frequent rotation of the keys.

How are you thinking of implementing the key rotation?

@carmstrong: Here's my plan, let me know if you can think of a better way to do it.
The router will have an additional cron job to generate and rotate the keys. The router will have 2 keys configured at any time; the current key and the previous key, which will ensure old tickets aren't dropped when the keys are rotated. I'll probably set the rotation period to 12 hours. I'm not sure how easy it will be to make configurable. I'll use an etcd key with a ttl slightly longer than the rotation period to ensure only one router is rotating keys.

@croemmich Would key rotation need to be on by default? That sounds like some additional complexity, but given the security-sensitive nature of the feature, I think it makes sense. I'm just thinking about all the ways it could break. The routers have to be the most stable part of the cluster so that apps don't go down.
/cc @wenzowski @technosophos

@croemmich A two-key rotation like that is pretty standard, so I am good with that. So the way you rotate the keys is by doing something like this?
ssl_session_ticket_file b.crt   # <-- current
ssl_session_ticket_file c.crt  # <-- old

Then the key rotation hits, and then then you rewrite the file as:
ssl_session_ticket_file a.crt   # <-- brand new
ssl_session_ticket_file b.crt  # <-- not current anymore
# And c is now rotated out.

Is that right?
Then it sounds like the session timeout is directly correlated with the key rotation schedule, right? So we'd need to confd the rotation script as well, and use the same time?

@technosophos That's correct. I believe session timeouts can be shorter than the ticket expiry, but not longer.

@carmstrong The feature should likely be enabled by default.

I'm going to roll the key rotation in to #4182 so we can hopefully get this in to 1.9. Please review. Thanks!
/cc @mboersma @technosophos


UCP: support assign issue

Description
Support assign issue to contributor.
When a contributor comment with /assign, bot should assign this issue to the contributor.
Score

100

Mentor
@you06
Recommended Skills

Go

/pick-up-challenge

/pick-up-challenge

/pick-up-challenge

Oh,No! Why closed my PR automatically? Not every warehouse can get 200 points? @you06 @sre-bot

/assign

/assign

/assign cancel


oracle==demo

Why you need it?
Is your feature request related to a problem? Please describe in details
I hope to get a demo of Seata + Oracle + spring cloud
How it could be?
A clear and concise description of what you want to happen. You can explain more about input of the feature, and output of it.
Other related information
Add any other context or screenshots about the feature request here.

@15656873095 Just replace the JDBC URL in the sample.


Option to retain magic commands in docs

This depends on https://github.com/fastai/fastcore/pull/622

😢


Change endpoints to platform proxy

COM-470

Codecov Report

Merging #203 into master will increase coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #203      +/-   ##
==========================================
+ Coverage   88.85%   88.87%   +0.01%
==========================================
  Files          22       22
  Lines         700      701       +1
  Branches       98       99       +1
==========================================
+ Hits          622      623       +1
  Misses         48       48
  Partials       30       30

Impacted Files
Coverage Δ

src/client/analytics.ts
89.65% <100.00%> (+0.07%)
:arrow_up:

Continue to review full report at Codecov.

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

Take 3, now it will simply not append /rest if the path contains .cloud.coveo.com


Set AQA_TEST_PIPELINE Jenkins displayName if set

Add optional PIPELINE_DISPLAY_NAME to aqaTestPipeline to allow callers to optionally set the Jenkins displayName of the top level job to distinguish it.
Fixes #4181
Signed-off-by: Andrew Leonard<EMAIL_ADDRESS>

Example passing: PIPELINE_DISPLAY_NAME = jdk-20+26_adopt:x64_linux

@sophia-guo @llxia for review please

@llxia i've added your suggestion, ready for review please, thanks


Added flite tts engine

I've added the Flite TTS engine, which should be better suited for embedded systems like the Raspberry Pi:

Flite (festival-lite) is a small, fast run-time synthesis engine developed at CMU and primarily designed for small embedded machines and/or large servers. Flite is designed as an alternative synthesis engine to Festival for voices built using the FestVox suite of voice building tools.

Configuration example:
tts_engine: flite-tts
flite-tts:
  voice: 'slt'

Coverage decreased (-0.61%) when pulling e3edf52c7d4b8973c67e8a7af74f5c376ad2c49d on Holzhaus:flite-tts-engine into dd418d67d9d51da20c2f938a5fce82cd207c09e7 on jasperproject:master.

Neat! Will test this weekend

I'm a total newb, but I followed the directions and the flite TTS engine worked fine for me with the proposed changes.  Thanks!

Works well on the Pi! Good to merge in. Thanks for integrating.


reorder members in Scrollable

Scrollable has grown a bit messy. We should reorder it so that build() is penultimate, buildContent() is last, and event handling methods are all together just before build, grouped by event type and in the order of execution, and that all the other methods are in some sane order (probably typical execution order).

done


Tests Enhancements

Cause of the growing number of tests. Tests become very huge and heavy to run on browsers due to the number of WebRTC connections on the same page.
Karma is working on a parallel solution to run parallel tests but meanwhile we reach test problems with the growing number of webRTC connections.
My idea to minimize the number of foglets loaded during tests and minimize the number of webrtc connection is to load a fixed number of foglets before tests and ONLY use them for testing purposes.
Think this would be a good idea to work like this.
Another solution is to split tests and apply each karma-test on each file in order to have a single page by test file and minimize the number of webrtc connection by pages.
This leads to problems:

global coverage become unavailable.
tests duration is longer than the previous solution

Need to quickly find a solution.
If someone has a better idea, comment here.

Found this: https://github.com/rschuft/karma-sharding
Testing by implementing this into foglet-scripts.
For the moment this is working as expected.

One of the enhancements I'm intending to make to karma-sharding is scaling the browsers array automatically based on either a number (capped at the number of specs) or the string 'auto' to just match the spec count.  I had thought about using the following config for example:
{
  sharding: {
    // defaults to false which will not touch the browsers array unless it exceeds the spec count
    scaleBrowsers: 'auto' // 'auto' matches the count of specs, a # will be that number of sets
  }
}

To comment on "Always close each foglet before done() is called in each test":
I think this is not relevant at all: you simply assign undefined to each foglet, but this is not ensure you that WebRTC connections are garbaged too. Additionally, this is a very unnecessary operation, as it would happens naturally after done is called, as each foglet variable only exist within a specific it callback.
We always knew that running each test suite in a separate browser window is a good suitable solution.
So deleting foglets or limiting the number of foglets per test is, in my opinion, are tiresome optimizations with low benefits.
Next, I am note convinced about using karma-sharding. It is handy for sure, but how exactly are we suppose to handle the case where a user want to execute each test against various type of browsers (Firefox, Chrome, etc) ? The PR proposed in foglet-scripts https://github.com/RAN3D/foglet-scripts/pull/4 make impossible such use case. Even if we address this, running each test suite against each type of browser in distinct browser instances will be very costly.

@rschuft Thank you, this is exactly what i intended to do with my PR.
@Callidon About closing foglets, i thought that engaging the garbage processing before calling done() was a good idea to help to close WebRTC connection. I agree it is completely redundant. But for the moment I did not find another solution to clearly close connections. This is just the beginning of a solution.
Cause of https://github.com/ran3d/neighborhood-wrtc behavior we do not have the right way to clearly close a bucket of connections. An "arc" is place to the dying set and is destroyed when the timeout reached its term. We also have a disconnect method that will call destroy method of simple-peer package. But the disconnect behavior is not clearly proofed. For the moment the best way is to close the page to definitively close all webrtc connections.
I will search in this direction to see if calling the "disconnect" method will solve our problems.
Meanwhile I propose karma-sharding to solve our problems. If you want to execute each test against a various type of browsers just put { "sharding": false }. It will just use the normal behavior or Karma. But i agree, currently with this PR this is impossible to use both sharding option and different kind of browsers.

@Callidon
https://github.com/RAN3D/foglet-core/tree/firefox-latest

A lot of problems solved
Packages updated to their last version
remove example
Tests are running perfectly. I tested by doing 10 times the same npm test command and no error found.
The problem is now on TravisCI. As it can be very long to build or tests (cause of the number of simultaneous tests on the platform) this leads to sometimes crash firefox.

Other enhancement ideas ?

Considering that all tests now run on Node.js (using @folkvir mock) and that foglet-scripts is pending deprecation, maybe we can close this now?

Yes, tests have to be run without the WebRTC communication layer to avoid network error. We can close this.


Improve pointlist output for isochrone

The pointlist option was not really useful as it came with just the coordinates. Have now created a compact but extendable JSON format.
Thx @crazycapivara for the valuable discussion!

Here is an example on how to visualize data with deckgl and R
library(magrittr)
library(jsonlite)
library(deckgl)

lat <- 51.33399
lng <- 9.438801

# Get data
apiCall <- paste0(
  "http://localhost:8989/isochrone?point=", lat, ",", lng,
  "&time_limit=600&result=pointlist&pointlist_ext_header=prev_longitude,prev_latitude"
)

resp <- httr::GET(apiCall) %>%
  httr::content("text") %>%
  fromJSON(flatten = TRUE)

# Prepare data
tbl <- resp$items %>%
  set_colnames(resp$header) %>%
  tibble::as_tibble() %>%
  subset(time != 0)

# Plot data
properties <- list(
  getStrokeWidth = 3,
  getSourcePosition = get_position("prev_latitude", "prev_longitude"),
  getTargetPosition = get_position("latitude", "longitude"),
  getTooltip = get_property("distance")
)

# Create deckgl widget
deck <- deckgl(latitude = lat, longitude = lng, pickingRadius = 2)

deck_black <- deckgl(
  latitude = lat,
  longitude = lng,
  pickingRadius = 2,
  style = list(background = "black")
)

# Arc layer
deck %>%
  add_arc_layer(data = tbl, properties = properties)

# Create colors for line layer
pal <- leaflet::colorBin(tbl$distance)
tbl$color <- pal(tbl$distance)

# Line layer
deck_black %>%
  add_line_layer(
    data = tbl, properties = properties,
    getColor = get_color_to_rgb_array("color")
  )

Thanks a lot!

subset(time != 0)

Here it says something about the type:

Fehler in time != 0 :   Vergleich (2) ist nur für atomare und Listentypen möglich

Ups, using a different starting point fixed this for me. E.g. for Berlin:
lat <- 52.509535
lng <- 13.40332

Nice, got some streetnetwork as output -> looks funny those curved streets. Thanks @crazycapivara!
For the leaflet part I had to do:
install.packages("leaflet")
library(leaflet)

But then I get:

Fehler in leaflet::colorBin(tbl$distance) :
Argument "domain" fehlt (ohne Standardwert)

Sorry, I posted an old version of the script, will send an working update.

Start a container with Berlin data set:
docker run -p 8989:8989 -d --name gh-berlin crazycapivara/graphhopper:ext_pointlist

Run some visualizations wit R and deckgl:
library(magrittr)
library(jsonlite)
library(deckgl)

lat <- 52.517057
lng <- 13.3992

# Get data
apiCall <- paste0(
  "http://localhost:8989/isochrone?point=", lat, ",", lng,
  "&time_limit=600&result=pointlist&pointlist_ext_header=prev_longitude,prev_latitude"
)

resp <- httr::GET(apiCall) %>%
  httr::content("text") %>%
  fromJSON(flatten = TRUE)

# Prepare data
tbl <- resp$items %>%
  set_colnames(resp$header) %>%
  tibble::as_tibble() %>%
  subset(time != 0)

# Plot data
properties <- list(
  getStrokeWidth = 3,
  getSourcePosition = get_position("prev_latitude", "prev_longitude"),
  getTargetPosition = get_position("latitude", "longitude"),
  getTooltip = get_property("distance")
)

# Create deckgl widget
deck <- deckgl(latitude = lat, longitude = lng, pickingRadius = 2)

# Arc layer
deck %>%
  add_arc_layer(data = tbl, properties = properties)

# Create colors for line layer
pal <- leaflet::colorBin("RdYlBu", tbl$distance)
tbl$color <- pal(tbl$distance)

# Create a deckgl widget with black background
deck_black <- deckgl(
  latitude = lat,
  longitude = lng,
  pickingRadius = 2,
  style = list(background = "black")
)

# Line layer
deck_black %>%
  add_line_layer(
    data = tbl, properties = properties,
    getColor = get_color_to_rgb_array("color")
  )

# Arc and line layer
deck %>%
  add_data(tbl) %>%
  add_arc_layer(data = get_data(), properties = properties) %>%
  add_line_layer(
    data = get_data(), properties = properties,
    getColor = get_color_to_rgb_array("color")
  )

If you have valid mapbox api key you can add a basemap as well:
deck %>%
   ... %>%
  add_mapbox_basemap(api_key)

Maybe we could add an offset parameter to the query to avoid too large data sets to be transferred at once, e. g.:
...?time_limit=3600&offset=3000

would return points where time_limit is between 3000 and 3600.
Furthermore, at the moment, the request returns a lot of points above the given time_limit.

would return points where time_limit is between 3000 and 3600

Why would this help? To print parts of the result before everything arrived? The problem is that we would then have to remember the state somehow (cache) which I would like to avoid if possible.

Furthermore, at the moment, the request returns a lot of points above the given time_limit.

Ah, yes. This is ugly and I can fix it here: https://github.com/graphhopper/graphhopper/blob/master/isochrone/src/main/java/com/graphhopper/isochrone/algorithm/Isochrone.java#L94

Why would this help? To print parts of the result before everything arrived? The problem is that we would then have to remember the state somehow (cache) which I would like to avoid if possible.

Yes, this was one idea and to maybe allow larger time_limits  but I can unsterstand that you want to avoid caching.

Hmmh ... if we allow caching then we could return the isochrone-shortest-path-tree via the MVT endpoint (#1572), which would save us from a non-standard format.

Ups, Nope, I would like to keep the format. It is perfect for a lot of use cases. I just connected the API to a postgis container, so that you can query the roads with SELECT way, time, distance FROM graphhopper.way(lat, lng, time_limit). Furthermore, deck.gl supports the format as well.

see docker-postgis-graphhopper

Ah, ok. Thanks for the feedback!

It is perfect for a lot of use cases. I just connected the API to a postgis container, so that you can query the roads with

This sounds great!

The pointlist option was not really useful as it came with just the coordinates. Have now created a compact but extendable JSON format:

@karussell Did you just invent CSV-over-JSON? ,-)

Lol. I'm pretty sure this is already existent :D ... how do you like it ;) ?

I like it! But maybe consider using CSV right away for this endpoint?

It's exactly CSV. Variable number of columns, string-indexed.
CSV is inherently streamable. You can parse JSON as a stream, but a JSON output still has this "I am a document, not a stream of lines. Wait for the closing bracket before you start interpreting me" feeling to it.
People are doing the opposite, JSON-over-CSV, for when you have structured data, so CSV seems to have some merit..  http://csvjson.org

@crazycapivara Any thoughts?

For now I would like to add it as a second mediatype and compare both endpoints for my use cases.

A related info: I just stumbled over https://www.interline.io/blog/geojsonl-extracts/ that mentions GeoJSON Line and also the following streamable JSON stuff:

http://jsonlines.org/
http://ndjson.org/
https://tools.ietf.org/html/rfc8142 (from mapbox)
https://macwright.org/2015/03/23/geojson-second-bite.html#streaming

This thing is useful for us. Format is fine, the only thing is - can we have travel times and distances in both ends of a segment, and export as such? Snippet attached.

Have added it. Please note that I have changed the time to seconds to reduce bandwidth a bit and ms does not make much sense - or is there a good reason to keep milliseconds?

for this ~endpoint~ variant of the endpoint?

Moved this now in a separate endpoint

Have it now further refactored and I'm fine with merging this, especially since the format is simple and the endpoint is separate from /isochrone.
@crazycapivara @Komzpa can you try once again if this is still working for you? Please note the different endpoint and different unit like mentioned in a previous comment.
@michaz let me know if you see something ugly. (the different format flavoures could be indeed implemented via different mediatypes or should we already use something != application/json)

let me know if you see something ugly

Nothing ugly seen. :-) Would only suggest removing the result=pointlist from the test query (this isn't a parameter on this endpoint anymore).
I'm not really in favor of supporting multiple formats here. I have a slight preference for using CSV instead of JSON, because it seems just like what CSV is often used for, but CSV-like JSON is fine with me, since "all the rest of the API is JSON" may be an argument in favor.

Oh, and could we try and find a more descriptive name for the pointlist_ext_header parameter? pointlist is redundant, ext doesn't mean a lot, and it's not really about the header either. Maybe....

How about columns? And then, I'd suggest to use it in a different way: The user specifies all the columns they want, not only those in addition to "longitude", "latitude", "time", "distance". But let "longitude", "latitude", "time", "distance" be the default.
Thus, all columns are treated equal. If I want "latitude", "longitude", "distance", I say columns=latitude,longitude,distance.

or is there a good reason to keep milliseconds?

Consistency. Milliseconds are used in the other API responses, and in the Java API. It has some value being able to know things like "GraphHopper travel times are in milliseconds".

Thanks - good questions and suggestions! Will work on them :)

Before I merge I'll wait for feedback on the current status and regarding CSV vs. JSON from @crazycapivara and @Komzpa. This issue is really about making the graph from GraphHopper better accessible from "outside" and so a simpler CSV format that is also streamable would be preferred from our side. But if this is more complicated, then I would propose using the current JSON response and add CSV later if required at all.

Hi, we're using it with other server app on local loopback, so any readable format will do. CSV will come with a benefit of nobrainer shell import to postgres tables for adhoc queries.

(think about a real time SPT traversal in the browser)

@karussell
Did that once for debugging transit routing. Works and looks cute.

@karussell CSV is fine for me as well.

Great - thanks for the feedback! Will then move this endpoint to CSV-only (which would have the advantage of streeming in later implementations)

Ok, have now converted this endpoint into returning CSV. Additionally as dropwizard makes this very easy, the CSV is already streamed, i.e. even for large shortest path trees the rendering engine gets something to do right after the request :)

Oh, this means we can fetch country-sized (or even continental-sized) shortest path trees without any memory problems. The client just waits a bit for the data transmission and sees the exploration in (near) real time.

Country-sized SPTs are definitely doable with this endpoint:

The code snippet is here.
The data is not small (gzipped size=70MB) but the response time is ok (< 10sec) and there is a good solution for streamed CSV parsing for the browser.
But with leaflet (renderer:canvas) I was not able to get updates while downloading and also everything was very slow (updates takes ages for loading and zooming).
Would be curious if the deck.gl for R work from @crazycapivara is able to handle that somehow :)

Nice!

lat <- 52.321911
lng <- 10.393066
time_limit <- 7200

api_call <- paste0(
  "http://localhost:8989/spt?point=",
  lat, ",", lng,
  "&time_limit=", time_limit,
  "&columns=prev_longitude,prev_latitude,longitude,latitude,time"
)

dt <- data.table::fread(api_call, na.strings = "null") %>%
  na.omit()

pal <- leaflet::colorBin("RdYlBu", dt$time)
dt$color <- pal(dt$time)

library(deckgl)

deckgl(
  latitude = lat,
  longitude = lng,
  style = list(background = "black")
) %>%
  add_line_layer(
    data = dt,
    getStrokeWidth = 3,
    getSourcePosition = get_position("prev_latitude", "prev_longitude"),
    getTargetPosition = get_position("latitude", "longitude"),
    getTooltip = get_property("time"),
    getColor = get_color_to_rgb_array("color")
  )

In this case it takes some time until the layer is rendered because first all data is downloaded and then passed to the widget (from R to json). But in the end when it shows up zooming is smooth.
I need to add a csv-reader on javascript side to speed up loading.

Added a pure JavaScript snippet here where you can click on the map to set the center point and a drop down list to select the time limit.

Love it!
@karussell What do you think about this:

The user specifies all the columns they want, not only those in addition to "longitude", "latitude", "time", "distance". Just let "longitude", "latitude", "time", "distance" be the default.

Thus, all columns are treated equal. If I want "latitude", "longitude", "distance", I say columns=latitude,longitude,distance.

I think that would it more flexible (can also drop columns) and easier do document: "Specify the columns you want" instead of "specify the columns in addition to the default columns that you want".

I think that would make it more flexible (can also drop columns) and easier do document

Yes, this was a good idea! And if I did not misunderstand it, then this is already done :D ?
BTW: in some days or weeks we'll have #1548 i.e. information like road_class, max_speed, tunnel, toll etc then we can make this available here too. Furthermore we can allow to specify a filter if only main roads are required (or a smaller+faster output) or visualizing tunnels and bridges is required for risk analysis etc

@karussell That sounds great, then we can also use this information for the styling.

You can now request additional information like road_class (highway tag) and road_environment (tunnel, bridge, ...) and more. You need three things:

update to latest version
use the following param in config.yml: graph.encoded_values: surface,road_class,road_environment,road_access,max_speed
do a re-import
specify them as additional columns in the request

@michaz do you want to review this again? Especially as you were asking:

The user specifies all the columns they want, not only those in addition to "longitude", "latitude", "time", "distance".

If no opposing opinion I'll merge this today

I haven't run it but reading through description looks good.

Ok. If there are problems we can easily create new issues :)


Want to add dark theme feature to it

I would like to contribute to this issue.

Great, That's cool.
Especially if It will be an easter egg.
Something that will happen if you click on the App's logo.

Yp, @yosaami and @Satakshijain go for it

hey @SauveJeanLuc , is there any discord server or somewhere I can share the progress and ask of changes? Also should I create any icon for the dark theme button?

@yosaami ,
You can raise a PR for it, and I'll give you comments.
For the Icon, I prefer we'd use the app's logo just to make it a fun easter egg.
Discord https://discord.gg/

okay sure, I can't join the discord.

@yosaami are you working on it ?

I don't wanna hijack the issue. However, can I also work on it? I can help create the dark mode like https://hugekontrast.github.io/Spark/ , this is a project I'd made, https://github.com/hugekontrast/Spark

@SauveJeanLuc  As there's still no response from the previous Assignees Can i add the dark mode? only if u don't mind

@divya-nshi yup go for it.

@hugekontrast yup you can go for it.
as well as no PR has been raised for it yet.

Yes sir.


Add test id for vm snapshot metrics functest

Signed-off-by: Alex Kalenyuk<EMAIL_ADDRESS>
What this PR does / why we need it:
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

NONE

/retest

/lgtm

/hold
Test failures are unrelated. An investigation is ongoing.

/unhold
/retest-required


RubyGems has old version of Hashugar (last updated nov 2014)

RubyGems version doesn't implement to_hash.
Maybe you should update your VERSION file!

+1 for new version

Done.

Awesome, thanks!


On Win XP error

$ node cli.js install npm -gf
npm ERR! couldn't unpack I:\DOCUME~1\SaBoNim\LOCALS~1\Temp\npm-1322061457994\132
2061457995-0.32351953559555113\tmp.tgz to I:\DOCUME~1\SaBoNim\LOCALS~1\Temp\npm-
1322061457994\1322061457995-0.32351953559555113\contents
npm ERR! Error: UNKNOWN, unknown error 'I:/DOCUME~1/SaBoNim/LOCALS~1/Temp/npm-13
22061457994/1322061457995-0.32351953559555113/contents/___package.npm/package'
npm ERR! Report this entire log at:
npm ERR!     http://github.com/isaacs/npm/issues
npm ERR! or email it to:
npm ERR<EMAIL_ADDRESS>npm ERR!
npm ERR! System Windows_NT 5.1.2600
npm ERR! command "i:\Program Files\nodejs\node.exe" "i:\npm\cli.js" "instal
l" "npm" "-gf"
npm ERR! cwd i:\npm
npm ERR! node -v v0.6.2
npm ERR! npm -v 1.0.106
npm ERR! path I:/DOCUME~1/SaBoNim/LOCALS~1/Temp/npm-1322061457994/1322061457995-
0.32351953559555113/contents/___package.npm/package
npm ERR! code UNKNOWN
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     i:\npm\npm-debug.log
npm not ok

Try using the latest zip from here: http://npmjs.org/dist/
Unpack it in whatever folder node.exe is in.

I downloaded npm-1.1.0-alpha-2.zip  and unpack it in whatever folder node.exe is in.
$ npm.cmd --version
/i/Program Files/nodejs/npm.cmd: line 1: unexpected EOF while looking for matchi
ng `''
/i/Program Files/nodejs/npm.cmd: line 7: syntax error: unexpected end of file

Can you upload the npm.cmd file to http://gist.github.com, please?  It works on my system.

https://gist.github.com/1391859

Is there a way to write a bash script like npm.cmd to make it work in Git Bash shell? This would be great, since I am using git and npm.

Feel like digging in and trying a patch?  The relevant bits are in lib/build.js.

Yeah, I'll do my best.


feat: add new project credhub

Add the project proposal to add credhub to the Open Wallet Foundation

APPROVED at the May 29, 2024 meeting


Maintainers Wanted!

Looking for maintainers to help with this project!

Q&A site for beginners and advanced engineers alike!
Help with where this site will go, and its goals.
Create features and test/confirm PR's
Ensure quality and consistent code to increase maintainability
Help answer questions from users and bring problems to light

Hello @DamoFD, I'm interested.

Hello @suruabiye do any of the current issues peak your interest? I would like to see your skills, and do your prefer frontend, backend, both, docs, planning?

I'm interested in backend

@suruabiye alrighty, do you want to make the crud functionality for the questions? Normal index, show, update, etc?

https://github.com/DamoFD/BugResolution/issues/11 @suruabiye

You can assign it to me

@suruabiye sent collab invite

seen @DamoFD


About Training Code

Dear Author,
Hello,  May I ask if the "pre_process_label.py" file mentioned in the readme is actually the same as the "prepare_label.py" file? I haven't been able to find any other similar files. Additionally, I am wondering when you plan to release the training code? I am looking forward to it very much.
Thank you and best regards,

Yes，pre_process_label.py is the   prepare_label.py，but it has a little bug

Yes，pre_process_label.py is the prepare_label.py，but it has a little bug

Can you run through the training code? If possible, can we communicate?

Yes，pre_process_label.py is the prepare_label.py，but it has a little bug

Can you run through the training code? If possible, can we communicate?

i can't , i hope the author release the train code


Replace flawed ProposalOrderTools with NetworkXProposalOrder

This PR replaces the flawed ProposalOrderTools---which frequently encountered cases where it could not identify topological torsions---with a NetworkX-based scheme from @pgrinaway (rescued from another branch).

The propane <-> pentane test now passes!


Use print() function in both Python 2 and Python 3

Also, Python 3 already defaults to utf-8 so reload() was moved and sys.setdefaultencoding() was removed in Python 3.

The remaining flake8 are because Python 3 treats indentation errors as syntax errors.  Either use spaces to indent or tabs to indent but do not mix tabs and spaces.
https://travis-ci.com/lihanghang/Knowledge-Graph/builds/121363609#L201

Wow. Thank you.


iOS simulator app doesn't launch when 'detox test' command executed

Description
iOS simulator app doesn't launch when 'detox test' command executed
Detox --loglevel verbose output shows [DetoxServer.js/CANNOT_FORWARD]

[x] I have tested this issue on the latest Detox release and it still reproduces

Reproduction
Detox tests were last running in April with the following setup
{
  "main": "node_modules/expo/AppEntry.js",
  "scripts": {
    "start": "expo start",
    "android": "expo start --android",
    "ios": "expo start --ios",
    "eject": "expo eject",
    "test": "jest"
  },
  "dependencies": {
    "expo": "^37.0.0",
    "react-native": "https://github.com/expo/react-native/archive/sdk-37.0.0.tar.gz",
  },
  "devDependencies": {
    "detox": "^15.3.0",
    "detox-expo-helpers": "^0.6.0",
    "expo-detox-hook": "^1.0.10",
    "jest-expo": "^37.0.0",
    "metro-react-native-babel-preset": "^0.53.1",
    "react-native-testing-library": "^1.12.0",
    "react-test-renderer": "^16.12.0",
  },
  "jest": {
    "preset": "jest-expo",
    "transformIgnorePatterns": [
      "node_modules/(?!(jest-)?react-native|react-clone-referenced-element|@react-native-community|expo(nent)?|@expo(nent)?/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|@sentry/.*|sentry-expo|native-base|react-native-multi-slider|@ptomasroos/.*)"
    ],
    "setupFilesAfterEnv": [
      "<rootDir>/unit_tests/setupTests.js"
    ],
    "testMatch": [
      "<rootDir>/unit_tests/**/*.test.js?(x)"
    ]
  },
  "detox": {
    "test-runner": "jest",
    "configurations": {
      "ios.sim": {
        "binaryPath": "<app_name>.app",
        "type": "ios.simulator",
        "name": "iPhone 11 Pro Max"
      }
    }
  }
}

They are now failing as described above with the following package.json
{
  "main": "node_modules/expo/AppEntry.js",
  "scripts": {
    "start": "expo start",
    "android": "expo start --android",
    "ios": "expo start --ios",
    "eject": "expo eject",
    "test": "jest"
  },
  "dependencies": {
    "expo": "^37.0.0",
    "react-native": "https://github.com/expo/react-native/archive/sdk-37.0.0.tar.gz",
  },
  "devDependencies": {
    "detox": "^17.4.5",
    "detox-expo-helpers": "^0.6.0",
    "expo-detox-hook": "^1.0.10",
    "jest-expo": "^37.0.0",
"metro-react-native-babel-preset": "^0.53.1",
    "react-native-testing-library": "^1.12.0",
    "react-test-renderer": "^16.12.0",
  },
  "jest": {
    "preset": "jest-expo",
    "transformIgnorePatterns": [
      "node_modules/(?!(jest-)?react-native|react-clone-referenced-element|@react-native-community/async-storage/.*|expo(nent)?|@expo(nent)?/.*|react-navigation|@react-navigation/.*|@unimodules/.*|unimodules|@sentry/.*|sentry-expo|native-base|react-native-multi-slider|@ptomasroos/.*)"
    ],
    "setupFilesAfterEnv": [
      "<rootDir>/unit_tests/setupTests.js"
    ],
    "testMatch": [
      "<rootDir>/unit_tests/**/*.test.js?(x)"
    ]
  },
  "detox": {
    "test-runner": "jest",
    "configurations": {
      "ios.sim": {
        "binaryPath": "<app_name>.app",
        "type": "ios.simulator",
        "name": "iPhone 11 Pro Max"
      }
    }
  }
}

Expected behavior
Running detox test should open the app in the simulator and execute tests.
Environment (please complete the following information):

Detox: 17.4.5
React Native: 0.61
Node: v14.5.0
Device: iOS simulator iPhone 11 pro max
Xcode: 11.3.1 (Using expo for development)
iOS: 13.3
macOS: 10.14.4

Logs
If you are experiencing a timeout in your test

[x] I have followed the instructions under Lower-level Idling Resources Debug and am providing the log below:

Tried running detox test --debug-synchronization 200
the terminal hangs with the following output
detox[16107] INFO:  [test.js] debugSynchronization=200 reportSpecs=true useCustomLogger=true forceAdbInstall=false DETOX_START_TIMESTAMP=1599257790958 node_modules/.bin/jest --config e2e/config.json '--testNamePattern=^((?!:android:).)*$' --maxWorkers 1 e2e
detox[16109] INFO:  at e2e/tests/Auth/login.spec.js:11:11
 describe(Auth)
detox[16109] INFO:  at e2e/init.js:21:19
 beforeAll
detox[16109] INFO:  [DetoxServer.js] server listening on localhost:62081...
detox[16109] INFO:  at e2e/init.js:28:19
 initialized

 RUNS  e2e/tests/Auth/login.spec.js

Tried adding  ‘detoxPrintBusyIdleResources’
terminal hangs with output ‘Filtering the log data using "category == "EarlGreyStatistics””’
Try adding ‘disableSynchroniztion’.
After running detox test, the test code seems to stall at ‘await device.disableSynchronization’ (a console log is never called on the next line of code)
Device and verbose Detox logs

[x] I have run my tests using the --loglevel trace argument and am providing the verbose log below:

detox[15678] INFO:  [test.js] configuration="ios.sim" loglevel="verbose" cleanup=true reportSpecs=true useCustomLogger=true forceAdbInstall=false DETOX_START_TIMESTAMP=1599256657224 node_modules/.bin/jest --config e2e/config.json '--testNamePattern=^((?!:android:).)*$' --maxWorkers 1 e2e
detox[15680] INFO:  at e2e/tests/Auth/login.spec.js:11:11
 describe(Auth)
detox[15680] INFO:  at e2e/init.js:21:19
 beforeAll
detox[15680] INFO:  [DetoxServer.js] server listening on localhost:61596...
detox[15680] DEBUG: [AsyncWebSocket.js/WEBSOCKET_OPEN] opened web socket to: ws://localhost:61596
detox[15680] DEBUG: [DetoxServer.js/LOGIN] role=tester, sessionId=25a0b4f5-f767-48a9-1a95-ca18b51c4773
detox[15680] DEBUG: [DetoxServer.js/LOGIN_SUCCESS] role=tester, sessionId=25a0b4f5-f767-48a9-1a95-ca18b51c4773
detox[15680] DEBUG: [exec.js/EXEC_CMD, #0] applesimutils --list --byType "iPhone 11 Pro Max"
detox[15680] DEBUG: [exec.js/EXEC_CMD, #1] applesimutils --list --byId 0BABC374-4903-4E95-A1CB-C265C656F1D6 --maxResults 1
detox[15680] DEBUG: [exec.js/EXEC_CMD, #2] /usr/bin/xcrun simctl uninstall 0BABC374-4903-4E95-A1CB-C265C656F1D6 [BUNDLE_ID]
detox[15680] DEBUG: [exec.js/EXEC_TRY, #2] Uninstalling [BUNDLE_ID]...
detox[15680] DEBUG: [exec.js/EXEC_SUCCESS, #2] [BUNDLE_ID] uninstalled
detox[15680] DEBUG: [exec.js/EXEC_CMD, #3] /usr/bin/xcrun simctl install 0BABC374-4903-4E95-A1CB-C265C656F1D6 "/Users/bryanboyko/XCode/<app_name>.app"
detox[15680] DEBUG: [exec.js/EXEC_TRY, #3] Installing /Users/bryanboyko/XCode/<app_name>.app...
detox[15680] DEBUG: [exec.js/EXEC_SUCCESS, #3] /Users/bryanboyko/XCode/<app_name>.app installed
detox[15680] INFO:  at e2e/init.js:28:19
 initialized
detox[15680] DEBUG: [DetoxServer.js/CANNOT_FORWARD] role=testee not connected, cannot fw action (sessionId=25a0b4f5-f767-48a9-1a95-ca18b51c4773)
detox[15680] INFO:  Auth: should show main feed after manual login
detox[15680] INFO:  at e2e/init.js:57:19
 before each
detox[15680] DEBUG: [exec.js/EXEC_CMD, #4] /usr/bin/xcrun simctl terminate 0BABC374-4903-4E95-A1CB-C265C656F1D6 [BUNDLE_ID]
detox[15680] DEBUG: [exec.js/EXEC_TRY, #4] Terminating [BUNDLE_ID]...
detox[15680] DEBUG: [exec.js/EXEC_SUCCESS, #4] [BUNDLE_ID] terminated
detox[15680] DEBUG: [exec.js/EXEC_CMD, #5] applesimutils --byId 0BABC374-4903-4E95-A1CB-C265C656F1D6 --bundle [BUNDLE_ID] --restartSB --setPermissions location=inuse,notifications=YES
detox[15680] DEBUG: [exec.js/EXEC_TRY, #5] Trying to set permissions...
detox[15680] DEBUG: [exec.js/EXEC_SUCCESS, #5] Permissions are set
detox[15680] DEBUG: [exec.js/EXEC_CMD, #6] SIMCTL_CHILD_DYLD_INSERT_LIBRARIES="/Users/bryanboyko/Library/ExpoDetoxHook/ios/58b2f26a0f87b2136ea15b6c467bcf04a21fd6e7/ExpoDetoxHook.framework/ExpoDetoxHook:/Users/bryanboyko/Library/Detox/ios/26afbf8d93760131ef9f1ae830bc7169ba83b8b0/Detox.framework/Detox" /usr/bin/xcrun simctl launch 0BABC374-4903-4E95-A1CB-C265C656F1D6 [BUNDLE_ID] --args -detoxServer "ws://localhost:61596" -detoxSessionId "25a0b4f5-f767-48a9-1a95-ca18b51c4773" -EXKernelDisableNuxDefaultsKey "true" -detoxURLBlacklistRegex "\("http://<IP_ADDRESS>:19001/onchange","https://e.crashlytics.com/spi/v2/events"\)" -detoxURLOverride "exp://<IP_ADDRESS>:19000" -detoxSourceAppOverride "host.exp.exponent"
detox[15680] DEBUG: [exec.js/EXEC_TRY, #6] Launching [BUNDLE_ID]...
detox[15680] DEBUG: [exec.js/EXEC_CMD, #7] /usr/bin/xcrun simctl get_app_container 0BABC374-4903-4E95-A1CB-C265C656F1D6 [BUNDLE_ID]
detox[15680] INFO:  [AppleSimUtils.js] [BUNDLE_ID] launched. To watch simulator logs, run:
        /usr/bin/xcrun simctl spawn 0BABC374-4903-4E95-A1CB-C265C656F1D6 log stream --level debug --style compact --predicate 'process == "[BUNDLE_ID]"'
detox[15680] DEBUG: [DetoxServer.js/CANNOT_FORWARD] role=testee not connected, cannot fw action (sessionId=25a0b4f5-f767-48a9-1a95-ca18b51c4773)
detox[15680] DEBUG: [DetoxServer.js/LOGIN] role=testee, sessionId=25a0b4f5-f767-48a9-1a95-ca18b51c4773
detox[15680] DEBUG: [DetoxServer.js/LOGIN_SUCCESS] role=testee, sessionId=25a0b4f5-f767-48a9-1a95-ca18b51c4773
detox[15680] INFO:  at e2e/tests/Auth/login.spec.js:37:21
 1st test
detox[15680] INFO:  Auth: should show main feed after manual login [FAIL]

detox[15680] INFO:  at e2e/init.js:73:19
 after all
detox[15680] WARN:  [Client.js/PENDING_REQUESTS] App has not responded to the network requests below:
  (id = 1) setSyncSettings: {"enabled":false}
  (id = 2) invoke: {"type":"expectation","predicate":{"type":"id","value":"LOGIN_VIEW"},"expectation":"toBeVisible"}
  (id = -1000) isReady: {}

That might be the reason why the test "Auth should show main feed after manual login" has timed out.

detox[15680] DEBUG: [exec.js/EXEC_CMD, #8] /usr/bin/xcrun simctl shutdown 0BABC374-4903-4E95-A1CB-C265C656F1D6
detox[15680] DEBUG: [exec.js/EXEC_TRY, #8] Shutting down 0BABC374-4903-4E95-A1CB-C265C656F1D6...
detox[15680] DEBUG: [DetoxServer.js/DISCONNECT] role=tester, sessionId=25a0b4f5-f767-48a9-1a95-ca18b51c4773
detox[15680] DEBUG: [DetoxServer.js/DISCONNECT] role=testee, sessionId=25a0b4f5-f767-48a9-1a95-ca18b51c4773
detox[15680] DEBUG: [DetoxServer.js/CANNOT_FORWARD] role=tester not connected, cannot fw action (sessionId=25a0b4f5-f767-48a9-1a95-ca18b51c4773)
detox[15680] DEBUG: [exec.js/EXEC_SUCCESS, #8] 0BABC374-4903-4E95-A1CB-C265C656F1D6 shut down
detox[15680] DEBUG: [DetoxServer.js/WS_CLOSE] Detox server connections terminated gracefully
 FAIL  e2e/tests/Auth/login.spec.js (547.778s)
  Auth
    ✕ should show main feed after manual login (240426ms)

  ● Auth › should show main feed after manual login

    Timeout - Async callback was not invoked within the 300000ms timeout specified by jest.setTimeout.Error: Timeout - Async callback was not invoked within the 300000ms timeout specified by jest.setTimeout.

      at mapper (../node_modules/jest-jasmine2/build/queueRunner.js:25:45)

  ● Auth › should show main feed after manual login

    Timeout - Async callback was not invoked within the 120000ms timeout specified by jest.setTimeout.Error: Timeout - Async callback was not invoked within the 120000ms timeout specified by jest.setTimeout.

      at mapper (../node_modules/jest-jasmine2/build/queueRunner.js:25:45)

  ● Auth › should show main feed after manual login

    : Timeout - Async callback was not invoked within the 120000ms timeout specified by jest.setTimeout.Timeout - Async callback was not invoked within the 120000ms timeout specified by jest.setTimeout.

      30 |
[private login info]
      34 |
      35 |     // DOUBLE TAP LOGIN BUTTON

      at new Spec (../node_modules/jest-jasmine2/build/jasmine/Spec.js:116:22)
      at Suite.<anonymous> (tests/Auth/login.spec.js:32:3)
      at Object.<anonymous> (tests/Auth/login.spec.js:10:1)

detox[15680] INFO:  at e2e/init.js:21:19
 beforeAll
detox[15680] INFO:  [DetoxServer.js] server listening on localhost:61703...
detox[15680] DEBUG: [AsyncWebSocket.js/WEBSOCKET_OPEN] opened web socket to: ws://localhost:61703
detox[15680] DEBUG: [DetoxServer.js/LOGIN] role=tester, sessionId=d7d6ad2d-d095-81b0-7955-6b83885362a3
detox[15680] DEBUG: [DetoxServer.js/LOGIN_SUCCESS] role=tester, sessionId=d7d6ad2d-d095-81b0-7955-6b83885362a3
detox[15680] DEBUG: [exec.js/EXEC_CMD, #0] applesimutils --list --byType "iPhone 11 Pro Max"
detox[15680] DEBUG: [exec.js/EXEC_CMD, #1] applesimutils --list --byId 0BABC374-4903-4E95-A1CB-C265C656F1D6 --maxResults 1
detox[15680] DEBUG: [exec.js/EXEC_CMD, #2] /usr/bin/xcrun simctl boot 0BABC374-4903-4E95-A1CB-C265C656F1D6
detox[15680] DEBUG: [exec.js/EXEC_TRY, #2] Booting device 0BABC374-4903-4E95-A1CB-C265C656F1D6...
detox[15680] DEBUG: [exec.js/EXEC_CMD, #3] /usr/bin/xcrun simctl bootstatus 0BABC374-4903-4E95-A1CB-C265C656F1D6
detox[15680] DEBUG: [exec.js/EXEC_CMD, #4] /usr/bin/xcrun simctl io 0BABC374-4903-4E95-A1CB-C265C656F1D6 screenshot "/dev/null"
detox[15680] DEBUG: [exec.js/EXEC_CMD, #5] /usr/bin/xcrun simctl uninstall 0BABC374-4903-4E95-A1CB-C265C656F1D6 [BUNDLE_ID]
detox[15680] DEBUG: [exec.js/EXEC_TRY, #5] Uninstalling [BUNDLE_ID]...
detox[15680] DEBUG: [exec.js/EXEC_SUCCESS, #5] [BUNDLE_ID] uninstalled
detox[15680] DEBUG: [exec.js/EXEC_CMD, #6] /usr/bin/xcrun simctl install 0BABC374-4903-4E95-A1CB-C265C656F1D6 "/Users/bryanboyko/XCode/<app_name>.app"
detox[15680] DEBUG: [exec.js/EXEC_TRY, #6] Installing /Users/bryanboyko/XCode/<app_name>.app...
detox[15680] DEBUG: [exec.js/EXEC_SUCCESS, #6] /Users/bryanboyko/XCode/<app_name>.app installed
detox[15680] INFO:  at e2e/init.js:28:19
 initialized
detox[15680] DEBUG: [DetoxServer.js/CANNOT_FORWARD] role=testee not connected, cannot fw action (sessionId=d7d6ad2d-d095-81b0-7955-6b83885362a3)

 RUNS  e2e/tests/Auth/registration.spec.js

Manually launch the Simulator app from Xcode and see what happens on screen.

We're using expo, so our app isn't launched from XCode. We get a .app and then install on a sim from command line. Like so:
xcrun simctl launch booted <BUNDLE_ID>```

If I run `xcrun simctl launch booted <BUNDLE_ID>` from terminal, the app launches on the simulator as expected

I didn't say "launch your app from Xcode", I said launch the Simulator app from Xcode. Your first line of the issue says "iOS simulator app doesn't launch when 'detox test' command executed". When Detox boots a simulator runtime without the Simulator app running, you won't see what's going on. So launch the Simulator app, then start your test from Detox and see what happens.
Expo has had many issues with Detox in the past. I fear we can't assist if this is an Expo issue.

Sorry my mistake. I meant that when the simulator app is open, running detox test installs our app successfully onto the simulator, but then doesn't launch our app in the simulator.
Starting a simulator from XCode and then running detox test has the same result. Our app installs on the simulator app but fails to launch.
In this case it may not be an expo issue because we create a complete build of our app for the simulator, <our_app>.app, as opposed to using the Exponent.app machanism, and then manually install it on a simulator.
The current method for getting a .app and then running detox tests with it was working a number of months ago.

So, just to make sure, the doesn’t launch at all? Or does it launch and then closes right away? After the app installs and tests fail, does the app launch correctly when you tao the icon in the simulator?

The app doesn't launch at all.
If I run detox test with the simulator open and our app not open, wait 10-20 while the test is hanging, and then click to open our app, our app opens normally.
If I run `detox test with the simulator open and our app not open, and wait 6 minutes (not sure if this consistently happens at the 6 minute mark, but I checked twice), the app launches and then the tests timeout after another few minutes.
detox[20460] INFO:  [test.js] configuration="ios.sim" loglevel="verbose" cleanup=true reportSpecs=true useCustomLogger=true forceAdbInstall=false DETOX_START_TIMESTAMP=1599366363582 node_modules/.bin/jest --config e2e/config.json '--testNamePattern=^((?!:android:).)*$' --maxWorkers 1 e2e
detox[20463] INFO:  at e2e/init.js:21:19
 beforeAll
detox[20463] INFO:  [DetoxServer.js] server listening on localhost:63789...
detox[20463] DEBUG: [AsyncWebSocket.js/WEBSOCKET_OPEN] opened web socket to: ws://localhost:63789
detox[20463] DEBUG: [DetoxServer.js/LOGIN] role=tester, sessionId=1c32ee9a-9894-9909-9124-afa74eab1a14
detox[20463] DEBUG: [DetoxServer.js/LOGIN_SUCCESS] role=tester, sessionId=1c32ee9a-9894-9909-9124-afa74eab1a14
detox[20463] DEBUG: [exec.js/EXEC_CMD, #0] applesimutils --list --byType "iPhone 11 Pro Max"
detox[20463] DEBUG: [exec.js/EXEC_CMD, #1] applesimutils --list --byId 0BABC374-4903-4E95-A1CB-C265C656F1D6 --maxResults 1
detox[20463] DEBUG: [exec.js/EXEC_CMD, #2] /usr/bin/xcrun simctl uninstall 0BABC374-4903-4E95-A1CB-C265C656F1D6 com.p9alabs.redpoint
detox[20463] DEBUG: [exec.js/EXEC_TRY, #2] Uninstalling com.p9alabs.redpoint...
detox[20463] DEBUG: [exec.js/EXEC_SUCCESS, #2] com.p9alabs.redpoint uninstalled
detox[20463] DEBUG: [exec.js/EXEC_CMD, #3] /usr/bin/xcrun simctl install 0BABC374-4903-4E95-A1CB-C265C656F1D6 "/Users/bryanboyko/XCode/Project9A/redpoint_client/redpoint.app"
detox[20463] DEBUG: [exec.js/EXEC_TRY, #3] Installing /Users/bryanboyko/XCode/Project9A/redpoint_client/redpoint.app...
detox[20463] DEBUG: [exec.js/EXEC_SUCCESS, #3] /Users/bryanboyko/XCode/Project9A/redpoint_client/redpoint.app installed
detox[20463] DEBUG: [DetoxServer.js/CANNOT_FORWARD] role=testee not connected, cannot fw action (sessionId=1c32ee9a-9894-9909-9124-afa74eab1a14)
detox[20463] INFO:  Auth: should show register view when sign up button pressed
detox[20463] INFO:  at e2e/init.js:61:19
 before each
detox[20463] DEBUG: [exec.js/EXEC_CMD, #4] /usr/bin/xcrun simctl terminate 0BABC374-4903-4E95-A1CB-C265C656F1D6 com.p9alabs.redpoint
detox[20463] DEBUG: [exec.js/EXEC_TRY, #4] Terminating com.p9alabs.redpoint...
detox[20463] DEBUG: [exec.js/EXEC_SUCCESS, #4] com.p9alabs.redpoint terminated
detox[20463] DEBUG: [exec.js/EXEC_CMD, #5] applesimutils --byId 0BABC374-4903-4E95-A1CB-C265C656F1D6 --bundle com.p9alabs.redpoint --restartSB --setPermissions location=inuse,notifications=YES
detox[20463] DEBUG: [exec.js/EXEC_TRY, #5] Trying to set permissions...
detox[20463] DEBUG: [exec.js/EXEC_SUCCESS, #5] Permissions are set
detox[20463] DEBUG: [exec.js/EXEC_CMD, #6] SIMCTL_CHILD_DYLD_INSERT_LIBRARIES="/Users/bryanboyko/Library/ExpoDetoxHook/ios/58b2f26a0f87b2136ea15b6c467bcf04a21fd6e7/ExpoDetoxHook.framework/ExpoDetoxHook:/Users/bryanboyko/Library/Detox/ios/26afbf8d93760131ef9f1ae830bc7169ba83b8b0/Detox.framework/Detox" /usr/bin/xcrun simctl launch 0BABC374-4903-4E95-A1CB-C265C656F1D6 com.p9alabs.redpoint --args -detoxServer "ws://localhost:63789" -detoxSessionId "1c32ee9a-9894-9909-9124-afa74eab1a14" -EXKernelDisableNuxDefaultsKey "true" -detoxURLBlacklistRegex "\("http://<IP_ADDRESS>:19001/onchange","https://e.crashlytics.com/spi/v2/events"\)" -detoxURLOverride "exp://<IP_ADDRESS>:19000" -detoxSourceAppOverride "host.exp.exponent"
detox[20463] DEBUG: [exec.js/EXEC_TRY, #6] Launching com.p9alabs.redpoint...
detox[20463] DEBUG: [exec.js/EXEC_CMD, #7] /usr/bin/xcrun simctl get_app_container 0BABC374-4903-4E95-A1CB-C265C656F1D6 com.p9alabs.redpoint
detox[20463] INFO:  [AppleSimUtils.js] com.p9alabs.redpoint launched. To watch simulator logs, run:
        /usr/bin/xcrun simctl spawn 0BABC374-4903-4E95-A1CB-C265C656F1D6 log stream --level debug --style compact --predicate 'process == "ComP9alabsRedpoint"'
detox[20463] DEBUG: [DetoxServer.js/CANNOT_FORWARD] role=testee not connected, cannot fw action (sessionId=1c32ee9a-9894-9909-9124-afa74eab1a14)
detox[20463] DEBUG: [DetoxServer.js/LOGIN] role=testee, sessionId=1c32ee9a-9894-9909-9124-afa74eab1a14
detox[20463] DEBUG: [DetoxServer.js/LOGIN_SUCCESS] role=testee, sessionId=1c32ee9a-9894-9909-9124-afa74eab1a14
detox[20463] INFO:  Auth: should show register view when sign up button pressed [FAIL]

detox[20463] INFO:  at e2e/init.js:77:19
 after all
detox[20463] WARN:  [Client.js/PENDING_REQUESTS] App has not responded to the network requests below:
  (id = 1) invoke: {"type":"expectation","predicate":{"type":"id","value":"LOGIN_VIEW"},"expectation":"toBeVisible"}
  (id = -1000) isReady: {}

That might be the reason why the test "Auth should show register view when sign up button pressed" has timed out.

detox[20463] DEBUG: [exec.js/EXEC_CMD, #8] /usr/bin/xcrun simctl shutdown 0BABC374-4903-4E95-A1CB-C265C656F1D6
detox[20463] DEBUG: [exec.js/EXEC_TRY, #8] Shutting down 0BABC374-4903-4E95-A1CB-C265C656F1D6...
detox[20463] DEBUG: [DetoxServer.js/DISCONNECT] role=tester, sessionId=1c32ee9a-9894-9909-9124-afa74eab1a14
detox[20463] DEBUG: [DetoxServer.js/DISCONNECT] role=testee, sessionId=1c32ee9a-9894-9909-9124-afa74eab1a14
detox[20463] DEBUG: [DetoxServer.js/CANNOT_FORWARD] role=tester not connected, cannot fw action (sessionId=1c32ee9a-9894-9909-9124-afa74eab1a14)
detox[20463] DEBUG: [exec.js/EXEC_SUCCESS, #8] 0BABC374-4903-4E95-A1CB-C265C656F1D6 shut down
detox[20463] DEBUG: [DetoxServer.js/WS_CLOSE] Detox server connections terminated gracefully
 FAIL  e2e/tests/Auth/registration.spec.js (547.636s)
  Auth
    ✕ should show register view when sign up button pressed (240271ms)

  ● Auth › should show register view when sign up button pressed

    Timeout - Async callback was not invoked within the 300000ms timeout specified by jest.setTimeout.Error: Timeout - Async callback was not invoked within the 300000ms timeout specified by jest.setTimeout.

      at mapper (../node_modules/jest-jasmine2/build/queueRunner.js:25:45)

  ● Auth › should show register view when sign up button pressed

    Timeout - Async callback was not invoked within the 120000ms timeout specified by jest.setTimeout.Error: Timeout - Async callback was not invoked within the 120000ms timeout specified by jest.setTimeout.

      at mapper (../node_modules/jest-jasmine2/build/queueRunner.js:25:45)

  ● Auth › should show register view when sign up button pressed

    : Timeout - Async callback was not invoked within the 120000ms timeout specified by jest.setTimeout.Timeout - Async callback was not invoked within the 120000ms timeout specified by jest.setTimeout.

If I open our app on the sim and then run detox rest, a black screen shows up.

Is there any way you can obtain an Xcode project? We have a guide you can then follow to try to debug.

It may be possible if we eject, but we are trying to avoid that in order to keep the advantages Expo offers in streamlining the development process.
Is there any documentation for debugging detox tests when run directly on a .app?

Can you just temporarily eject so you can debug?
If something is crashing very early on, it won't be possible to debug with a precompiled product.

I have the same problem with a Debug configuration on iOS.
detox[38024] ERROR: [cli.js] Error: Command failed: jest --config e2e/config.json --testNamePattern '^((?!:android:).)*$' --maxWorkers 2 e2e
App has not responded to the network requests below: (id = -1000) isReady: {}
Similar issue on StackOverflow: https://stackoverflow.com/questions/63289061/detox-app-stuck-in-launch-screen-on-ios/64030402#64030402

Same issue also here, release builds work fine but make it very tedious to write tests.
debug builds seem to get stuck synchronising
17.5.3 seems to have broken debug-synchronization, prior to that I got this log:
detox[30240] INFO:  [actions.js] Sync App State: Waiting for network requests to finish: (
    "http://localhost:8081/index.bundle?platform=ios&dev=true&minify=false"
)

but I can see from my js server that the request has completed
as a work around I've tried to blacklist localhost but that also doesnt seem to work
  async initDetox() {
    const getDetoxURLBlacklistRegexFromDomains = domains =>
      `(${domains.map(domain => `\\".*${domain}.*\\"`).join(',')})`;

    const detoxURLBlacklistRegex = getDetoxURLBlacklistRegexFromDomains(['pndsn.com']);
    const instance = await this.detox.init(null, { launchApp: false, detoxURLBlacklistRegex });

    await instance.device.launchApp({ detoxEnableSynchronization: 0, detoxURLBlacklistRegex });

    return instance;
  }

launchApp just hangs

+1. I am experiencing the same issue and have tried the same workarounds.

Guys, please follow the “debugging in Xcode” guide to see what’s going on. If you are using Expo and are willing to do this step, we will close the issue. We explicitly do not support Expo because of issues like these.

I will go over the guide now and report back. I'm not using Expo

Thanks

Thanks for pointing me to the Debugging in Xcode article @LeoNatan. After setting a few breakpoints, I was able to find the function that was hanging up the startup process.
Appears that the EarlGrey functions and that one would not cooperate, creating the hang. Ended up creating a new target with a preprocessor macro to skip that part of the startup code. All working now

Can you go into more details please? Was it Earl Grey swizzling? We intend to remove EG completely soon, want to make sure what we use instead has as little swizzling conflicts as possible.

@treymcmeans Your issue is probably not the same issue @bryanboyko has.
"Stuck on launch" is a generic symptom of all issues that cause a start up crash and hang. So anyone having "this" issue, please follow the guide and provide the information.

@LeoNatan
I ran into the issue "Stuck on launch" after upgrade from v16 to v17.
I followed the “debugging in Xcode” guide. With Detox.framework linked. I can reproduce the issue with a Xcode run.
Here's the log from Xcode console after func webSocket(_ webSocket: WebSocket, didReceiveAction type: String, params: [String : Any], messageId: NSNumber) received "loginSuccess".
2020-10-02 17:36:51.151078+0900 AppSchemeName[40414:654578] [DetoxManager] Successfully logged in
2020-10-02 17:36:52.657521+0900 AppSchemeName[40414:655198] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.SourceCodeQueue>
2020-10-02 17:36:52.676739+0900 AppSchemeName[40414:655198] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.BlobModuleQueue>
2020-10-02 17:36:52.682408+0900 AppSchemeName[40414:655204] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.NetworkingQueue>
2020-10-02 17:36:52.732995+0900 AppSchemeName[40414:655198] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.I18nManagerQueue>
2020-10-02 17:36:52.826523+0900 AppSchemeName[40414:655198] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.AsyncLocalStorageQueue>
2020-10-02 17:36:52.838085+0900 AppSchemeName[40414:655198] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.RNDeviceInfoQueue>
2020-10-02 17:36:52.842891+0900 AppSchemeName[40414:655198] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: RNFetchBlob.queue>
2020-10-02 17:36:52.974540+0900 AppSchemeName[40414:655198] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.RNFaceDetectorQueue>
2020-10-02 17:36:52.986656+0900 AppSchemeName[40414:655198] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: pe.lum.rnfs>
2020-10-02 17:36:53.140875+0900 AppSchemeName[40414:655198] [WXJSTimerObservationIdlingResource] Ignoring timer: 2 failure reason: "duration==0"
2020-10-02 17:36:53.156286+0900 AppSchemeName[40414:655198] [WXJSTimerObservationIdlingResource] Ignoring timer: 4 failure reason: "duration>1.5"
2020-10-02 17:36:53.181296+0900 AppSchemeName[40414:655198] [WXJSTimerObservationIdlingResource] Ignoring timer: 9 failure reason: "duration==0"
2020-10-02 17:36:53.181495+0900 AppSchemeName[40414:655198] [WXJSTimerObservationIdlingResource] Ignoring timer: 10 failure reason: "duration==0"
2020-10-02 17:36:53.214837+0900 AppSchemeName[40414:655198] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.RNCookieManagerIOSQueue>
2020-10-02 17:36:53.271399+0900 AppSchemeName[40414:655198] [WXJSTimerObservationIdlingResource] Ignoring timer: 53 failure reason: "duration>1.5"
2020-10-02 17:36:53.272708+0900 AppSchemeName[40414:655336] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.ImageLoaderQueue>
2020-10-02 17:36:53.272920+0900 AppSchemeName[40414:655336] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.ImageStoreManagerQueue>
2020-10-02 17:36:53.273194+0900 AppSchemeName[40414:655336] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.DataRequestHandlerQueue>
2020-10-02 17:36:53.273406+0900 AppSchemeName[40414:655336] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.FileRequestHandlerQueue>
2020-10-02 17:36:53.273702+0900 AppSchemeName[40414:655336] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.HTTPRequestHandlerQueue>
2020-10-02 17:36:53.274287+0900 AppSchemeName[40414:655336] [ReactNativeSupport] Adding idling resource for network queue: <OS_dispatch_queue_serial: com.apple.NSURLSession-work>
2020-10-02 17:36:53.278011+0900 AppSchemeName[40414:655198] [WXJSTimerObservationIdlingResource] Ignoring timer: 54 failure reason: "duration==0"
2020-10-02 17:36:53.279052+0900 AppSchemeName[40414:654578] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.LocalAssetImageLoaderQueue>
2020-10-02 17:36:53.289167+0900 AppSchemeName[40414:655127] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.GIFImageDecoderQueue>
2020-10-02 17:36:53.371990+0900 AppSchemeName[40414:655198] [WXJSTimerObservationIdlingResource] Ignoring timer: 59 failure reason: "duration==0"
2020-10-02 17:36:53.373182+0900 AppSchemeName[40414:655198] [WXJSTimerObservationIdlingResource] Ignoring timer: 60 failure reason: "duration==0"
2020-10-02 17:36:53.398301+0900 AppSchemeName[40414:655198] [WXJSTimerObservationIdlingResource] Ignoring timer: 61 failure reason: "duration==0"
2020-10-02 17:36:53.399586+0900 AppSchemeName[40414:655198] [ReactNativeSupport] Adding idling resource for queue: <OS_dispatch_queue_serial: com.facebook.react.FileReaderModuleQueue>
2020-10-02 17:36:53.401331+0900 AppSchemeName[40414:655198] [WXJSTimerObservationIdlingResource] Ignoring timer: 72 failure reason: "duration==0"

I had the same issue in iOS release build event it was working in debug build
my current react native version "react-native": "0.61.5"
i fix it by add in info.plist file
<key>NSAllowsArbitraryLoads</key>
<true/>

which is added by default since react-native version 0.64

I recently installed xcode 14, and detox wasn't able to recognize any device with iOS 16,
maybe i need to update detox? not sure
anyway, i made it work by adding additional simulator device => iPhone 13, with iOS 15.2
and then specify that iOS version in detoxrc config file, because when you add iPhone 13, with iOS 15.2, xcode 14 will force add another simulator with iOS 16, so now you also have to specify the iOS version in the detoxrc config file, to avoid pointing at iOS 16
in detoxrc config, in devices section
    "simulator": {
      "device": {
        "type": "iPhone 13",
        "os": "iOS 15.2"   <==== this line
      },
      "type": "ios.simulator"
    }


Problems in running HelloWorld and HelloRoom in v1.11.0

Describe the bug
Hi, I encounter some bugs when using v1.11.0 to run HelloWorld and HelloRoom. After running HelloRoom, the result depth is somewhat abnormal, like the following:

And here's the corresponding RGB image:

And during running HelloWorld(during generating ground truth, to be precise), the process terminated with "AttributeError:  'NoneType' object has no attribute 'type'"
However, when I use v1.10.1 to run them again, it comes back to normal, I wonder are these new bugs introduced by the update?
Steps to Reproduce
What version of the code were you using?
v1.11.0
What command did you run?
python -m infinigen.datagen.manage_jobs --output_folder outputs/my_dataset --num_scenes 1 --pipeline_configs local_256GB.gin monocular.gin blender_gt.gin indoor_background_configs.gin --configs singleroom.gin --pipeline_overrides get_cmd.driver_script='infinigen_examples.generate_indoors' manage_datagen_jobs.num_concurrent=16 --overrides compose_indoors.restrict_single_supported_roomtype=True
python -m infinigen.datagen.manage_jobs --output_folder outputs/hello_world --num_scenes 1 --specific_seed 0
--configs desert.gin simple.gin --pipeline_configs local_16GB.gin monocular.gin blender_gt.gin --pipeline_overrides LocalScheduleHandler.use_gpu=False
What are your FULL output logs?
The log that containing the error info when running ground-truth rendering:
51995413362_0_log.txt

Thanks for the report, I will look into this ASAP.

Should be fixed by v1.11.1

Should be fixed by v1.11.1

Thanks for the quick response! I tried it today but It seems the error when running HelloWorld still exists :(

Are you sure you are able to reproduce the scrambled depthmap on v1.11? for me it seems fine

I see, this likely is because of the opengl ground truth issue also mentioned in #374 , so I will close this issue


Increase https monitoring and certificate time

There are too few types of monitored websites. We hope to add https monitoring and certificate expiration notification.

this feature already existed.
check here:


Add read/write socket support to libdispatch for windows

Hi,
I've massaged the libdispatch to the point where readable and writable sources can be used on
windows.
Bozzo

how  to build it with block support on windows using llvm clang?

@wuqiong is the question about this pull request, or about libdispatch on windows in general?

I know it took a while... but this has bin merged as of 68e917cc21e48f13bf73368a693005e9840e5079. Thank you very much!


Slashes in path to bootstrap.php

Is possible to make something with that? When i work in Windows i've something like "require_once DIR . '/........\bootstrap.php';" in code. Is possible to force change slashes to forward one even when i use Windows?

yes, it is annoying when I upload it to Unix server and it complains :-/
Windows understand unix slashes (/), so it would be nice to force unix style.

@SendiMyrkr you can use PHP constant DIRECTORY_SEPARATOR in your code. https://stackoverflow.com/questions/26881333/when-to-use-directory-separator-in-php-code/26881417

It's a some time, but if i remember well, than problem was in generated path which was generated depending by used OS. Thats a problem when someone works on windows and has linux server.

Aha, If it is generated in the plugin, I will look at it and I will try to fix it.


More on EventFactory

This PR:

continues migration to creating events and event contexts via EventFactory;
moves enrichment utilities into a separate class;
improves working with quotes in ListStringifier and MapStringifier;
bumps Gradle version to 3.5.

@IlliaShepilov, please have a look at the regexp issue that I mentioned in the chat.

@armiol, @IlliaShepilov is going to add some changes that we discussed via chat.
@IlliaShepilov, please notify @armiol when you finish.

@armiol PTAL.


refactor: simplify code

What type of PR is this? (check all applicable)

[ ] 🍕 Feature
[ ] 🐛 Bug Fix
[ ] 📝 Documentation Update
[ ] 🎨 Style
[x] 🧑💻 Code Refactor
[ ] 🔥 Performance Improvements
[ ] ✅ Test
[ ] 🤖 Build
[ ] 🔁 CI
[ ] 📦 Chore (Release)
[ ] ⏩ Revert

Description
I thought the code could be simplified, I don't think there is a need to use two separate files.
Related Tickets & Documents
yeah sorry no ticket I'm just hacking around ☺
Mobile & Desktop Screenshots/Recordings

Added tests?

[ ] 👍 yes
[x] 🙅 no, because they aren't needed
[ ] 🙋 no, because I need help

Added to documentation?

[ ] 📜 README.md
[ ] 📓 docs.opensauced.pizza
[ ] 🍕 dev.to/opensauced
[ ] 📕 storybook
[x] 🙅 no documentation needed

[optional] Are there any post-deployment tasks we need to perform?
[optional] What gif best describes this PR or how it makes you feel?

this is obsolete now


[GKE Checks] Add additional security checks for k8s

👋
Thought I'd add some more GKE security checks. I'll do my best to implement any feedback! If this gets added I can create some wiki pages for these rules to provide more context.
What checks have been added?

GCP006: Checks if node_metadata in workload_metadata_config is set to EXPOSE or UNSPECIFIED

setting the flag to EXPOSED or UNSPECIFIED disables metadata concealment.
https://cloud.google.com/kubernetes-engine/docs/how-to/protecting-cluster-metadata#create-concealed

GCP007: Checks if legacy metadata endpoints have been disabled

Compute Engine's instance metadata server exposes legacy /0.1/ and /v1beta1/ endpoints, which do not enforce metadata query headers.
https://cloud.google.com/kubernetes-engine/docs/how-to/protecting-cluster-metadata#disable-legacy-apis

GCP008: Checks for use of risky legacy client authentication methods with static user/pass or client certs

pre-provisioned x509 certificate or static password were the only available authentication methods, but are now not recommended and disabled by default on new clusters since 1.12+
https://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster#restrict_authn_methods

GCP009: Checks whether pod security policy enforcement has been enabled for a cluster. Implementing this requires more than enabling this option, but a wiki page containing a more guidance can be done up.

By default, Pods in Kubernetes can operate with capabilities beyond what they require. You should constrain the Pod's capabilities to only those required for that workload.
https://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster#admission_controllers

GCP010: Checks if shielded GKE nodes have been enabled

Shielded GKE Nodes provide strong, verifiable node identity and integrity to increase the security of GKE nodes and should be enabled on all GKE clusters.
https://cloud.google.com/kubernetes-engine/docs/how-to/hardening-your-cluster#shielded_nodes

@Owen-Cummings Thanks very much for this, everything looks great! I'll add you as a collaborator so you can have wiki permissions. :+1:


Allow opening floating windows not relative to the cursor

Hello!
I've noticed that an option for opening Aerial as a floating window relative to the cursor was added with issue https://github.com/stevearc/aerial.nvim/issues/23. It would be nice, however, to also support opening a floating window that is not relative to the cursor, akin to Fzf/Telescope.
If I'm not mistaken, this would mean an alternate call to nvim_open_win with relative set to "editor", and with width, height, row and col set in a manner to have some padding.
In terms of adding this to the config, I propose the following: add a field to the float section, relative, which can be either "cursor" or "editor" (and maybe also "buffer" in the future?). If it's "cursor" (the default), then it follows the current logic, reading the row, col, max_height and min_height fields. However, if it's set to "editor", then it should look for padding_x and padding_y fields. The shape of the floating window would then be as follows, where w and h are the width and height of the terminal: width = w - 2*floor(padding_x*w), height = h - 2*floor(padding_y*h), row = floor(padding_y*h), col = floor(padding_x*w).

Added some config options for different relative floats, and made the width/height options more flexible (you can specify percentages, rows/cols, or both). There's an escape hatch in config.float.override that will let you customize any of the values if you want.
Give it a try! Let me know if the defaults make sense. I also had to rework a decent chunk of the existing width calculation logic, so let me know if you find any bugs.

Oops, sorry for the delay, totally thought I had already responded.
Thank you very much! I played around with it a bit, and everything seems to be working. Nice work!
Yeah, the defaults seem pretty reasonable.
(Note: I'm personally using something a bit more customized (in Yuescript):
                override: (conf) ->
                    local stats = vim.api.nvim_list_uis![1]
                    local width = stats.width
                    local height = stats.height - 1 -- to account for the statusline
                    local padding_x = math.floor(0.1 * width)
                    local padding_y = math.floor(0.1 * height)

                    conf.width = width - 2*padding_x
                    conf.height = height - 2*padding_y
                    conf.row = padding_y - 1
                    conf.col = padding_x - 1
                    conf.anchor = "NW"

                    conf

)


Fix Honduras Morazan weekend bug.

Add test for 2025 to cover this case (when Oct 1st is the first Wed of the month)

Coverage increased (+0.01%) to 99.575% when pulling 173b52a911653bb1d80b2f4d194462f6e3294ba5 on arkid15r:fix-honduras-morazan-weekend-bug into ebbfc394cf05ab99cf8f268a48b8a4cf1d2b56ce on dr-prodigy:beta.

Thx @arkid15r + @KJhellico , great job 👍  Merged in beta.


Don't list @types packages as dependencies

I tried installing typedoc and am suddenly getting a build error for a type definition that I don't even depend on, but typedoc does.
export function highlightBlock(block: Node) :
node_modules/@types/highlight.js/index.d.ts(19,40): error TS2304: Cannot find name 'Node'.

All @types dependencies should be moved to devDependencies in package.json

Duplicate of #408 #335 #350 #384 #418 and #434
Please see those issues for discussion. TLDR: It isn't ideal but we need to have it that way.
When #579 is released that might fix your issue.

Thanks aciccarello.
This doesn't really fix my issue though. What types am I missing that is causing this to fail?

These errors usually happen because the type definition files are updated but don't follow semantic versioning so the version npm resolves is not compatible with the one used when TypeDoc was released. That's why #579 is pinning the versions.
As a workaround, you can use the --ignoreCompilerErrors option to get TypeDoc to build.

Makes sense.
Thanks, will try that flag.


Add in missing telemetry

Found one more: ms-python.python/hashed_package_perf, property duration.
Any chance we could wait until the second week of the new year to merge this PR? I wanted to have more folks to take a look at it 😅

@luabud what other folks?


Parallel bundle install/update

Fixes #336
See https://trello.com/c/KhaofSgy/89-parallel-bundle-install-update

Done in #529


istio-proxy use old pod ip get 503

Is this the right place to submit this?

[X] This is not a security vulnerability or a crashing bug
[X] This is not a question about how to use Istio

Bug Description
Deploy two services, service A(<IP_ADDRESS>) will call service B's interface through the service name, when service B() is rebuilt, the Pod IP changes, and A will still use the old Pod IP when calling B.
Before  delete

After deletion

service A istio-proxy log

Version
$ istioctl version
client version: 1.17.1
control plane version: 1.17.1
data plane version: 1.17.1 (633 proxies)

$ kubectl version --short
Client Version: v1.24.12
Kustomize Version: v4.5.4
Server Version: v1.24.12

Additional Information
No response

Istio 1.17 is multiple years end of life and not supported. Please upgrade.
This is https://istio.io/latest/docs/ops/configuration/traffic-management/traffic-routing/#unmatched-traffic per the "passthroughclsuter". This means your app is picking the pod IP -- not Istio. Plausible caused by https://github.com/istio/istio/issues/27619, etc.


Create Feature Compliance Manifest for ably-flutter

For motivation, see Future Direction for the SDK Manifests.
Acceptance criteria:
Scope of work under this issue:

the manifest should have a conformed name and location, as decided in the work done under https://github.com/ably/ably-common/issues/157
A CI check must be added that uses our new GitHub Action, validating and render SDK manifests against the canonical features list (see internal Jira story SDK-2403)
A CI step must be added that pushes the rendered manifest view to sdk.ably.com using our SDK Upload Action

┆Issue is synchronized with this Jira Uncategorised by Unito

To explain my addition of a suffix to this issue's title, despite its superfluous nature given the GitHub context, it helps us internally when viewing this issue under the Jira epic that it's sync'd to internally. Sorry.