Xcode tests are failing on mac runners due to lack of resources to load files from disk under 1s

Description
Hi, we are having a problem with failed async tests on GH macOS runners that executes the iOS framework tests. In some cases, it takes more than 1s to load a JSON (mocked HTTP response) file that has eta 200 bytes in size to memory. This results in many failing tests in our frameworks.
I have also noticed that heavy operational tests where for example an image gets rendered are also taking longer than 1s. All those tests are running perfectly fine on very old Mac minis which we moved away from.
We are experiencing such issues for a month or so now.
Tests are executed via Fastlane scan
https://docs.fastlane.tools/actions/scan/
Area for Triage:

contains: 'Apple'
contains: 'Xcode'
Question:
The issue can be fixed by setting longer expectations times for the async tests, however, what time is enough then and why is it taking so long to load a file from a disk?
Thank you very much for any kind of answers.
Virtual environments affected

[ ] Ubuntu 16.04
[ ] Ubuntu 18.04
[ ] Ubuntu 20.04
[*] macOS 10.15
[ ] macOS 11.0
[ ] Windows Server 2016 R2
[ ] Windows Server 2019

Image version
Versions affected past 1-2 months or so.
Expected behavior
Loading a file from disk during unit-testing takes nanoseconds
Actual behavior
Loading a file from disk during unit-testing takes more than a second
Repro steps
I don't have a public repo where I could showcase it.

Hello @CyrilCermak,
Could you please provide some sample repo and steps to reproduce the issue? It would be great to reproduce it somehow to investigate the issue further.
We are looking forward to your reply.

Hello @Darleev, thanks for your answer. I will provide the example ASAP.

Hello @CyrilCermak,
In order to continue the investigation for the case, we are waiting for steps to reproduce the issue or sample repo.
We look forward to hearing from you.

Hey @Darleev, I am sorry it took so long, but I took the time and investigated a bit more so that I could give an explanation as clear as possible.
Here is the example repository + PR with workflows:
https://github.com/CyrilCermak/-GHEnvTesting/pull/2
Now this repository is on my private free account, however, the issue happens also on our corporate account.
On our repository there are many developers working on simultaneously, we have heaps of PRs and unlimited runners restrictions. I think it can easily happen that there are around 60+ workers running in parallel.
Nevertheless, what I managed to reproduce in the provided repository is that the compile time of one function differs from 1 minute up to 5 minutes plus the computational tests are failing randomly. This is the same on the corporate account.
The test on my local machine which is 2018 MBP, 2,6GHz takes 2s to complete. Three runners were not able to finish it under 20s.
Unfortunately, I was not able to reproduce the long load time from the disk drive. That seems to be very random, yet it happens from time to time in a very similar environment.
What I experienced many times was that test that takes ~10 minutes took 50 minutes to complete. It mostly happens when there are a lot of runners running in parallel.
If I manage to reproduce or figure out more about the load from the disk I would update it here.
Thank you very much for looking into it.

Hello @CyrilCermak,
Could you please add an additional step to the workflow(), in order to determine the hostname for slow/fast jobs:
It can be
$ hostname
or
echo $HOSTNAME
and when the next time the issue appears again, please provide hostname and link to the job.
Meantime, could you please send a couple of links where the issue was actual?

Yes, I can do that.
I am sorry I let the repo private, it's now public so you should be able to access it.
By links, do you mean a link to the concrete runner?
Thanks!

Hello @CyrilCermak,
Thank you for the provided repository, it's very useful for the investigation.
I found that some machines are slower than others, and we need to investigate it deeper in collaboration with platform engineers.
I'll keep you informed.

@CyrilCermak In order to investigate the issue further, an engineering team created a task for an internal investigation. I put this task to "Waiting for Response" status until any updates from their side.
In case of any questions, feel free to contact us.

@Darleev, thank you very much for your help! If I find out more useful info I will keep you updated as well.
Thanks!

@CyrilCermak is this still actual for you?

Hi @miketimofeev, it's been quite stable lately so I think it's all good. Thank you.

Closing per last comment


Add Tacoma (& others) dropdown for selecting data source

We want to throw in Tacoma data and possibly WSP. These should be selectable via drop-down list or something similar prior to searching.

Resolved by #35

Resolved by #35


Cyclic dependency between keycloak-ui and keycloak

There's a cyclic dependency between keycloak-ui and keycloak, which pretty much makes it impossible to do a proper release at the moment.
keycloak depends on keycloak-ui:
https://github.com/keycloak/keycloak/blob/20fa75f677b365c719f013cb59accda0170f627a/dependencies/admin-ui/pom.xml#L36-L40
keycloak-ui depends on keycloak:
https://github.com/keycloak/keycloak-ui/blob/main/keycloak-theme/pom.xml#L72-L86

Only solution (which is not great) I can think of here is that we split Keycloak into two:

Build/release most JARs from keycloak
Build/release admin-ui
Build/release dist only from Keycloak

Another solution could be to single-repo everything:

Move keycloak-ui repo into keycloak/ui or something like that

An slight variant to the "Another solution" is to have two repos:

keycloak-clients
keycloak

In keycloak-clients we would client libraries like SAML, authz client, keycloak.js. Then in keycloak we would have everything server-side.
However, it could be beneficial to single-repo that as well, but perhaps still have separate release cycles for client libs.

Alternatively, remove all the Java code from the UI repo so that this dependency no longer exists, and build the API out in the main project.

Alternatively, remove all the Java code from the UI repo so that this dependency no longer exists, and build the API out in the main project.

@stianst I believe this is what we decided to do as a first step.  Is it a requirement for 19.0.3?  If not, we will target for 20.0.0.

@ssilvert 20.0.0 would be good


Scala Common Enrich: add validation for contexts added by enrichments

Related to #3795
Shredder became IgluUtils and was rewritten. I took the opportunity to add decent unit tests to the validation of unstructured events and input contexts as well. The unit tests for IgluUtils are:
[info] IgluUtilsSpec
[info] extractAndValidateUnstructEvent should
[info]   + return None if unstruct_event field is empty
[info]   + return a SchemaViolation.NotJson if unstruct_event does not contain a properly formatted JSON string
[info]   + return a SchemaViolation.NotIglu if unstruct_event contains a properly formatted JSON string that is not self-describing
[info]   + return a SchemaViolation.CriterionMismatch if unstruct_event contains a self-describing JSON but not with the expected schema for unstructured events
[info]   + return a SchemaViolation.NotJson if the JSON in .data is not a JSON
[info]   + return a SchemaViolation.IgluError wrapping a ValidationError if the JSON in .data is not self-describing
[info]   + return a SchemaViolation.IgluError wrapping a ValidationError if the JSON in .data is not a valid SDJ
[info]   + return a SchemaViolation.IgluError wrapping a ResolutionError if the schema of the SDJ in .data can't be resolved
[info]   + return the extracted unstructured event if .data is a valid SDJ
[info] extractAndValidateInputContexts should
[info]   + return Nil if contexts field is empty
[info]   + return a SchemaViolation.NotJson if .contexts does not contain a properly formatted JSON string
[info]   + return a SchemaViolation.NotIglu if .contexts contains a properly formatted JSON string that is not self-describing
[info]   + return a SchemaViolation.CriterionMismatch if .contexts contains a self-describing JSON but not with the right schema
[info]   + return a SchemaViolation.IgluError wrapping a ValidationError if .data does not contain an array of JSON objects
[info]   + return a SchemaViolation.IgluError wrapping a ValidationError if .data contains one invalid context
[info]   + return a SchemaViolation.IgluError wrapping a ResolutionError if .data contains one context whose schema can't be resolved
[info]   + return 2 expected failures for 2 invalid contexts
[info]   + return an expected failure if one context is valid and the other invalid
[info]   + return the extracted SDJs for 2 valid input contexts
[info] validateEnrichmentsContexts should
[info]   + return an expected failure for one invalid context
[info]   + return 2 expected failures for 2 invalid contexts
[info]   + return an expected failure for 1 valid context and one invalid
[info]   + not return any error for 2 valid contexts

I refactored EnrichmentManager.enrichEvent() so that only one bad row can be emitted per event (in R118 both an EnrichmentFailures and a SchemaViolations could be emitted at the same time for the same event). The new logic is:

Validate unstructured event and contexts. If not valid, short-circuit and emit SchemaViolations
Run the enrichments. If problem(s), short-circuit and emit EnrichmentFailures
Check that all the contexts added by the enrichments are valid. If not, emit EnrichmentFailures wrapping an IgluError.

EnrichmentManager.enrichEvent() was not unit tested so I created it to test the new logic:
[info] EnrichmentManagerSpec
[info] enrichEvent should
[info]   + emit a SchemaViolations wrapping 2 expected errors if the input event contains 2 invalid contexts
[info]   + emit a SchemaViolations wrapping 1 expected error if the input unstructured event is invalid
[info]   + emit a SchemaViolations wrapping 3 expected errors if the input event contains 2 invalid contexts and 1 invalid unstructured event
[info]   + emit an EnrichmentFailures wrapping an expected error (Simple here) if one of the enrichment fails (JS enrichment here)
[info]   + emit an EnrichmentFailures wrapping an IgluError if one of the contexts added by the enrichments is invalid (using JS enrichment)
[info]   + emit an EnrichedEvent if the input event contains a valid context and a valid unstructured event

I removed EnrichmentStageIssue and replaced it by either SchemaViolation or EnrichmentFailure everywhere, to always be as specific as we can be.
I also updated SchemaEnrichment because with the new workflow it can access the result of IgluUtils.extractAndValidateUnstructEvent and does not need to extract the unstructured event again.
Schemas for unit tests are in src/test/resources/iglu-schemas/.
As a reminder, a SchemaViolations bad row can contain several FailureDetails.SchemaViolation, and an EnrichmentFailures bad row can contain several FailureDetails.EnrichmentFailure.
Important files of the PR:

EnrichmentManager + EnrichmentManagerSpec
IgluUtils + IgluUtilsSpec
SchemaEnrichment + SchemaEnrichmentSpec

May I ask why we'd prefer Either over Validated? Is it to use Scala lib wherever we can instead of an external library?

Yes! My hope is that if at some point people outside Snowplow will start using SCE, the entry-point signature will be a bit more familiar. Though this is really-really minor.

Hi @dilyand and @chuwy , I addressed your feedback (in https://github.com/snowplow/snowplow/pull/4287/commits/7a73d3156a826babd4112631c37377183f5eb71f). Mainly it includes:

Move the TransformMap stuff to its own file (Transform.scala). It contains the mapping/transforming of the input fields of the raw event to fields of the enriched event
Create function EnrichmentManager.enrichEvent() to run all the enrichments
Create function IgluUtils.extractAndValidateInputJsons() to extract and validate the unstructured event and the input contexts at once, in order to reduce the logic in EnrichmentManager
EnrichmentManager.enrichEvent() is now just a for - comprehension loop
Update unit tests regarding ^


Multiple host-only interfaces with same name can lead to generating a new useless host-only interface each time

Consider this output for VBoxManage list hostonlyifs:
Name:            VirtualBox NDIS 6.0 Miniport Driver
GUID:            6e31e280-558a-471e-89cd-d5144bf025f1
DHCP:            Disabled
IPAddress:       <IP_ADDRESS>
NetworkMask:     <IP_ADDRESS>
IPV6Address:     fe80:0000:0000:0000:c187:1d90:6de1:a85c
IPV6NetworkMaskPrefixLength: 64
HardwareAddress: 0a:00:27:00:00:00
MediumType:      Ethernet
Status:          Up
VBoxNetworkName: HostInterfaceNetworking-VirtualBox NDIS 6.0 Miniport Driver

Name:            VirtualBox NDIS 6.0 Miniport Driver
GUID:            f6050f89-457e-40a5-9c8c-7436fa4f299c
DHCP:            Disabled
IPAddress:       <IP_ADDRESS>
NetworkMask:     <IP_ADDRESS>
IPV6Address:     fe80:0000:0000:0000:e970:91cd:7ace:351f
IPV6NetworkMaskPrefixLength: 64
HardwareAddress: 0a:00:27:00:00:00
MediumType:      Ethernet
Status:          Up
VBoxNetworkName: HostInterfaceNetworking-VirtualBox NDIS 6.0 Miniport Driver

Searching for an host-only interface for IP 19<IP_ADDRESS> will fail once the other time because the interfaces are stored in a map indexed by name.
When we see interfaces with duplicated name or duplicated IP, we should fail and ask the user to clean things up.
The test for borked hostonly interfaces could even be done in PreCreateCheck() so that the VM is not even created.

:+1: :+1: :+1: for this


Update meterpreter.sl

Fix issue with Auxiliary scanner output

Where is this file ?

In the scripts folder of the source.  On a system with Armitage installed, it will be contained / compiled in the .JAR file.

sorry i do not understand .. i have kali 2.0 with armitage installed, what should i do to fix the error

Not sure if this will be accepted there hasn't been any activity from the owner since 2016 as far as i know. But yes this is a long lasting issue that has changed a few times already.

@netniV you should just link to your forked repo as i don't think this will be updated. Some other fixes/nice updates are already in the pull requests from 2015 XD

Confirmed the fix works. Tested in Kali 2017.3
Thanks!

@LiquidSnowSurfer can you comment where is a folder that need modify?

@LiquidSnowSurfer Thanks for confirming it :)
@gsanchez2892 You need to download the source and compile it.  You can use my repository which already has this fix in it and is otherwise no different to this repo at the moment.

@gsanchez2892
It's in /usr/share/armitage
Rename armitage.jar to .zip then open it (no need to extract)
Within the zip you should find scripts/meterpreter.sl
Update line 381, save and rename the zip back to .jar.

Tranks so much. Confirmed the fix works.

Thanks Guys, works like a charm !

Closing due to lack of response from repo owner.  Patch will remain on my repo.


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Not allowed to upload to pypi but test.pypi

Describe the bug
I successfully upload my package to test.pypi.org (see. pure). However, when I try to upload to pypi.org I got an error 403:

HTTPError: 403 Client Error: The user 'edouard-lopez' isn't allowed to upload to project 'Pure'. See https://pypi.org/help/#project-name for more information. for url: https://upload.pypi.org/legacy/

Yet, there is no pure project on pypi.org.
Note that my package name is lowercase pure, but the error mention a capitalize name Pure.
❯ make upload-package
Pypi username:
twine upload --username edouard-lopez dist/*
Uploading distributions to https://upload.pypi.org/legacy/
Uploading pure-1.2.2-py3-none-any.whl
100%|██████████| 12.6k/12.6k [00:01<00:00, 7.44kB/s]
NOTE: Try --verbose to see response content.
HTTPError: 403 Client Error: The user 'edouard-lopez' isn't allowed to upload to project 'Pure'. See https://pypi.org/help/#project-name for more information. for url: https://upload.pypi.org/legacy/
make: *** [upload-package] Error 1
makefile:107: recipe for target 'upload-package' failed

Expected behavior
If package is accepted/refused by test.pypi.org it should be the same on pypi.org.
To Reproduce

My Platform
NAME="Linux Mint"
VERSION="19 (Tara)"
ID=linuxmint
ID_LIKE=ubuntu
PRETTY_NAME="Linux Mint 19"
VERSION_ID="19"
HOME_URL="https://www.linuxmint.com/"
SUPPORT_URL="https://forums.ubuntu.com/"
BUG_REPORT_URL="http://linuxmint-troubleshooting-guide.readthedocs.io/en/latest/"
PRIVACY_POLICY_URL="https://www.linuxmint.com/"
VERSION_CODENAME=tara
UBUNTU_CODENAME=bionic

❯ python3 --version
Python 3.6.7

❯ twine --version
twine version 1.13.0 (pkginfo: <IP_ADDRESS>, requests: 2.21.0, setuptools: 40.8.0,
requests-toolbelt: 0.9.1, tqdm: 4.31.1)

Additional context
User is the same between test.pypi.org and pypi.org, password differ.

This package already exists on PyPI, but the owner has removed all the releases (hence why it appears to be 404). I've reached out to the current owner to see if they would be willing to transfer it to you.

Please transfer the package.

Thanks @rdpate.
@edouard-lopez, I've added edouard-lopez as an owner of the Pure package. Please note that you won't be able to make a release with versions 0.0.0, 0.1.0, or 0.1.1 as these have been previously used, and PyPI prohibits reuse of version numbers.

Thanks :)

@di why is @rdpate listed as a maintainer? I would love to have contributors but I'm not sure that's the expected behavior.

listed as a maintainer

Hello @di I believe I am the same situation as @edouard-lopez. The project name in question is "otter". Is there a proper channel for me to request that the project be transfered to me? Thanks!

@chuck1 Please create a separate issue in this repo. There is a large backlog of similar issues, be aware that unless you reach out to the maintainer yourself, and they are receptive, it is unlikely that this will be resolved as quickly as this example.


WIP. Fix NPM publish on tag creation

Relates-to : OLPEDGE-1539
Signed-off-by: Yaroslav Stefinko<EMAIL_ADDRESS>

Codecov Report

Merging #199 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master    #199   +/-   ##
======================================
  Coverage    68.6%   68.6%
======================================
  Files          57      57
  Lines        1546    1546
  Branches      183     183
======================================
  Hits         1062    1062
  Misses        438     438
  Partials       46      46

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 b9d1632...2bcb048. Read the comment docs.


Add missing variable in Introduction

Given the outputs, the variable key must have been used while printing

Codecov Report

Merging #315 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master   #315   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files         111    111
  Lines        3020   3020
=====================================
  Hits         3020   3020

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 12b04ba...3dddaaa. Read the comment docs.

Thanks :)


hiera.yaml updated to use OS and major release

I have updated hiera.yaml to use the OS name and renamed the hiera data files in data/cis to reflect what facter returns.  I don't know all of the exact names for every Linux you support but have completed RedHat, AlmaLinux, CentOS and Ubuntu.

Argh! Git has recorded my file name changes for the hiera data.

Agreed, lower case would be better.  I had the same thoughts when writing the fix, although I don't think it's possible to downcase facts in hiera.

Btw. can you please tell me what the problems have been with the default config of the module and not compiling? I would like to have a look at that to fix these things.

There is a duplicate declaration of firewalld service (firewalld_service.pp) between your module and the puppetlabs firewall (redhat.pp) also one with Package[iptables-services] and the same Puppetlabs/firewall (redhat.pp).
It can be worked around by disabling the cis_security_hardening functionality.

Included in release 0.7.7, so I close this one.


Add a profile build type to the app template

This is required in order to support "flutter run --profile"

@gspencergoog


decrypted IDs contain extra 0 bytes

Decrypted IDs contain extra bytes with a value of 0. See this line of code
https://github.com/digi-trust/dt-cdn/blob/develop/src/modules/helpers.js#L292
Change to use Uint8Array and not insert an extra byte, as our data fits within ascii ranges.

resolved in 1.4.0


Update hub and spoke step by steps

https://github.com/Azure/Enterprise-Scale-for-AVS/tree/main/BrownField/Networking/Step-By-Step-Guides/Expressroute connectivity for AVS without Global Reach

Feedback that the image doesn't match the Azure docs so this scenario isn't easy to identify

While cli is fine, the step-by-step needs screenshots from a portal experience so that it's easy to follow

The most important issue is that I have only seen this successfully implemented by specific members of the team and often requires their intervention to unblock users which do not scale. A simple mistake can lead to long amounts of troubleshooting. There are also undocumented steps and gotchas in the current implementation. There is feedback that we may also need additional UDRs in the hub for users not comfortable with routing within their NVA

I would suggest to unpublish the step-by-step, updating with portal mages, having the field test it, updating the guidance, and republishing it.
I would update the Hub and Spoke (scenario v) with a portal experience and images consistent with Azure docs too.
Thanks.

@sblair01  is this something you can help to fix it?

@sblair01  could you please look into this?

Closing out for now.


Cache gif in memory so it plays instantly when shown

Hello,
I have a use-case where the user can 'dynamically' show an image from a set of gif files. The potential gif files to show are known at run-time and I want to pre-load / cache all gifs in memory when my application loads, such that when any (of the cached) files are shown on screen they play immediately.
Currently it looks like the gif does not start loading into memory until it becomes visible on screen, e.g. if its container control is about to become visible. The entire application hangs for a while and then continues when finished loading.
I am fine with using a lot of memory, memory is cheap and the intent is to pre-load all images and gifs into memory such that they can be shown immediately with no delay.
For normal static images I am using the following to force them to load immediately instead of 'on demand'. I call this code on application start, once for each image in the list of potential images.
var bmp = new BitmapImage();
using (var stream = File.OpenRead(filepath))
{
	bmp.BeginInit();
	bmp.CacheOption = BitmapCacheOption.OnLoad;
	bmp.StreamSource = stream;
	bmp.EndInit();
}
bmp.Freeze();
return bmp;

This seems to work for static images but it does not play nice with this gif library. When I use this for gifs it throws an exception that the file is closed and cannot load the gif when it is about to become visible:
System.ObjectDisposedException: 'Cannot access a closed file.'
I guess it has to do with the stream being closed already, but again this indicates that the loading is not happening on load but actually on demand (after the stream has already closed).
I circumvented the error by using an UriSource instead, but it still does not load the file into memory and only starts loading on demand.
var gif = new BitmapImage();
gif.BeginInit();
gif.UriCachePolicy = new System.Net.Cache.RequestCachePolicy(System.Net.Cache.RequestCacheLevel.BypassCache);
gif.CacheOption = BitmapCacheOption.OnLoad;
gif.CreateOptions = BitmapCreateOptions.IgnoreImageCache;
gif.UriSource = new Uri(Path);
gif.EndInit();
return gif;

I tried all the options for caching and loading but none of them seem to make a difference. Is this just hardcoded behavior of the library that it only starts loading the frames on demand instead of immediately? Is there any way I can force it to load into memory at will instead of on demand?
Thanks!

Small update: it seems to help a bit but still not fully smooth. More importantly, it seems I underestimated how much memory even a small gif takes up this way. I think I had only 2 gifs loaded (~few kB and one large one about 1 MB) and it immediately went to 1.5 GB of memory. I stand by my statement that memory is cheap but there is a limit lol... I am probably going to need to support up to 50 or 60 gifs and that would be way too much.
I am now trying out your XamlAnimatedGif instead, maybe I can make that work better. It seems there I have a similar problem that gifs take many seconds to load especially if I try to show several of them at once.
For now I will close this with the remark that it is possible to do what I wanted but not practical due to memory concerns after all. Thanks for the help anyway!

Yes, memory usage has always been the main problem of this library... that was one of the reasons for creating XamlAnimatedGif, but it has its own issues (e.g. slower rendering for large GIFs)


Add Blake2b

This is a rebase of #113.
I'm using this for a flutter crypto currency wallet I'm working on, as seen implemented in this package: https://github.com/bbedward/flutter_nano_core

Hmm, it'd be nice if this PR could work on top of the commits from #113. Both to give credit to the original author and to have the name of the implementer on top of the commit in case someone has questions about it later.

In that case, I could merge this next week and put it into a release as well.

I'll rebase it soon, originally it was just for personal usage but I'll redo it to preserve the original commits

Thanks!

@stevenroose Re-based this pull request to include @jminer's commit

Thanks!


Gym: PhaseScriptExecution Install\ Third\ Party

This lane has ran successfully many times, however has suddenly started erroring.
desc "Build"
  lane :build do
   match(type: "adhoc", readonly: true)

    gym(
      scheme: "AppName",
      configuration: "Ad hoc",
      include_bitcode: false,
      include_symbols:true,
      export_method: "ad-hoc"
    )
  end

New Issue Checklist

[x] Updated fastlane to the latest version
[x] I read the Contribution Guidelines
[x] I read docs.fastlane.tools
[x] I searched for existing GitHub issues

Issue Description

[16:45:18]E: Step 3/3: Build (Command Line) (23s)
[16:45:18] :	 [Step 3/3] Starting: /Users/teamcityadmin/buildAgent/temp/agentTmp/custom_script5309358319105453351
[16:45:18] :	 [Step 3/3] in directory: /Users/teamcityadmin/buildAgent/work/f702749c7c606c35
[16:45:19] :	 [Step 3/3] [16:45:19]:  [32m------------------------------ [0m
[16:45:19] :	 [Step 3/3] [16:45:19]:  [32m--- Step: default_platform --- [0m
[16:45:19] :	 [Step 3/3] [16:45:19]:  [32m------------------------------ [0m
[16:45:19] :	 [Step 3/3] [16:45:19]:  [32mDriving the lane 'ios build'    [0m
[16:45:19] :	 [Step 3/3] [16:45:19]:  [32m------------------- [0m
[16:45:19] :	 [Step 3/3] [16:45:19]:  [32m--- Step: match --- [0m
[16:45:19] :	 [Step 3/3] [16:45:19]:  [32m------------------- [0m
[16:45:19] :	 [Step 3/3] [16:45:19]:  [32mSuccessfully loaded '/Users/teamcityadmin/buildAgent/work/f702749c7c606c35/ios/fastlane/Matchfile'    [0m
[16:45:19] :	 [Step 3/3]
[16:45:19] :	 [Step 3/3] +---------+--------------------------------------------------------------------+
[16:45:19] :	 [Step 3/3] |                 Detected Values from './fastlane/Matchfile'                  |
[16:45:19] :	 [Step 3/3] +---------+--------------------------------------------------------------------+
[16:45:19] :	 [Step 3/3] | git_url |<EMAIL_ADDRESS>|
[16:45:19] :	 [Step 3/3] | type    | development                                                        |
[16:45:19] :	 [Step 3/3] | team_id | NFMPRCBV28                                                         |
[16:45:19] :	 [Step 3/3] +---------+--------------------------------------------------------------------+
[16:45:19] :	 [Step 3/3]
[16:45:19] :	 [Step 3/3]
[16:45:19] :	 [Step 3/3] +-----------------------+--------------------------------------------------------------------+
[16:45:19] :	 [Step 3/3] |                                   [32mSummary for match 2.81.0 [0m                                  |
[16:45:19] :	 [Step 3/3] +-----------------------+--------------------------------------------------------------------+
[16:45:19] :	 [Step 3/3] | type                  | adhoc                                                              |
[16:45:19] :	 [Step 3/3] | readonly              | true                                                               |
[16:45:19] :	 [Step 3/3] | git_url               |<EMAIL_ADDRESS>|
[16:45:19] :	 [Step 3/3] | git_branch            | master                                                             |
[16:45:19] :	 [Step 3/3] | app_identifier        | ["com.AppName.AppNameapp"]                                     |
[16:45:19] :	 [Step 3/3] | username              |<EMAIL_ADDRESS>                                    |
[16:45:19] :	 [Step 3/3] | keychain_name         | login.keychain                                                     |
[16:45:19] :	 [Step 3/3] | team_id               | NFMPRCBV28                                                         |
[16:45:19] :	 [Step 3/3] | verbose               | false                                                              |
[16:45:19] :	 [Step 3/3] | force                 | false                                                              |
[16:45:19] :	 [Step 3/3] | skip_confirmation     | false                                                              |
[16:45:19] :	 [Step 3/3] | shallow_clone         | false                                                              |
[16:45:19] :	 [Step 3/3] | clone_branch_directly | false                                                              |
[16:45:19] :	 [Step 3/3] | force_for_new_devices | false                                                              |
[16:45:19] :	 [Step 3/3] | skip_docs             | false                                                              |
[16:45:19] :	 [Step 3/3] | platform              | ios                                                                |
[16:45:19] :	 [Step 3/3] +-----------------------+--------------------------------------------------------------------+
[16:45:19] :	 [Step 3/3]
[16:45:19] :	 [Step 3/3] [16:45:19]: Cloning remote git repo...
[16:45:19] :	 [Step 3/3] [16:45:19]: If cloning the repo takes too long, you can use the `clone_branch_directly` option in match.
[16:45:22] :	 [Step 3/3] [16:45:22]:  [32m    Successfully decrypted certificates repo [0m
[16:45:22] :	 [Step 3/3] [16:45:22]: Installing certificate...
[16:45:22] :	 [Step 3/3] [16:45:22]:  [31mundefined method `append' for # [0m
[16:45:22] :	 [Step 3/3]
[16:45:22] :	 [Step 3/3] ++
[16:45:22] :	 [Step 3/3] |  [32mInstalled Certificate [0m |
[16:45:22] :	 [Step 3/3] ++
[16:45:22] :	 [Step 3/3] ++
[16:45:22] :	 [Step 3/3]
[16:45:22] :	 [Step 3/3] [16:45:22]: Installing provisioning profile...
[16:45:22] :	 [Step 3/3]
[16:45:22] :	 [Step 3/3] +---------------------+----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
[16:45:22] :	 [Step 3/3] |                                                                                [32mInstalled Provisioning Profile [0m                                                                                |
[16:45:22] :	 [Step 3/3] +---------------------+----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
[16:45:22] :	 [Step 3/3] | Parameter           | Environment Variable                               | Value                                                                                |
[16:45:22] :	 [Step 3/3] +---------------------+----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
[16:45:22] :	 [Step 3/3] | App Identifier      |                                                    | com.AppName.AppNameapp                                                                                |
[16:45:22] :	 [Step 3/3] | Type                |                                                    | adhoc                                                                                |
[16:45:22] :	 [Step 3/3] | Platform            |                                                    | ios                                                                                |
[16:45:22] :	 [Step 3/3] | Profile UUID        | sigh_com.AppName.AppNameapp_adhoc              | 22dac8a2-2a42-4c34-8ef1-23c51b1c17f1                                                                                |
[16:45:22] :	 [Step 3/3] | Profile Name        | sigh_com.AppName.AppNameapp_adhoc_profile-name | match AdHoc com.AppName.AppNameapp                                                                               |
[16:45:22] :	 [Step 3/3] | Profile Path        | sigh_com.AppName.AppNameapp_adhoc_profile-path | /Users/teamcityadmin/Library/MobileDevice/Provisioning Profiles/22dac8a2-2a42-4c34-8ef1-23c51b1c17f1.mobileprovision |
[16:45:22] :	 [Step 3/3] | Development Team ID | sigh_com.AppName.AppNameapp_adhoc_team-id      | NFMPRCBV28                                                                                |
[16:45:22] :	 [Step 3/3] +---------------------+----------------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
[16:45:22] :	 [Step 3/3]
[16:45:22] :	 [Step 3/3] [16:45:22]:  [32m [32mAll required keys, certificates and provisioning profiles are installed    [0m
[16:45:22] :	 [Step 3/3] [16:45:22]: Setting Provisioning Profile type to 'ad-hoc'
[16:45:22] :	 [Step 3/3] [16:45:22]:  [32m----------------- [0m
[16:45:22] :	 [Step 3/3] [16:45:22]:  [32m--- Step: gym --- [0m
[16:45:22] :	 [Step 3/3] [16:45:22]:  [32m----------------- [0m
[16:45:22] :	 [Step 3/3] [16:45:22]:  [36m$ xcodebuild -list -workspace ./AppName.xcworkspace -configuration Ad\ hoc [0m
[16:45:24] :	 [Step 3/3] [16:45:24]:  [36m$ xcodebuild -showBuildSettings -workspace ./AppName.xcworkspace -scheme AppName -configuration Ad\ hoc [0m
[16:45:26] :	 [Step 3/3] [16:45:26]: Detected provisioning profile mapping: {:"com.AppName.AppNameapp"=>"match AdHoc com.AppName.AppNameapp"}
[16:45:26] :	 [Step 3/3]
[16:45:26] :	 [Step 3/3] +----------------------------------------------------------------+------------------------------------------------------------------+
[16:45:26] :	 [Step 3/3] |                                                       [32mSummary for gym 2.81.0 [0m                                                       |
[16:45:26] :	 [Step 3/3] +----------------------------------------------------------------+------------------------------------------------------------------+
[16:45:26] :	 [Step 3/3] | scheme                                                         | AppName                                                        |
[16:45:26] :	 [Step 3/3] | configuration                                                  | Ad hoc                                                           |
[16:45:26] :	 [Step 3/3] | clean                                                          | true                                                             |
[16:45:26] :	 [Step 3/3] | include_bitcode                                                | false                                                            |
[16:45:26] :	 [Step 3/3] | include_symbols                                                | true                                                             |
[16:45:26] :	 [Step 3/3] | export_method                                                  | ad-hoc                                                           |
[16:45:26] :	 [Step 3/3] | export_options.provisioningProfiles.com.AppName.AppNameapp | match AdHoc com.AppName.AppNameapp                           |
[16:45:26] :	 [Step 3/3] | workspace                                                      | ./AppName.xcworkspace                                          |
[16:45:26] :	 [Step 3/3] | destination                                                    | generic/platform=iOS                                             |
[16:45:26] :	 [Step 3/3] | output_name                                                    | AppName                                                        |
[16:45:26] :	 [Step 3/3] | build_path                                                     | /Users/teamcityadmin/Library/Developer/Xcode/Archives/2018-02-23 |
[16:45:26] :	 [Step 3/3] | output_directory                                               | .                                                                |
[16:45:26] :	 [Step 3/3] | silent                                                         | false                                                            |
[16:45:26] :	 [Step 3/3] | skip_package_ipa                                               | false                                                            |
[16:45:26] :	 [Step 3/3] | buildlog_path                                                  | ~/Library/Logs/gym                                               |
[16:45:26] :	 [Step 3/3] | skip_profile_detection                                         | false                                                            |
[16:45:26] :	 [Step 3/3] | xcode_path                                                     | /Applications/Xcode.app                                          |
[16:45:26] :	 [Step 3/3] +----------------------------------------------------------------+------------------------------------------------------------------+
[16:45:26] :	 [Step 3/3]
[16:45:26] :	 [Step 3/3] [16:45:26]:  [36m$ set -o pipefail && xcodebuild -workspace ./AppName.xcworkspace -scheme AppName -configuration Ad\ hoc -destination 'generic/platform=iOS' -archivePath /Users/teamcityadmin/Library/Developer/Xcode/Archives/2018-02-23/AppName\ 2018-02-23\ 16.45.26.xcarchive clean archive | tee /Users/teamcityadmin/Library/Logs/gym/AppName-AppName.log | xcpretty [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:28] :	 [Step 3/3] [16:45:28]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:29] :	 [Step 3/3] [16:45:29]: ▸  [35m/var/folders/d6/dr08hgjd771d8gt7f99r0_5nmsq012/T/SchemeScriptAction-J78mpl: line 2: : command not found [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mClean [0m Succeeded [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mBuilding [0m React/yoga [(Release)] [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCopying [0m /Users/teamcityadmin/buildAgent/work/f702749c7c606c35/node_modules/react-native/ReactCommon/yoga/yoga/YGEnums.h [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCopying [0m /Users/teamcityadmin/buildAgent/work/f702749c7c606c35/node_modules/react-native/ReactCommon/yoga/yoga/YGMacros.h [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCopying [0m /Users/teamcityadmin/buildAgent/work/f702749c7c606c35/node_modules/react-native/ReactCommon/yoga/yoga/Yoga.h [0m
[16:45:29] :	 [Step 3/3] [16:45:29]:  [35m [33m▸ [0m  [39;1mCompiling [0m Yoga.cpp [0m
[16:45:34] :	 [Step 3/3] [16:45:34]:  [35m [33m▸ [0m  [39;1mCompiling [0m YGNode.cpp [0m
[16:45:34] :	 [Step 3/3] [16:45:34]:  [35m [33m▸ [0m  [39;1mCompiling [0m YGEnums.cpp [0m
[16:45:34] :	 [Step 3/3] [16:45:34]:  [35m [33m▸ [0m  [39;1mCompiling [0m YGNodePrint.cpp [0m
[16:45:34] :	 [Step 3/3] [16:45:34]:  [35m [33m▸ [0m  [39;1mCompiling [0m Yoga.cpp [0m
[16:45:34] :	 [Step 3/3] [16:45:34]:  [35m [33m▸ [0m  [39;1mCompiling [0m YGNode.cpp [0m
[16:45:34] :	 [Step 3/3] [16:45:34]:  [35m [33m▸ [0m  [39;1mCompiling [0m YGEnums.cpp [0m
[16:45:34] :	 [Step 3/3] [16:45:34]:  [35m [33m▸ [0m  [39;1mCompiling [0m YGNodePrint.cpp [0m
[16:45:34] :	 [Step 3/3] [16:45:34]:  [35m [33m▸ [0m  [39;1mBuilding library [0m libyoga.a [0m
[16:45:34] :	 [Step 3/3] [16:45:34]:  [35m [33m▸ [0m  [39;1mBuilding library [0m libyoga.a [0m
[16:45:35] :	 [Step 3/3] [16:45:35]:  [35m [33m▸ [0m  [39;1mBuilding [0m React/jsinspector [(Release)] [0m
[16:45:35] :	 [Step 3/3] [16:45:35]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:35] :	 [Step 3/3] [16:45:35]:  [35m [33m▸ [0m  [39;1mCopying [0m /Users/teamcityadmin/buildAgent/work/f702749c7c606c35/node_modules/react-native/ReactCommon/jsinspector/InspectorInterfaces.h [0m
[16:45:35] :	 [Step 3/3] [16:45:35]:  [35m [33m▸ [0m  [39;1mCompiling [0m InspectorInterfaces.cpp [0m
[16:45:36] :	 [Step 3/3] [16:45:36]:  [35m [33m▸ [0m  [39;1mCompiling [0m InspectorInterfaces.cpp [0m
[16:45:36] :	 [Step 3/3] [16:45:36]:  [35m [33m▸ [0m  [39;1mBuilding library [0m libjsinspector.a [0m
[16:45:36] :	 [Step 3/3] [16:45:36]:  [35m [33m▸ [0m  [39;1mBuilding library [0m libjsinspector.a [0m
[16:45:36] :	 [Step 3/3] [16:45:36]:  [35m [33m▸ [0m  [39;1mBuilding [0m React/privatedata [(Release)] [0m
[16:45:36] :	 [Step 3/3] [16:45:36]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:36] :	 [Step 3/3] [16:45:36]:  [35m [33m▸ [0m  [39;1mCopying [0m /Users/teamcityadmin/buildAgent/work/f702749c7c606c35/node_modules/react-native/ReactCommon/privatedata/PrivateDataBase.h [0m
[16:45:36] :	 [Step 3/3] [16:45:36]:  [35m [33m▸ [0m  [39;1mCompiling [0m PrivateDataBase.cpp [0m
[16:45:36] :	 [Step 3/3] [16:45:36]:  [35m [33m▸ [0m  [39;1mCompiling [0m PrivateDataBase.cpp [0m
[16:45:36] :	 [Step 3/3] [16:45:36]:  [35m [33m▸ [0m  [39;1mBuilding library [0m libprivatedata.a [0m
[16:45:36] :	 [Step 3/3] [16:45:36]:  [35m [33m▸ [0m  [39;1mBuilding library [0m libprivatedata.a [0m
[16:45:37] :	 [Step 3/3] [16:45:37]:  [35m [33m▸ [0m  [39;1mBuilding [0m React/double-conversion [(Release)] [0m
[16:45:37] :	 [Step 3/3] [16:45:37]:  [35m [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:37] :	 [Step 3/3] [16:45:37]:  [35m [33m▸ [0m  [39;1mRunning script [0m 'Install Third Party' [0m
[16:45:40] :	 [Step 3/3] [16:45:40]: ▸  [35m** ARCHIVE FAILED ** [0m
[16:45:40] :	 [Step 3/3] [16:45:40]: ▸  [35mThe following build commands failed: [0m
[16:45:40] :	 [Step 3/3] [16:45:40]: ▸  [35mPhaseScriptExecution Install\ Third\ Party /var/empty/Library/Developer/Xcode/DerivedData/AppName-atjilcccaexkxpagwbufgesyvpyi/Build/Intermediates.noindex/ArchiveIntermediates/AppName/IntermediateBuildFilesPath/React.build/Release-iphoneos/double-conversion.build/Script-190EE32F1E6A43DE00A8543A.sh [0m
[16:45:40] :	 [Step 3/3] [16:45:40]: ▸  [35m(1 failure) [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3] /var/folders/d6/dr08hgjd771d8gt7f99r0_5nmsq012/T/SchemeScriptAction-J78mpl: line 2: : command not found
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mClean [0m Succeeded
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mBuilding [0m React/yoga [(Release)]
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCopying [0m /Users/teamcityadmin/buildAgent/work/f702749c7c606c35/node_modules/react-native/ReactCommon/yoga/yoga/YGEnums.h
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCopying [0m /Users/teamcityadmin/buildAgent/work/f702749c7c606c35/node_modules/react-native/ReactCommon/yoga/yoga/YGMacros.h
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCopying [0m /Users/teamcityadmin/buildAgent/work/f702749c7c606c35/node_modules/react-native/ReactCommon/yoga/yoga/Yoga.h
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m Yoga.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m YGNode.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m YGEnums.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m YGNodePrint.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m Yoga.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m YGNode.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m YGEnums.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m YGNodePrint.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mBuilding library [0m libyoga.a
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mBuilding library [0m libyoga.a
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mBuilding [0m React/jsinspector [(Release)]
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCopying [0m /Users/teamcityadmin/buildAgent/work/f702749c7c606c35/node_modules/react-native/ReactCommon/jsinspector/InspectorInterfaces.h
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m InspectorInterfaces.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m InspectorInterfaces.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mBuilding library [0m libjsinspector.a
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mBuilding library [0m libjsinspector.a
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mBuilding [0m React/privatedata [(Release)]
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCopying [0m /Users/teamcityadmin/buildAgent/work/f702749c7c606c35/node_modules/react-native/ReactCommon/privatedata/PrivateDataBase.h
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m PrivateDataBase.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCompiling [0m PrivateDataBase.cpp
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mBuilding library [0m libprivatedata.a
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mBuilding library [0m libprivatedata.a
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mBuilding [0m React/double-conversion [(Release)]
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mCheck Dependencies [0m
[16:45:40] :	 [Step 3/3]  [33m▸ [0m  [39;1mRunning script [0m 'Install Third Party'
[16:45:40] :	 [Step 3/3] ** ARCHIVE FAILED **
[16:45:40] :	 [Step 3/3]
[16:45:40] :	 [Step 3/3]
[16:45:40] :	 [Step 3/3] The following build commands failed:
[16:45:40] :	 [Step 3/3] PhaseScriptExecution Install\ Third\ Party /var/empty/Library/Developer/Xcode/DerivedData/AppName-atjilcccaexkxpagwbufgesyvpyi/Build/Intermediates.noindex/ArchiveIntermediates/AppName/IntermediateBuildFilesPath/React.build/Release-iphoneos/double-conversion.build/Script-190EE32F1E6A43DE00A8543A.sh
[16:45:40] :	 [Step 3/3] (1 failure)
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31mExit status: 65 [0m
[16:45:40] :	 [Step 3/3]
[16:45:40] :	 [Step 3/3] +---------------+-------------------------+
[16:45:40] :	 [Step 3/3] |             [32m [33mBuild environment [0m            |
[16:45:40] :	 [Step 3/3] +---------------+-------------------------+
[16:45:40] :	 [Step 3/3] | xcode_path    | /Applications/Xcode.app |
[16:45:40] :	 [Step 3/3] | gym_version   | 2.81.0                  |
[16:45:40] :	 [Step 3/3] | export_method | ad-hoc                  |
[16:45:40] :	 [Step 3/3] | sdk           | iPhoneOS11.2.sdk        |
[16:45:40] :	 [Step 3/3] +---------------+-------------------------+
[16:45:40] :	 [Step 3/3]
[16:45:40] :	 [Step 3/3] [16:45:40]: ▸  [35m  0  510k    0  1370    0     0   1745      0  0:04:59 --:--:--  0:04:59  1745 [0m
[16:45:40] :	 [Step 3/3] [16:45:40]: ▸  [35mcurl: (23) Failed writing body (0 != 1370) [0m
[16:45:40] :	 [Step 3/3] [16:45:40]: ▸  [35mFailed to successfully download 'glog-0.3.4.tar.gz'.  Debug info: [0m
[16:45:40] :	 [Step 3/3] [16:45:40]: ▸  [35mls: /var/empty/.rncache/glog-0.3.4.tar.gz: No such file or directory [0m
[16:45:40] :	 [Step 3/3] [16:45:40]: ▸  [35mshasum: /var/empty/.rncache/glog-0.3.4.tar.gz:  [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31m⬆  Check out the few lines of raw `xcodebuild` output above for potential hints on how to solve this error [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:  [33m    For the complete and more detailed error log, check the full log at: [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:  [33m    /Users/teamcityadmin/Library/Logs/gym/AppName-AppName.log [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31mLooks like fastlane ran into a build/archive error with your project [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31mIt's hard to tell what's causing the error, so we wrote some guides on how [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31mto troubleshoot build and signing issues: https://docs.fastlane.tools/codesigning/getting-started/ [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31mBefore submitting an issue on GitHub, please follow the guide above and make [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31msure your project is set up correctly. [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31mfastlane uses `xcodebuild` commands to generate your binary, you can see the [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31mthe full commands printed out in yellow in the above log. [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31mMake sure to inspect the output above, as usually you'll find more error information there [0m
[16:45:40] :	 [Step 3/3] [16:45:40]:
[16:45:40] :	 [Step 3/3] +------------------------------------+--------------------------------------------------------------------------+
[16:45:40] :	 [Step 3/3] |                                                  [33mLane Context [0m                                                  |
[16:45:40] :	 [Step 3/3] +------------------------------------+--------------------------------------------------------------------------+
[16:45:40] :	 [Step 3/3] | DEFAULT_PLATFORM                   | ios                                                                      |
[16:45:40] :	 [Step 3/3] | PLATFORM_NAME                      | ios                                                                      |
[16:45:40] :	 [Step 3/3] | LANE_NAME                          | ios build                                                                |
[16:45:40] :	 [Step 3/3] | SIGH_PROFILE_TYPE                  | ad-hoc                                                                   |
[16:45:40] :	 [Step 3/3] | MATCH_PROVISIONING_PROFILE_MAPPING | {"com.AppName.AppNameapp"=>"match AdHoc com.AppName.AppNameapp"} |
[16:45:40] :	 [Step 3/3] +------------------------------------+--------------------------------------------------------------------------+
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31mError building the application - see the log above [0m
[16:45:40] :	 [Step 3/3]
[16:45:40] :	 [Step 3/3] +------+------------------+-------------+
[16:45:40]W:	 [Step 3/3]  [31m
[16:45:40] :	 [Step 3/3] |            [32mfastlane summary [0m            |
[16:45:40] :	 [Step 3/3] +------+------------------+-------------+
[16:45:40]W:	 [Step 3/3] [!] Error building the application - see the log above [0m
[16:45:40] :	 [Step 3/3] | Step | Action           | Time (in s) |
[16:45:40] :	 [Step 3/3] +------+------------------+-------------+
[16:45:40] :	 [Step 3/3] | 1    | default_platform | 0           |
[16:45:40] :	 [Step 3/3] | 2    | match            | 2           |
[16:45:40] :	 [Step 3/3] |      |  [31mgym [0m              | 17          |
[16:45:40] :	 [Step 3/3] +------+------------------+-------------+
[16:45:40] :	 [Step 3/3]
[16:45:40] :	 [Step 3/3] [16:45:40]:  [31mfastlane finished with errors [0m
[16:45:41] :	 [Step 3/3]
[16:45:41] :	 [Step 3/3]  [32mPlease update using `bundle update fastlane` [0m
[16:45:41]W:	 [Step 3/3] Process exited with code 1
[16:45:41]E:	 [Step 3/3] Step Build (Command Line) failed
[16:45:41] : Publishing internal artifacts
[16:45:42] :	 [Publishing internal artifacts] Publishing 1 file using [WebPublisher]
[16:45:42] :	 [Publishing internal artifacts] Publishing 1 file using [ArtifactsCachePublisher]
[16:45:41] : Publishing artifacts (2s)
[16:45:41] :	 [Publishing artifacts] Collecting files to publish: [ios/AppName.ipa]
[16:45:42] :	 [Publishing artifacts] Publishing 1 file [ios/AppName.ipa] using [WebPublisher]
[16:45:42] :	 [Publishing artifacts] Publishing 1 file [ios/AppName.ipa] using [ArtifactsCachePublisher]
[16:45:44] : Build finished

Environment

🚫 fastlane environment 🚫
Stack

Key
Value

OS
10.13.3

Ruby
2.3.3

Bundler?
false

Git
git version 2.14.3 (Apple Git-98)

Installation Source
/usr/local/bin/fastlane

Host
Mac OS X 10.13.3 (17D102)

Ruby Lib Dir
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib

OpenSSL Version
LibreSSL 2.2.7

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Applications/Xcode.app/Contents/Developer/

Xcode Version
9.2

System Locale

Variable
Value

LANG
en_GB.UTF-8
✅

LC_ALL

LANGUAGE

fastlane files:
`./fastlane/Fastfile`
# This file contains the fastlane.tools configuration
# You can find the documentation at https://docs.fastlane.tools
#
# For a list of all available actions, check out
#
#     https://docs.fastlane.tools/actions
#

default_platform(:ios)

ENV["DELIVER_ITMSTRANSPORTER_ADDITIONAL_UPLOAD_PARAMETERS"] = "-t DAV" #for the firewall

platform :ios do

  desc "Download and refresh new profiles for new device"
  lane :new_device_code_sign do
    match(type:"development", app_identifier: "com.appname.appnameapp", force_for_new_devices: true)
    match(type:"adhoc", app_identifier: "com.appname.appnameapp", force_for_new_devices: true)
    match(type:"appstore", app_identifier: "com.appname.appnameapp", force_for_new_devices: true)
  end

  desc "Build"
  lane :build do
   match(type: "adhoc", readonly: true)

    gym(
      scheme: "AppName",
      configuration: "Ad hoc",
      include_bitcode: false,
      include_symbols:true,
      export_method: "ad-hoc"
    )
  end

  desc "Submit Beta Build to Testflight"
  lane :submit_testflight do
     match(type: "adhoc", readonly: true)

    increment_build_number

    gym(
      scheme: "AppName",
      clean: true,
      include_symbols:true,
      export_method: "app-store"
    )

    increment_version_number

    upload_to_testflight(
      username<EMAIL_ADDRESS>      apple_id: "1348387872",
      distribute_external: false,
      skip_waiting_for_build_processing: true
    )
  end

end

`./fastlane/Appfile`
app_identifier "com.AppName.AppNameApp" # The bundle identifier of your app
apple_id<EMAIL_ADDRESS># Your Apple email address

# For more information about the Appfile, see:
#     https://docs.fastlane.tools/advanced/#appfile

fastlane gems

Gem
Version
Update-Status

fastlane
2.81.0
🚫 Update available

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

did_you_mean
1.0.0

slack-notifier
2.3.2

atomos
0.1.2

CFPropertyList
2.3.6

claide
1.0.2

colored2
3.1.2

nanaimo
0.2.3

xcodeproj
1.5.6

rouge
2.0.7

xcpretty
0.2.8

terminal-notifier
1.8.0

unicode-display_width
1.3.0

terminal-table
1.8.0

plist
3.4.0

public_suffix
2.0.5

addressable
2.5.2

multipart-post
2.0.0

word_wrap
1.0.0

tty-screen
0.6.4

tty-cursor
0.5.0

tty-spinner
0.8.0

babosa
1.0.2

colored
1.2

highline
1.7.10

commander-fastlane
4.4.5

excon
0.60.0

faraday
0.14.0

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20170404

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

fastimage
2.1.1

gh_inspector
1.1.2

mini_magick
4.5.1

multi_json
1.13.1

multi_xml
0.6.0

rubyzip
1.2.1

security
0.1.3

xcpretty-travis-formatter
1.0.0

dotenv
2.2.1

bundler
1.16.1

faraday_middleware
0.12.2

uber
0.1.0

declarative
0.0.10

declarative-option
0.1.0

representable
3.0.4

retriable
3.1.1

mime-types-data
3.2016.0521

mime-types
3.1

little-plugger
1.1.4

logging
2.2.2

jwt
2.1.0

memoist
0.16.0

os
0.9.6

signet
0.8.1

googleauth
0.6.2

httpclient
2.8.3

google-api-client
0.13.6

io-console
0.4.5

libxml-ruby
2.9.0

json
2.1.0

generated on: 2018-02-23

Looks like you have a script in your xcode project for ReactNative that is failing.
Doing some light googling, this seems to happen for various reasons.
https://github.com/facebook/react-native/issues/15922#issuecomment-329441704
and
https://github.com/facebook/react-native/issues/14368


Remove card-style (no background/border/padding/shadow)

What do you think about a card like this one?

(top of the screen)
We can set a hello text and some scene shortcut, also maybe some weather information like outside temp...

You can use the title and subititle with template for that: https://github.com/piitaya/lovelace-mushroom/blob/main/docs/cards/title.md

May be you're right but, I think this card can interesting some people, so maybe you can ad it to the todo list ?
Because the identity of mushroom is to give userfriendly HA ui construction, but your answer means we have to don't use user friendly customization no ?

What is more user friendly than adding a title card with the content Hello, {{user}}!? We could provide such card, but it would involve a lot complication starting with internationalization, and other request like: "handle when it's morning or evening", "How can I say "Hello {{user}} sweety" in my language, where sweety is a different for male and female?", "in my language things are different", "How to hide this message when the user already saw the dashboard today?". Well, a lot of stuff just for a "Hello" title you can already do with template, according to your language and what you want to put there, and I think we already have a lot stuff on track :)
I think I have to repeat the aim of mushroom:

provide minimilast, readable and user friend UI
cards must be frictionless and easy to setup, even for newbie
keep things simple, readable and easy to use
no HASS/HACS specific dependency
focus on what's important first
for developer, less dependencies as possible and best practices that make people able to participate
as a developer, if your feature involves messy code or messy UX, rethink or abort your feature
do not code what can me already done in few seconds/clics

Ok thanks for big answer, may be again my issue is not clear.
I'm not talk about smart text depend on time or scene etc... template or variable etc.. is here for this and for sur not necessery.
My suggest is to have a new card based on title card but with scene shortcut like in the picture.

As of today, you can set a title card with the "Scenes" subtitle, and below create a grid card and add your entities, vertical without state displayed. When we will add the glance card and the option to "uncardify" a entity card, then you'll have to create a glance card with those entities "uncardified".
We won't do the border expanded on the entity name, because it's not in the mushroom style. As of today, an inactive entity is grayed, colored according to its state.

@cyrilphoenix71 you can use the card from Minimalist UI

https://github.com/UI-Lovelace-Minimalist/UI/blob/main/custom_components/ui_lovelace_minimalist/lovelace/ulm_templates/card_templates/cards/card_welcome_scenes.yaml

Thanks but if I don't want to use minimalist because of dependance needed? I would prefer to use mushroom

Thanks but if I don't want to use minimalist because of dependance needed? I would prefer to use mushroom

As we told you a lot of time, the aim of mushroom is not to replace minimalist-ui, even more for advanced or particular usages.

https://community.home-assistant.io/t/welcome-scenes-card/424409
@cyrilphoenix71
I built this today. Hope this helps


claws-mail: installing collides with shared_mime_info

$ nix-env -iA clawsMail
...
$ nix-env -f /n -iA shared_mime_info
installing ‘shared-mime-info-1.3’
building path(s) ‘/nix/store/3b9lwyw0wij5x2lf2b973cd8gky2s7ac-user-environment’
Wide character in die at /nix/store/jjgyvh88yw37gg5ad5lj1z0qdv31d7jy-buildenv.pl line 79.
collision between ‘/nix/store/xf1ak2dgcjncwpv064qsm21xdw1qyklj-claws-mail-3.11.1/share/mime/aliases’ and ‘/nix/store/f0qq8gi9np98p679qshzwqs4dbyi07aj-shared-mime-info-1.3/share/mime/aliases’; use ‘nix-env --set-flag priority NUMBER PKGNAME’ to change the priority of one of the conflicting packages
builder for ‘/nix/store/26kxx0yc56i22cbnnd56yf95kwmwfizm-user-environment.drv’ failed with exit code 255
error: build of ‘/nix/store/26kxx0yc56i22cbnnd56yf95kwmwfizm-user-environment.drv’ failed

Thanks @nckx for pointing this out.  In 268b4d5 I added this:
ln -sT ${shared_mime_info}/share/mime $out/share/mime

so that Claws could find DATAROOTDIR "/mime/globs" (DATAROOTDIR being "/nix/store/...-claws-mail-3.11.1/share") from C, but I didn't realize it would cause a collision.  The best fix seems to be to use makeWrapper to give XDG_DATA_DIRS=${shared_mime_info}/share to Claws similar to @nckx's 40503a2e, except that Claws includes its own MIME parser that doesn't search XDG_DATA_DIRS, so I'll have to punch this path through harder.
(It would be nice if the conflict resolution algorithm detected when one path is a symlink to the other though.)
[self-assign]

Or just give a different priority to the claws derivation in the meta.

Yes, that's probably the easiest work around.
BTW, not respecting the XDG dirs seems a violation of the freedesktop specs for MIME by claws.

Yes most of that mime stuff is in glib/gio nowadays.

Yep, it's a known bug.  I haven't tried the attached patch to add
proper XDG support.
http://www.thewildbeast.co.uk/claws-mail/bugzilla/show_bug.cgi?id=2850
Could set the priority.  For a "proper" fix I'd prefer to patch the
path in if that's alright since priority is somewhat magic and since
it's a link we're explicitly creating that's causing problems.
Thoughts?

If it works with the priority, go for the priority.

Alright, sounds good.


:bug: [patch] Fix RPC unauthorized error

What's the change or impact of this PR?:

Fix RPC unauthorized error
Add permission for logs

Related issue link:
none

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Ignoring and copying blade.php files

Is it possible to use this action to encode, but ignore files of a certain type in the directories specified?  Ioncube has the ability to ignore and copy.  Something like this (on windows), notice the ignore and copy params.
./ioncube_encoder82.exe --ignore '.blade.php' --copy '.blade.php' C:\Github\laravel_app\modules -o C:\Github\laravel_app\modules --replace-target --allow-reflection-all
Project structure I am working with-
modules
users
Controllers
Models
Views
doors
Controllers
Models
Views
ex.
What I want to do is encode all .php files in modules directory while copying blade.php files.  Is this possible using this action?  I may just be missing it.

its not possible yet, but we can add this option.

That is great!  Please let me know if I can assist with testing.

@alexjacobsma can you test the new features in the new version? v2.1.0
you can use the trial version of the ioncube to test.
<EMAIL_ADDRESS>

It works!  Both copy and ignore were properly passed into the command.
Only one thing that I noticed in two places.

Copy and Ignore Are not recognized as valid Action Inputs.

Same thing here in the warning-

But functionally, it works.  Thank you!

Sorry for the inconvenient, i forgot to add the new options into the allowed inputs list.
I created a new release v2.1.1 to solve this problem.


Node template code walk through

Substrate based developers usually starts with node template.
It's not easy to understand the whole part of node template.
If we have a page to detail every part of node template, it should help a lot of people and make them more confident in their early journey.

this is a great point @kaichaosun , @danforbes has been the one wanting to admin the tutorials so I will default to him to respond.

Have you seen the documentation that was added to the README of the Node Template? https://github.com/substrate-developer-hub/substrate-node-template#template-structure

Yeah, I'm aware of it, the content in README looks great.
Will it be better to enrich it if needed and make it live in dev hub docs?
Also add line by line comments in node template just like the template pallet seems helpful to devs.

In which section of the Dev Hub would you see this documentation living? As you said in your initial comment, Substrate developers usually start from the Node Template so to me it makes sense to include this documentation with the Node Template, especially since the information we are documenting is directly related to the Node Template itself.
With respect to more line-by-line comments in the Node Template this is definitely the sort of thing I'd love to see. Anywhere in particular you think we should start?

I would imagine there is a page in devhub to teach the user how to assemble a working node (in our case it's node template). I believe the content in README should be good at first.
For the comments in node-template, I guess we need to start in the substrate repo, then sync to node-template, but I'm not sure about the relationship between substrate/node-template and devhub/node-template.

For the curious, this is how the substrate template is produced (on a rolling release basis, presently monthly)
https://github.com/paritytech/substrate/blob/master/docs/node-template-release.md


 The issue seemed to be the ELSE (no IF) option matching first, since the parser wouldn't look ahead. This fix adds a new else[whitespace]if token, so the parser won't need to look ahead.

Thank you for fixing this! I'd run into this in the past but couldn't quite figure out why the parser wasn't working when I tried to change it.


Dev tools says "No supported language" for "javascript.jsx"

It seems that all my .js files are opened as javascript.jsx language (says so in the status bar). This causes autocomplete to not work at all, and I can't figure out how to switch to javascript language.
set syntax=javascript does not do anything except change colors.
Edit: Seems like set filetype=javascript works to get autocomplete to work again, however the status bar does not update unless you switch to another tab and then back.
I do not want to use filetype javascript since I am working with .jsx files, not .js (however, all my .js files open as javascript.jsx, so .js files does not get autocompletion either), and the autocomplete should work the same for both.

Hi @Metamist ,
Thanks for reporting the issue!
I just tested this out and it seems that the filetype is reported as javascript with Oni in the out-of-the-box setup:

A couple questions for clarification:

Do you happen to be using any additional plugins or a custom init.vim?
Is this on master or the 0.2.14 release?

I think there are a few potential ways we could address this - I'm not sure if it is a common pattern to use <language>.<extension> in Vim in general, but if it is, we could use just the <language> piece for  language server integration. Another option would be to specify a mapping - like javascript.jsx should map to javascript language server.

It was vim-polyglot that opened my .js files as javascript.jsx. Removing that fixed that issue, but the actual problem is not that it is using javascript.jsx. Without this plugin, .js and .jsx files are opened as filetype javascript.
However
vim-jsx is another plugin that vastly improves indents and highlighting for jsx files, and it does this by setting all .jsx files to javascript.jsx which is the indented feature. The problem is that Oni does not detect javascript.jsx as javascript, thus no autocomplete.
A simple fix would be, like you said, to simply add javascript.jsx to the autocompletion list, since I doubht there's a common pattern.

I merged in #966, which extracts out the javascript and uses that to key off the language server - with that change, the javascript auto completion will kick in. So it should work correctly on master now 👍
I'll close this, but feel free to reopen if it's still not working.


Future of kue

Hi everybody,
I use kue in various projects for French government.
I open this issue because I need a bit of visibility on the maintenance and the next evolutions.
Some points:

@behrad is announcing a v1 since more than one year. As I can see on the v1 branch, it is still a WIP. It blocks any ambitious PR. How can we help to target a quick release?
Parts of the library are staled (UI, API).
Other similar projects (as https://github.com/agenda/agenda) are pretty active.

I have the feeling that the actual kue is too big to be efficiently embedded in high-level libraries, and a bit too small to cover advanced use cases.
In the past I slightly modified kue and published kue-lite for our internal usage, and we are now working on a wrapper around kue which support job unicity, promises, add advanced logging, job configuration with YAML or JSON file and out-of-the-box jobs worker. Maybe some of these features would have their place in kue.
It could be interesting to have a package kue-core with just the logic and connection to Redis, and a full-featured kue with JSON API and UI. And why not kue-ui, kue-websocket, kue-api, kue-webhooks…
Feel free to discuss my position ;)

Former kue user here... Feel free to switch to agenda 😉   We've made a ton of headway with v1.

Don't! Agenda is not production ready.
When considering what to use I found agenda and kue. After reading a little bit the issues agenda has, I wouldn't recommend it for production right now. It has a sever memory leak issue.
That's the main poin's the main reason I'm giving kue a try.

@gentunian I've been using Agenda in production for many years doing hundred of thousands of transactions.  It's definitely 100% production ready.  Did you even visit the repo?

@gentunian you are making inaccurate assumptions without knowledge and deep understanding and insight.
to others, please take any comments here with a grain of salt.

I've read all what I needed yo read. The api, docs, and the huge open issues list.
It's enough for me to not use It. Kue has a leaky feature for searching too and has been solved by disabling default behaviour. So, until the memory leak is not solved I won't use agenda un production.
Please, don't make assumptions yourself about what I know and what I read, my salty boy.

@gentunian last time I checked you have zero GitHub contributions. Thanks for the kind words.

This is a response to @niftylettuce post (sadly, he removes his comments just for fun):

@gentunian last time I checked you have zero GitHub contributions. Thanks for the kind words.

So? What assumption will you make now about that?

And finally, I will leave this for reference: https://github.com/agenda/agenda/issues?q=is%3Aopen+is%3Aissue+label%3Abug
I won't step into agenda until critical bugs are fixed. I consider some of those critical.

My point is not comparing Kue with Agenda, but Kue should be as many active as Agenda.

I was very busy for months... I will try to do my best to clean up pending PRs...

Maybe I can help?

@jdesboeufs Sorry to resurrect this long-dead issue but I'd be very interested in using your improvied version of kue. Any chance you will open-source it?
Ça serait super ;)

Hi @vroudge
We finally switched to bull.
https://github.com/OptimalBits/bull

I stopped using Bull, and just released Bree today.
Docs/Site: https://jobscheduler.net
GitHub: https://github.com/breejs/bree


Should we support TypeActivating a per-request model binder

BinderTypeModelBinder supports providing a type to the model binding system that will be type activated and used to model bind each time the binder is called.
Do we need this? What kinds of scenarios do we envision using it for? Note that this isn't the same as per-request, the unit of work here is the individual property being bound.

@rynowak is the suggestion to remove the per-property behavior and change it to be per-request? Or to have both behaviors available? Or something else?

The suggestion is that all model binders created this way have singleton-lifetime (like other model binders)

Ah sure. That makes a lot more sense.

Discussed in person, we're alright with leaving this feature in place.


Feature/sandbox nav item

Changes proposed in this Pull Request:

Add Sandbox for Nav Item

@huayunh This PR should be ready for design eyes.  I've made the sandbox full-screen & fixed the overflow issue on the other pages by hiding the drawer at 1280px.

Looks lovely! I like those hint texts.

I would add a selected knob and enable it by default.
I would also do the hierarchy this way:

Other than that, there may be some style updates in the future, but for the first pass this looks good.

Ok @huayunh I think this is the final version.

I've added the selected knob.
Adjusted the hint margin margin-left
Code generation actively ignores default props (if user is using default props, don't show in code snippet)
Whatever issue I was rambling about in standup this morning (too many props to manage) has been resolved.

I just noticed that the ripple is still on even with the ripple knob unchecked
https://user-images.githubusercontent.com/8997218/182656913-896bdc15-7376-4371-82ac-a088f6f9657e.mov

I just noticed that the ripple is still on even with the ripple knob unchecked

I've made an issue for this one, it's a bug on the DrawerNavItem & not the playground: https://github.com/brightlayer-ui/angular-component-library/issues/468


ENH: ignore dotfiles in Archiver.save()

Ignores files and directories starting with a dot. Files are ignored in a hidden directory even if they aren't hidden themselves (e.g. /foo/.bar/baz would be ignored).

Thanks @jairideout!


Generate C# classes from C++ as internal instead of public

Brief Description
Cppsharp generates the classes from cpp code as public.
Is there some way to generate it as internal
OS: Windows / OS X / Linux (include version and/or distro)
Used headers
Used settings
Target: MSVC/GCC/Clang
Other settings
Stack trace or incompilable generated code

@upretyrohan I'm afraid it isn't possible right now but if you'd like to help out, you could add a setting for it. Still, I'm curious why you need internal classes? After all, a binding is an API to be consumed by other users and its classes should be accessible. If you tell me about use case, it might as well turn out you don't really need internal classes.

I have a another interface over this generated wrapper, and that should be only visible , not
the generated one. So that's why i want it to be internal .

@upretyrohan
Though not elegant, but you can access the generated code and replace public with internal as a string. You will need to fiddle with the output structure to find your targeted classes.
I have used this method to rename class names that follow translation units names.
https://github.com/Ghasan/FriBidiSharp/blob/master/FriBidiSharpGenerator/RenameOutputClasses.cs


Token fix/update

@tomlandia  I've been collaborating with @Mitsj0l and @victorgrego and we found a solution for the token, mostly Mitsj0l figured it out. We're not sure how big of an issue it would be to implement it, would you be able to help if given the info?  If so please respond or email me [REDACTED]  then the info can either be posted or emailed which ever you prefer.

It seems that though Google gives a Token initially with this code in Fuckr (see below), the generated token is being marked invalid by Grindr:
authentication = function($localStorage, $http, $rootScope, $q, $location, $timeout, API_URL) {
var getGCMToken, useCredentials;
getGCMToken = function() {
return $q(function(resolve, reject) {
if ($localStorage.gcmToken) {
return resolve($localStorage.gcmToken);
} else {
return chrome.instanceID.getToken({
authorizedEntity: "1036042917246",
scope: "gcm",
Underwater in this same POST call, the Chromium part will add the following part:
--data-urlencode "app="
However, when we change the app to com.grindrapp.android and add the field 'cert: "ce1f7e703ccca26d2c4ef3e48fd5ae0ea4cb1c29"', we have a winner token which allows Fuckr (manually for now via static tokens) to login/register new accounts.
This means that we would need to change the API to retreive a GCM token: https://developer.chrome.com/apps/instanceID#method-getToken function.. As of now, it seems that the only attributes we can add are the scope + sender<PHONE_NUMBER>246). We can add 'options' to the request,  but attributes like app will be appended in by X-, so it becomes X-app. And that doesn't generate a working token..
I can think of two solutions for this problem:

Finding a way how to edit the request as suggested above.
Retrieve the aidlogin part that is being generated by the function chrome.instanceID.getToken, and code a api call ourselves with the right attributes.

In regards to number 2... When we take a look at the Chromium engine, this is the code that will build the content that is being used for the Authorization (Aidlogin :: https://github.com/ChromiumWebApps/chromium/blob/master/google_apis/gcm/engine/registration_request.cc
Being specific, I believe this is the part that will retrieve the deviceID && securitytoken:
std::string android_id = base::Uint64ToString(request_info_.android_id);
std::string auth_header =
std::string(net::HttpRequestHeaders::kAuthorization) + ": " +
kLoginHeader + " " + android_id + ":" +
base::Uint64ToString(request_info_.security_token);
url_fetcher_->SetExtraRequestHeaders(auth_header);
If, we would be able to retrieve the mentioned attribites, we don't need to leverage the closed source API of Google to get a Firebase GCM token.
Which leaves me to the question, how van we retrieve the deviceID && securitytoken?

Because of the large amount of emails I'm getting from other people that I didn't ask to contact me from this issue I'm not going to be giving out tokens.  Fuckr is being worked on, and if it gets fixed, it will work, if it doesn't then I am probably taking a break.
I've also had someone asking for details, and acting like they are @tomlandia but saying they want info and would be "happy to mess around with it and return my findings".  That doesn't appear to be @tomlandia to me, but if it is, I apologize for being rude.
The numerous repeat requests for tokens from the same few certain individuals, and I'm talking like 8-10 times they want a new token, has become ridiculous, and then multiple emails from certain people under different addresses wanting multiple tokens to mess with this just doesn't cut it either.  As I've said, if we get it fixed, the tokens won't be an issue.  If it does not get fixed, I may work on it privately to implement things that were said to be planned for this release such as the different look, and if it gets fixed, at a later date those things will be updated to take the current version of Fuckr out of an Alpha release.

Robbie, I don't know if you still follow this, but the file you sent me with the request does not work. I figured out how to fix the key problem, but I can't make the correct request. mail me if u still active.

Sorry Victor, I've been crazy busy for a bit, but I'll email you later today

They're no longer using GCM tokens. No request is being made in order to obtain this token. The app is generating it from within and then it is being verified by the server in some way.

@zerofeetaway they actually are.

@victorgrego I don't see any requests, at least within the iOS app to google as far as a GCM token though? Maybe they're using GCM for just android?

@zerofeetaway maybe yeah. Fuckr uses android style so we use gcm for auth, and it is known that they are using gcm. The current working version uses gcm to auth.

Fuckr is no longer usable #157

Closes #174

@RobbieTechie @victorgrego @Mitsj0l  Was there any fix to the token thing. My fuckr on Windows Disconnects every 2 mins, I have to log out and back in again for it to function. Error Message "XMPP chat error. If your're using public wifi, XMPP protocol is probably blocked."
Any fix so I can just leave it running. I updated to Robbie's newest update from the End of December 2017 unless there is some other update I am not aware of. Let me know if I can provide you any other information. Thank you for all your work!


Multiple Video Example

I swear there was an example somewhere that had multiple videos on one screen. I can't for the life of me find it.  Where is that great sample project?
Thanks

Oh it's in the https://github.com/media-kit/media-kit/tree/main/media_kit_test


Can SSL also be used for consumer ?

I only see sample code of SSL use in producer, but not sure if it is a limitation in the current release

SSL configuration is identical for Producer and Consumer(s), actually for all classes that are using Client. I just don't think there is any need in duplicating SSL configuration example for consumers.


Link to “Rant Documentation” on README.md is broken

Ditto

Should be https://berkin.me/rant/docs/ not https://berkin.me/rantdocs/

The link on http://berkin.me/rant is broken too in the same way.

Fixed. Thanks!


Redesign protocols. Now we have two services with their protos: Aggre…

This PR is prerequisite to parallel experiment launching, that means that several aggregators will be launch separately from the director, and the director will communicate with aggregators by gRPC. Also https://github.com/intel/openfl/issues/195 was covered.
Changes:

Aggregator service protocols moved to aggregator.proto and rewrite to proto3 syntax. (also additional method were added, but without implementation - this PR is only protocol's part)
The common part with base entities separated into base.proto.
Protocols are brought to general style guide.
Fixed compile script and moved to root (in purpose to keep import hierarchy).
RPC methods renamed in style rpc <RpcName> (<RpcName>Request) returns (<RpcName>Response) {}, expect stream methods. The following recommendation were followed: https://cloud.google.com/apis/design/naming_convention#method_names
CollaboratorGRPCClient is renamed to AggregatorGRPCClient (it's client to Aggregator and it will be used by collaborator and the director)
client.py is renamed to aggregator_client.py, server.py to aggregator_server.py to avoid confusion with other servers and clients.

Do we consider not using TCP for Director-Aggregator communication?
https://docs.microsoft.com/en-us/aspnet/core/grpc/interprocess?view=aspnetcore-6.0

Also do we consider splitting the Director service in several parts? For the aggregator and the frontend API?


Report the current classpath when failing due to not finding a class on the classpath

We have a series of bizarre build failures where forbidden-apis failed because it couldn't find org.apache.commons.lang3.StringUtils.

Caused by: de.thetaphi.forbiddenapis.ParseException: Class 'org.apache.commons.lang3.StringUtils' not found on classpath file parsing signature: org.apache.commons.lang3.StringUtils#isBlank(java.lang.CharSequence)

Our problem is - we only add the commons-lang3 signatures files to the list, if the task's classpath includes the commons-lang3 jar.
So somehow it seems that:

When we call task.classpath and iterate through the classpath, it says commons-lang3 is there. BUT:
When the task actually runs, it says commons-lang3 is not there

To figure out which of these is the case, it would be nice if the error message included the classpath it was using for this search. The same build failure doesn't happen when I run the same build locally - it passes!
(As far as investigating the underlying issue, I'm trying an update from v3.1 to v3.3 to see if it magically fixes it.)

I will check if I can provide the classpath. The problem is that the Forbiddenapis Checker class only uses a ClassLoader instance. If the ToString of it would be helpful it would be easiest to print it.

ClassLoader#toString() does not print anything useful. The only chance to get this running is to pass a "human readable string representation" to the ForbiddenApis Checker class next to the classloader. The type of ClassLoader differs between Gradle, Maven and Ant so it is up to their internals how the classloader is built. I don't have access to the original classpath in all cases.

Most of those are probably instances of URLClassLoader though, Uwe. It's a cheap shot to try instanceof and then https://docs.oracle.com/javase/7/docs/api/java/net/URLClassLoader.html#getURLs() (I've done it in the past).

Another cheap-shot alternative is to try to getResource on MANIFEST.MF and enumerate everything possible, listing URLs. I also did this in the past (blush) - this works with non-url classloaders most of the time too.

Actually I have access to some path representation in some build system specific way (Path in Ant, Strings of files in Maven and the CLI, a List of File instances in Gradle). I just need to pass an additional string for human consumption to the Checker instance.
But yes, most are URLClassLoader, except Ant.

I am not fully happy with it, but I added a PR #206. This also adds DEBUG as log level.
If you have classpath issues you can enable debug logging and it will report more detailed information to JDK type and also the classpath used.
I will maybe rework the PR and remove the classpath logging from the Checker and just always report classpath when task starts (separately for each build system). So see it as preview.


Misc fix

Need to rebase from the async but fix css typo in demos and add support for encoded binary arrays.

@jourdain The PR is merged; I think what you added looks good on the python side, do you have anything else in mind on the JS side?

If we use<EMAIL_ADDRESS>we are good...

@xhlulu I let you merge it and eventually create a version 1.0.0 is everything is working as expected. Normally the F1 demo should be faster with that one.

@jourdain Do you get this error locally?

I guess I'll have to try that specific example...

Yeah it's a regression:

It looks like the cell connectivity get messed up. Along with some point coordinates not being correct...

@xhlulu that should be good now... Good catch!

@jourdain awesome. Updating the change log and will create a release afterwards.


Cannot read properties of null (reading 'replace')

I've tried the provided example and the following error occurs:

Next.js: 12.3.1
React.js: 17.0.2

project:dev: error - TypeError: Cannot read properties of null (reading 'replace')
project:dev:     at /Users/vimtor/Developer/project/node_modules/next-usequerystate/dist/cjs/useQueryState.js:67:96
project:dev:     at Object.useMemo (/Users/vimtor/Developer/project/node_modules/react-dom/cjs/react-dom-server.node.development.js:1582:19)
project:dev:     at Object.useMemo (/Users/vimtor/Developer/project/node_modules/react/cjs/react.development.js:1532:21)
project:dev:     at useQueryState (/Users/vimtor/Developer/project/node_modules/next-usequerystate/dist/cjs/useQueryState.js:67:39)
project:dev:     at HomePage (webpack-internal:///./pages/index.tsx:223:97)
project:dev:     at processChild (/Users/vimtor/Developer/project/node_modules/react-dom/cjs/react-dom-server.node.development.js:3353:14)
project:dev:     at resolve (/Users/vimtor/Developer/project/node_modules/react-dom/cjs/react-dom-server.node.development.js:3270:5)
project:dev:     at ReactDOMServerRenderer.render (/Users/vimtor/Developer/project/node_modules/react-dom/cjs/react-dom-server.node.development.js:3753:22)
project:dev:     at ReactDOMServerRenderer.read (/Users/vimtor/Developer/project/node_modules/react-dom/cjs/react-dom-server.node.development.js:3690:29)
project:dev:     at Object.renderToString (/Users/vimtor/Developer/project/node_modules/react-dom/cjs/react-dom-server.node.development.js:4298:27) {
project:dev:   page: '/'
project:dev: }

Okey I just found out that I cannot use the package when using getServerSideProps thank you


Midi

Hi,
i try to write a wrapper/package for tcl/tk in c. I created a function
"play soundfont midifile"
(similar tu exemple3.c) but i dont know how to split the different functions in seperate c functions.
My Goal is to seperate These steps in tcl commands

initialize the audio System
load soundfont
load midi file
play (in Background)
pause, resume and stop
get actual information
load new midi file and soundfont (and re-initialized the audiosystem?)
shutdown the System.

The other think is how can i read the playing Information (whole length, actual Position etc.)?
thx a lot - kmatze

Hi there
TinySoundFont and TinyMidiLoader are kept separate, so the application using them needs to handle playback timing. So how you handle playing, stopping and the current playback position is up to you.
In example3 the play position is kept in a simple global variable g_Msec which automatically increases as audio is playing, and never stops.
What audio system do you plan to use? Is there some tcl/tk audio system available? The rest all depends a little bit how that audio system lets you feed audio data.
You can get some information about the loaded MIDI file with tml_get_info. Most relevant is time_length which is the length of the song in milliseconds.
tml_message *TinyMidiLoader = tml_load(...);
unsigned int MidiLengthMsec;
tml_get_info(TinyMidiLoader, NULL, NULL, NULL, NULL, &MidiLengthMsec);

When you want to play a new MIDI file you need to reset the synthesizer like this:
for (int i = 0; i < 16; i++)
{
	tsf_channel_note_off_all(g_TinySoundFont, i);
	tsf_channel_set_preset(g_TinySoundFont, i, 0);
	tsf_channel_set_pitchwheel(g_TinySoundFont, i, 8192);
	tsf_channel_set_pan(g_TinySoundFont, i, .5f);
	tsf_channel_set_volume(g_TinySoundFont, i, 1.f);
}

Maybe this should go into a function, now that I think about it (-:
You can load a new soundfont by closing the current one and loading a new instance. If you want to continue playing a MIDI file you need to set all the channel settings (bank/preset, pitchwheel, pan, volume) to what it was on the old instance.

thx for your answer, but i cannot understand all Things :-(
I try to describe my Problems:
Working System is win10, tcltk 8.4 (old but tiny!), gcc 4.8.3
These are my functions, defined in c (as tcl package):
init
loadSF2 [soundfont]
loadMID [midifile]
play
pause  (toogle command to pause and continue)
stop
info
shutdown
Problems i have with play, stop and loadMID (not the first time but beginnend with the second time)
steps i do:

init  - goes
loadSF2 - goes
loadMID - goes
play - goes
pause (halt) - goes
paus (coninue) - goes
info (all info from tml_get_info and g_Msec) - goes
stop - how to?
i use SDL_PauseAudio(1), i think it is not the right way
loadSF2 (a new soundfont) - goes
loadMID (a new midifile) - goes
but the the g_Msec will goes away, not stopped
play - how to Position to the start of the new midifile?
only a short noise and g_Msec goes away
shutdown - works

i Show you the whole c file in the atached file.
thx for your Passion and greetings - kmatze
matzsf.txt

Hi again
I noticed your code is never resetting g_Msec to zero after stopping. So I think you can just add g_Msec = 0; just before SDL_PauseAudio(0); inside the function Play_cmd. Because play only plays from stopped state so that seems reasonable. Would this fix most of your issues?
Calling SDL_PauseAudio(1); inside the function Stop_cmd is fine I think. Your stsPlayer controls the play state and you have checks for it in the Pause_cmd and Play_cmd so that's OK.
If you ever want additional features like playing multiple MIDI files at the same time or playing other sound sources (like sound effects if you want to make a game) you probably will run into additional problems but for a simple MIDI player this should work.
If you need that you are probably advised to step away from my hacked together "minisdl_audio" and go with some proper SDL and SDL-mixer bindings for your language, seems like http://sqlitestudio.pl/tclmixer/ has that (mind you I know next to nothing about tcl/tk).
Good luck!

hi,
thx for your helpfull support. Now, it works fine. I have upload my work on github:
https://github.com/kmatze/matzsf
greetings - kmatze


Test fixes

This pull request aims at fixing the test suite:

there's a new black error
change CI configuration for the molecule-devel, to more or less match what's done in molecule
switch to e1000 for the alpine box, in hope it'll solve the ssh time out issue in CI

I've put some workaround for hosts without kvm (no /dev/kvm -> switch to tcg) but I'm getting a new error in the CI, so I've yet to know if the workaround is working in the CI. I'm going to wait for the CI to finish and try debugging it tomorrow.
I guess i should also add something in the logs to show if there's virtualisation or not.

recheck

Do you have more information about the regression ? Can it be a libvirt vs vbox thing ? It would be nice to see this fixed before merging.

After our discussion on irc, I thought about it and I think I'm going to split this PR to have at least two, at least, in order to have the qemu fallback stuff in its own PR.
I'm also going to have a different PR for your failure for VBox. The failing test can't work on vbox, since vbox doesn't support rtl8139* cards.


LowerValueChanged and UpperValueChanged events are not fired on Android

LowerValueChanged and UpperValueChanged events are not fired, if NotifyWhileDragging is false.
The probable cause of it relies in OnTouchEvent's MotionEventActions.Up case, where _pressedThumb is set to null, before the checks on events, so they will be never raised.
The mentioned code piece:
_pressedThumb = null;
Invalidate();
if (_pressedThumb == Thumb.Min)
    OnLowerValueChanged();
if (_pressedThumb == Thumb.Max)
    OnUpperValueChanged();

If possible only set _pressedThumb to null after the events where checked and fired.

Thanks @Zolee007, will investigate.

@Zolee007 issue should be fixed in version 0.6.2.

@halkar You are awesome, thank you.


Entries sometimes don't have a fixed max width

Maybe have a character maximum as well?

I'll add both of these fixes in the next update. I'm not sure when you would want to make a tab with an extremely long name though


[BUG] welcome doc on iphone can’t be closed

Describe the bug
after installing outliner, i opened it up to adjust settings. the doc title and the close button (x) are up below the time and battery and signal strength icons. i cannot tap the x to close the doc and force quitting the app and reopening just reopens the doc.
To Reproduce
Steps to reproduce the behavior:

install plugin
open settings > community plugins
tap outliner

Expected behavior
the document should open normally with title and close button accessible
Screenshots

Environment (please complete the following information):

OS: iOS 17.3
Obsidian Version: 1.5.11
Plugin Version: whatever the latest is as of today. i can no longer use obsidian to get the number.

Additional context
Add any other context about the problem here.

@sylvaticuskorax thank you for the feedback. should be fixed in https://github.com/vslinko/obsidian-outliner/releases/tag/4.8.1