Send a status message on block announce handshake

Continuation of #5670
This PR is the same as https://github.com/paritytech/substrate/pull/5665, except that it sends a proper handshake for the block announces substream, which will become the "main sync substream".
For this PR, I had to add a UpdateHandshake message that we send to all the node handlers.

I'm not sure how to make the CI green.


Error executing command: ... Cannot read property ‘then’ of null

The template looks like this:
First: +++= user.name+++
Middle: +++= user.middle+++
Last: +++= user.last+++

Sometimes the user.middle is JavaScript null value.
const user = {
  first: "John",
  middle: null,
  last: "Smith"
}

It would be great if the module wouldn't throw in this case.

Error executing command: INS user.name Cannot read property ‘then’ of null

I very much like how Vue.js is behaving. It prints undefined and null values as empty strings.
I'm happy to supply a PR if this idea seems ok to the maintainer(s).

Please update to v2.7.3, it shouldn't throw in that case. I'm not sure what it will display, though, please let me know.

@guigrpa hello. thanks for the quick fix. I can't find the 2.7.3 in the NPM registry.
https://www.npmjs.com/package/docx-templates
But I see it in the GitHub releases list: https://github.com/guigrpa/docx-templates/releases
Could you please publish it?

Ooops, my automated release process failed. v2.7.3 is now available, thanks!


Bump embroider libs to v1

Making the same embroider changes as #2327 to the v2 branch to help resolve https://github.com/embroider-build/embroider/issues/1077 hoping this won't require bumping ember-auto-import as well now that there is a compatible 1.x version release there.

@jrjohnson so the problem is that ember-cli-mirage@2 has support for Node.js 10 and @embroider/macros needs 12+ as of 0.42.0
@jrjohnson I think we can release<EMAIL_ADDRESS>so people can start using it if they have fixed all the deprecations (I'd like to get #2314 into beta at minimum)
@cah-briangantzler wdyt?

Ah. Makes sense. We'd be happy to jump to an early 3.0 release. Always easy to beta test test libs 😁

@jrjohnson I'll try to push #2314 over the line and get early v3 alpha sooner than later

3.0 is mostly removing code. I have a PR for another deprecation im working on.
We can get a 3.0 out after we remove all the code, should be a problem if you want to beta it

Ok, I'll close this. If there is anything I can do to help with removal I'm jrjohnson on discord.

@jrjohnson just published v3.0.0-alpha.1 🚀. Please give it a try and report any issues


feat(use_mode_colors) add the option to toggle mode colors off for everything

simply adds use_mode_colors to everything not just the tab component
i found another bug while making this which is if  use_mode_colors is set to true for the tab component and the theme doesn't have a highlight for a vim mode (eg. terminal) it fallsback to having no color ?
which is why i had to specify each and every vim mode in the commits

What's the purpose of this actually?

well i didn't like the fact that colors change when i switch modes and i thought maybe others would like to have 1 color for all modes too


institution_id registration of CLMcom-ETH

institution_id
CLMcom-ETH
institution
Climate Limited-area Modelling Community (CLMcom) partner: Federal Institute of Technology Zurich, Zurich, Switzerland

Dear Michael, please, check my edit of your institution to include the "Climate Limited-area Modelling Community (CLMcom) partner" part, as the rest of the community (#144). See https://wcrp-cordex.github.io/cordex-cmip6-cv/CORDEX-CMIP6_institution_id.html for other examples.
Other than that, it looks fine to me.

@jesusff LGTM

/register


Error when using 4Rtools V.1.8.1

Hi Creators,
I just wanted to report this Error I'm getting when using the 4Rtools.
Is there any way to fix it?
Thanks for the help! <3

Hello @yhal9239 .
There's some missing dlls. NewtonSoft.Json is missing :( did you extract 4R in a folder?

Hi
No, I did not extract it on a specific folder. I just extract it on
downloads folder.
On Wed, 7 Sept 2022, 2:25 am Marcus Cartágenes, @.***>
wrote:

Hello @yhal9239 https://github.com/yhal9239 .
There's some missing dlls. NewtonSoft.Json is missing :( did you extract
4R in a folder?
—
Reply to this email directly, view it on GitHub
https://github.com/4RTools/4RTools/issues/154#issuecomment-1238505929,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A255EIJFNLF6MS26ZP33PLTV46ECHANCNFSM6AAAAAAQGA4CYM
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hi
Its working now. Thank you so much for the help!
On Wed, 7 Sept 2022, 2:43 am Yancy Kline Loren Halasan, @.***>
wrote:

Hi
No, I did not extract it on a specific folder. I just extract it on
downloads folder.
On Wed, 7 Sept 2022, 2:25 am Marcus Cartágenes, @.***>
wrote:

Hello @yhal9239 https://github.com/yhal9239 .
There's some missing dlls. NewtonSoft.Json is missing :( did you extract
4R in a folder?
—
Reply to this email directly, view it on GitHub
https://github.com/4RTools/4RTools/issues/154#issuecomment-1238505929,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A255EIJFNLF6MS26ZP33PLTV46ECHANCNFSM6AAAAAAQGA4CYM
.
You are receiving this because you were mentioned.Message ID:
@.***>


Add note about possible use of env variables

I found users surprised how environment variables are working with configurations. Effectively in karaf universe you need to have a configuration file first in order to override it values with environment variables. This small tweak adds explicit note for users so they do not run into wrong assumptions.

@mfrazier63 you're right that in most of cases it will be a cfg file, however configuration processor which does the property matching works at ConfigurationAdmin level which might be populated by other mechanisms. Yet, to be fair I don't know any other than one you mentioned.

@splatch ok, no big deal if it needs to be more generic. Just wanted to make sure things were clear.


Football Club Website

Description 📜
Added a new frontend website template.
Fixes #674

Type of change 📝
Please delete options that are not relevant.And in order to tick the check box just but x inside them for example [x] like this

[x] Add a new project

Domain of Contribution 📊
Please delete options that are not relevant.And in order to tick the check box just but x inside them for example [x] like this

[x] Project using only HTML & CSS

Checklist ✅
Please delete options that are not relevant.And in order to tick the check box just but x inside them for example [x] like this

[x] I have performed a self-review of my own code or work.
[x] My changes generates no new warnings.
[x] I'm GSSoC'22 contributor

Screenshots / Gif (Optional) 📸
Add the screenshot of the changes you have made
https://leafy-crumble-33f5b9.netlify.app/

Hey @khushi-purwar I have done the required changes. Could you please review it once

Now this PR has only one single project file

If this doesn't work please tell me I will make a new PR


upgrading RJSF to version 5

Business Risk:  Keeps RJSF up to date and secure, and keeps the other dependencies compatible with our app
Description:
It might be good to explore upgrading to RJSF version 5 which includes a number of new features and bug fixes. There are a number of breaking changes which might make this task not trivial.
https://rjsf-team.github.io/react-jsonschema-form/docs/migration-guides/v5.x upgrade guide/
AC:

[ ] RJSF updated to version 5
[ ] CCBC Portal is not impacted negatively - bugs etc

Hey team! Please add your planning poker estimate with Zenhub @AntBush @marcellmueller @rafasdc @VB-at-Bis

Moving this ticket out of the sprint as there is a lot of changes we will need to make for this update and this upgrade is not urgent


Fix play media with 'play' enqueue parameter when stopped

The current queue position while in stopped state is None. Issuing the play command to Mopidy with a None position will start playback from the beginning (failing to play the requested track, which was appended at the end of the queue).
This fix will fall back to appending tracks at the end of the queue if Mopidy is in stopped state.
Feel free to decide whether this is the right behavior in your view: since, while in stopped state Mopidy has no "currently playing track", adding a track "before the current one" doesn't really make much sense. For example, one could want to put the track at the beginning (meaning: opinions really).

Makes sense to me


fixed secondas typo

Hi,
I just pulled your repo and I'm trying out your example scripts. Great work by the way!
In the distance.py in line 26 there is a minor typo as you can see below, which causes the script to crash. It's no big deal, so I fixed it and sent this pull request. Now the script is working just fine. :)

Hi! :)
Yeah.. I see.. good job! :) I've merged your branch :) Thanks! :)


Add Authentication to API

Add authentication to the API! At the moment, any user can do anything - this is very bad as we move towards Alpha. Also, add rate-limiting to the API so brute force attacks don't cost us lots of database requests
This task involves:

Investigating the best authentication method
Implementing it - it must be possible to do solely from the backend, without using the google sign in button in the frontend
Allowing the frontend to use the new authentication

This is now complete, where the user ID and access Token information (to allow alpha access codes) is stored in an encrypted JWT token.


Question: is there lua API to get last yank/copy text, and get all the yank/copy history?

Hi,
I'm writing a fzf-based plugin fzfx.nvim, and I want to get the yank/copy text (and in the future I even want the yank/copy buffer filename & lineno info etc) from yanky.nvim, so I don't have to implement the yank relate logic again.
Is there lua API to get the latest yank/copy test? And get all the yank/copy history?

Yes, you can look try with require("yanky.history").all() and look at the history api. This will returns a collection of objects with regcontents, regtype and filetype.
You can also look at the telescope plugin for inspiration ;)

thanks


MonitorControl affecting screen sharing?

Before opening the issue, have you...?

[X] Searched for existing issues
[X] Looked through the wiki
[X] Updated MonitorControl to the latest version (if applicable)

Describe the bug
Thanks for the great app!
I don't know if it counts as a bug, but the overlay is not only seen by me, but the screen is darkened for people who I share my screen with in zoom meetings and slack huddles.
Is there any chance to hide this overlay from them, and to it only be visible for my eyes only?
Thanks!
Steps to reproduce

Darken the screen using MonitorControl
Start a zoom meeting
On the other side, the screen is also darkened.

Expected behavior
On the other side, the screen should be with it's natural brightness.
Anything else?
No response
Environment Information (please complete the following information)
- macOS version: 13.4 (22F66)
- Mac model: 16-inch, 2019
- MonitorControl version: 4.1.0 (7034)
- Monitor(s): internal
- Apple Silicon/M1 (yes or no): no

MC should not affect screensharing unless gamma table manipulation is disabled (intentionally or because of a virtual display like SideCar or DisplayLink) and the app falls back to overlay dimming. In this case this is expected.


Set up tests against master branch neuro CLI

What tests we want to have:

cookiecutter-neuro-project release + neuro release
cookiecutter-neuro-project master + neuro release
cookiecutter-neuro-project release + neuro master

the intent is not clear
not why we need to release cookiecutter with the master version of neuro-cli.
in the end, the Cookiecutter is used a plug-in into the CLI, so I guess there is no need to add such backward dependency.


Handling load_our_module() in environments lacking /lib/modules/uname -r

In some container environments the HOST /lib/modules/uname -r will not be bind mounted in the container, in such environments kmod_module_new_from_lookup() will error out. So even if target_core_user is loaded already, tcmu-runner will bail out.
Possible solutions:

Provide option '--no-load-module' for tcmu-runner which will skip calling load_our_module()
In load_our_module() check if /lib/modules/uname -r dir exist, if not exist return 0;
Pre assuming (leaving load module job as a prerequisite on HOST) the module already loaded.
Make insmod of target_core_user a prerequisite to tcmu-runner and get out of this mess.

Any better suggestions will definitely appreciable!

@mikechristie @lxbsz  Thoughts ?

How does tcmu-runner start in this environment?
Does it also use systemd?
I like the idea of #3. What will load the module? Are you thinking of relying on the target service (tcmu-runner then relies on target) to make sure all the target modules including target_core_user are loaded?

I think @pkalever is referring to leaving the prerequisite to the user.
Alternately can we read /proc/modules or /sys/module and look for the presence of target_core_user?

A possible diff that can let tcmu-runner work in containers:
diff --git a/main.c b/main.c
index 1eed47b..cc6cf01 100644
--- a/main.c
+++ b/main.c
@@ -464,6 +464,13 @@ static int load_our_module(void)
struct kmod_list *list = NULL, *itr;
struct kmod_ctx *ctx;
int ret;

   struct stat stbuf;

   ret = stat("/sys/module/target_core_user", &stbuf);

   if (!ret) {

           tcmu_dbg("Module already loaded\n");

           return ret;

   }

  ctx = kmod_new(NULL, NULL);
  if (!ctx) {

What do you mean by the user and how would that work then? You don't mean the user would do modprobe target_core_user before starting tcmu-runner right? In your case, does the user always start tcmu-runner manually then too?
For your patch, I thought this was supposed to do what your patch does:
https://github.com/open-iscsi/tcmu-runner/commit/4ad234084ef3cf865a5ba4b8a09df546264c034e

Yes, I intended that user would ensure that target_core_user is modprobed before starting tcmu-runner.
Typically In containers, tcmu-runner would be expected to start running as soon as the container launches. A sample dockerfile that starts gluster-blockd.service and hence tcmu-runner can be found at:
https://github.com/gluster/gluster-containers/pull/36/files
4ad2340 works if the default directory that kmod_new() looks up (/lib/modules/uname -r) is available in the container. For reasons that I do not understand yet, neither /lib/modules or /usr/lib/modules is available in a running container. I have not figured out a way in which libkmod apis could be used to work when either of these modules directories is not present. Hence the explicit stat() to help  containers that already have target_core_user loaded in the kernel.

Ok, funny. I see the mention to kmod_module_new_from_lookup() failing above now. The patch description just mentions containers so many times, I thought the point of the patch was to catch the problem in containers :)
The stat patch seems fine to me.

In the upstream Kubernetes containers platform it is very much okay to have /lib/modules/uname-r bind mounted in/to the container. But in the openshift it seems a bit hacky  and not acceptable.
As vijay mentioned it above the patch 4ad2340 works fine, provided this directory is available. This PR is to get to an accepted solution on how tcmu-runner should behave if the modules dir is not available in containers :)


New MenuBar created

Related Issue

Created a new MenuBar

Closes: #267
Describe the changes you've made

Changed the hamburger icon - added animation to it
Added animation to the overall menubar - Slide in/slide out effect, circled Zoom effect
Designed menubar for the both light and dark mode

Type of change
What sort of change have you made:

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Code style update (formatting, local variables)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update.
[ ] This change requires a documentation update

How Has This Been Tested?

Checklist

[x] My code follows the guidelines of this project.
[x] I have performed a self-review of my own code.
[ ] I have commented on my code, particularly wherever it was hard to understand.
[ ] I have made corresponding changes to the documentation.
[ ] My changes generate no new warnings.
[ ] I have added tests that prove my fix is effective or that my feature works.
[ ] Any dependent changes have been merged and published in downstream modules.

Screenshots (if applicable)
Previously -

Updated -
https://github.com/UniKonf/vibey/assets/59419650/5b3dc33a-9e37-4e90-84eb-72d883114a5c

Code of Conduct

[x] I agree to follow this project's [Code of Conduct]

Thanks @Varghab  for making the contribution to the project and really looking forward for more contribution from your side.


Error on ubuntu 16.04

events.js:183
throw er; // Unhandled 'error' event
^
Error: ENOENT: no such file or directory, open 'v8.log'
Same with node versions:

6.11
8.9
8.11

I had to execute node-tick-processor file_name.log
please update your README


BUG: Dev -  npm install produces diff on clean branch reported by @mdneyazahmad

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

Action Performed:

git checkout tmp
npm install

Expected Result:
There should be no difference as there is no changes made on the branch
Actual Result:
There is a difference
Workaround:
unknown
Platform:

Where is this issue occurring?

Web

Version Number:
Reproducible in staging?: Need reproduction
Reproducible in production?: Need reproduction
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:
Expensify/Expensify Issue URL:
Issue reported by: @mdneyazahmad
Slack conversation: https://expensify.slack.com/archives/C01GTK53T8Q/p1666159608492799
View all open jobs on GitHub

I'm not sure how this was assigned (I'm OOO 0%) - I'll look into that when I'm back, but re-assigning for now

I don't know how to reproduce this as a non-engineer. Going to assign to eng for an assist.

Run `npm audit` for details.
amechler ~/Expensidev/App [tmp2] $ git status
On branch tmp2
nothing to commit, working tree clean
amechler ~/Expensidev/App [tmp2] $ git diff
amechler ~/Expensidev/App [tmp2] $ npm -v
8.11.0
amechler ~/Expensidev/App [tmp2] $ node -v
v16.15.1

@mdneyazahmad double check what versions of NPM and node you are on, they might be slightly different

@alex-mechler after the addition of nvm everybody is using the npm version.
https://user-images.githubusercontent.com/77761491/197115145-29a1a3da-c47f-4a6e-a145-17b373050ee6.mp4

What does your npm get config look like?
amechler ~/Expensidev/App [tmp2] $ npm config get
; "project" config from /Users/amechler/Expensidev/App/.npmrc

engine-strict = true

; node bin location = /Users/amechler/.nvm/versions/node/v16.15.1/bin/node
; node version = v16.15.1
; npm local prefix = /Users/amechler/Expensidev/App
; npm version = 8.11.0
; cwd = /Users/amechler/Expensidev/App
; HOME = /Users/amechler
; Run `npm config ls -l` to show all defaults.

@alex-mechler
mdneyazahmad@MacBook App % npm config get
; "user" config from /Users/mdneyazahmad/.npmrc

legacy-peer-deps = true

; "project" config from /Users/mdneyazahmad/Desktop/App/.npmrc

engine-strict = true

; node bin location = /Users/mdneyazahmad/.nvm/versions/node/v16.15.1/bin/node
; node version = v16.15.1
; npm local prefix = /Users/mdneyazahmad/Desktop/App
; npm version = 8.11.0
; cwd = /Users/mdneyazahmad/Desktop/App
; HOME = /Users/mdneyazahmad
; Run `npm config ls -l` to show all defaults.

This is because of your legacy-peer-deps = true in your config. If you remove that you should not see this anymore


Allow manual setting current_exe in self_delete function

I need to set a custom exe path because I'm moving the current executable during my own update process on windows. And so to schedule proper deletion of the old executable env::current_exe is not correct anymore.
let orig = current_exe()?;
let temp = orig.with_extension("old");
fs::rename(&orig, &temp)?;

if do_update().is_ok() {
  self_replace::self_delete()?;  // This will not work because current_exe does not point to correct file anymore.
  // self_replace::self_delete(&temp)?;  // This could be a solution
} else {
  fs::rename(&temp, &orig)?;
}

Making self_replace::windows::schedule_self_deletion_on_shutdown public can also be an option.

I would be curious to learn why you are moving the exe to a temporary location. Can you share that? The challenge with deleting "another exe" is that that needs to be executable too. So in this case the deletion can't work because orig.with_extension("old"); makes it non executable on windows as such deletion is impossible.
Would be good to understand your exact workflow so this might be better supported.

The name of the temp file is not relevant so it could be old.exe or something else. The rename is only done so the update process can create a new executable in the original location.

The rename is only done so the update process can create a new executable in the original location.

Can you share why this is necessary?  Is the updater unable to place the file at a temporary location and then move it over?  Because that's the intended way in which this works.

Closing this due to lack of feedback.


dubbo2.6.0 restful service cors domain

how to fix the problem that cors domain problem in using rest servie ,protocal is netty.

I am not much familiar with the CORS problem with REST, shouldn't it be a specific problem related to Resteasy (the framework Dubbo uses as REST solution)?
Is the way Dubbo integrates RestEasy blocks you from using CORS?

I fixed this problem by edit client request method through another way that jquery callback.
I just wonder how to fix this problem on service side.
The restful service in dubbo is anotioned by resteasy framework,and i do not find the anotion about enable corss domain request.

I fixed this problem by edit client request method through another way that jquery callback.
I just wonder how to fix this problem on service side.
The restful service in dubbo is anotioned by resteasy framework,and i do not find the anotion about enable corss domain request.

I will replace jackson lib by fastjson for rest protocol, then I will set CORS option is open by default.

Looks like there's nothing need to implement, pls. check http://docs.jboss.org/resteasy/docs/3.1.3.Final/userguide/html/ch30.html.
You could simply include CorsFilter like this:
<dubbo:protocol name="rest" port="8888" extension="org.jboss.resteasy.plugins.interceptors.CorsFilter"/>


Upgraded the component to web monetization 2.0 spec

Replaced meta tags with link tags
Replaced the monetization events to the latest monetization events on the link elements.
Fixed a bug with including page param over site param

Hey @sabineschaller, True that. The markdown based on which the initial plugin and your initial site(yes, i tried that too) is outdated now. :')  The exclusive content module doesn't work with latest hugo sites and it means only the embedding the monetization link tag works and not the exclusive content module from this PR.
I could not get back to this either until now so didn't bother you either. I will update your sample hugo site, this plugin and remove the items & modules that are now outdated. will push the changes and ask you to review then. \o/ Thank you for taking your time and please share it with me if you have any other inputs.

Hi @devcer ! I've finally been able to install our extension as well as getting this to work with a hugo page. Everything was so incredible outdated.
The embedding of the link tag works for me. I think hugo changed how they handle raw html. But I also haven't figured that out yet. Maybe we can work all of this out when we are in Cape Town together 😉

Sure Sabine, Sounds like a plan. \o/  Meanwhile I will also explore how Hugo handles Raw HTML in its framework until then.


Cannot retrieve Connected App from sandbox with preauthorized permission set name defined

Summary
Connected Apps with a preauthorized permission set defined are throwing an error when pulled via SFDX CLI.  If I remove the preauthorization the metadata will pull down successfully.  Also, if I add in the preauthorization by hand to the metadata file in my SFDX project and try to push to another sandbox through SFDX CLI (both source and metadata formats) it will create the connected app fine but will not configure the preauthorization correctly for the permission set.
Steps To Reproduce:

Create a connected app with api, web, and refresh scopes.
Click Manage button
Click Edit Polices button
Change Permitted Users option to "Admin approved users are pre-authorized"
Go back a previous screen and select a permission set to add and save
Define the new Connected App in a package.xml manifest in a SFDX project
Execute a "sfdx force:source:retrieve -x path/to/package.xml" against the sandbox
Observe the error in the CLI.

Expected result
Connected App metadata should be pulled into the SFDX project with proper configuration similar to a Connected App without preauthorized permission set defined.
Actual result
An error message is displayed: Metadata API received improper input. Please ensure file name and capitalization is correct. Load of metadata from db failed for metadata of type:ConnectedApp and file name:MyCustomConnectedApp..  No metadata is pulled into SFDX project.
Additional information
SFDX CLI Version(to find the version of the CLI engine run sfdx --version):
sfdx-cli/7.74.1
SFDX plugin Version(to find the version of the CLI plugin run sfdx plugins --core)
@oclif/plugin-autocomplete 0.2.0
@oclif/plugin-commands 1.3.0 (core)
@oclif/plugin-not-found 1.2.4 (core)
@oclif/plugin-plugins 1.9.0 (core)
@oclif/plugin-warn-if-update-available 1.7.0 (core)
@oclif/plugin-which 1.0.3 (core)
@salesforce/analytics 0.22.0
@salesforce/lwc-dev-server 1.0.10 (link)
├─ @oclif/plugin-help 2.2.3 (link)
└─ @oclif/plugin-update 1.3.9 (link)
@salesforce/sfdx-trust 3.4.3 (core)
alias 1.1.1 (core)
analytics 1.12.1 (core)
config 1.1.8 (core)
generator 1.1.3 (core)
salesforcedx 49.10.0 (core)
├─ @salesforce/sfdx-plugin-lwc-test 0.1.7 (core)
├─ apex 0.0.9 (core)
├─ custom-metadata 1.0.10 (core)
├─ templates 49.9.1 (core)
└─ salesforce-alm 49.11.0 (core)
sfdx-cli 7.74.1 (core)
OS and version:
Windows 10 win32-x64 node-v10.16.0

3 years later, I'm still experiencing the same problem that @fitzman49 described
Has this been looked into or put in the backlog?


Why not releasing a ready to use code for example use in a Wordpress custom theme

For the past 3.3.1 there was http://www.initializr.com/

Hey everyone! Initializr is going to retire at the end of 2017. I'd recommend using H5BP or Bootstrap directly instead. It doesn't take that long to combine them together and you'll get more up-to-date versions of those. Thank you for using Initializr all these years!

Including a ready to use pack should help make Bootstrap more popular and make it easier to use for it's userbase. Also to consider it is a good idea to enable legacy code support in a separate version, similar as Fontawesome does in order to enjoy new features without having to completely migrate the website! And instead allow for a progressive migration...
Kind Regards!

You can download and include Bootstrap's compiled CSS, ready to use for any Wordpress theme or any other project.


Cursor is moved to top of page when undoing text added externally

I'm editing a file in VSC and Sublime. I add text to the file in Sublime. I then Undo this text change in VSC. The cursor then jumps to the top of the file. It should instead stay put, or jump to the start or end of the text change, instead. This is particularly jarring when the file is very long, and performing an Undo operation takes focus away from what is being undone.

@nicklasafe asked on #45538 if that issue (which I opened) was related to this one.  I don't know for sure, but I don't think it is.
When I tried reproducing this bug in an open JavaScript file I happened to have at the moment, I couldn't reproduce this bug exactly, but I was able to produce other incorrect behavior.  Rather than the cursor simply jumping to the beginning of the file at the beginning of the undo stack (which would actually be the correct behavior for my use case) it jumped to the beginning of the file while also selecting everything from the previous location to the beginning of the file.
Unfortunately, like #45538, I'm unable to reliably reproduce this.  Therefore I'm also unable to provide a slick gif of it happening like @garyking was able to do.


OCM-4812 | fix: Provide sensible default for PIDs limit in interactive mode

This PR introduces a sensible default for PIDs limit in interactive mode when creating a KubeletConfig.
It also sets the default to 0 on --pod-pids-limit to remove the confusing -1 appearing as a default when running rosa help create/edit kubeletconfig.

/lgtm


Metarepository and parameter updates

This PR accomplishes three main things:

Restructures the repository in accordance with JGCRI's metarepository template. There is still some work to be done here, hence the draft PR
Updating parameter values to be better aligned with the calibrated version of Hector v3 in an attempt to raise the CO2 concentration output.
Restructures Rmd scripts to alleviate the memory issue (works for 10,000 runs)

@bpbond Not sure if you want to take a look before I merge? Latest commits are cleaning up/tweaking code, no major changes.

I'm confident it's fine @leeyap - thanks for asking. Merge once checks pass!


elm-get install Unnecessary Questions

When you elm-get install a library, you will always be prompted with a question for whether or not you want to add the file to your elm_dependencies.json, even if you already have it there!
An example of the interaction:
$ elm-get install automaton
Cloning repo evancz/automaton
Checking out version <IP_ADDRESS>
Should I add this library to your elm_dependencies.json file? (y/n): y
evancz/automaton <IP_ADDRESS> is already in elm_dependencies.json.
Do you want to replace it with version <IP_ADDRESS>? (y/n): y
Success!

Ideally this should not ask to add if you already have it listed with the dependency you've requested, but it should ask to update if you have an earlier version.

Should be resolved in elm-package. Let's open a new one if not!


Bug: Download Button starts playing the Audiobook

Current Behaviour
The download button in the site starts playing the Audiobook
Expected Behaviour
It should only start downloading the Audiobook

Please assign this issue to me @Ctoic
Thanks!


add utms and fallback if no northstar id

What's this PR do?
Added the UTM parameters that we want to include in the custom share link. Added a fallback of using the phoenix ID in case the Northstar ID is NONE.
How should this be reviewed?
Check for typos.
Relevant tickets
Fixes #6807
Checklist

[ ] Tested on staging.

cc: @ngjo

🚢


Gatsby SSR pages are not being rendered

I have built a static website to test some features for our project. it utilizes the server-side rendering capabilities of Gatsby.  the webpage can be visited at: https://victorious-water-092f0620f.1.azurestaticapps.net/ssr -- note that it will return 404. the page actually renders properly on the local dev as well as on Gatsby Cloud: https://gatsby07main.gatsbyjs.io/ssr. both sites are built from the same source
To reproduce this issue,

create (here's a sample project) or use an existing Gatsby project
build a separate gatsby page in the project (or on any page for that matter) following the information here: Using Server-side Rendering (SSR).
run npm run develop and visit the site. the images will be displayed after the url is retrieved from the back end.
using the browser, one can observe that the /random call isn't visible to the browser as it's executed on the back end.
deploy this site to Azure Static Web App per instructions here: Create and publish a static web app with Gatsby and Azure Static Web Apps
visit the page with the server side rendered components. the page should return the desired image, but it will be displayed as not found (404).

Device info (if applicable):

OS: Windows 10
Browser: Firefox, Edge, Chrome

SSR support is still not available in Azure Static Web Apps. So for now you can host static content only. The good news is that it should arrive soon as announced in #749 by @Reshmi-Sriram. We are waiting for this too :)

tks @superhp. this should have been better communicated, which I'm sure could have saved other folks lots of time.

I think this thread needs a bit of clarification.
For Gatsby, Static Web Apps only supports apps that are fully static; there's no built in SSR support. The Microsoft Learn module @lawrenceong001 linked to demonstrates how to do this. The text mentions a few times that it's building and deploying static assets, but doesn't explicitly call out that Gatsby SSR isn't supported. @aaronpowell do you know who can help update that module?
SSR support is specific to each framework. In #749, the planned SSR support that @Reshmi-Sriram is referring to is specifically for Next.js. Gatsby SSR may be supported in the future, but if you need SSR now, use Azure App Service.

tks for the clarification @anthonychu. documentation that clearly identifies constraints like this would go a long way towards providing us with a clearer path.

I think this thread needs a bit of clarification.
For Gatsby, Static Web Apps only supports apps that are fully static; there's no built in SSR support. The Microsoft Learn module @lawrenceong001 linked to demonstrates how to do this. The text mentions a few times that it's building and deploying static assets, but doesn't explicitly call out that Gatsby SSR isn't supported. @aaronpowell do you know who can help update that module?
SSR support is specific to each framework. In #749, the planned SSR support that @Reshmi-Sriram is referring to is specifically for Next.js. Gatsby SSR may be supported in the future, but if you need SSR now, use Azure App Service.

There's a docs PR that I provided some feedback on recently to make it more clear that there's only SSG support for Gatsby on SWA, I'll check the status of it.
As for the learn module, it does state on the unit two that this is about SSG's and that it's showing how to deploy a SSG, not other forms.

I think this thread needs a bit of clarification.
For Gatsby, Static Web Apps only supports apps that are fully static; there's no built in SSR support. The Microsoft Learn module @lawrenceong001 linked to demonstrates how to do this. The text mentions a few times that it's building and deploying static assets, but doesn't explicitly call out that Gatsby SSR isn't supported. @aaronpowell do you know who can help update that module?
SSR support is specific to each framework. In #749, the planned SSR support that @Reshmi-Sriram is referring to is specifically for Next.js. Gatsby SSR may be supported in the future, but if you need SSR now, use Azure App Service.

There's a docs PR that I provided some feedback on recently to make it more clear that there's only SSG support for Gatsby on SWA, I'll check the status of it.
As for the learn module, it does state on the unit two that this is about SSG's and that it's showing how to deploy a SSG, not other forms.

tks @aaronpowell -- you're right that it does indeed mention SSG. however, the audience (looking at myself :) ) most likely needs clear information about what this entails, since there's a large spectrum of understanding when it comes to static site generators -- Gatsby continues to identify itself as one, as well as other tools such as NextJs. this kind of clarity may be helpful on the FAQ page regarding Azure Static Web Apps. matter of fact, I can't seem to find pages that detail some of the offering's limitations (i.e. limit to the number of pages it can host).


[Migrator] Apply fixit coercing IUO to Any

This PR makes the migrator automatically add as Any coercions when the base type is an implicitly unwrapped optional.
Fixes rdar://40050875

@swift-ci Please smoke test


Startup error

I just followed the steps on the introduction page https://nativecn.mintlify.app/introduction and ran npm run ios and I got the following error

I solved this error by changing the tailwind version to 3.3.2

I solved this error by changing the tailwind version to 3.3.2

So, for some reasons we have to use tailwind in version 3.3.2


[AutoPR cognitiveservices/data-plane/LUIS/Authoring] Updating Authoring for roles

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/6384

(message created by the CI based on PR content)

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/6377


[Pod] Preserve header directory structure

The React code has relative imports like #import "../React/Base/Layout.h". CocoaPods by default flattens the header files so they're all in a single directory, but specifying header_mappings_dir in the podspec preserves the directory structure.

Brilliant! I was having some trouble with the podspec over the weekend but I'm glad someone figured it out. I'll check this out tomorrow (it's getting late here in London) and we can merge this in. Thanks a bunch! :sweat_smile:

On a related note I was thinking it could be good to include 'pod install' as part of the integration tests especially if not a lot of people at facebook are actively using the podspec.

Looking at this now.

Committed in 18cb5d0711d585bf703ab2606839f122ca2a1154.


Paddle OCR Text detection Model Evaluation take too much time

I am training PaddleOCR for Tamil language and when I train the model with 70 images for training and 24 images for evaluation.
After 1st epoch the model take more time (More than 5 hrs) on Evaluation

I have no idea why it takes a long time for Text detection Model Evaluation with PaddleOCR, but I think your dataset when training has some problems. I have often used DBNet repo for training Text Detection Model, you can try it if you find it interesting.
Thanks for watching my custom repo


[Improvement] Prohibit (or validate) multiline header values

Insomnia Version: 5.14.16
Operating System: Any

Details
Currently, it's possible to insert multiline header values. This may lead to the incorrect HTTP request. It may difficult to investigate such issues, cause linebreak may accidentally appear at the and of the value.
Suggestion:
Prohibit, or at least warn users about such values.

How were you able to create a multiline header value? Copy/paste?

Yes, that was copy/paste

Turned out to be a one-line fix. Thanks for reporting this!

Thanks for fixing :)


⚠ Bofrost.fr has degraded performance

In 28ff027, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1004 ms

Resolved: Bofrost.fr performance has improved in 9b497b3.


Integrate YAKINDU Solidity language server into vscode-solidity

The YAKINDU Solidity language server (https://github.com/Yakindu/solidity-ide) provides some features that are not yet implemented/can be improved in the vs code extension.
Most noteworthy:

grammar based code completion
code formatter according to the Solidity style guide
quick fixes for compiler warnings/errors (could be extended to Linter issues as well)
semantic rename refactorings (instead of text replace)
semantic code navigation

We could add the YAKINDU language server as an alternative backend or delegate to it for certain protocol aspects.

Hey @andreasmuelder !
Any progress on this? I don't think that there is any solidity language server available these days...


change class names: interface com.kazurayam.materialstore.Metadata -> IMetadata; MetadataImpl -> Metadata

Which looks better?
new MetadataImpl.Builder(url).build()

new Metadata.Builder(url).build()

I prefer the latter

I have announced this project at Katalon Forum.
MetadataIml is already public, so I should not rename it.
https://forum.katalon.com/t/visual-testing-in-katalon-studio-reborn/57440

Yes, I announced it, but the post and the sample code exposed public does not show the name of MetadataImpl at all.
So it would not confuse people if I change the class name: MetadataImpl -> Metadata, Metadata -> IMetadata

I was wrong. MetadataImpl has already been exposed.
https://github.com/kazurayam/VisualTestingInKatalonStudio_Reborn/blob/master/Scripts/main/GoogleSearch/scrapeGoogleSearch/Script1628518694544.groovy
I shouldn't change the name.

Reopened this.
In v0.1.1 The Material interface is as simple as this:
package com.kazurayam.materialstore

interface Metadata extends MapLike, Comparable {

    public static final Metadata NULL_OBJECT = new MetadataImpl.Builder().build()

    boolean match(MetadataPattern metadataPattern)

    URL toURL()

    String KEY_URL_PROTOCOL = "URL.protocol"
    String KEY_URL_HOST = "URL.host"
    String KEY_URL_PATH = "URL.path"
    String KEY_URL_QUERY = "URL.query"
    String KEY_URL_FRAGMENT = "URL.fragment"

}

Essential body of this is only 1 method:

boolean match(MetadataPattern metadataPattern)


latest distributive of progwrp not compatible with v124 and need to be updated

available distributive not compatible with latest v124 and need to be updated.

can confirm that supermium 124 will now run with the chrome-xpapi-adapter_x86.b5064-wD3D9accel progwrp.dll.

Its fine.


Returns wrong hexadecimal using toRadixString(16).

What happened?

When parse string "80666512367470025" to hexadecimal, returns the "11e95c3feeec5d0" hexadecimal that is wrong. The correct hexadecimal should be "11e95c3feeec5c9".

In Flutter, returns the correct hexadecimal:

Steps to reproduce problem

Run the code in the dartpad.dev:
var hex = int.parse('80666512367470025').toRadixString(16);
print(hex);

Additional info
Browser
Browser: Sidekick
Version: <IP_ADDRESS>228
Are you using any extensions/plugins that affect website behavior
(particularly those that affect iframes, such as ad blockers)?

Yes the native Ad Blocker from Sidekick.

Are there any warnings or errors in your browser's JavaScript console?

No errors or warnings.

Machine
Operating system: Linux Mint
Version: 21.2 x86_64
Kernel: 5.15.0-91-generic

Searching, I was able to find the reason:
"If the number is large enough, it may exceed the default precision of JavaScript for integers. In JavaScript, numbers are represented as 64-bit double-precision floating-point numbers, and this can lead to loss of precision in very large numbers."
Using the 'dart:typed_data' library, my problem was solved with the code:
BigInt.parse('80666512367470025').toRadixString(16);

Thanks for the issue and for the update!
You're correct that numbers do have a unique behavior on the web.
There is a full document on this, Numbers in Dart, if you're interested in learning more about how behavior is different between native platforms and the web(JS) :)


some, possibly all, optargs (short) do not work

youtube-dl --max-quality -tc '_rvtXUuiwDY'
[youtube] Setting language
[youtube] _rvtXUuiwDY: Downloading video webpage
[youtube] _rvtXUuiwDY: Downloading video info webpage
^C
ERROR: Interrupted by user
youtube-dl --max-quality -tc '_rvtXUuiwDY'
[youtube] Setting language
[youtube] _rvtXUuiwDY: Downloading video webpage
[youtube] _rvtXUuiwDY: Downloading video info webpage
[youtube] _rvtXUuiwDY: Extracting video information
[download] Destination: _rvtXUuiwDY.flv
[download]   0.1% of 52.88M at    3.83k/s ETA --:--^C
ERROR: Interrupted by user
youtube-dl --max-quality --title --continue '_rvtXUuiwDY'
[youtube] Setting language
[youtube] _rvtXUuiwDY: Downloading video webpage
[youtube] _rvtXUuiwDY: Downloading video info webpage
[youtube] _rvtXUuiwDY: Extracting video information
[download] Resuming download at byte 30458
[download] Destination: _rvtXUuiwDY.flv
[download]   0.1% of 52.88M at   49.03k/s ETA 18:29^C
ERROR: Interrupted by user

The --max-quality option expects one parameter (the id of the maximum quality to download). It is not a way to make youtube-dl download the best quality available (which it does by default). In fact, --max-quality is used to select a worse video quality (for example, due to bandwidth restrictions).
Removing --max-bandwidth from your arguments should be sufficient to solve your problem.


Fix for ParamNames

I noticed that the function ParamNames gets all param names, but doesn't remove the : at the beginning of a parameter. If one tries to use the names returned by ParamNames, there will be additional :
I added a simple TrimPrefix to solve this.

Thanks for this, but honestly, I feel like this might break some that are using ParamNames currently, and it was unfortunate that we didn't TrimPrefix originally.  Would you be opposed to making a new function definition, maybe "TrimmedParamNames" or something to that extent, that calls ParamNames and performs the string trimming on the result instead?  Just worried about people who might already be using that function.

I'm fine with whatever works for you. Want me to make a new PR with a new function? I mean ... It was so trivial even I was able to solve this. :smile:

I cloned the new function and renamed it. Afterwards I changed the original function back to it's original state.
I also changed the function description so one can distinguish them from one another.
I hope that helps a bit.

Awesome, Looks good, just need a test or two so that coveralls will not complain about coverage lacking.

Added a new file which contains a hopefully useful test for the "new" function

LGTM, merging.


more converter tests

/cc @olafurpg @iTakeshi @dveim

@all Tomorrow I'm planning to continue porting and fixing tests from https://github.com/liufengyun/eden/blob/master/src/test/scala/dotty/eden/UntpdSuite.scala. Thanks again, @liufengyun!

Wow, fantastic progress 👏 Can we add a test case for #59  trait Service[F[_]] that was fixed in #63?
Otherwise LGTM 👍

Looks very nice :+1:

Great stuff!
Is anybody going to add more tests on this weekends? If yes, we should distribute cases to avoid double work.

@Dveim I'll distribute the cases later today.

If I enable all the tests from https://github.com/liufengyun/eden/blob/master/src/test/scala/dotty/eden/UntpdSuite.scala, then we get 65 test failures in the following categories:

[ ] (*) Vals and vars with patterns on the left-hand side
[ ] (*) Types
[ ] (*) Modifiers
[ ] Lambdas
[ ] Type definitions
[ ] Abstract vals, vars, etc
[ ] Imports
[ ] Annotations
[ ] Context bounds
[ ] By-name parameters

Categories are sorted in decreasing order of complexity.
Those marked with (*) will be really complicated, so I'm taking them.
Please feel free to distribute the rest between yourself. I suggest that someone who wants to work on a given category comments here in this thread and then the category becomes taken.

Wdyt?

I'm merging this PR to simplify coordination during the weekend.


Update github actions to remove set-output usage

https://issues.newrelic.com/browse/NR-88402
In typescript files, the github doc recommends upgrading @actions/core to v1.10.0 and using the toolkit functions directly to set environment variables via core.setOutput.  This is much better than what i originally did, which was to change the return of the scripts to output the values we need.

This is looking good to me! If we can verify that the create-preview-links workflow still works correctly, then I think we can say this is good to go.

@aswanson-nr It appears to, if you see this pr here i made to test on my fork it added comments for apache which i added to test.  And also added openai which i guess was because my main branch wasnt updated with that addition!
https://github.com/mickeyryan42/newrelic-quickstarts/pull/16

I'm getting invalid refspec '+refs/pull//merge:refs/remotes/pull//merge' on all the validate-* workflows. I tested against main and didn't have the same issue so I'm not sure if it's something to do with these changes.
https://github.com/d3caf/newrelic-quickstarts/actions/runs/4448797645

@d3caf This should now be fixed!


StreamingUnityServerPlugin compiled architecture differences

It seems that when running with Unity5.6.3f1 there is a behavior difference between x64 and x86. namely, on x86, UnityPluginLoad(IUnityInterfaces* unityInterfaces) is not being called.
If we inspect the produced binaries, we do see different name mangling in effect:

dumpbin name mangling inspection results
Dump of file C:\Users\begreen\git\3dtoolkit\Build\x86\Release\StreamingUnityServerPlugin\StreamingUnityServerPlugin.dll

File Type: DLL

  Section contains the following exports for StreamingUnityServerPlugin.dll

    00000000 characteristics
    59B80623 time date stamp Tue Sep 12 12:06:59 2017
        0.00 version
           1 ordinal base
           6 number of functions
           6 number of names

    ordinal hint RVA      name

          1    0 000C69E0 Close = _Close
          3    1 000C6BB0 SetInputDataCallback = _SetInputDataCallback
          4    2 000C6C30 SetLogCallback = _SetLogCallback
          2    3 000C6B30 _GetRenderEventFunc@0 = _GetRenderEventFunc@0
          5    4 000C6890 _UnityPluginLoad@4 = _UnityPluginLoad@4
          6    5 000C6AA0 _UnityPluginUnload@0 = _UnityPluginUnload@0

  Summary

      17A000 .data
        1000 .gfids
      15D000 .rdata
       2F000 .reloc
        3000 .rodata
        1000 .rsrc
      647000 .text
        1000 .tls

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise>dumpbin /exports "C:\Users\begreen\git\3dtoolkit\Build\x64\Release\StreamingUnityServerPlugin\StreamingUnityServerPlugin.dll"
Microsoft (R) COFF/PE Dumper Version 14.10.25019.0
Copyright (C) Microsoft Corporation.  All rights reserved.

Dump of file C:\Users\begreen\git\3dtoolkit\Build\x64\Release\StreamingUnityServerPlugin\StreamingUnityServerPlugin.dll

File Type: DLL

  Section contains the following exports for StreamingUnityServerPlugin.dll

    00000000 characteristics
    59B80A1C time date stamp Tue Sep 12 12:23:56 2017
        0.00 version
           1 ordinal base
           6 number of functions
           6 number of names

    ordinal hint RVA      name

          1    0 000D1ED0 Close = Close
          2    1 000D2060 GetRenderEventFunc = GetRenderEventFunc
          3    2 000D20F0 SetInputDataCallback = SetInputDataCallback
          4    3 000D2190 SetLogCallback = SetLogCallback
          5    4 000D1DB0 UnityPluginLoad = UnityPluginLoad
          6    5 000D1FC0 UnityPluginUnload = UnityPluginUnload

  Summary

      17F000 .data
        1000 .gfids
       3E000 .pdata
      1A9000 .rdata
        B000 .reloc
        3000 .rodata
        1000 .rsrc
      762000 .text
        1000 .tls

As per MSDN this is expected, in that x64 binaries do not get mangled at all.
My current question is - is the difference in behavior a result of unity not being able to find the correct function due to name mangling in x86?

answer: yes, this is why things are sad.
To test, i modified IUnityInterface.h dropping the __stdcall from the exported functions. This gives us:
// If exported by a plugin, this function will be called when the plugin is loaded.
void UNITY_INTERFACE_EXPORT UnityPluginLoad(IUnityInterfaces* unityInterfaces);
// If exported by a plugin, this function will be called when the plugin is about to be unloaded.
void UNITY_INTERFACE_EXPORT UnityPluginUnload();

If we mirror the change to our function implementations, and build for x86, we can again use dumpbin to verify the exports are as expected. This makes sense, because __cdecl combined with __declspec(dllexport) using vc140 tools results in an undecorated export. Since x64 builds are undecorated by default, this matches behavior and we see the module load properly.
However, this required a change to the unity provided files, which isn't ideal...so I'm going to go try and find a better solution that doesn't have that requirement.

okay, so as-per the unity native rendering plugin sample, the expected approach (which isn't in their docs 😢) is to use a .def file. See https://bitbucket.org/Unity-Technologies/graphicsdemos/src/43011994ae74ebf5e39bfe0055990cb349a4ae09/NativeRenderingPlugin/PluginSource/source/RenderingPlugin.def?at=default


The times property of a coupon is not used

In the cashier_coupons.php cofig file, you can set the times property.
This property doesn't seem to be used. After applying a coupon with a times value higher than 1 the times_left column in the redeemed_coupons table is always 0 (or 1 before processing the order).

Thanks.
Can you check whether 1) this only happens on first payments, and 2) a AppliedCoupon record was created?

This happens on both first payments and other payments. And an AppliedCoupon object is created.

Found it, the issue is in the ConfigCouponRepository. Preparing a PR.

@sebastiaands , can you give the develop branch a spin?

Should fix both of your issues.

Hi @sandervanhooft , both issues seem to be fixed.
Thanks!

Released! https://github.com/laravel/cashier-mollie/releases


windows 10 : failed to setup the network bridge

Error   : dial tcp <IP_ADDRESS>:23456: connectex: Aucune connexion n’a pu être établie car l’ordinateur cible l’a expressément refusée.
Context : failed to setup the network bridge
i had launch the cmd with administraor privilege, then nanobox.exe run and it failed

I was getting the same message. But in English!
😉
Any help or thought would be most appreciated....
I then installed all windows updates, removed nanobox (nanobox implode) and VirtualBox, reinstalled, and now am getting:
C:\Users\AdamQuad\Dev\polo (master)
λ nanobox run
Administrator privileges are required to start the server.
Another window will be opened as the Administrator and permission may be request
Enter to continue:

Starting Nanobox :

--------------------------------------------------------------------------------
+ HEADS UP:
+ Nanobox will run a single VM transparently within VirtualBox.
+ All apps and containers will be launched within the same VM.
--------------------------------------------------------------------------------

  √ Launching VM
  √ Configuring Network
  √ Loading kernel modules
  √ Cleaning DHCP

--------------------------------------------------------------------------------
Nanobox has started a VM that needs access to your machine for mounting.
This VM is unable to communicate with the host machine currently. Please
verify that you don't have a firewall blocking this connection, and try again!
--------------------------------------------------------------------------------
  √ Loading kernel modules
  √ Cleaning DHCP

--------------------------------------------------------------------------------
Nanobox has started a VM that needs access to your machine for mounting.
This VM is unable to communicate with the host machine currently. Please
verify that you don't have a firewall blocking this connection, and try again!
--------------------------------------------------------------------------------
  √ Loading kernel modules
  √ Cleaning DHCP

(and then it loops...)
I have Windows Firewall disabled.
Note that the window that pops up says:
Error   : The service cannot be started, either because it is disabled or because it has no enabled devices associated with it.
Context : could not start service

Enter to continue:

I have the same issue on Windows 10
```Root privileges are required to start the server. Your system password may be requested...
Starting Nanobox :
  ✓ Setting up custom docker network...
  ✓ Joining virtual network

Building bridge :
  ✓ Pulling nanobox/bridge image
  ✓ Starting docker container
  ! Setting up container
    /opt/gonano/hookit/lib/hookit/hook.rb:91:in `method_missing': undefined method `captures' for nil:NilClass (NoMethodError)
        from /opt/nanobox/hooks/configure:34:in `<main>'

Error   : failed to execute hook (configure) on 46b1bc9ddbe52d69ac931e45a43066e2e2f42fad0626eeef4d309b0cb67a0a0a: util:Exec:/opt/nanobox/hooks/configure: bad exit code(1):
Context : failed to setup the network bridge -> failed to run configure hook```


Dependable or cascading selects

Hi everyone, how can I implement 3 dependent selects?
Here is an example of what I need to achieve http://www.ajaxray.com/Examples/depend.html
Thanks in advance for any help

Hi @lobosan. I did this with two checkboxes but it would be the same thing to add another one I imagine. You can use Autoform.getFieldValue to get the previously selected value, then change the options in the next select box based on that. So something like this:
   officeId:
      type: String
      label: 'Office'
      autoform:
         options: -> _.map Offices.find().fetch(), (office)-> { label: office.name, value: office._id }
   clientId:
      type: String
      label: 'Client'
      autoform:
         options: ->
            selectedOffice = AutoForm.getFieldValue('officeId')
            if(selectedOffice)
               _.map Clients.find({$where: "this.officeId == '#{selectedOffice}'"}).fetch(), (client)->
                  { label: client.name, value: client._id }
            else
              _.map Clients.find().fetch(), (client)-> { label: client.name, value: client._id }

Hi @sturoid. Thank you very much for your reply. The way I solved it was very similar. However for the third select to return the selected value once the first select is updated I had to use JQuery. This might help to someone in need of something similar. But if there is a better way to do it please let me know. Cheers
Organizaciones = new Mongo.Collection('organizaciones');

Organizaciones.attachSchema(new SimpleSchema({
    provincia: {
        type: String,
        label: 'Provincia',
        autoform: {
            type: 'select',
            firstOption: '',
            options: function () {
                return DPA.find({grupo: 'Provincia'}).map(function (dpa) {
                    return {label: dpa.descripcion, value: dpa.codigo};
                });
            }
        }
    },
    canton: {
        type: String,
        label: 'Cantón',
        autoform: {
            type: 'select',
            firstOption: '',
            options: function () {
                var codigoProvincia = AutoForm.getFieldValue('provincia');
                var cantones = new RegExp('^' + codigoProvincia + '[\\d]{2}$');
                return DPA.find({codigo: {$regex: cantones}}).map(function (dpa) {
                    return {label: dpa.descripcion, value: dpa.codigo};
                });
            }
        }
    },
    parroquia: {
        type: String,
        label: 'Parroquia',
        autoform: {
            type: 'select',
            firstOption: '',
            options: function () {
                $('#provincia').change(function() {
                    $('#parroquia option[value!=""]').remove();
                });
                var codigoCanton = AutoForm.getFieldValue('canton');
                var parroquias = new RegExp('^' + codigoCanton + '[\\d]{2}$');
                return DPA.find({codigo: {$regex: parroquias}}).map(function (dpa) {
                    return {label: dpa.descripcion, value: dpa.codigo};
                });
            }
        }
    }
}));

Hi @sturoid
I get the logic of what you mentioned. What i don't get is how to do this :
_.map Offices.find().fetch(), (office)
Does it work with the default js file with autoform or do i need to do something with routes?

@fuzzyshark I was using lodash.js to do the _.map function. The rest should work with everything else being default.

Any idea how do do this inside a "sub schema" ? I have a list of options, in whitch I need cascasding drop downs.
This approach seems to not work, as I am unable to get the value of the first select box. It is inside an array in the form, so I get a name like attributes.0.defaultOption, and I need to populate the second selectbox based on attributes.0.attributeId
Any ideas?


Android Target Platform Support

This draft PR is a work in progress. The current state is that Cesium Native and the Cesium for Unreal plugin compile for Android, but cannot be packaged as an APK with Cesium for Unreal Samples, or even for Android debugging mode.
See full notes in #190.
Before packaging Cesium for Unreal Samples, In File -> Package Project -> Project Settings, please set the following (or edit the Config/DefaultEngine.ini file)
+[/Script/AndroidRuntimeSettings.AndroidRuntimeSettings]
+MinSDKVersion=26
+bBuildForArmV7=False
+bBuildForArm64=True
+bSupportsVulkan=True
+bBuildForES31=False
+InstallLocation=Auto
+PackageName=com.Cesium.CesiumForUnrealSamples
+TargetSDKVersion=26
+ApplicationDisplayName=Cesium_For_Unreal

Preprocessor Definitions
Based on the suggestion in https://github.com/CesiumGS/cesium-unreal/issues/190#issuecomment-843468951, I added -D__ANDROID__ -DANDROID_LOGGING to both the unreal-android-toolchain file and to the CesiumRuntime.Build.cs files (using appropriate syntax). This however didn't help so I haven't pushed it up.
Patch file: preprocessor.diff.txt
__ANDROID__ is supposed to be a built-in definition in the compiler, but I haven't verified that it was coming in for cross compilation.
When I tried to run  C:/Users/smohammed/AppData/Local/Android/Sdk/ndk/21.1.6352462/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++.exe  -E -dM - < /dev/null, it did not print the Android preprocessor definitions.
MikkTSpace and genTangSpaceDefault
This is a function we use from the Unreal Engine source modules. It includes a library for aarch64, but for some reason the build system is not picking the library up, resulting in a undefined reference error.

Thanks for the pull request @shehzan10!

:heavy_check_mark: Signed CLA found.

Reviewers, don't forget to make sure that:

[ ] Cesium for Unreal Samples works.

Steps to cross compile for Android are here https://github.com/CesiumGS/cesium-unreal/blob/android-platform/Documentation/development-guide.md#android.

@kring Not sure if its because of some file being removed in the manual edits, but plugin build tool errors out with that Android is not a supported platform. https://travis-ci.com/github/CesiumGS/cesium-unreal/jobs/506474910 (Only says this in the Branch build. The PR build seems to be erroring out much earlier for some reason)

I didn't end up doing any manual edits, but I did de-select the "Linux" support and the "Engine Source Code" option. I can't think of why either of those should bre required, but I'll check it out today. This page makes it sound like UE is super picky about the versions of Android things: https://answers.unrealengine.com/questions/991480/view.html

Hmm I made a trivial change to print the build log so we could get more details about what's going wrong... and now the Branch build is failing in the same way the PR one was before. 🤔

The Android plugin package is succeeding on Travis now. I'm looking into the linker errors at game package time.

The game package succeeds now. It crashes on startup on my ancient Nexus 6P, but hey, progress!

Looks like it might be related to our old friend SQLite. From adb logcat:
05-21 17:24:47.864 32434 32434 F DEBUG   : signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
05-21 17:24:47.871 32434 32434 F DEBUG   : Abort message: 'terminating with uncaught exception of type std::runtime_error: disk I/O error'

I commented-out the SQLite cache, and now it runs!

 But CWT is clearly showing up, and it's perfectly smooth flying around even on this 6 year old phone.
This is an OpenGL ES 3.1 build. I also tried Vulkan, but this phone doesn't seem to support it. But even the Vulkan build reports lots of errors with our materials:
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Warning: Failed to compile Material /CesiumForUnreal/Materials/M_CesiumOverlayComplexWater.M_CesiumOverlayComplexWater for platform SF_VULKAN_ES31_ANDROID_NOUB, Default Material will be used in game.
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2025): error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2025): error: 'return' with wrong type , in function 'CustomExpression0' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2059): error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2059): error: 'return' with wrong type , in function 'CustomExpression4' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2066): error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2066): error: 'return' with wrong type , in function 'CustomExpression5' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2073): error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2073): error: 'return' with wrong type , in function 'CustomExpression6' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2080): error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2080): error: 'return' with wrong type , in function 'CustomExpression7' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2087): error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2087): error: 'return' with wrong type , in function 'CustomExpression8' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2120): error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2120): error: 'return' with wrong type , in function 'CustomExpression12' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2127): error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2127): error: 'return' with wrong type , in function 'CustomExpression13' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2160): error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2160): error: 'return' with wrong type , in function 'CustomExpression17' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2167): error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2167): error: 'return' with wrong type , in function 'CustomExpression18' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(3118): warning: implicit truncation from 'half3' to 'half'
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(3121): warning: implicit truncation from 'half3' to 'half'
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(3122): warning: implicit truncation from 'half3' to 'half'
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(3123): warning: implicit truncation from 'half3' to 'half'
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(3127): warning: implicit truncation from 'half3' to 'half'
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2025): error: 'return' with wrong type , in function 'CustomExpression0' returning vec2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2059): error: 'return' with wrong type , in function 'CustomExpression4' returning vec2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2066): error: 'return' with wrong type , in function 'CustomExpression5' returning vec2
PackagingResults: Warning: Failed to compile Material /CesiumForUnreal/Materials/M_CesiumOverlayComplexWater.M_CesiumOverlayComplexWater for platform SF_VULKAN_ES31_ANDROID_NOUB, Default Material will be used in game.
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2073): error: 'return' with wrong type , in function 'CustomExpression6' returning vec2
PackagingResults: Error: array index must be integer type
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression0' returning half2
PackagingResults: Error: array index must be integer type
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression4' returning half2
PackagingResults: Error: array index must be integer type
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression5' returning half2
PackagingResults: Error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2080): error: 'return' with wrong type , in function 'CustomExpression7' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression6' returning half2
PackagingResults: Error: array index must be integer type
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression7' returning half2
PackagingResults: Error: array index must be integer type
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression8' returning half2
PackagingResults: Error: array index must be integer type
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression12' returning half2
PackagingResults: Error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2087): error: 'return' with wrong type , in function 'CustomExpression8' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression13' returning half2
PackagingResults: Error: array index must be integer type
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression17' returning half2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2120): error: 'return' with wrong type , in function 'CustomExpression12' returning vec2
PackagingResults: Error: array index must be integer type
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2127): error: 'return' with wrong type , in function 'CustomExpression13' returning vec2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2160): error: 'return' with wrong type , in function 'CustomExpression17' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression18' returning half2
PackagingResults: Warning: implicit truncation from 'half3' to 'half'
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(2167): error: 'return' with wrong type , in function 'CustomExpression18' returning vec2
PackagingResults: Warning: implicit truncation from 'half3' to 'half'
PackagingResults: Warning: implicit truncation from 'half3' to 'half'
PackagingResults: Warning: implicit truncation from 'half3' to 'half'
PackagingResults: Warning: implicit truncation from 'half3' to 'half'
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(3118): warning: implicit truncation from 'vec3' to 'float'
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression0' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression4' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression5' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression6' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression7' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression8' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression12' returning vec2
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(3121): warning: implicit truncation from 'vec3' to 'float'
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression13' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression17' returning vec2
PackagingResults: Error: 'return' with wrong type , in function 'CustomExpression18' returning vec2
PackagingResults: Warning: implicit truncation from 'vec3' to 'float'
PackagingResults: Warning: implicit truncation from 'vec3' to 'float'
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(3122): warning: implicit truncation from 'vec3' to 'float'
PackagingResults: Warning: implicit truncation from 'vec3' to 'float'
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(3123): warning: implicit truncation from 'vec3' to 'float'
UATHelper: Packaging (Android (Multi:ASTC,DXT,ETC2)):   LogShaderCompilers: Display:   /Engine/Generated/Material.ush(3127): warning: implicit truncation from 'vec3' to 'float'
PackagingResults: Warning: implicit truncation from 'vec3' to 'float'
PackagingResults: Warning: implicit truncation from 'vec3' to 'float'

To (temporarily) disable the SQLite request cache:
diff --git a/Source/CesiumRuntime/Private/Cesium3DTileset.cpp b/Source/CesiumRuntime/Private/Cesium3DTileset.cpp
index 61332f9..c06a98f 100644
--- a/Source/CesiumRuntime/Private/Cesium3DTileset.cpp
+++ b/Source/CesiumRuntime/Private/Cesium3DTileset.cpp
@@ -639,13 +639,15 @@ static std::string getCacheDatabaseName() {
 }

 void ACesium3DTileset::LoadTileset() {
+  // static std::shared_ptr<CesiumAsync::IAssetAccessor> pAssetAccessor =
+  //    std::make_shared<CesiumAsync::CachingAssetAccessor>(
+  //        spdlog::default_logger(),
+  //        std::make_shared<UnrealAssetAccessor>(),
+  //        std::make_shared<CesiumAsync::SqliteCache>(
+  //            spdlog::default_logger(),
+  //            getCacheDatabaseName()));
   static std::shared_ptr<CesiumAsync::IAssetAccessor> pAssetAccessor =
-      std::make_shared<CesiumAsync::CachingAssetAccessor>(
-          spdlog::default_logger(),
-          std::make_shared<UnrealAssetAccessor>(),
-          std::make_shared<CesiumAsync::SqliteCache>(
-              spdlog::default_logger(),
-              getCacheDatabaseName()));
+      std::make_shared<UnrealAssetAccessor>();

   Cesium3DTiles::Tileset* pTileset = this->_pTileset;

@getinthedamnbox @CesiumBen @ggetz It might be worth testing the current state of support for Android on the VR headsets. Here are the steps to follow:

Follow https://docs.unrealengine.com/en-US/SharingAndReleasing/Mobile/Android/Setup/AndroidStudio/index.html to get Android Studio set up for Unreal Engine use.
Download the latest build of this PR from travis ("combined" tag)
Extract this to C:\Program Files\Epic Games\UE_4.26\Engine\Plugins\Marketplace\CesiumForUnreal.
Clone Cesium for Unreal Samples.
Follow the project setting changes in https://github.com/CesiumGS/cesium-unreal/pull/443#issue-647951727. (We'll open a PR for Unreal Samples soon with these changes)

This should now allow you to build for Android. You can then use that to test on the Quest, but you probably know more about that workflow than I do.

@shehzan10 Awesome, looking forward to trying it. Can you please tell me how I can download a build from Travis? Don't see that option.

@getinthedamnbox click "Show all checks" to see the builds, and then click the details link next to the combined build.

I decided to try to figure out why the SQLite cache is causing a crash at startup. Here's a summary of my (lack of) progress.
The story is, the sqlite3_open completes succesfully. The .sqlite file is created with zero length (which is the same behavior I see on Windows). But then when we attempt to create the cache table, sqlite3_exec fails with SQLITE_IOERR. After enabling more detailed IO errors (sqlite3_extended_result_codes), it reports SQLITE_IOERR_SEEK. So we can create a file just fine, but can't seek within it? Seriously?
I disabled WAL mode, and made sure to delete the .sqlite file on my device before launching the app, but it didn't make any difference.
So at this point I decided I needed a debugger. Instructions for setting that up are here. Do you think debugging cesium-native in Cesium for Unreal on Windows is a hassle? Wait til you see this! Anyway, it kind of works, if you Clean builds just right and recompile things manually and generally muck around every time you want to change the code. My process (surely I'm missing something, it can't really be this hard, can it?!) goes roughly like this:

Package the game for Android once to get all the data in the right place I guess.
Build the C++ code for Android from the command line:

."C:\Program Files\Epic Games\UE_4.26\Engine\Binaries\DotNET\UnrealBuildTool.exe" dev Android Development -Project=C:\Dev\cesium-unreal-samples\CesiumForUnrealSamples.uproject -Clean -NoHotReload C:\Dev\cesium-unreal-samples\CesiumForUnrealSamples.uproject -NoUBTMakefiles  -remoteini="C:\Dev\cesium-unreal-samples" -skipdeploy -nobuilduht -log="C:\Users\kring\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_4.26\UBT-dev-Android-Development.txt"; ."C:\Program Files\Epic Games\UE_4.26\Engine\Binaries\DotNET\UnrealBuildTool.exe" dev Android Development -Project=C:\Dev\cesium-unreal-samples\CesiumForUnrealSamples.uproject C:\Dev\cesium-unreal-samples\CesiumForUnrealSamples.uproject -NoUBTMakefiles  -remoteini="C:\Dev\cesium-unreal-samples" -skipdeploy -Manifest=C:\Dev\cesium-unreal-samples\Intermediate\Build\Manifest.xml -NoHotReload -log="C:\Users\kring\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_4.26\UBT-dev-Android-Development_2.txt"

In Android Studio, go to Build -> Clean Project, followed by Run -> Debug 'app-app`.
If that fails (mysterious errors from the build step or the Debug step), Clean again, then build again, then clean again, then debug again. I suspect sacrificing an Android-themed stuffed animal or two couldn't hurt, but I don't have any and my kids probably wouldn't let me try it anyway. 🤷

Oh and by the way, every step of the above takes approximately forever, so have fun with that.
With that it quickly (build time aside) became clear that the game is using the UE version of SQLite on Android. Which might be the problem, but it's hard to tell because the UE version of SQLite doesn't have any debug symbols, so we can't step into the sqlite code and see what's going wrong. I tried disabling UE's SQLite plugin, but that only yields this rather infurating error at startup:

(in case it's not clear, that message is infurating because I did disable the plugin, and that's what caused this error. 🙄)
Not sure what the next step is other than to sleep and hope for a brilliant flash of insight (most likely from someone else reading this) by the morning.

Which might be the problem, but it's hard to tell because the UE version of SQLite doesn't have any debug symbols, so we can't step into the sqlite code and see what's going wrong

I had this problem before and the only solution I had at that time is to compile the UE4 manually as Debug configure (not DebugGame) and use the built engine to open the project. After that, I was able to step into sqlite source code, which should be sqlite3.inl file for Unreal version

I followed the instructions in this comment to try to build and deploy to the Quest, and I got these build errors:
LogPlayLevel:   Building 4 actions with 12 processes...
LogPlayLevel:     [1/4] SharedPCH.Engine.ShadowErrors.h [armv7]
LogPlayLevel:     [2/4] CesiumForUnrealSamples.cpp [armv7]
LogPlayLevel:     [3/4] CesiumForUnrealSamples-armv7.so
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libasync++.a(scheduler.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesium3DTiles.a(BingMapsRasterOverlay.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesium3DTiles.a(BoundingVolume.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesium3DTiles.a(CreditSystem.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesium3DTiles.a(IonRasterOverlay.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesium3DTiles.a(RasterOverlayCollection.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesium3DTiles.a(TileMapServiceRasterOverlay.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesium3DTiles.a(Tileset.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesium3DTiles.a(ViewState.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesium3DTiles.a(registerAllTileContentTypes.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesiumAsync.a(CachingAssetAccessor.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesiumAsync.a(HttpHeaders.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesiumAsync.a(SqliteCache.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesiumGeometry.a(AxisTransforms.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesiumGeospatial.a(Ellipsoid.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesiumGeospatial.a(GlobeRectangle.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesiumGeospatial.a(Transforms.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libCesiumGltf.a(Accessor.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libMikkTSpace.a(mikktspace.c.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: C:/Program Files/Epic Games/UE_4.26/Engine/Plugins/Marketplace/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64\libspdlog.a(spdlog.cpp.o) is incompatible with armelf_linux_eabi
LogPlayLevel: Error:     ld.lld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)
LogPlayLevel: Error:     clang++: error: linker command failed with exit code 1 (use -v to see invocation)

Here's the full log: UBT-CesiumForUnrealSamples-Android-Development.txt
I'll go over the steps again to see if I missed anything, but let me know if anyone has tips.

I've seen those errors. In my case it was caused by forgetting to switch the project to target 64-bit ARM instead of 32-bit. In the Editor, go to Edit -> Project Settings -> Platforms -> Android -> Build. Then uncheck "Support armv7" and check "Support arm64":

Shehzan suggested switching from OpenGL ES3.1 to Vulkan, too, but that'll depend on your device.

Actually you'll need to check arm64 first before you try to uncheck armv7, or else the editor won't let you. 😆

Thanks @kring, that was it. I had a typo in my DefaultEngine.ini file, which made it keep switching back to armv7. In this comment,
+[/Script/AndroidRuntimeSettings.AndroidRuntimeSettings]

should be
[/Script/AndroidRuntimeSettings.AndroidRuntimeSettings]

The application builds and runs now, but it crashes on start. I tried both Vulkan and OpenGL. Here's the log for OpenGL: CesiumForUnrealSamples (Quest 2, OpenGL).log

@getinthedamnbox the crash on start can be fixed by hacking out the request cache:
diff --git a/Source/CesiumRuntime/Private/Cesium3DTileset.cpp b/Source/CesiumRuntime/Private/Cesium3DTileset.cpp
index 61332f9..c06a98f 100644
--- a/Source/CesiumRuntime/Private/Cesium3DTileset.cpp
+++ b/Source/CesiumRuntime/Private/Cesium3DTileset.cpp
@@ -639,13 +639,15 @@ static std::string getCacheDatabaseName() {
 }

 void ACesium3DTileset::LoadTileset() {
+  // static std::shared_ptr<CesiumAsync::IAssetAccessor> pAssetAccessor =
+  //    std::make_shared<CesiumAsync::CachingAssetAccessor>(
+  //        spdlog::default_logger(),
+  //        std::make_shared<UnrealAssetAccessor>(),
+  //        std::make_shared<CesiumAsync::SqliteCache>(
+  //            spdlog::default_logger(),
+  //            getCacheDatabaseName()));
   static std::shared_ptr<CesiumAsync::IAssetAccessor> pAssetAccessor =
-      std::make_shared<CesiumAsync::CachingAssetAccessor>(
-          spdlog::default_logger(),
-          std::make_shared<UnrealAssetAccessor>(),
-          std::make_shared<CesiumAsync::SqliteCache>(
-              spdlog::default_logger(),
-              getCacheDatabaseName()));
+      std::make_shared<UnrealAssetAccessor>();

   Cesium3DTiles::Tileset* pTileset = this->_pTileset;

I'm working on a proper fix.

After the above commits:

Debug builds no longer assert/crash with a ColorVertexBuffer-related error. Also we can use Settings -> Preview Rendering Level -> Android ES 3.1 on desktop and it doesn't crash anymore.
The SQLite cache works now. No need to be disable it to avoid a crash on startup.
Fixes #245, all the SQLite problems, I think (but not well tested yet).

Materials are working now, too. The problem was that the custom CesiumSelectTexCoords function was trying to index an array with a float, which I guess is automatically converted to an int on desktop platforms. On Android we have to convert the float to an int explicitly.
My old Nexus 6P again:

@kring Looks great and I was able to run it on my Samsung S21 as well. It complained about old Android build and stuff, but it worked.
Do you know why the SunSky is not loading? I ran the Denver photogrammetry level from Samples, and it was very dark because its not doing GI and indirect lighting.

Do you know why the SunSky is not loading?

I suspect the SkyAtmosphere just isn't supported on Android, but that's only a guess.

I suspect the SkyAtmosphere just isn't supported on Android, but that's only a guess.

@kring So I asked this to UDN during the day, and they said it should be supported. https://udn.unrealengine.com/s/question/0D54z00006xC6vHCAS/compiling-cesium-for-unreal-code-plugin-for-android (click "Show more Answers" towards the bottom).
I'll try creating a small test project with SunSky and see if that works.

@kring I added a new level to Cesium Unreal Samples from the template "Time of Day" level, and that runs fine on Android. It uses separate actors for Sky Light, Sky Atmosphere, Sky dome mesh.
However, hiding those actors and adding just the SunSky doesn't seem to work for some reason. The component properties as far as I checked match the individual actors from the template.

However, hiding those actors and adding just the SunSky doesn't seem to work for some reason. The component properties as far as I checked match the individual actors from the template.

SunSky + SkyDomeMesh from the template works well and the lighting is good.

I'm going to merge this once CI is happy. I don't know if we're quite ready to call Android support official, but this is a big step in that direction and shouldn't cause problems for other platforms. It also fixes #245. We'll write separate issues for any remaining work.

@getinthedamnbox — were you able to sort out the problem with the app crashing on the oculus quest?


LoggingEvent: repository properties get added to the composite properites

Just added a few lines of code to complete this TODO. The properties of the repository are now added to the aggregated properties.

It seems like Nant fails to build the commit. But I do not have any idea why.


Add a dialog for confirming deletion of enumerator entities

Is your feature request related to a problem? Please describe.
From @kendrickt on #1110:

Problem: Applicant cannot un-delete an entity.
Solution: add a warning to verify with applicant that they want to delete it. This can include a message about needing to click save and continue to actually persist these changes.

Done when
When an applicant clicks the remove entity button, a dialog pops up to warn them that they are about to delete the entity

I'd like to work on this one (I checked on slack about it).


Shared I2C bus example

I am fairly new to embedded rust, and I have been struggling to get more than 1 I2C device working on a bus.
The problem is that any sensor owns the I2cDriver so that it can only be used once. The RefCellDevice from embedded_hal_bus is supposed to be the solution for this, but I can`t get it to compile without trait constraint errors.
Can somebody provide an example as to how to get multiple I2C devices to work on a single bus?
Here is what I tried (abbreviated from my original code):
use std::cell::RefCell;
use esp_idf_hal::{delay, i2c, prelude::Peripherals};
use esp_idf_sys::EspError;

use bme280::i2c::BME280;
use mlx9061x::{Mlx9061x, SlaveAddr};

use embedded_hal_bus::i2c as i2c_bus;

fn main() -> Result<(), EspError> {
    esp_idf_sys::link_patches();

    let mut peripherals = Peripherals::take().unwrap();

    let scl1 = peripherals.pins.gpio15;
    let sda1 = peripherals.pins.gpio2;
    let i2c0 = i2c::I2cDriver::new(
        peripherals.i2c0,
        sda1,
        scl1,
        &i2c::config::Config::new().baudrate(100.kHz().into())
    )?;

    let i2c_ref_cell = RefCell::new(i2c0);

    let mut bme280 = BME280::new_primary(i2c_bus::RefCellDevice::new(&i2c_ref_cell));
    bme280.init(&mut delay::Ets).unwrap();

    let addr = SlaveAddr::default();
    let mut mlx90614 = Mlx9061x::new_mlx90614(i2c_bus::RefCellDevice::new(&i2c_ref_cell), addr, 5).unwrap();

    let amb_temp = bme280.measure(&mut delay::Ets).unwrap();
    let obj_temp = mlx90614.object1_temperature().unwrap();
}

This fails to compile with
error[E0277]: the trait bound `embedded_hal_bus::i2c::RefCellDevice<'_, I2cDriver<'_>>: embedded_hal::blocking::i2c::WriteRead` is not satisfied

at  Mlx9061x::new_mlx90614(....)
My dependecies are:
esp-idf-hal = "0.43.0"
esp-idf-sys = "0.34.0"
bme280 = "0.5.0"
mlx9061x = "0.2.1"
embedded-hal-bus = "0.1.0"
embedded-hal = "1.0.0"

The problem is your mlx9061x driver crate you are using. You are currently using the embedded-hal-bus version that is using embedded-hal v1.0.0. The bme280 crate is also using embedded-hal v1.0 but the mix9061 crate still uses embedded-hal 0.2 and thats why you got that conflict. While we as a esp-idf-hal supports both e-hal 0.2 and e-hal 1.0. on any instance you need to use either one or the othere in your drivers that share a bus. You cant mix them on one embedded-hal-bus implementation.

Closing as advice was given. For deeper information the embedded-hal repository also offers some information. We fully support embedded-hal but its concrete usage is not specific to esp-idf-hal


Not all images have replaced urls

Hello!
I just:

installed wp-stateless
set ephemeral mode
synchronized all files
double-checked they are all present in bucket - they are
enabled URL replacement (configured with default jpg jpeg png gif pdf file types)

And it seems to work, with some exceptions.
For example here:
https://gorzkayuca.com/2020/02/20/14-uroki-konsumpcji/
The last image has no replaced url, when the rest has. In media file browser it has GCS address. But on page it still has local address.
What's also interesting is that all the images that are replaced on the site, doesn't work in the editor (the URL is not replaced to use GCS address, yet it tries to load: https://gorzkayuca.com/wp-content/uploads/2020/08/000667612W-1024x683.jpg, but that URL does not exist for some reason). The image that is not replaced on site, works correctly in editor.
Newly created posts using the same images seem to work. Also if I manually replace all images with different images, and bring back originals (using media library of course), it works  both in editor and on site. But doing that for every post is dreadful
Any ideas?
wp-stateless: 3.1.0
Wordpress: 5.5.1

Hello @soanvig
You have image https://storage.googleapis.com/gorzkayuca/2020/08/DSC_0273-scaled-1024x576.jpg instead https://storage.googleapis.com/gorzkayuca/2020/08/DSC_0273-1024x576.jpg
As you can see image on GCS has suffix -scaled.
WordPress introduced that in version 5.3 - ref https://make.wordpress.org/core/2019/10/09/introducing-handling-of-big-images-in-wordpress-5-3/

@planv I am manually replacing all images now, so I updated link to the post that still has the problem - last photo. It uses local version instead of GCS version.

@soanvig
Your image in GCS has suffix -scaled
https://storage.googleapis.com/gorzkayuca/2020/02/menu-sc-scaled-768x1024.jpg
You can disable scaling in WordPress, please read about that in the article above.

Yes, I saw it, but disabling scaling is a bad idea, isn't it?
Or is it automatically handled anyway by stateless plugin during creating various versions of images

If you want to use scaled version - you have to replace images in your post manually.

I don't care for the version I use.
My problems are:

Images using -scaled suffix on GCS work in editor and site, but use local URLs
Images not using -scaled suffix on GCS work on site, but don't work in editor at all

In both cases the fix is to manually replace all images with the same images already in library (so pick another one, then pick the correct one once again). Then everything works as expected.
I see some serious problem here.

It was fixed with https://github.com/udx/wp-stateless/issues/596
Closing the ticket


Integrating with Elm

Hello we are startup really interested in using Elm instead of React/Relay.
We already have a working GraphQL backend and interested in hearing if you have done any dabbles with Elm and GraphQL/Relay.
If not do you have any interested in helping out with and example app for this purpose ?
Here is the stack we would like to port to elm https://github.com/graphql-elixir/phoenix-hipster-stack
Kind Regards Nils Eriksson

Hi,
no .. I don't have anything done with Elm and GraphQL/Relay (I think nobody has)
It would be interesting to see how it can work, but I don't have any time currently to investigate it further.
Best regards,
Andi


Update readme with logo and badges

Signed-off-by: Lan Xia<EMAIL_ADDRESS>

Preview: https://github.com/adoptium/aqa-tests/blob/68ccaf4202c1fa67499749b9c3ead18cd4936052/README.md