cargo-expand: 1.0.0 -> 1.0.4

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/dtolnay/cargo-expand/releases.
meta.description for cargo-expand is: "A utility and Cargo subcommand designed to let people expand macros in their Rust source code"
meta.homepage for cargo-expand is: "https://github.com/dtolnay/cargo-expand"
meta.changelog for cargo-expand is: ""
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found 1.0.4 with grep in /nix/store/5jmp6h480x7hz69afn0xs5ih478bxyxs-cargo-expand-1.0.4

directory tree listing: https://gist.github.com/f32e8a7c5bc55273b3cf0feaf6396e36

du listing: https://gist.github.com/a0930fd6cb570a07379e0a65d0522c26

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
cargo-expand

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/5jmp6h480x7hz69afn0xs5ih478bxyxs-cargo-expand-1.0.4 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A cargo-expand https://github.com/r-ryantm/nixpkgs/archive/0bc520c79963cb68903ddaa3b31cb24a33373dae.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/5jmp6h480x7hz69afn0xs5ih478bxyxs-cargo-expand-1.0.4
ls -la /nix/store/5jmp6h480x7hz69afn0xs5ih478bxyxs-cargo-expand-1.0.4/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review 1

1 package built:

cargo-expand

Maintainer pings
cc @xrelkd for testing.

Result of nixpkgs-review pr 104946 run on x86_64-darwin 1

1 package built:

cargo-expand


Require Aframe first, so that THREE.js is available to component.

I tried to define some static THREE.Vector3 instances in index.js, during its initial load. Leaving aside for a moment that it was probably a bad idea, I was confused by the "THREE is not defined" error. Should I have added THREE.js as a <script src="..."></script> tag in my HTML file? Did I need THREE.js as an NPM dependency? If I do that, won't THREE.js be bundled with my dist/* files, and loaded twice for users already including Aframe?
The problem was that main.js loads my component before loading Aframe, and window.THREE is only defined after Aframe loads. I'd like to think there's a better way of doing this, but in case other users make the same mistake it might be safest to load Aframe first.

Oh, wait is this so that the user's code will appear first in the compiled output? That kind of makes sense, too. Hoping there's a better way of requiring THREE.js from a component, but if not maybe it's better to close this PR.

A-Frame should always be loaded first. That will set window.THREE for components to use.
In the browser builds, there is a warning if the user requires the component before A-Frame.
Is there anything else that can improve the process?

Not a big deal, now that i've tried a few more examples. Probably fine to close this.

Oops, I didn't see this closely since I was out. I wonder if I had mistaken this for an issue.
The idea of this pull request seems fine. Can you reopen?


[Feature Request] API for other plugins to temporary disable fps limiter

Would it be possible to get an API for other plugins to temporary disable fpslimiter while running?
AutoRetainer said they would add support if you added IPC for it
Thank you!

Will consider adding this asap! Thanks for bringing it up!


Add new vbFunction

Hi,
I have tried to add a new vbFunction to the vbfunction,cs. This new function appears in the function list but fails to parse when rendering the report. Do I need to add the function name somewhere else?
I have cleaned the project and rebuilt but I still get the error.
Cheers

Don't worry about this. I solved the issue I was having by adding a dll module into the report.
Thanks.


New Label: WhatRoute

./assemble.sh -l Mosyle/Resources/InstallomatorLabels whatroute
2022-05-22 15:55:05 : REQ   : whatroute : ################## Start Installomator v. 9.2, date 2022-05-22
2022-05-22 15:55:05 : INFO  : whatroute : ################## Version: 9.2
2022-05-22 15:55:05 : INFO  : whatroute : ################## Date: 2022-05-22
2022-05-22 15:55:05 : INFO  : whatroute : ################## whatroute
2022-05-22 15:55:05 : DEBUG : whatroute : DEBUG mode 1 enabled.
2022-05-22 15:55:10 : INFO  : whatroute : BLOCKING_PROCESS_ACTION=tell_user
2022-05-22 15:55:10 : INFO  : whatroute : NOTIFY=success
2022-05-22 15:55:10 : INFO  : whatroute : LOGGING=DEBUG
2022-05-22 15:55:10 : INFO  : whatroute : LOGO=/System/Applications/App Store.app/Contents/Resources/AppIcon.icns
2022-05-22 15:55:10 : INFO  : whatroute : Label type: zip
2022-05-22 15:55:10 : INFO  : whatroute : archiveName: WhatRoute.zip
2022-05-22 15:55:10 : INFO  : whatroute : no blocking processes defined, using WhatRoute as default
2022-05-22 15:55:10 : DEBUG : whatroute : Changing directory to /Users/savvas/Desktop/Mosyle/Resources/Installomator-main original/build
2022-05-22 15:55:10 : INFO  : whatroute : App(s) found: /Applications/WhatRoute.app
2022-05-22 15:55:10 : INFO  : whatroute : found app at /Applications/WhatRoute.app, version 2.5.0, on versionKey CFBundleShortVersionString
2022-05-22 15:55:10 : INFO  : whatroute : appversion: 2.5.0
2022-05-22 15:55:10 : INFO  : whatroute : Latest version of WhatRoute is 2.5.0
2022-05-22 15:55:10 : WARN  : whatroute : DEBUG mode 1 enabled, not exiting, but there is no new version of app.
2022-05-22 15:55:10 : REQ   : whatroute : Downloading https://www.whatroute.net/software/whatroute-2.5.0.zip to WhatRoute.zip
2022-05-22 15:56:09 : DEBUG : whatroute : File list: -rw-r--r--  1 savvas  staff    38M 22 Mai 15:56 WhatRoute.zip
2022-05-22 15:56:09 : DEBUG : whatroute : File type: WhatRoute.zip: Zip archive data, at least v1.0 to extract, compression method=store
2022-05-22 15:56:09 : DEBUG : whatroute : curl output was:

Trying <IP_ADDRESS>:443...
Connected to www.whatroute.net (<IP_ADDRESS>) port 443 (#0)
ALPN, offering h2
ALPN, offering http/1.1
successfully set certificate verify locations:
CAfile: /etc/ssl/cert.pem
CApath: none
(304) (OUT), TLS handshake, Client hello (1):
} [322 bytes data]
(304) (IN), TLS handshake, Server hello (2):
{ [122 bytes data]
(304) (IN), TLS handshake, Unknown (8):
{ [25 bytes data]
(304) (IN), TLS handshake, Certificate (11):
{ [4423 bytes data]
(304) (IN), TLS handshake, CERT verify (15):
{ [264 bytes data]
(304) (IN), TLS handshake, Finished (20):
{ [52 bytes data]
(304) (OUT), TLS handshake, Finished (20):
} [52 bytes data]
SSL connection using TLSv1.3 / AEAD-AES256-GCM-SHA384
ALPN, server accepted to use http/1.1
Server certificate:
subject: CN=bryanc.co.nz
start date: May 15 06:02:07 2022 GMT
expire date: Aug 13 06:02:06 2022 GMT
subjectAltName: host "www.whatroute.net" matched cert's "www.whatroute.net"
issuer: C=US; O=Let's Encrypt; CN=R3
SSL certificate verify ok.

GET /software/whatroute-2.5.0.zip HTTP/1.1
Host: www.whatroute.net
User-Agent: curl/7.79.1
Accept: /

Mark bundle as not supporting multiuse
< HTTP/1.1 200 OK
< Date: Sun, 22 May 2022 13:55:11 GMT
< Server: Apache
< Last-Modified: Thu, 31 Mar 2022 01:31:34 GMT
< ETag: "2586bfd-5db799f55fabc"
< Accept-Ranges: bytes
< Content-Length: 39349245
< Content-Type: application/zip
<
{ [7964 bytes data]
Connection #0 to host www.whatroute.net left intact

2022-05-22 15:56:09 : DEBUG : whatroute : DEBUG mode 1, not checking for blocking processes
2022-05-22 15:56:09 : REQ   : whatroute : Installing WhatRoute
2022-05-22 15:56:09 : INFO  : whatroute : Unzipping WhatRoute.zip
2022-05-22 15:56:10 : INFO  : whatroute : Verifying: /Users/savvas/Desktop/Mosyle/Resources/Installomator-main original/build/WhatRoute.app
2022-05-22 15:56:10 : DEBUG : whatroute : App size:  60M	/Users/savvas/Desktop/Mosyle/Resources/Installomator-main original/build/WhatRoute.app
2022-05-22 15:56:11 : DEBUG : whatroute : Debugging enabled, App Verification output was:
/Users/savvas/Desktop/Mosyle/Resources/Installomator-main original/build/WhatRoute.app: accepted
source=Notarized Developer ID
override=security disabled
origin=Developer ID Application: Bryan Christianson (H5879E8LML)
2022-05-22 15:56:11 : INFO  : whatroute : Team ID matching: H5879E8LML (expected: H5879E8LML )
2022-05-22 15:56:11 : INFO  : whatroute : Downloaded version of WhatRoute is 2.5.0 on versionKey CFBundleShortVersionString, same as installed.
2022-05-22 15:56:12 : DEBUG : whatroute : DEBUG mode 1, not reopening anything
2022-05-22 15:56:12 : REG   : whatroute : No new version to install
2022-05-22 15:56:12 : REQ   : whatroute : ################## End Installomator, exit code 0

Thank you very much for this contribution!
I did not overrule this posting on purpose but because I need a great example on an app to build a label for. My approach in #560 is to only return the first possible version and url from the appcast, and not every listing (if several should ever be present). My method by betting on the first listing to be the latest is a pure guess, so that could also fail, if the newest is put at the end, but at least it should be easy to fix that.
It's a cool little tool, so I really appreciate you thought of this as well. Thank you.


Adding code analysis to experimental editor

Fixes https://github.com/dart-lang/dart-pad/issues/912


Hidden folders reappear after switching workspaces

Plugin Version
1.1.1
Obsidian Version
1.5.3
Affected Platforms
Mac
Expected Behaviour
Calling a saved workspace should keep hidden folders as set (for that workspace or even just in general)
Actual Behaviour
Hidden folders all reappear and the file hider visibility needs to be toggled again.
Steps to Reproduce

Hide a file/folder
Switch workspace (core plugin or workspace+)

@Oliver-Akins  any chance of fixing this?   The plugin doesn't really work if you are on multiple devices with this bug.


crash with "Unknown i18n error." when saving in zork 2 in debian bullseye

lsb_release -c
Codename:       bullseye

sudo apt install -y autoconf libxml2-dev

git clone --recursive  https://github.com/chrender/fizmo

autoreconf -fi
./configure --disable-x11 --disable-sdl --disable-aiff --disable-png --disable-jpeg

fizmo-console/src/fizmo-console/fizmo-console ~/z2/DATA/ZORK2.DAT

ZORK II: The Wizard of Frobozz
Copyright (c) 1981, 1982, 1983 Infocom, Inc. All rights reserved.
ZORK is a registered trademark of Infocom, Inc.
Version 48 / Serial number 840904

Inside the Barrow
You are inside an ancient barrow hidden deep within a dark forest. The barrow opens into a narrow tunnel at its southern end. You can see a faint glow at the far end.
A strangely familiar brass lantern is lying on the ground.
A sword of Elvish workmanship is on the ground.

>save

Unknown i18n error.

there is something wrong with my build
the apt version does not exhibit this
sudo apt install fizmo-console

fizmo-console

Usage: fizmo-console [options] <story-file>

fizmo-console version 0.7.13.

fizmo-console ~/z2/DATA/ZORK2.DAT

ZORK II: The Wizard of Frobozz
Copyright (c) 1981, 1982, 1983 Infocom, Inc. All rights reserved.
ZORK is a registered trademark of Infocom, Inc.
Version 48 / Serial number 840904

Inside the Barrow
You are inside an ancient barrow hidden deep within a dark forest. The barrow opens into a narrow tunnel at its southern end. You can see a faint glow at the far end.
A strangely familiar brass lantern is lying on the ground.
A sword of Elvish workmanship is on the ground.

>save

Please enter savegame filename.
>savegame.quta

Ok.

>

for comparison this is the version output of my build
fizmo-console/src/fizmo-console/fizmo-console

Usage: fizmo-console [options] <story-file>

fizmo-console version 0.7.14.

The problem is that I need to run it offline in aarch64 termux android and that build has the same crash
And I don't know a working build for android subsystem


Abbilty to specify custom path for helm charts and tests

fixes #25

@jekkel @wind57 I've pushed changes to repo.
Please take a look at it. I hope I didn't miss anything important.

Sry. Missed some changes to commit.  It should be ok now.


[Bug]:   certManager: {{ .Values.ingress.certManager }} is invalid ingress field

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Installing the helm chart fails:
│   Warning  error   3m37s (x7 over 4m32s)  helm-controller  Helm upgrade failed: error validating "": error validating data: [ValidationError(Ingress.spec): unknown field "certManager" in io.k8s.api.networking.v1.IngressSpec, ValidationError(Ingress.spec): unknown field "clas │
│ sName" in io.k8s.api.networking.v1.IngressSpec]                                                                                ```

I think certManager isn't a valid field and it's 'ingressClassName'

See broken PR https://github.com/appsmithorg/appsmith/pull/18266/files

### Steps To Reproduce

Install latest helm chart on version 1.23 of kub

### Public Sample App

_No response_

### Issue video log

_No response_

### Version

latest

Hey @cep21, sorry for getting to this late. Are you still facing this with the current version of Helm charts? Can you share the exact full helm commands you used to get to this state please? This will help us reproduce the issue and get to a resolution much faster. Thanks!


Deleting Orphaned Objects during Realm Migration

Goals

I want to migrate existing data base stores to embedded. There maybe some objects that have been unintentionally orphaned due to developer error. I want to migrate the objects to embedded and either ignore or delete orphaned objects in the process
Expected Results

Successful migration, if there are any objects that do not have a parent object they should be deleted.
Actual Results

Fatal error: Realm has crashed At least one object does not have a backlink (data would get lost).: file Bitcoin_com/AppDelegate.swift, line 98

Steps for others to Reproduce

Create several parent child relationships. Create an orphaned child object
Parent A -> Child B
Child C
When you run the migration you will get the error above due to the existance of child C. In migration block I want to delete child C if that is the case.
Code Sample

Version of Realm and Tooling

Realm framework version: Realm 10.7.0
Xcode version: 12.4
iOS/OSX version: 14.4

@saltyskip This change came with https://github.com/realm/realm-core/pull/4414 in core. Please also refer to the discussion (and all the linked issues) in there.
TL;DR
There was a bug where users could not migrate from Object to EmbeddedObject due to missing or multiple backlinks.
One of the decisions that had to be made during that change was the handling of orphaned objects. There were two possible solutions:
(1) Silently delete objects that would now be orphaned after the switch to EmbeddedObject without the developer noticing that data gets lost.
(2) Throw an error to warn the developer about orphaned objects that would otherwise be lost after that switch.
We chose to go the safer path of option (2).
When migrating to an EmbeddedObject you have to make sure that at the end of the migration (which is when the actual change happens) every object has one and only one backlink.

Hi I see, I've updated my codes to manually remove the orphaned objects, it might be nice to either have a configuration setting to delete orphans automatically or update documentation examples of migrations to show how to safely delete orphaned objects during migration.
I think its safe to delete this issue. Thanks @DominicFrei

Thanks for letting us know, @saltyskip.
I did create a ticket to include a helper function to make deleting those orphaned objects easier: #7145
I've also noted that an update of the documentation would be a good idea. 👍


[Task]: Upgrade React version from 16 to 17

Is there an existing issue for this?

[X] I have searched the existing issues

Subtask

Map widget is not working, dragging and dropping a map widget does not work.
Not able to drag and select the widget inside modal widget.
The dropdown in MultiSelect, TreeSelect & MultiTreeSelect widgets does not open appropriately.
With react 17 we have some breaking changes in the way in which react handles dom events. And all the above issues were caused due to the onClickCapture  that we are using in several places.

I did an initial investigation,

I found the issue with modal drag to select and fixed it,

map widget library react-google-maps doesn't seem to support react 17 its SearchBox widget that we use fails to render in react 17, the library last gave an update for react 16 for the same problem

the select widget works weird on prod as well, selecting the widget and then clicking on it sometimes deselects the widget in previous and this version of react, this is because of the combination of our keyboard navigation on the property pane that we kick off when a widget is selected vs the select widgets own keyboard navigation support. This is a hunch based on how the widget behaves but needs more investigation coz its a third party widget.

cc: @rohitagarwal88 @yaldram @Tooluloope

@marks0351 : We should update to a new maps library like google-map-react that supports React 18. The current library's ( react-google-maps) last version was released in 2018, restricting us to use the latest google maps feature.
cc @yaldram @Tooluloope

@marks0351 / @yaldram : updating the google map library should not break our existing apps. Need to approach holistically.

https://www.npmjs.com/package/@react-google-maps/api
We have the above library, which is very well maintained. I think we can use the above library.

Created new issues

16948 Needs more clarity, dont exactly know what is wrong right now
16946 Picking up right now

cc @rohitagarwal88


fix(css): Add [readonly] condition to cursor style

allowInput controls the readonly attribute. When the user can manually edit the input field, it makes no sense to change the default input pointer as it remains fully functional.
Fixes #669

Coverage remained the same at 85.543% when pulling d66ee3cf7a85dcccb676fdbde8a70ec7f8c88dec on s-hoff:fix/text-cursor into 0b6a6434c710eb611b30ba579e516eaac565bab5 on chmln:master.

Awesome :+1:


Can not make the plugin to work, errors in the console

Hey! Thank you so much for developing this plugin. I've also posted the same question on discuss.lipsurf.com in this thread, but it went on to moderating for a while and I really want to get in touch :)
I believe bunpro plugin does not work for me. I tried the latest version available on Github (this turned out to be the one from your latest comment as well, this one).
I turned on the plugin, it detected bunpou, kicked into japanese mode. However, I can’t make a single command work. When I say hint or info or try to say the answer itself, I get a bunch of errors in the console. Maybe this is due to some latest updates of either bunpou or lipsurf?
Here are the two screenshots of the console after I get into reviews, try saying the answer a few times or saying “hint”"info". I slightly intersected them to cover the whole console:

I really want this plugin to work. I’m using this with Wanikani and it really transformed my learning experience. I would gladly sponsor you on Github if you continued to maintain the plugin.
I even tried finding the root of the problem myself but oh well, I’m not good in js and did not want to spend a lot of time, to be honest.

hi @Jorres
I no longer use Lipsurf and no longer pay for premium. the last time I fixed the plugin, it didn't work for me on a free Lipsurf account, and I don't know if that was intentional on the Lipsurf dev's part. so I cannot really support the plugin any more and don't have plans to continue working on any plugins for Lipsurf unfortunately
instead I'm focusing on free/open source alternatives, like standalone userscripts using the same underlying technology as Lipsurf (Web Speech API). you can find my alternative to LS for WK voice input here
in the future, I may create a similar script for Bunpro. however, there are a number of things about Bunpro that make it more challenging to support, namely that compared to Wanikani, the inputs are often conjugated words. I have experimented with some solutions to this (using Sudachi) and there's some promise but it's not simple. furthermore, Bunpro has added features but has not been consistent in maintaining the support they added to the site to enable speech (embedding answers) because of this I can't make promises about future userscripts
so, if you are really committed to using Lipsurf for Bunpro, and are a paying for premium Lipsurf, my suggestion is to contact the Lipsurf devs and ask them to convert this to an official plugin. there is nothing stopping them from doing so as it's MIT licensed.
on the other hand, if you are interested in learning JavaScript and collaborating I can share the code I have for a standalone Bunpro userscript, but it would have to be 100% "as is" without any commitments as I may not have time to help. I also don't use Bunpro that much (using a textbook offline with old school practice drills instead)
sorry that might not be the answer you were looking for


Out of memory where I use cuda as InstantID Face Analysis

InstantID Face Analysis: CUDA

logs
torch.cuda.OutOfMemoryError: Allocation on device 0 would exceed allowed memory. (out of memory)
Currently allocated     : 10.15 GiB
Requested               : 60.00 MiB
Device limit            : 24.00 GiB
Free (according to CUDA): 12.45 GiB
PyTorch limit (set by user-supplied memory fraction)
                        :<PHONE_NUMBER>4.00 GiB

I think my RTX3090 (24G) is enough to run with cuda. But change A model to B model, it failed.
My advice: I think it maybe optimize the GPU memory management.
FYI

depends on the wokflow, the above message without context doesn't help much. The face analysis should be performed on the CPU anyway.


using startup.sh to add environment variables is not showing those within the DAGs

I am using the branch with the added local startup script support. When I rebuild my image, and create a new startup script:
export BUILD_ON_OPEN_SOURCE="awesome"
echo $BUILD_ON_OPEN_SOURCE

sudo yum install java-17-amazon-corretto-headless -y

The Amazon Corretto is installed as expected. The environment variable seems to work during the boot process (you see it output) but then when I try and view it within a DAG I get an empty value:
When I take the startup script and upload / configure an equiv mwaa environment, it works. To troubleshoot I added a new entry in the run-startup.sh to output the values of stored_env, and I can see the item listed
s-mwaa-local-runner-2_4-local-runner-1  | declare -x AIRFLOW_HOME="/usr/local/airflow"
aws-mwaa-local-runner-2_4-local-runner-1  | declare -x AIRFLOW__CORE__EXECUTOR="LocalExecutor"
aws-mwaa-local-runner-2_4-local-runner-1  | declare -x AIRFLOW__CORE__FERNET_KEY="IqDRu5ADgAltqc8_UmrIr0kqZ2MktW_clm6dIw6GAS0="
aws-mwaa-local-runner-2_4-local-runner-1  | declare -x AIRFLOW__CORE__LOAD_EXAMPLES="False"
aws-mwaa-local-runner-2_4-local-runner-1  | declare -x AIRFLOW__CORE__SQL_ALCHEMY_CONN="postgresql+psycopg2://airflow:airflow@postgres:5432/airflow"
aws-mwaa-local-runner-2_4-local-runner-1  | declare -x AWS_ACCESS_KEY_ID="xxxxxxx"
aws-mwaa-local-runner-2_4-local-runner-1  | declare -x AWS_SECRET_ACCESS_KEY="xxxxxxxxx"
aws-mwaa-local-runner-2_4-local-runner-1  | declare -- BASH="/usr/bin/bash"
aws-mwaa-local-runner-2_4-local-runner-1  | declare -A BASH_ALIASES='()'
aws-mwaa-local-runner-2_4-local-runner-1  | declare -a BASH_ARGC='()'
aws-mwaa-local-runner-2_4-local-runner-1  | declare -a BASH_ARGV='()'
aws-mwaa-local-runner-2_4-local-runner-1  | declare -A BASH_CMDS='()'
aws-mwaa-local-runner-2_4-local-runner-1  | declare -- BASH_COMMAND
aws-mwaa-local-runner-2_4-local-runner-1  | declare -a BASH_LINENO='([0]="0")'
aws-mwaa-local-runner-2_4-local-runner-1  | declare -a BASH_SOURCE='([0]="/run-startup.sh")'
aws-mwaa-local-runner-2_4-local-runner-1  | declare -- BASH_SUBSHELL
aws-mwaa-local-runner-2_4-local-runner-1  | declare -- BASH_VERSION="4.2.46(2)-release"
aws-mwaa-local-runner-2_4-local-runner-1  | declare -x BUILD_ON_OPEN_SOURCE="awesome"
aws-mwaa-local-runner-2_4-local-runner-1  | declare -- COMP_WORDBREAKS
aws-mwaa-local-runner-2_4-local-runner-1  | declare -x DEFAULT_PASSWORD="test"

So figuring this must be some issue with variables not being picked up.

Could you please share which branch you are seeing this issue?

https://github.com/aws/aws-mwaa-local-runner/tree/v2.4.3/startup_script

It doesn't time out. The issue is that the variable set is not available within the dag

I have been experimenting to try and see exactly where the environment variables "disappear". I altered the various scripts to echo out a single env variable I defined in the startup.sh script. This is what I found - as the function (execute_startup_script) is called, the environment variable is picked up all the way through the various sub-shells. However, when the function returns to the next line in the entry point script, it disappears.

I hasten to add, this DOES work on the MWAA managed service, so this issue is only on mwaa-local-runner. I have tried this now on my mac, my ubuntu desktop and a Cloud9 instance and they all do the same.

I have now got this working, but I am not sure this is the "right" thing to do. To fix, I add the following:
    install_requirements
    execute_startup_script
    **source stored_env**
    airflow db init

Not sure if this is a proper solution as I note that in the actual execute_startup_script you call this and then export three AIRFLOW variables.


UtinyRipper won't read Critical Ops as a game

Hello,
So Yes Critical Ops is a Unity Game and I hope you can fix the problem with importing the files for this program.
Have a Nice Day and I hope You fix the issua as fast as possible.


deployment ingress requirements update

Adjusted deployment sample in REQUIREMENTS.md file to reflect options needed for ingress-nginx

This is a documentation only update

Ready for review


Promsify chrome apis

https://github.com/mjc-gh/chrome-extension-promisify-apis

https://github.com/amitsingh-007/bypass-links/pull/230

https://github.com/amitsingh-007/bypass-links/pull/230


feat(dexes): add dex settings to signup

(੭ु´͈ ᐜ `͈)੭ु⁾⁾
what

add dex settings to signup
use shiny sprites on tracker page if dex is shiny

notes

i added the dex stuff beneath the user stuff in one column, which i think is fine - but it's a bit weird when you submit the form and there's an error because you have to scroll back up to see the error. any way for us to auto-scroll up to the error? alternatively, i can refactor the register page to be two columns instead if you think that's better
after registration, you get redirected to the profile page. do you think that's preferred or should we send you directly to your first dex?

register page:

this is what it might look like. do you think it's better, considering that it's uneven? but ya, we will still have to solve the problem for mobile (b/c on mobile, we would definitely turn it into 1 column.

will add redirect to dex 👍

i think checkboxes are good for the future "stackable" features, but would like to keep the radio for now when we only have shiny (if only to take up more space visually)

will look into adding shiny stars in a different PR!

i did do that intentionally b/c i like having the larger click-area for the link, but i can remove it if you think it's weird! was just thinking that some dex titles might be very short

achhh i changed some of those styles because it was uncentered on my laptop, but now i'm thinking maybe it's a retina/non-retina thing? like maybe when i first made them it was on my work laptop but now on my personal (non-retina) it looks off-center? if so, we should probably optimize for retina since that's what most people have now.

yeah even being uneven, i think its better. what do you think?

👌 to the 📻

i think its a little weird mostly cause its an unbounded click area. like, if there was a border around whole thing and the whole thing was clickable, then itd be fine. especially with the edit button over on the right, it was unexpected to see the space in between a link to the thing on the left. does that make sense?

thats weird that retina v non-retina are different. but idk if retina is more prevalent with our audience. according to GA, windows is the top OS by a significant margin (the number of sessions for android is 1/4 the number for windows). with that said, ill defer to your judgement as to what to do.

👍  plus, there will one day be more options that will even it out
👍
👍
interesting. ok ideally i'll try to figure out why it's weird for both and try to make it best for both, but if not, will optimize for the non-retina case.

also we should rebase this branch (and the feature branch) with master! i can do it if you want, but we'd need to do it carefully so no changes get force-pushed away. ooooor you can just do it since youre a GIT PRO

@robinjoseph08 updated! i couldn't actually figure out how to add the redirect directly to the first dex.. so if you could add that here that would be great! i know you have to retrieve the user to get the slug but i no understands javascript 😕
also, can you add jumping up to the error on the mobile register page?

@ami done and done!
for the redirecting, you're right, we didn't have enough info to be able to redirect immediately (since we need the slug) but making a request to retrieve the user seems a bit wasteful (since that info would immediately be discarded). so instead we're just using the same module to create the slug so that we can avoid that http request!

sweet. LGTM!!


Update source-build team references

The @dotnet/source-build-internal team is being deprecated. All references to it were updated.
Included the renaming of SourceBuild.props to the new naming convention, DotNetBuild.props.
Related to dotnet/source-build#4645
Repo admins, please grant @dotnet/product-construction and @dotnet/source-build write access. You can remove access granted to @dotnet/source-build-internal.

@phil-allen-msft @jaredpar I think you are the folks who can make the repo access changes


moVirt app can't be "moved to SD card"

The app requires to be executed from phone internal storage (as opposed to be able to be moved to SD card).
Steps to reproduce:

Open Application manager (Settings > Applications > Application Manager)
Open moVirt details
Button "Move to SD card" is disabled

.

According to the doc changing installLocation attribute would prevent moVirt from proper working (SyncAdapter, AccountManager) when SD card is used as mass storage unless Adoptable Storage (since Android 6) feature is used.


[bug] "dark mode" color scheme breaks readability of selected component

Augury version (required): 1.16.1 (canary on Chrome)
Angular version (required): 4.4.3
Date: 5/16/18
OS: Windows 10
Description of issue:
I love the "dark mode" color scheme. However, the choice of colors obscures the view of the name of a component when it's selected such that it can't be read:

To workaround this issue, it's necessary to hover over the name of the component. The "light mode" doesn't suffer from this issue:

I would like to request a slightly different color scheme for dark mode such that this text can be read without the need to hover, because the "light mode" doesn't need to hover.
Thank you!
Steps to reproduce:

Switch to "dark mode" and select a component from the component tree. You will not be able to read the selected text without hovering over it.

Corrected in version 1.17.4 of the Canary Build, soon to be official version 1.18.

Looks great, thank you!


Ignition data too large when creating private CAPA Workload Clusters

Because of the amount of configuration we now have in our ignition data and the extra that is needed for private clusters (such as the proxy details) we've hit the limit for the file with MachinePools (that stores in a Kubernetes secret).
Error on MachinePool:
InvalidUserData.Malformed: User data is limited to 16384 bytes

This is occurring on our test private CAPA cluster goat since the release of cluster-aws v0.75.0.
The capa-private E2E test suite is currently failing because of this issue and has been disabled until it can be resolved.
Some notes:
The Control Plane nodes make use of S3 to temporarily store their ignition data as outlined in the documentation but it seems to not be implemented for MachinePools as far as we can tell. I have been unable to find any relevant issues upstream so we may be the first to hit this issue.
For reference:
The length of the ignition file on a capa private WC was - 17,368 characters
The length of the ignition file on a capa non-private WC was - 13,908 characters
### Tasks
- [ ] Handle length of ignition data to ensure it doesn't exceed the limit
- [ ] Re-enable the capa-private E2E tests

Related Slack thread

For Cilium ENI mode implementation (https://github.com/giantswarm/roadmap/issues/2563), I'm running into the same trouble. Adding a script to set --max-pods isn't possible due to the size limit.

@AndiDog This isn't "done" as we still haven't re-enabled the CAPA Private test suite to ensure this change is being tested.

The cluster creation part of the E2E private tests is working again (see test run in unmerged PR https://github.com/giantswarm/cluster-test-suites/pull/398). So I'm closing this issue.
The test suite now fails due to the unrelated https://github.com/giantswarm/giantswarm/issues/31156 which @AverageMarcus you may want to watch.


Add edisonxiang to review and collaborate

What this PR does / why we need it:
Thanks very much.
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:
Release note:

/approve
/ok-to-test
There's a lot of code from @edisonxiang already 👍

/lgtm


Strange buildkit error on yarn test

Problem
When running the standard integration tests for universe.dagger.io/yarn, on main, the test fails with a cryptic buildkit/docker error. As far as I know, this test is not failing in CI. There is no recent change to this package that seems relevant.
Steps to reproduce
1. Check current commit:
$ git show
commit 1135398beec4965f095ca70917908a06d804ff22 (HEAD -> main, origin/main, origin/HEAD)
Merge: 47a8bbc3 f6cee7f3
Author: Solomon Hykes<EMAIL_ADDRESS>Date:   Wed Feb 23 14:05:13 2022 -0800

    Merge pull request #1644 from shykes/go-fix

    go.#Build: small improvements

2. Run yarn test
$ dagger up ./pkg/universe.dagger.io/yarn/test
...

3. Observe cryptic error
...
$ dagger up
[✔] inputs.directories.testdata                                                                                0.0s
[✔] actions.tests.customImage.buildImage                                                                                0.8s
[✔] actions.tests.customImage.build                                                                                0.6s
[✔] actions.tests.customName.build.container.script                                                                                0.0s
[✔] inputs.directories.testdata2                                                                                0.0s
[✔] actions.tests.simple.build                                                                                0.7s
[✔] actions.tests.customName.build                                                                                0.8s
[✔] actions.tests.customImage.build.container.script                                                                                0.0s
[✔] actions.tests.simple.build.container.script                                                                                0.0s
[✗] actions.tests.simple.build.container                                                                                0.1s
[✗] actions.tests.customImage.build.container                                                                                0.1s
[✗] actions.tests.customName.build.container                                                                                0.0s
7:27AM FTL failed to up environment: task failed: actions.tests.simple.build.container._exec:
process "bash --norc -e -o pipefail /bash/scripts/run.sh" did not complete successfully: unable to find user root: invalid argument

Speculation on root cause

Perhaps the recent upgrade to buildkit 0.10rc1 is to blame?
I suspected an apparmor configuration error, because of https://github.com/portainer/portainer/issues/4319 . But I reproduced the issue on 2 completely different machines, one running Alpine Linux, the other running NixOS. This makes a distro config error less likely.

I believe I have a currently-valid minimal repro for this:
$ uname -a
Linux ip-172-31-14-96 5.13.0-1017-aws #19-Ubuntu SMP Mon Mar 7 09:03:05 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 21.10
Release:        21.10
Codename:       impish
$ ~/bin/dagger version
dagger 0.2.5 (7d2f279c) linux/amd64
$ cat dagger.cue
package asdf

import (
        "dagger.io/dagger"
        "universe.dagger.io/docker"
)
dagger.#Plan

actions: {
        some_dockerhub_container: docker.#Pull & {
                source: "hello-world:latest"
        }
        hello: docker.#Run & {
                input: some_dockerhub_container.image
        }
}

client: {
}
$ dagger do hello --log-format plain
6:23PM INF actions.some_dockerhub_container._op | computing
6:23PM INF actions.some_dockerhub_container._op | completed    duration=1.5s
6:23PM INF actions.hello._exec | computing
6:23PM ERR actions.hello._exec | failed: process "/hello" did not complete successfully: unable to find user root: invalid argument
    duration=200ms
6:23PM FTL system | failed to execute plan: task failed: actions.hello._exec: process "/hello" did not complete successfully: unable to find user root: invalid argument

On the buildkitd side of the fence:

same machine
unix socket communication between dagger and buildkit
using the version of buildkit-runc that's bundled with the v0.10.1 buildkit binary tarball

$ ~/bin/buildkitd --version
buildkitd github.com/moby/buildkit v0.10.1 5bc9c7b15891eecab8d1e0c34ed62a0177c45ae7
$ ~/bin/buildkit-runc --version
runc version unknown
spec: 1.0.2-dev
go: go1.17.8
libseccomp: 2.5.2
$ sudo rm -rf /var/lib/buildkit/
$ sudo ${HOME}/bin/buildkitd --group $(id -g) --oci-worker true --oci-worker-binary ${HOME}/bin/buildkit-runc --debug
INFO[2022-04-12T18:20:26Z] auto snapshotter: using overlayfs
WARN[2022-04-12T18:20:26Z] using host network as the default
INFO[2022-04-12T18:20:26Z] found worker "45oe31l6yiytk06mmzynzd32q", labels=map[org.mobyproject.buildkit.worker.executor:oci org.mobyproject.buildkit.worker.
hostname:ip-172-31-14-96 org.mobyproject.buildkit.worker.network:host org.mobyproject.buildkit.worker.oci.process-mode:sandbox org.mobyproject.buildkit.worke
r.snapshotter:overlayfs], platforms=[linux/amd64 linux/amd64/v2 linux/amd64/v3 linux/386]
WARN[2022-04-12T18:20:26Z] skipping containerd worker, as "/run/containerd/containerd.sock" does not exist
INFO[2022-04-12T18:20:26Z] found 1 workers, default="45oe31l6yiytk06mmzynzd32q"
WARN[2022-04-12T18:20:26Z] currently, only the default worker can be used.
INFO[2022-04-12T18:20:26Z] running server on /run/buildkit/buildkitd.sock
DEBU[2022-04-12T18:21:19Z] session started
DEBU[2022-04-12T18:21:19Z] resolving                                     host=registry-1.docker.io
[ ... snip lots of registry traffic ... ]
DEBU[2022-04-12T18:21:20Z] diff applied                                  d="729.794µs" digest="sha256:2db29710123e3e53a794f2694094b9b4338aa9ee5c40b930cb8063a1be392c54" media=application/vnd.docker.image.rootfs.diff.tar.gzip size=2479
INFO[2022-04-12T18:21:20Z] detected <IP_ADDRESS> nameserver, assuming systemd-resolved, so using resolv.conf: /run/systemd/resolve/resolv.conf
ERRO[2022-04-12T18:21:20Z] /moby.buildkit.v1.frontend.LLBBridge/Solve returned error: rpc error: code = Unknown desc = process "/hello" did not complete successfully: unable to find user root: invalid argument
ERRO[2022-04-12T18:21:20Z] /moby.buildkit.v1.Control/Solve returned error: rpc error: code = Unknown desc = task failed: actions.hello._exec: process "/hello" did not complete successfully: unable to find user root: invalid argument

@shykes Ping for visibility ^^. Let me know if I should open a separate issue, or if you feel it's worth you re-opening this one.

This has something to do with the sparse / not-a-shell-able nature of the image.
I resurrected an example of this that I hit previously, whilst exploring dagger, but ignored because I assumed I was driving Dagger's Docker abstraction incorrectly. I don't /think/ I was, as this output shows (same machine as the example in https://github.com/dagger/dagger/issues/1659#issuecomment-1097052726; cache cleared before each test):
$ cat dagger.cue
package asdf

import (
        "dagger.io/dagger"
        "universe.dagger.io/docker"
)

dagger.#Plan

actions: {
        _dockerhub: {
                shellcheck: alpine: docker.#Pull & {source: "koalaman/shellcheck-alpine:v0.8.0"}
                shellcheck: binary: docker.#Pull & {source: "koalaman/shellcheck:v0.8.0"}
        }
        shellcheck: {
                for flavour in [ "alpine", "binary"] {
                        (flavour): docker.#Run & {
                                always: true
                                input:  _dockerhub.shellcheck[flavour].image
                                entrypoint: []
                                command: {
                                        name: "/bin/shellcheck"
                                        args: [ "--version"]
                                }
                        }
                }
        }
}
# cache cleared
$ dagger --log-format plain do shellcheck alpine
8:54PM INF actions._dockerhub.shellcheck.alpine._op | computing
8:54PM INF actions._dockerhub.shellcheck.alpine._op | completed    duration=1.4s
8:54PM INF actions.shellcheck.alpine._exec | computing
8:54PM INF actions.shellcheck.alpine._exec | #3 0.079 ShellCheck - shell script analysis tool
8:54PM INF actions.shellcheck.alpine._exec | #3 0.079 version: 0.8.0
8:54PM INF actions.shellcheck.alpine._exec | #3 0.079 license: GNU General Public License, version 3
8:54PM INF actions.shellcheck.alpine._exec | #3 0.079 website: https://www.shellcheck.net
8:54PM INF actions.shellcheck.alpine._exec | completed    duration=600ms
# cache cleared
$ dagger --log-format plain do shellcheck binary
8:53PM INF actions._dockerhub.shellcheck.binary._op | computing
8:53PM INF actions._dockerhub.shellcheck.binary._op | completed    duration=1.5s
8:53PM INF actions.shellcheck.binary._exec | computing
8:53PM ERR actions.shellcheck.binary._exec | failed: process "/bin/shellcheck --version" did not complete successfully: unable to find user root: invalid argument
    duration=400ms
8:53PM FTL system | failed to execute plan: task failed: actions.shellcheck.binary._exec: process "/bin/shellcheck --version" did not complete successfully: unable to find user root: invalid argument

Buildkit logs:
ERRO[2022-04-12T20:54:57Z] /moby.buildkit.v1.frontend.LLBBridge/Solve returned error: rpc error: code = Unknown desc = process "/bin/shellcheck --version" did not complete successfully: unable to find user root: invalid argument
ERRO[2022-04-12T20:54:57Z] /moby.buildkit.v1.Control/Solve returned error: rpc error: code = Unknown desc = task failed: actions.shellcheck.binary._exec: process "/bin/shellcheck --version" did not complete successfully: unable to find user root: invalid argument

Thanks @jpluscplusm ! @grouville can you either look into it, or if you're too busy with other things, either find someone else to assign, or unassign so that we know it needs attention?

Another user in discord reported the same behavior here when using an image that did not have /etc/passwd. Sent out a fix here: https://github.com/dagger/dagger/pull/2542


Too much space

I'm having an issue where when I download a vod directly to an external drive, my local hardrive fills up. After closing the app and/or restarting the computer some of this space is recovered but not all of it. Can someone confirm if there is a method to stop this or where these files are located so I can clear them manually?

Run this: %Temp%\TwitchLink
Then clear all in it.

Since videos are being downloaded, it's natural for them to take up space on your drive. However, if you notice that more space is disappearing than the size of the downloaded videos, or if deleting videos only recovers part of the space, please check the following:
TwitchLink may use temporary files during the download process, but these are cleaned up once the download is complete. Even if an unexpected shutdown occurs and the temporary files aren't cleaned up, running the application again will remove any leftover files. However, in rare cases, if the drive where the temporary files were stored was disconnected or became inaccessible, the files might not be deleted.
To locate these files, enable the "Show hidden files" option in the folder where the downloads were stored. You should be able to see temporary files used by TwitchLink. If there are no hidden files or folders with the name "TwitchLink" in that location, all temporary files have been properly cleaned, and the issue is unrelated to TwitchLink.


#10-Invalid-ValueRank-in-some-NodeState-initialization-strings

This pull request fixes issue #10.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Lauri Saurus seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Accepted.

Is there a reason this pull request was not merged? I think the bug is kind severe because many types BaseVariableState and BaseVariableTypeState instances are initialized with incorrect ValueRank.


Spurious warning about default file name

On line 729 of opendeep/models/model.py the default file name is set to "config":
def save_args(self, args_file="config"):

A call to file_ops.get_extension_type() in the method logs a warning "Didn't recognize file extension..." which is spurious because save_args() later appends ".pkl" to the args_file in this case. Suggested fix is to make the default file name "config.pkl" in the first place. This will have exactly the same default behaviour without the warning.

Fixed in the develop branch - merging to master soon.


Engine logging API

We need a unified API for logging with proper subsystem handling, coloring and priorities. I am tired of using std::cout or OE_WriteToLog().
There are multiple ideas. I have the following proposal:
It should be as simple as possible. If one does not wish any fancy features then a
oe::log("whatever text i want to log");

should always work fine from the user perspective. It should also not need oe::init() to be run before usage.
Idea 1: Separate APIs for each subsystem
oe::log(...); // for the user
nre::log(...); // for the renderer
oe::internal_log(...); // for the various other engine parts, 'internal_' as a prefix
csl::log(...); // for the parser/interpreter
hpe::log(...); // for the hydrogen physics engine, when it finally appears :)
//etc.

Idea 2: Unified API with subsystem as enum optional final argument
It would default to no subsystem, meaning from the user
namespace oe{
    enum logger_subsystem{
        LOGGER_CSL
        LOGGER_NRE,
        LOGGER_INTERNAL,
        LOGGER_HPE,
        LOGGER_USER // the default
    };
};

oe::log(..., oe::LOGGER_NRE);

Backend: Separate classes for each subsystem or the same global class, but accessed through a different API?
Separate classes may bring independence for each subsystem, but we may need to duplicate everything a few times.
Alternatively we could use the same singleton class, but internally hardcode for example csl::log to execute oe::internal_log(...,oe::LOGGER_CSL); for convenience with only slightly more code.
It was suggested as an idea to use fmtlib for formatting and as a backend. I find this a good idea, since this is a header-only library. I see that it might also be useful for the interpreter due to fast conversions? It seems cross-platform enough, since it only requires C++11.
General
We could use oe::log(...), oe::warn_msg(...), oe::error_msg(...) to prevent an extra enum argument for severity.
Automatic newline at the end?
The initial argument list I propose is as follows:
template<typename T>
oe::log(T, int priority); // two extra enums could be possible for subsystem and severity, if we want something completely unified

T could be directly passed to fmtlib.
Priority should only be valid for normal info messages and not warnings or errors.
Configuration options
Following logger outputs:
namespace oe{
    enum logger_output{
        FILE_LOGGER_IO,
        STANDARD_LOGGER_IO, // we could seamlessly translate this to ADB for android or UART for embedded or any other output.
        CONSOLE_LOGGER_IO, // we could make an internal console as soon as i integrate 'SDL_ttf' and implement font rendering
        ALL_LOGGER_IO
    };
};

We can show/hide subsystems completely
oe::hide_logger_subsystem(oe::LOGGER_NRE);

or
nre::hide_logger_subsystem();

Respectively for:
oe::set_logfile(...); // some reasonable default
oe::set_min_priority(enum oe::logger_output, int some_num); // anything below 'some_num' should be hidden except warnings/errors/fatal
oe::show/hide_warnings(enum oe::logger_output);
oe::show/hide_errors(enum oe::logger_output); // should not hide warnings
oe::use_colors(bool, enum oe::logger_output); // only valid for std and console output
oe::show/hide_internals(enum oe::logger_output); // for the user to only see their own feedback

oe::show/hide_logger_output(enum oe::logger_output); // show/hide logger output completely
// these are  only for the internal console, so that the renderer can read all the logging and render it
// these cannot be implemented right now, but i find these a good idea for the future
oe::set_console_logger_font(std::string path_to_font);
oe::set_console_logger_linewrap(int characters); // 0 should disable line wrap
oe::set_console_logger_linecount(int num); // 200 lines by default?

oe::get_current_logger_output(); // output already formatted for line wrap

Note that everything should be configurable on runtime. ;)
Defaults
Should all internal info messages be hidden by default?
Should colors be on by default?
Should we output both to a file and std by default? Should we have different defaults for each output? How should the default log file be named?

Something else we could think about is incorporating std::source_location now that we are moving to C++20 (#29) :P

Logger architecture
I think internally we should build the logging system from multiple abstraction layers on top of each other.
For starters, I think a single singleton class used  for all logging would be a good idea. On top of this we could then create a system handling logging capabilities for the different subsystems, also responsible for configuration:
namespace oe { namespace detail {

    // Singleton class: Backend for all logging
    class logger_t {
    public:
        // Use fmtlib syntax and simply forward str and args to fmtlib
        template<typename... Args>
        void log(const char* str, Args... args) { /* ... */ }
    private:
    };

}} // namespace oe::detail

Option 1: Single class handling all subsystems
namespace oe { namespace detail {

    // Singleton class: Logging backend
    class logger_t {
        /* ... */
    };

    enum class logger_subsystem { oe, nre, csl, hpe };

    // Singleton class: Logging frontend
    class logger_subsystem_manager_t {
    public:
        template<typename... Args>
        void log(logger_subsystem subsystem, const char* str, Args... args) { /* ... */ }
    };

}} // namespace oe::detail

// Usage
auto& log_mgr = logger_subsystem_manager_t::get_instance();
log_mgr.log(logger_subsystem::oe, "Some numbers: {} {} {}", 3, 1, 4);

Option 2: A separate class for each subsystem
To be continued...
Other
We should also think about:

adding the option to log messages with different colors
creating a nice interface for selecting if the logs go to stdout, or to a file, or both

Logger architecture
I agree here.
Option 1
I prefer this option as the internal structure. Is there a particular reason why you used enum class instead of plain enum? I would prefer plain enum since it is more C-like.
Other

I do not know ho fmtlib handles colors, you tell me :P
We could use this:

oe::log(...) // goes to everything by default
oe::log2file(...);
oe::log2std(...);
oe::log2console(...);

Warnings and errors I believe should still go to all log outputs by default, unless one disables this explicitly.
Perhaps we could do this like this?
template<typename... Args>
oe::log(const char* str, Args... args); // by default goes to all outputs
oe::log(int priority, const char* str, Args... args); // by default to all outputs

Do you prefer Idea 1 or Idea 2 as a user-facing API? I now mostly prefer Idea 1. Or do you have another idea?
source_location is interesting and I agree we should definitely use it!

Enum class
I used enum class, since it limits the scope of the enum values.
With a C-like enum you have to prepend a prefix and the enum values are global:
enum logger_subsystem { LOGGER_OE, LOGGER_NRE, LOGGER_CSL, LOGGER_HPE };

// Usage
logger_subsystem ls = LOGGER_NRE;

With enum class you limit the scope to the given enum and don't pollute the global namespace:
enum class logger_subsystem { oe, nre, csl, hpe };

// Usage
logger_subsystem ls = logger_subsystem::oe;

Kind of similar reasoning to putting everything in namespaces instead of prepending OE_, NRE_, etc. to every single function and class.
Printing in color
As far as I've seen, fmtlib only really supports formatting in color when using the fmt::print function, not fmt::format. I think we would probably only want to use fmtlib to format our log messages, not print them. Using fmtlib to print them might complicate things a bit when deciding whether to print to file, stdout, etc.
That would mean that we have to implement our own color printing system :P (Only applicable to printing to console of course, since printing to file in color isn't really possible)
Preference among the Options
I would also prefer a unified API, although we might have to think about where we put it. If it is inside the oe namespace for example it might be difficult to access from other namespaces. Maybe create a new namespace? Something like pl for Phosphorus Logger? :D


Add header and cell index to filter output csv-files

The filter pipeline allows for the generation of csv output files, as is shown in the following exemplary couette.xml:
...
  <filter-pipeline>
    <per-instance output="md"/>
    <post-multi-instance output="md">
      <prefilter filtered-values="macro-mass macro-momentum" input="md">
        <write-to-file location="nofilter.csv"/>
      </prefilter>
    </post-multi-instance>
  </filter-pipeline>
...

This results in a file nofilter.csv:
1 ; 12.2347 ; -0.262493 ; -0.176776 ; 0.14687 ;
1 ; 12.2231 ; -0.164591 ; 0.213655 ; 0.1595 ;
1 ; 12.3207 ; -0.24711 ; -0.0794144 ; -0.0531393 ;
1 ; 12.1926 ; -0.260807 ; -0.0856201 ; 0.069399 ;
1 ; 12.1882 ; 0.128584 ; -0.00301881 ; -0.00504167 ;
1 ; 12.2229 ; 0.237522 ; -0.0587471 ; -0.234311 ;
1 ; 12.2467 ; -0.125776 ; -0.131807 ; 0.110567 ;
1 ; 12.3983 ; 0.203651 ; 0.239832 ; -0.548851 ;
...

The first column denotes the coupling cycle, while the second and the three following columns represent the mass and the 3 dimensional momentum, as specified in the couette.xml file above.
The developer/user is however left without information about the interpretation of the csv lines.
It might be very beneficial to include the corresponding cell index to each row to prevent misinterpretation in post processing steps.
Also, users need to be aware of their own configuration of the output file, as there is no header written to the csv file.
Example
The csv-files generated by MaMiCo's couette-test coupling functionality could serve as example.
When specifying a postive value in the couette.xml:
...
<coupling
      coupling-cycles="1001"
      two-way-coupling="no"
      send-from-md-to-macro="yes"
      filter-init-cycles="0"
      write-csv-every-timestep="0"
      send-from-macro-to-md="yes"
      compute-snr="no"
    />
...

, the simulation writes out csv-files in the following format:
I01_x,I01_y,I01_z,vel_x,vel_y,vel_z,mass
4 , 4 , 4,-0.185251,-0.0592073,0.150312,13.28
5 , 4 , 4,0.328107,-0.177471,-0.198811,11.88
6 , 4 , 4,0.0565378,0.0561282,0.0155711,14.84
7 , 4 , 4,0.14806,-0.151455,0.216326,11.72
8 , 4 , 4,-0.346705,-0.420957,0.292326,11.16
9 , 4 , 4,-0.0708458,-0.093582,0.0397505,15.6
...

Goal
Include cell index to filter output files and allow for an optional header specification, like so: (couette.xml)
...
<write-to-file location="nofilter.csv" write-header="yes"/>
...

generates nofilter.csv like so:
c_cycle ; idx_x ; idx_y ; idx_z ; mass ; mom_x ; mom_y ; mom_z
1 ; 4 ; 4 ; 4 ; 12.2347 ; -0.262493 ; -0.176776 ; 0.14687 ;
1 ; 5 ; 4 ; 4 ; 12.2231 ; -0.164591 ; 0.213655 ; 0.1595 ;
1 ; 6 ; 4 ; 4 ; 12.3207 ; -0.24711 ; -0.0794144 ; -0.0531393 ;
1 ; 7 ; 4 ; 4 ; 12.1926 ; -0.260807 ; -0.0856201 ; 0.069399 ;
1 ; 8 ; 4 ; 4 ; 12.1882 ; 0.128584 ; -0.00301881 ; -0.00504167 ;
1 ; 9 ; 4 ; 4 ; 12.2229 ; 0.237522 ; -0.0587471 ; -0.234311 ;
1 ; 4 ; 5 ; 4 ; 12.2467 ; -0.125776 ; -0.131807 ; 0.110567 ;
1 ; 5 ; 5 ; 4 ; 12.3983 ; 0.203651 ; 0.239832 ; -0.548851 ;
...

Additional Info
This is not urgent, just a constructive input without any time constraints.
The change would simplify post processing a lot and also decreases susceptibility to errors due to misinterpretation.

I remember that we used to have that (both the indices and the header). Maybe you can check if you find it somewhere, eg some stale branch or some commented out code, and then open a pull request

I have found the following commit, where such funcitonality was commented out:
https://github.com/HSU-HPC/MaMiCo/commit/c75e694e4620abb1a78fde78f855aa7ef2f94c1c#diff-033d765e13d57639ef36eda541784436456a1087b3b4187737dc22091bbc211a
It seems like the cell indexing has changed since that time, which makes adding the functionality a non-trivial task for me as "MaMiCo-newbie".
I'll see what I can do as soon as I find the time.


stream for local playback

I have define stream output in mpd. Could MPDCtrl add control for receiving the stream?

Hi
Unfortunately,MPDCtrl currently does not support playing stream. Mainly just because I don't use it personally...


Related #1134 - Add intermediate node setup

Notes: https://hackmd.io/TXalNnBLQKamBZN6g7rcyQ

[ ] Description:

What it does? Add intermediate node setup. See Notes above for details
What important points reviewers should know?
Anything left for follow-up PRs?

[ ] Labeled PR with appropriate labels

[x] Mentioned related issue e.g. Fixes #228 or Related #1337.

[ ] Asked any particular reviewers to review. If you aren't sure, start with GH suggestions.

[ ] PR adheres the style guide

In particular, mind the maximal line length.
No commented code checked in unless necessary.
Any panickers have a proof or removed.

[ ] Updated any rustdocs which may have changed

[x]  Remove set_setup and get_setup in implementation of SetupState (for storage/retrieval of latest state) since it should just happen in analog to
FactoryFullConfiguration Substrate service component configuration (which is just a fancy wrapper around Service::Configuration with some defaulting sugar on top)

[ ] Add generic to the SetupState struct to support different types

[ ] Pass setup_state to all setup functions via FullImportQueue in node/cli/src/service.rs and core/service/src/lib.rs

[ ] Allow setup_state to be discarded after setup of the systems

[ ] Check if reference counting is required

[ ] Update tests

[ ] Fixing Rust compiler errors

Any update for this pr?

@bkchr it's still a WIP

Yeah, but you will update this?

@bkchr yes, but it takes time as i'm multitasking

Please reopen when you return to this


Stream whole slices to indexers

Dropping the table_slice_column wrapping for streaming data to active indexers simplifies the streaming logic and removes the need to filter outputs on the qualified record field.
The indexers are now spawned with the index of the slice column instead and retrieve the correct data by themself.

What bug does this fix and why is this the correct solution?


Add rye init --private

PyPI recognizes this marker for private projects and will refuse upload.
Documented in https://pypi.org/classifiers/ and https://flit.pypa.io/en/stable/pyproject_toml.html

I like this!


travis: cache build artifacts

I wrote a little helper crate for keeping version numbers in sync with the crate version: https://crates.io/crates/version-sync. I hope it will be useful to people reading the guidelines and humbly suggest including it.

Build time before and after:

5 minutes: https://travis-ci.org/rust-lang-nursery/api-guidelines/builds/279186112
55 seconds: https://travis-ci.org/rust-lang-nursery/api-guidelines/builds/279188278

Looking some more at this, it occured to me that one could simply cache ~/.cargo/bin. The many packages that were downloaded and compiled in order to create mdbook are actually not necessary in 99% of the builds. The Rust tools themselves are not even necessary, but it seems to take only 15 seconds to install them.
Let me know if you would like me to update the PR to do more selective caching. I'm not sure it's worth the trouble, but I figured I would mention it just in case :-)


[Question] Running hardware accelerated app in nvidia jetson nano docker container

Hello,
this issue is not really related to meta-tegra, but i'm hopping to get some help here.
Following the instructions at https://github.com/NVIDIA/nvidia-docker/wiki/NVIDIA-Container-Runtime-on-Jetson i am doing some tests for running GUI apps in a docker container in a jetson nano, i'm using the following code to do the tests:
    docker run --runtime nvidia --network host -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix/:/tmp/.X11-unix nvcr.io/nvidia/l4t-base:r32.4.3

    apt-get update && apt-get install -y mesa-utils

    export DISPLAY=:0.0 && glxgears

everything works well, in this example i run the container in host mode (--network host) but i have an application where i want to run the container isolated from the host, after i remove --network host and run the container, doing the same steps i got the following error:
root@056440576e00:/# glxgears
Segmentation fault (core dumped)

the strace log:
socket(AF_UNIX, SOCK_DGRAM, 0)          = 7
  connect(7, {sa_family=AF_UNIX, sun_path=@"nvidia20ac498a\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"}, 66) = -1 ECONNREFUSED (Connection refused)
  close(7)                                = 0
  --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x28c48} ---
  +++ killed by SIGSEGV (core dumped) +++
  Segmentation fault
  root@056440576e00:/#

gdb log:
(gdb) r
 Starting program: /usr/bin/glxgears
 [Thread debugging using libthread_db enabled]
 Using host libthread_db library "/lib/aarch64-linux-gnu/libthread_db.so.1".

 Program received signal SIGSEGV, Segmentation fault.
 0x0000007fb78736a4 in ?? () from /usr/lib/aarch64-linux-gnu/libGLX_nvidia.so.0
 (gdb)

why i'm getting the segmentation fault only running in the isolated mode. Maybe i have to mount other things besides /tmp/.X11-unix/:/tmp/.X11-unix
i'm using the dunfell-l4t-r32.4.3 branch

@ruisebastiao interesting test, unfortunately I don't really have any insight but I'm curious about the solution.
Do you see anything in the backtrace bt from gdb after the segfault to see where the entry point/call stack is for the libGLX_nvidia library?
Can you reproduce this on stock nvidia L4T JP 4.4?  If so I'd cross post on the nvidia forum too.

@dwalkes here is the gdb bt:
(gdb) bt
#0  0x0000007fb78736a4 in ?? () from /usr/lib/aarch64-linux-gnu/libGLX_nvidia.so.0
#1  0x0000007fb78a0d10 in ?? () from /usr/lib/aarch64-linux-gnu/libGLX_nvidia.so.0
#2  0x0000007fb7b497e4 in glXCreateContext () from /usr/lib/aarch64-linux-gnu/libGLX.so.0
#3  0x0000005555558230 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

My 2 cents.
Do you find anything related to nvidia20ac498a in your roots?
It looks to me that the code is trying to access a Unix socket with that
name, it fails and doesn't get some initialization data which causes the
crash.
On Thu, Oct 15, 2020, 17:14 Rui Sebastiao<EMAIL_ADDRESS>wrote:

@dwalkes https://github.com/dwalkes here is the gdb bt:
(gdb) bt
#0  0x0000007fb78736a4 in ?? () from /usr/lib/aarch64-linux-gnu/libGLX_nvidia.so.0
#1  0x0000007fb78a0d10 in ?? () from /usr/lib/aarch64-linux-gnu/libGLX_nvidia.so.0
#2  0x0000007fb7b497e4 in glXCreateContext () from /usr/lib/aarch64-linux-gnu/libGLX.so.0
#3  0x0000005555558230 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/OE4T/meta-tegra/issues/442#issuecomment-709354852,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AEDDM24MELUWVZIMBTWAD43SK37WDANCNFSM4SRW6LBQ
.

My 2 cents. Do you find anything related to nvidia20ac498a in your roots?

Yes that was also one of my first tries, i searched in the container and in the host and i didn't find any file with that name, i search for nvidia* because the other part changes in the following container executions

@dwalkes

Can you reproduce this on stock nvidia L4T JP 4.4? If so I'd cross post on the nvidia forum too.

Just confirmed that in  nvidia L4T JP 4.4 the result is the same gdb output:
(gdb) bt
#0  0x0000007fb78736a4 in ?? () from /usr/lib/aarch64-linux-gnu/libGLX_nvidia.so.0
#1  0x0000007fb78a0d10 in ?? () from /usr/lib/aarch64-linux-gnu/libGLX_nvidia.so.0
#2  0x0000007fb7b497e4 in glXCreateContext () from /usr/lib/aarch64-linux-gnu/libGLX.so.0

Just confirmed that in nvidia L4T JP 4.4 the result is the same.

@ruisebastiao good or bad news depending on how you look at it... good that there isn't something different about meta-tegra, bad that it's less likely some Matt Madison Magic will be able to solve it :)
I'd definitely cross post it on NVIDIA developer forum, at least to make sure they are aware of it.


Added prefix for DARC storage

There's a weakness in Dela (https://github.com/dedis/dela/issues/258) whereby the (existing) smart contracts store key=values without any prefix for the keys in a shared key/value store. Effectively this would allow any malicious user to overwrite other smart contracts' data.
This fixes it for the Distributed Access Rights Controls (DARC) functionality.

Random thought @jbsv (and @nkcr if you're still peeking 😜):
Right now, we're fixing #258 by adding yet another custom prefix for each contract.
As I'm doing this, I realize that we already have a unique identifying value for each contract, we just happen to use it exclusively for access control.
Should we drop the "custom prefix" (i.e., "VALU", "DARC", etc.), limit the access key (aKey) variable to 4 bytes (down from 32 bytes) and then use it as a prefix in the storage ?
This would avoid the proliferation of constants that should be known for each contract.
Arguably, it would even make sense to make the "aKey" public for each contract, since it'd then also be used as a prefix in the K/V store.
Any thoughts ?

Random thought @jbsv (and @nkcr if you're still peeking 😜):
Right now, we're fixing #258 by adding yet another custom prefix for each contract. As I'm doing this, I realize that we already have a unique identifying value for each contract, we just happen to use it exclusively for access control. Should we drop the "custom prefix" (i.e., "VALU", "DARC", etc.), limit the access key (aKey) variable to 4 bytes (down from 32 bytes) and then use it as a prefix in the storage ? This would avoid the proliferation of constants that should be known for each contract. Arguably, it would even make sense to make the "aKey" public for each contract, since it'd then also be used as a prefix in the K/V store.
Any thoughts ?

I was thinking about that while reading https://github.com/dedis/dela/pull/260  and wondering if there could be a generic way to add the prefix.
but then the prefixKey would need to be centralized, and have access to more than just the key.
so, probably there is 3 problems to solve here

Always adding a prefix while storing a key, and always removing it while reading it.
Centralize the prefixing for all modules that would be interfacing the store - would it extend the existing store module?
change prefixKey to have access to the contextual environment of the key (maybe contract metadata of some sort?)

(I'm still starting to learn more about dela, so excuse me if my lack of knowledge makes this comment not really useful.)

You're absolutely right @lanterno. We avoided solution n° 2 as we want the K/V store to be as unaware of its usage as possible. We could add an adapter that implements this prefixing abstraction, but for now we went with just solving n° 1, which is pretty simple and self-sufficient.
A prefixing adapter in front of the storage would probably be cleaner though.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

62 of 65 (95.38%)  changed or added relevant lines in 11 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.002%) to 98.741%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

core/ordering/cosipbft/contracts/viewchange/viewchange.go
12
15
80.0%

Files with Coverage Reduction
New Missed Lines
%

mino/minogrpc/server.go
2
99.33%

Totals

Change from base Build<PHONE_NUMBER>:
0.002%

Covered Lines:
14671

Relevant Lines:
14858

💛  - Coveralls

Scoping the store accesses with a contract prefix is a reasonable solution.
Ultimately, it would be nice to have an access control by sotre elements (i.e. keys) instead of by contracts. It would give more flexibility such as the ability to share keys between contracts.
We are not really far from that actually. This would require to have a custom darc implementation that matches key prefix to R/W/D actions or whatever rules we want to express.
Also, the check could be done at the module level (the "native" smart contract) instead of individually from each contract definition.
Something along those lines:
// execution/native/native.go

// Execute implements execution.Service. It uses the executor to process the
// incoming transaction and return the result.
func (ns *Service) Execute(snap store.Snapshot, step execution.Step) (execution.Result, error) {
	name := string(step.Current.GetArg(ContractArg))

	contract := ns.contracts[name]
	if contract == nil {
		return execution.Result{}, xerrors.Errorf("unknown contract '%s'", name)
	}

	res := execution.Result{
		Accepted: true,
	}

	// should come from the service
	var accessSrv access.Service

	// smart contracts are provided a secured snap that checks actions on it
	secureSnap := newSecureSnap(snap, accessSrv, step.Current.GetIdentity())

	err := contract.Execute(secureSnap, step)
	if err != nil {
		res.Accepted = false
		res.Message = err.Error()
	}

	return res, nil
}

func newSecureSnap(snap store.Snapshot, accessSrv access.Service,
	identity access.Identity) store.Snapshot {

	return secureSnap{...}
}

type secureSnap struct {
	snap      store.Snapshot
	accessSrv access.Service
	identity  access.Identity
}

func (snap secureSnap) Get(key []byte) ([]byte, error) {
	creds := newSnapCred(key, "read")

	err := snap.accessSrv.Match(snap.snap, creds, snap.identity)
	if err != nil {
		return nil, xerrors.Errorf("verification failed: %v", err)
	}

	return snap.snap.Get(key)
}

func (snap secureSnap) Set(key []byte, value []byte) error {
	creds := newSnapCred(key, "write")

	err := snap.accessSrv.Match(snap.snap, creds, snap.identity)
	if err != nil {
		return xerrors.Errorf("verification failed: %v", err)
	}

	return snap.snap.Set(key, value)
}

func (snap secureSnap) Delete(key []byte) error {
	creds := newSnapCred(key, "delete")

	err := snap.accessSrv.Match(snap.snap, creds, snap.identity)
	if err != nil {
		return xerrors.Errorf("verification failed: %v", err)
	}

	return snap.snap.Delete(key)
}

func newSnapCred(key []byte, action string) snapCred {
	return snapCred{
		key:    key,
		action: action,
	}
}

// snapCred defines credentials for operations on a snap. The credentials match
// the "read", "write", "delete" actions defined on the 4 first bytes of a key.
// For example here the rule on a single key prefix:
//
//   -- 0xabcdef12
//	   -- "read"
//	      -- Alice
//	      -- Bob
//	   -- "write"
//	      -- Bob
//	   -- "delete"
//	      -- Bob
//
type snapCred struct {
	key    []byte
	action string
}

func (sc snapCred) GetID() []byte {
	return append([]byte{}, sc.key[:4]...)
}

func (cs snapCred) GetRule() string {
	return cs.action
}

It could be optimized for example by performing the checks in batches. We could also express rules differently with "*" or "R/W", or by including the contract to express rules like "User Bob can write key X for contract A but only read key X for contract B":
-- 0xabcdef12
  -- contractA:read
    -- Bob
  -- contractB:write
    -- Bob


KAFKA-3999: Record raw size of fetch responses as part of consumer metrics

Currently, only the decompressed size of fetch responses is recorded. This PR adds a sensor to keep track of the raw size as well.

I thought I'd comment, since I've worked in this area of the code as well. LGTM.

@hachikuji, thanks for the feedback. I drafted a short KIP. This metric still sounds useful to me as it differs from the existing Selector metric, as you mentioned.


Example Required

var blogs = context.Blogs
.Include(blog => blog.Posts)
.ThenInclude(post => post.Author)
.ThenInclude(author => author.Photo)
.ToList();
How to do  using ????
GetPagedList(include: source=>source.Include(p=>p.Post))

Good question, let me think.

@AshwinKamathB
GetPagedList(include: blog => blog.Include(b=>b.Posts).ThenInclude(post => post.Author) .ThenInclude(author => author.Photo))

Close this issue as not more information.


Click Event

Tileview not handling click event.

of course not - you need the touch event for scrolling, flinging, pinching, etc.  use any of the listeners mentioned in the readme.  please do a little more research into basic functionality before opening issues.


Illegal Invocation

In my code and in your demo an "Illegal Invocation" error occurs when you select a file. This doesn't stop it from working but it does produce unnerving console output.

The same happens for me in Chrome  44.0.2403.130 m.
TypeError: Illegal invocation
at fa (angular.js:925)
at fa (angular.js:925)
at l.$digest (angular.js:14224)
at angular.js:14427
at e (angular.js:4902)
at angular.js:5282

on demo change the line 35 of example index.html from
Select File
to
Select File


Bonds are not rendered in color in both 'Bonds only' and 'Labels and Bonds' cases.

Affected versions: Remote, Standalone
Tested on Ketcher v2.2.1-92-ge17451e1
Steps to reproduce:

Create a structure on the canvas (e.g. chain).
Add several stereobonds to the structure.
Select 'Bonds only' option in 'Settings' -> 'Color stereogenic centers'.
Select 'Labels and Bonds' option in 'Settings' -> 'Color stereogenic centers'.

Expected result:
3. The stereobonds are colored in accordance with the selected colors.
4. Labels and Stereobonds are colored in accordance with the selected colors.
Actual result:
3. The stereobonds remain black.
4. Labels are colored in accordance with the selected colors. The stereobonds remain black.

Release/2.3 The issue is closed as fixed.


Error building native library in Fedora 28

Notice I edited ~/.Mathematica/Paclets/Repository/PJLink-.0.2/PJLink/MathLinkEnvironment.py:666 to reflect the actual installation root for Mathematica.
running build
running build_ext
building 'PJLinkNativeLibrary' extension
creating build
creating build/temp.linux-x86_64-3.6
gcc -pthread -B /opt/anaconda/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -fPIC -I/opt/Wolfram/Mathematica/11.3/SystemFiles/Links/MathLink/DeveloperKit/Linux-x86-64/CompilerAdditions -I/opt/anaconda/include/python3.6m -c PJLinkNativeLibrary.cpp -o build/temp.linux-x86_64-3.6/PJLinkNativeLibrary.o
g++ -pthread -shared -B /opt/anaconda/compiler_compat -L/opt/anaconda/lib -Wl,-rpath=/opt/anaconda/lib -Wl,--no-as-needed -Wl,--sysroot=/ build/temp.linux-x86_64-3.6/PJLinkNativeLibrary.o -L/opt/Wolfram/Mathematica/11.3/SystemFiles/Links/MathLink/DeveloperKit/Linux-x86-64/CompilerAdditions -lMLi4 -o /home/fsiano/.Mathematica/Paclets/Repository/PJLink-1.0.2/PJLink/PJLinkNativeLibrary/src/PJLinkNativeLibrary.cpython-36m-x86_64-linux-gnu.so
An exception has occurred, use %tb to see the full traceback.

SystemExit: error: command 'g++' failed with exit status 1

/opt/anaconda/lib/python3.6/site-packages/IPython/core/interactiveshell.py:2918: UserWarning: To exit: use 'exit', 'quit', or Ctrl-D.
  warn("To exit: use 'exit', 'quit', or Ctrl-D.", stacklevel=1)

and %tb gives
---------------------------------------------------------------------------
DistutilsExecError                        Traceback (most recent call last)
/opt/anaconda/lib/python3.6/distutils/unixccompiler.py in link(self, target_desc, objects, output_filename, output_dir, libraries, library_dirs, runtime_library_dirs, export_symbols, debug, extra_preargs, extra_postargs, build_temp, target_lang)
    196
--> 197                 self.spawn(linker + ld_args)
    198             except DistutilsExecError as msg:

/opt/anaconda/lib/python3.6/distutils/ccompiler.py in spawn(self, cmd)
    908     def spawn(self, cmd):
--> 909         spawn(cmd, dry_run=self.dry_run)
    910

/opt/anaconda/lib/python3.6/distutils/spawn.py in spawn(cmd, search_path, verbose, dry_run)
     35     if os.name == 'posix':
---> 36         _spawn_posix(cmd, search_path, dry_run=dry_run)
     37     elif os.name == 'nt':

/opt/anaconda/lib/python3.6/distutils/spawn.py in _spawn_posix(cmd, search_path, verbose, dry_run)
    158                           "command %r failed with exit status %d"
--> 159                           % (cmd, exit_status))
    160             elif os.WIFSTOPPED(status):

DistutilsExecError: command 'g++' failed with exit status 1

During handling of the above exception, another exception occurred:

LinkError                                 Traceback (most recent call last)
/opt/anaconda/lib/python3.6/distutils/core.py in setup(**attrs)
    147         try:
--> 148             dist.run_commands()
    149         except KeyboardInterrupt:

/opt/anaconda/lib/python3.6/distutils/dist.py in run_commands(self)
    954         for cmd in self.commands:
--> 955             self.run_command(cmd)
    956

/opt/anaconda/lib/python3.6/distutils/dist.py in run_command(self, command)
    973         cmd_obj.ensure_finalized()
--> 974         cmd_obj.run()
    975         self.have_run[command] = 1

/opt/anaconda/lib/python3.6/distutils/command/build.py in run(self)
    134         for cmd_name in self.get_sub_commands():
--> 135             self.run_command(cmd_name)
    136

/opt/anaconda/lib/python3.6/distutils/cmd.py in run_command(self, command)
    312         """
--> 313         self.distribution.run_command(command)
    314

/opt/anaconda/lib/python3.6/distutils/dist.py in run_command(self, command)
    973         cmd_obj.ensure_finalized()
--> 974         cmd_obj.run()
    975         self.have_run[command] = 1

/opt/anaconda/lib/python3.6/distutils/command/build_ext.py in run(self)
    338         # Now actually compile and link everything.
--> 339         self.build_extensions()
    340

/opt/anaconda/lib/python3.6/distutils/command/build_ext.py in build_extensions(self)
    447         else:
--> 448             self._build_extensions_serial()
    449

/opt/anaconda/lib/python3.6/distutils/command/build_ext.py in _build_extensions_serial(self)
    472             with self._filter_build_errors(ext):
--> 473                 self.build_extension(ext)
    474

/opt/anaconda/lib/python3.6/distutils/command/build_ext.py in build_extension(self, ext)
    557             build_temp=self.build_temp,
--> 558             target_lang=language)
    559

/opt/anaconda/lib/python3.6/distutils/ccompiler.py in link_shared_object(self, objects, output_filename, output_dir, libraries, library_dirs, runtime_library_dirs, export_symbols, debug, extra_preargs, extra_postargs, build_temp, target_lang)
    716                   export_symbols, debug,
--> 717                   extra_preargs, extra_postargs, build_temp, target_lang)
    718

/opt/anaconda/lib/python3.6/distutils/unixccompiler.py in link(self, target_desc, objects, output_filename, output_dir, libraries, library_dirs, runtime_library_dirs, export_symbols, debug, extra_preargs, extra_postargs, build_temp, target_lang)
    198             except DistutilsExecError as msg:
--> 199                 raise LinkError(msg)
    200         else:

LinkError: command 'g++' failed with exit status 1

During handling of the above exception, another exception occurred:

SystemExit                                Traceback (most recent call last)
<ipython-input-3-a1f503dd0203> in <module>()
----> 1 ker = SubprocessKernel()
      2 def MEval (expr, wait = True, kernel = ker):
      3     """MEval evaluates a Mathematica expression in the Mathematica kernel
      4
      5     """

~/.Mathematica/Paclets/Repository/PJLink-1.0.2/SubprocessKernel/SubprocessKernel.py in __init__(self, init, debug_level)
     15
     16     def __init__(self, init = None, debug_level = 0):
---> 17         super().__init__(NativeLink(init=init, debug_level=debug_level))
     18         self.__py_eval_link = None
     19         self.__reader = None

~/.Mathematica/Paclets/Repository/PJLink-1.0.2/PJLink/NativeLink.py in __init__(self, init, debug_level)
     46         self._init = init
     47         self.__errMsgOut = [ "" ]
---> 48         self._loadNativeLibrary(debug_level=debug_level)
     49
     50         self.__markStack = deque()

~/.Mathematica/Paclets/Repository/PJLink-1.0.2/PJLink/NativeLink.py in _loadNativeLibrary(self, initialize, debug_level, setup, *args)
    127                         argv1 = sys.argv
    128                         sys.argv = [ "-q", "build", "build_ext", "--inplace" ]
--> 129                         import setup as setup
    130                         sys.path.pop(0)
    131                         sys.argv = argv1

~/.Mathematica/Paclets/Repository/PJLink-1.0.2/PJLink/PJLinkNativeLibrary/src/setup.py in <module>()
     54        version = '1.0',
     55        description = 'Implementation of JLinkNativeLibrary for python',
---> 56        ext_modules = [module1]
     57        )
     58

/opt/anaconda/lib/python3.6/distutils/core.py in setup(**attrs)
    161                 raise
    162             else:
--> 163                 raise SystemExit("error: " + str(msg))
    164
    165     return dist

SystemExit: error: command 'g++' failed with exit status 1

Thanks for the report. Someone else had issues with an Anaconda distribution of python failing to build because of the #include <cstdint>. That was circumventable with a Mac-specific fix, so I'm guessing g++ is failing because of the same issue (i.e. Anaconda does odd things). I'll google to see if I can find a workaround that I can implement for Fedora too.
Out of curiosity, what did you need to change in MathLinkEnvironment? If more configuration is needed I should allow it to be passed in the initialization.

I'm going to expunge the "-q" from the sys.argv with the hope that it allows things to be cleaner for people with issues in the future. Do you mind testing it without that and letting me know what happens? It might quiet a more particular message.

Using the standard python which comes with Fedora (not anaconda) and PJLink versrion 1.0.3:
Because of #5 I changed (3 instances) in
~/.Mathematica/Paclets/Repository/PJLink-1.0.3/PJLink/MathLinkEnvironment.py
os.path.join(root, "SystemFiles", ...) to os.path.join(root, "11.3", "SystemFiles", ...)
Notice the include has -I/opt/Wolfram/Mathematica/SystemFiles/... (not -I/opt/Wolfram/Mathematica/11.3/SystemFiles/...).
unning build_ext
building 'PJLinkNativeLibrary' extension
gcc -pthread -Wno-unused-result -Wsign-compare -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -D_GNU_SOURCE -fPIC -fwrapv -fPIC -I/opt/Wolfram/Mathematica/SystemFiles/Links/MathLink/DeveloperKit/Linux/CompilerAdditions -I/usr/include/python3.6m -c PJLinkNativeLibrary.cpp -o build/temp.linux-x86_64-3.6/PJLinkNativeLibrary.o

An exception has occurred, use %tb to see the full traceback.

SystemExit: error: command 'gcc' failed with exit status 1

/usr/lib/python3.6/site-packages/IPython/core/interactiveshell.py:2971: UserWarning: To exit: use 'exit', 'quit', or Ctrl-D.
  warn("To exit: use 'exit', 'quit', or Ctrl-D.", stacklevel=1)

and %tb:
--------------------------------------------------------------------------
DistutilsExecError                        Traceback (most recent call last)
/usr/lib64/python3.6/distutils/unixccompiler.py in _compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts)
    126             self.spawn(compiler_so + cc_args + [src, '-o', obj] +
--> 127                        extra_postargs)
    128         except DistutilsExecError as msg:

/usr/lib64/python3.6/distutils/ccompiler.py in spawn(self, cmd)
    908     def spawn(self, cmd):
--> 909         spawn(cmd, dry_run=self.dry_run)
    910

/usr/lib64/python3.6/distutils/spawn.py in spawn(cmd, search_path, verbose, dry_run)
     35     if os.name == 'posix':
---> 36         _spawn_posix(cmd, search_path, dry_run=dry_run)
     37     elif os.name == 'nt':

/usr/lib64/python3.6/distutils/spawn.py in _spawn_posix(cmd, search_path, verbose, dry_run)
    158                           "command %r failed with exit status %d"
--> 159                           % (cmd, exit_status))
    160             elif os.WIFSTOPPED(status):

DistutilsExecError: command 'gcc' failed with exit status 1

During handling of the above exception, another exception occurred:

CompileError                              Traceback (most recent call last)
/usr/lib64/python3.6/distutils/core.py in setup(**attrs)
    147         try:
--> 148             dist.run_commands()
    149         except KeyboardInterrupt:

/usr/lib64/python3.6/distutils/dist.py in run_commands(self)
    954         for cmd in self.commands:
--> 955             self.run_command(cmd)
    956

/usr/lib64/python3.6/distutils/dist.py in run_command(self, command)
    973         cmd_obj.ensure_finalized()
--> 974         cmd_obj.run()
    975         self.have_run[command] = 1

/usr/lib64/python3.6/distutils/command/build_ext.py in run(self)
    338         # Now actually compile and link everything.
--> 339         self.build_extensions()
    340

/usr/lib64/python3.6/distutils/command/build_ext.py in build_extensions(self)
    447         else:
--> 448             self._build_extensions_serial()
    449

/usr/lib64/python3.6/distutils/command/build_ext.py in _build_extensions_serial(self)
    472             with self._filter_build_errors(ext):
--> 473                 self.build_extension(ext)
    474

/usr/lib64/python3.6/distutils/command/build_ext.py in build_extension(self, ext)
    532                                          extra_postargs=extra_args,
--> 533                                          depends=ext.depends)
    534

/usr/lib64/python3.6/distutils/ccompiler.py in compile(self, sources, output_dir, macros, include_dirs, debug, extra_preargs, extra_postargs, depends)
    573                 continue
--> 574             self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts)
    575

/usr/lib64/python3.6/distutils/unixccompiler.py in _compile(self, obj, src, ext, cc_args, extra_postargs, pp_opts)
    128         except DistutilsExecError as msg:
--> 129             raise CompileError(msg)
    130

CompileError: command 'gcc' failed with exit status 1

During handling of the above exception, another exception occurred:

SystemExit                                Traceback (most recent call last)
<ipython-input-2-46b7fe96b177> in <module>()
----> 1 ker = SubprocessKernel()
      2 def MEval (expr, wait = True, kernel = ker) :
      3     """MEval evaluates a Mathematica expression in the Mathematica kernel
      4
      5     """

.Mathematica/Paclets/Repository/PJLink-1.0.3/SubprocessKernel/SubprocessKernel.py in __init__(self, init, debug_level)

.Mathematica/Paclets/Repository/PJLink-1.0.3/PJLink/NativeLink.py in __init__(self, init, debug_level)

.Mathematica/Paclets/Repository/PJLink-1.0.3/PJLink/NativeLink.py in _loadNativeLibrary(self, initialize, debug_level, *args)

.Mathematica/Paclets/Repository/PJLink-1.0.3/PJLink/PJLinkNativeLibrary/__init__.py in <module>()

.Mathematica/Paclets/Repository/PJLink-1.0.3/PJLink/PJLinkNativeLibrary/__init__.py in _get_lib_dir_loc()

.Mathematica/Paclets/Repository/PJLink-1.0.3/PJLink/PJLinkNativeLibrary/src/setup.py in <module>()

/usr/lib64/python3.6/distutils/core.py in setup(**attrs)
    161                 raise
    162             else:
--> 163                 raise SystemExit("error: " + str(msg))
    164
    165     return dist

SystemExit: error: command 'gcc' failed with exit status 1

@bgatessucks  I think I got a patch for this path as well as the others. The path finding is a bit more centralized now. Can you give it another try? Hopefully the only issue is just these paths.

Not there yet with 1.0.4:
I have several versions of Mathematica installed at /opt/Wolfram/Mathematica/ver with ver in
10.4.1
11.0.1
11.1
11.1.1
11.2
11.3
7.0.1
8.0.4
9.0.1

and it seems that 10.4.1 gets picked up.
Would it be possible to add an argument for the user to provide the Mathematica root ?
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
~/.Mathematica/Paclets/Repository/PJLink-1.0.4/PJLink/MathLinkEnvironment.py in get_Kernel_binary(cls, version, use_default_root)
    723         try:
--> 724             root = cls.get_Mathematica_root(version, use_default_root=use_default_root)
    725         except ValueError:

~/.Mathematica/Paclets/Repository/PJLink-1.0.4/PJLink/MathLinkEnvironment.py in get_Mathematica_root(cls, mname, use_default_root)
    699         if mname is None and cls.CURRENT_MATHEMATICA is None:
--> 700             root = cls.get_Installed_Mathematica(use_default_root=use_default_root)
    701             if plat == "Darwin":

~/.Mathematica/Paclets/Repository/PJLink-1.0.4/PJLink/MathLinkEnvironment.py in get_Installed_Mathematica(cls, use_default_root)
    656                 vers = app
--> 657                 verNum = float(app)
    658                 mathematicas.append((mathematica, verNum, vers))

ValueError: could not convert string to float: '10.4.1'

During handling of the above exception, another exception occurred:

ValueError                                Traceback (most recent call last)
<ipython-input-2-46b7fe96b177> in <module>()
----> 1 ker = SubprocessKernel()
      2 def MEval (expr, wait = True, kernel = ker) :
      3     """MEval evaluates a Mathematica expression in the Mathematica kernel
      4
      5     """

~/.Mathematica/Paclets/Repository/PJLink-1.0.4/SubprocessKernel/SubprocessKernel.py in __init__(self, init, debug_level)
     15
     16     def __init__(self, init = None, debug_level = 0):
---> 17         super().__init__(NativeLink(init=init, debug_level=debug_level))
     18         self.__py_eval_link = None
     19         self.__reader = None

~/.Mathematica/Paclets/Repository/PJLink-1.0.4/PJLink/NativeLink.py in __init__(self, init, debug_level)
     35
     36         if init is None:
---> 37             bin = self.Env.get_Kernel_binary()
     38             init = ["-linkmode", "launch", "-linkname", "'{}' -mathlink".format(bin)]#, "-mathlink", "-wstp"]
     39         elif isinstance(init, str) and os.path.isfile(init):

~/.Mathematica/Paclets/Repository/PJLink-1.0.4/PJLink/MathLinkEnvironment.py in get_Kernel_binary(cls, version, use_default_root)
    725         except ValueError:
    726             if not (isinstance(version, str) and os.path.isfile(version)):
--> 727                 raise ValueError("Don't know how to find the WolframKernel executable on system {}".format(plat))
    728             else:
    729                 mbin = version

ValueError: Don't know how to find the WolframKernel executable on system Linux

Okay I think I got a fix in place for the bad directory finding. Thanks for all your help with this. I also have a system where you can provide your own $InstallationDirectory. Try :
from PJLink import MathLinkEnvironment as Env
Env.INSTALLATION_DIRECTORY = mathematica/installation/directory

I got it to find things properly on Mac for a different Mathematica version, but we'll see how it goes.

I tried to rewrite the dependency finder so that it doesn't require a file called MLi4 but instead looks for the highest-version library files in the directory. Let me know if it worked. If not, can you paste the file names inside /opt/Wolfram/Mathematica/11.3/SystemFiles/Links/MathLink/DeveloperKit/Linux-x86-64/CompilerAdditions? My current guess is I'm selecting that file incorrectly.

ls /opt/Wolfram/Mathematica/11.3/SystemFiles/Links/MathLink/DeveloperKit/Linux-x86-64/CompilerAdditions gives:
libML32i3.a
libML32i3.so
libML32i4.a
libML32i4.so
libML64i3.a
libML64i3.so
libML64i4.a
libML64i4.so
MathLink.cmake
mathlink.h
MathLink-release.cmake
mcc
mprep

Ah that could entirely be the issue then. Any chance the current version (1.0.6) builds? I added more intelligent path-finding so it ought to have found either libML64i4 or libML32i4 but I can't be sure which. It's also possible to specify this directly with Env.MATHLINK_LIBRARY_NAME = "ML64i4". Once again thanks for all your help. I have no access to any Linux or Windows machine so this is super useful.

That's very odd...so the library compiled but gave that warning? Could you show me the compiler output and what's in ~/.Mathematica/Paclets/Repository/PJLink-1.0.6/PJLink/PJLinkNativeLibrary? I think it must be linking against the .so version of libML64i4 instead of the .a, since it was able to find both. If that's the case I'll need to change how I choose to the link MathLink library in slightly.


import multiple projects is failing

Hi,
I've done an export of multiple projects from overview page.
I got some non-readable file out of it.
when I try to import it on a new castle, it fails.
on my first go i tried combination of soap+REST, but on my last attempt I tried 2 SOAP projects and it still have failed...
p.s.,
nice to have: "select all" checkbox on overview page, to select all projects at once

Hi @tomerst.
Castle Mock will zip projects to a zip-file when exporting multiple projects. At the moment, Castle Mock does not support import multiple projects at the same time, so what you need to do is to unzip the exported file and import each project separately.
I have plans to completely rebuild the frontend for Castle Mock, so I appreciate all feedback and suggestions.
Best regards,
Karl Dahlgren


Adds support for uploading by URL #6

Thanks @Abbe98, have you tried to compile code and upload something?

@yarl yes.
An issue I have found so far is that the file name gets appended with a part of the URL but I'm patching it later today.

I've merged your code to feature branch. I had to make some changes to the code to make it fully work.
https://github.com/yarl/pattypan/commits/url-upload
@Abbe98 can you do PR to this branch in the future? Thanks :yellow_heart:

@yarl thanks,
I'm targeting url-upload for my coming fix.


Update base.Dockerfile

Hi tosone, I'm the vecps-bot here serving you. You can find the instructions on how to interact with me at https://baidu.com.

/ping

Don't warry ci-bot is alive

/kind feature

/remove-kind feature

Labels: kind/feature, remove from issue success

/ping

Don't warry ci-bot is alive


Need to reconsider scores and assumptions

Should lack of unencrypted STUN/TURN really be penalised? Perhaps not.
In my tests on Firefox, only unencrypted TURN over UDP seems to support STUN candidates on both servers I've tried; is STUN not defined on any other services, or is this a Firefox issue? Either way, need to figure out what it is and explain it and tweak the scores to not show 'Poor' when the setup is not wrong.

I asked someone who knows what they are talking about (thanks Dave!) and arrived at the following:

definitely don't penalise for lack of turns/udp: it's barely a thing
it might depend one what your score is trying to represent: if it's just about likelihood of a successful connection then turn/udp probably doesn't matter
the other important thing is that an A* score should require a turns/tcp URI on port 443
the browser always gets a UDP candidate to hand out, because the TURN server is able to talk UDP on your behalf, even if your client has to use not-really-fit-for-purpose-but-it'll-do-I-guess TCP to the TURN server
TURN creds being encrypted on the wire is also quite important — turn/tcp


Add delegation capability

Add the ability for a user to be able to delegate to a participating pool through the website.

https://github.com/FreeLoaderz/rwd-frontend/pull/85