Azure IoT Edge daemon doesn't start on Raspberry Pi 3

Hello,
After working through this How-to and configuring the Pi for automatic provisioning I get an error when checking the status of iotedge.
The output is the following:
$ sudo systemctl restart iotedge
$ systemctl status iotedge
● iotedge.service - Azure IoT Edge daemon
Loaded: loaded (/lib/systemd/system/iotedge.service; enabled; vendor preset: enabled)
Active: inactive (dead) (Result: exit-code) since Fri 2018-11-16 08:33:04 CET; 452ms ago
Docs: man:iotedged(8)
Process: 1336 ExecStart=/usr/bin/iotedged -c /etc/iotedge/config.yaml (code=exited, status=1/FAILURE)
Main PID: 1336 (code=exited, status=1/FAILURE)
CPU: 27ms
Nov 16 08:33:04 raspberrypi systemd[1]: iotedge.service: Failed with result 'exit-code'.
Nov 16 08:33:04 raspberrypi systemd[1]: iotedge.service: Service hold-off time over, scheduling restart.
Nov 16 08:33:04 raspberrypi systemd[1]: Stopped Azure IoT Edge daemon.
Nov 16 08:33:04 raspberrypi systemd[1]: Dependency failed for Azure IoT Edge daemon.
Nov 16 08:33:04 raspberrypi systemd[1]: iotedge.service: Job iotedge.service/start failed with result 'dependency'.
In order to use the automatic provisioning I used this:
https://buyzero.de/collections/andere-platinen/products/letstrust-hardware-tpm-trusted-platform-module?variant=33890452626
With the prepached Raspbian Stretch image from this site:
https://letstrust.de/
And followed these instructions:
https://docs.microsoft.com/en-us/azure/iot-edge/how-to-auto-provision-simulated-device-linux

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 1cf7aade-9690-1b15-edca-952e4f509601
Version Independent ID: b99f0f0f-87fe-5446-670e-b3fd8eb1c34d
Content: Install Azure IoT Edge on Linux ARM32
Content Source: articles/iot-edge/how-to-install-iot-edge-linux-arm.md
Service: iot-edge
GitHub Login: @kgremban
Microsoft Alias: kgremban

Thanks for your feedback @Joogle . (Create and provision an Edge device with a virtual TPM on a Linux virtual machine) tutorial uses a Windows development machine with Hyper-V enabled running an Ubuntu Server VM.
If I understood correctly, you successfully completed : Install Azure IoT Edge runtime on Linux (ARM32v7/armhf) on your Raspberry Pi 3 running Raspbian Stretch correct ? What was the results when you went through Verify successful installation ?
See also the supported platforms: https://docs.microsoft.com/en-us/azure/iot-edge/support
Thanks!

I only completed Install Azure IoT Edge runtime on Linux (ARM32v7/armhf) up to the verification part. The result for $systemctl status iotedge  was the one mentioned above.
The output of  $journalctl -u iotedge --no-pager --no-full is:
Nov 15 15:49:49 raspberrypi systemd[1]: Started Azure IoT Edge daemon.
Nov 15 15:49:50 raspberrypi iotedged[429]: 2018-11-15T14:49:50Z [INFO] - Starting Azure IoT Edge Security Daemon
Nov 15 15:49:50 raspberrypi iotedged[429]: 2018-11-15T14:49:50Z [INFO] - Version - 1.0.4 (2835ac47fbb944ba628a5cfe812ff394768842e0)
Nov 15 15:49:50 raspberrypi iotedged[429]: 2018-11-15T14:49:50Z [INFO] - Using config file: /etc/iotedge/config.yaml
Nov 15 15:49:50 raspberrypi systemd[1]: iotedge.service: Main process exited, code=exited, status=1/FAILURE
Nov 15 15:49:50 raspberrypi systemd[1]: iotedge.service: Unit entered failed state.
Nov 15 15:49:50 raspberrypi systemd[1]: iotedge.service: Failed with result 'exit-code'.
Nov 15 15:49:50 raspberrypi systemd[1]: iotedge.service: Service hold-off time over, scheduling restart.
Nov 15 15:49:50 raspberrypi systemd[1]: Stopped Azure IoT Edge daemon.

I only included part of the output as the remainder is just the same output over and over again.
$sudo iotedge list results in:
An error in the management http client
              caused by: Hyper error
              caused by: an error occured trying to connect: Connection refused (os error 111)

@Joogle could you please open an issue at https://github.com/azure/iotedge/issues? Someone from the IoT Edge team will follow up with you.

Thanks, I opened a new Issue.


Documentation Update for Forseti Quickstart

I removed the "git checkout master" line in order to cut down on the steps for quickstart. The master branch is the default branch when users run the git clone so it felt redundant for a quickstart.
Also added some clarity around needing to run inventory setup first before the scanner and enforcer

Hey Danny, thanks for the PR! With the current instructions in the quickstart, the user will get the dev branch (we recently switched the default branch to dev). Maybe a better command would be:
git clone -b master --single-branch https://github.com/GoogleCloudPlatform/forseti-security

What do you think?

Also wrt the inventory/scanner/enforcer, the quickstart setup sets them up automatically. The next step for the user would be to configure the tools, if they need to.

Wow you guys totally improved the setup! Sorry I hadn't re-run the setup in a while. Ok I'll make changes accordingly.

General comment once this is ready for review, please wrap on 80 characters, thanks!


The node crashes, when switched to mainnet

Hello! Here are logs from the docker:
openmina-node-1  | thread 'main' panicked at ledger/src/proofs/verifiers.rs:167:5:
openmina-node-1  | called `Result::unwrap()` on an `Err` value: Error("invalid type: sequence, expected a hex encoded string", line: 1, column: 10)
openmina-node-1  | note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
openmina-node-1 exited with code 101

If I can get anything else for you, please ask!

Hi @Musickiller, mainnet is not currently supported (there is a mainnet option in the commandline but it is for internal testing, I will remove it in the next release to avoid confusing users).
We’re beta testing OpenMina on devnet. Mainnet support will be enabled once it’s ready for production.


Screenshots missing?

The articles mentions examples being displayed on screenshots several times. However, no screenshot seems to be contained on the page. Is it possible to include them? This seems to be an issue on other similar pages (e.g. CarouselPage), too.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 0c81c589-e81e-d98c-9656-695a3520a12d
Version Independent ID: c235f6f9-47ce-15f3-b4da-cb12e219df92
Content: Xamarin.Forms Tabbed Page - Xamarin
Content Source: docs/xamarin-forms/app-fundamentals/navigation/tabbed-page.md
Product: xamarin
GitHub Login: @davidbritch
Microsoft Alias: dabritch

@Hansonaplane the screenshots should render for you, here's an example:

Is there a chance you had connection issues (or a slow connection)? Our build system validates the image tags and should ensure that our images are always working/rendering.

You are absolutely right, I am sorry. The problem most likely results from my browser (Firefox) on the computer I was using yesterday. It did not affect all articles on MS docs, that's why I did not see the problem resulting from my equipment. Thank you!


Make it easier to reset --  '/deleteuserprofile' not doing the job

I'm trying to debug my bot and if my code has missed context.wait or context.Done, it throws an InvalidNeedException with 'expected Wait, have Done' and even after '/deleteuserprofile', it is still throwing exception.
Overall debugging story is not so smooth.

'/deleteprofile' works. Sorry about that.


Merge all relevant branches into the master

In order to migrate things into the gatsby v1 version that works with IE I need all the changes/branches to be added to the master. At the moment the master is not the deployable version found in the gh-pages branch.
Current branches that need to be reviewed or finalized and submitted as pull requests:

[x] final-style
[x] french-documentation
[x] tables
[x] jsxify-nav
[x] dropdownButtonState
[x] features (branch removed)

All branches merged.


ocamlPackages.{repr,ppx_repr}: init at 0.2.0

Motivation for this change
Required for git >= 3.0.0 and other packages from the MirageOS universe.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build ocamlPackages.repr ocamlPackages.ppx_repr

@GrahamcOfBorg build ocamlPackages.repr ocamlPackages.ppx_repr


Login fallback endpoints are missing

Not sure if this is out of scope, but the UIAA login fallback endpoint and the generic login fallback endpoint are missing. These both return HTML pages that the user can use to complete login.

This could probably be something like
// ...
request {
  #[ruma_api(query)]
  session: String
}
response {
  /// Optional URI to redirect to.
  #[ruma_api(header = "LOCATION")]
  redirect_uri: Option<String>,
  /// HTML to return to client
  #[ruma_api(raw_body)]
  body: Vec<u8>
}

Just a thought...

I don't think we currently support optional headers. But that shouldn't be too hard to support.


Fix NFT token image background color in dark mode

Maybe it's an HTML?
Remember that users can toggle Light/Dark mode on the device and the app will switch modes without restarting, unlike on the simulator

I will check it

When you are back? Not now :)


glBufferData causing lag in GLES3

Godot version:
3.0 to 3.2
OS/device including version:
Windows 10 1909
Radeon VII - Adrenalin 20.1.1
Issue description:
GLES3 projects running on a Radeon VII experience infinitely increasing memory usage that eventually resets upon OpenGL garbage collection and causes a lag spike.
Does not occur in the editor.
The issue arises from glBufferData calls in three key locations:
RasterizerCanvasGLES3::reset_canvas, line 2002
RasterizerSceneGLES3::_setup_environment, lines 2696 and 2704

I swapped my CPU from a Ryzen Threadripper 1950X to a Ryzen 9 3950X. Memory usage still increases indefinitely, but I no longer experience any lag spikes whatsoever. Could it be a bug related to first gen Threadripper's memory controller?

@hoontee maybe it was a caching issue that is solved by a larger CPU cache?

Could also be the case. I'll do some additional testing when I'm able.

Disabled the 2nd CCX which halves the available cache (64MB > 32MB.) Lag spikes still not present.

The lag spikes reappeared today. I added a shader that used a lot of SCREEN_TEXTUREs and had framebuffer_allocation set to 3D Without Effects in the project settings. The spikes went away when I set framebuffer_allocation to 3D.

@hoontee that is extremely odd, the only different between the two options is that "without effects" allocated fewer textures (and can't handle effects). If anything it should be faster and less likely to lead to spikes like what you are seeing.
I have a feeling it is something else that may have changed around the same time (maybe an OS update in the background you didn't notice, Windows 10 is bad for that).
At any rate, please keep us updated if anything changes

Have we tried just calling
glBufferData(GL_UNIFORM_BUFFER, 0, 0, GL_DYNAMIC_DRAW);

before the new glBufferData call? Doubt it is that but just checking.

The lag spikes reappeared today. I added a shader that used a lot of SCREEN_TEXTUREs while framebuffer_allocation was set to 3D Without Effects in the project settings.
The spikes went away when I set framebuffer_allocation to 3D.

When you say 'projects' in the original post, do you mean a blank project? Or was it a specific project?
The cost of using SCREEN_TEXTURE with different framebuffer formats may vary presumably if it has to copy and convert the frame buffer to a texture? (I don't know the _copy_screen code but presumably this must be true if the destination texture is a fixed format)

@clayjohn

I have a feeling it is something else that may have changed around the same time (maybe an OS update in the background you didn't notice, Windows 10 is bad for that).

Tested it again today, results still hold up.
@lawnjelly

When you say 'projects' in the original post, do you mean a blank project? Or was it a specific project?

All projects; blank and not-so-blank.
I do have a small update. These new lag spikes occur much more frequently, about once every four seconds. They also seem to only drop one frame instead of two.
I think this is the same underlying memory issue as before, just in a different area. Switching to GLES2 fixes the new lag spikes as well.

I'll just say that this is a driver issue that can't be fixed. Feel free to reopen if I'm wrong.


Test workflow execution with a test data

Add some small samples to run the full workflow. As input the mapped reads can be used and the outputs are two list of genes and some visualisations. The test data should not exceed 20 MB.
This helps to

test the workflow and if all steps are running properly
configure and set-up own samples based on the provided test samples

The following should be added:

[ ] at least two samples with mapped reads in BAM format; the same genomic region should be used in all samples
[ ] cell type annotations for at least two cell types from the samples
[ ] the relevant subset of the genome annotation
[ ] the samples table samples.tsv
[ ] the configuration file config.yaml

see commit 2b88016373a3d94002b577b7cb10ce3675efb936 for inclusion of two samples and a corresponding github actions CI test.
Should the test data be described in the readme as an example?


Critical coverity fixes.

@thomasgubler Please review quickly. These are the most relevant coverity fixes in one package.

looks good, waiting for the tests
we need a way to auto-link to the coverity issues


[stdlib] Correctly import C Int types on Windows x64

64-bit Windows is an LLP64 architecture; unlike on other 64-bit platforms, long is a 32-bit type. This means we don't have a one-to-one mapping between CInt/Int32, CLong/Int, CLongLong/Int64 like we do on other platforms.
Instead, import long as Int32 and long long as Int64. An alternative would be to import long long as Int; however, that would mean that code would require changes in many cases between 32-bit and 64-bit Windows.
Since there's no direct mapping from a C type to Int, manually create mappings back from Int to long long.
Do the same for unsigned data types.

How important is 32-bit Windows development nowadays? How much better does the interface become if we abandon 32-bit and import long long to Int?

I can't speak to the importance of 32-bit Windows development, but I can say that importing as Int64 doesn't add any friction in my experience porting a large mixed Swift/C/C++ project to Windows. Most of the Windows APIs still deal in 32-bit arguments and return values (e.g. DWORD, which is a uint32_t), which requires explicit conversion anyway.
On the other hand, importing as Int always would break compatibility with other platforms. As one example, Dispatch's time.h header has an int64_t argument for some of its functions (e.g. dispatch_time(dispatch_time_t, int64_t), and the Dispatch overlays assume that's imported as an Int64.

Yeah, I think I'd come down on the long-long-as-Int64 side, since everyone else does that. It stinks about long but I don't think there's much we can do about it. There's always intptr_t if you really meant intptr_t.

@compnerd, opinions?

I think that 32-bit windows is still quite important.  There are still a plethora of packages which are still 32-bit.
I think that using long long as Int64 is reasonable.  I am worried about how this will impact thee rest of the swift SDK.

@compnerd What specifically are your concerns? I’ve encountered no issues in my Swift codebase on Windows - I actually picked these issues up where a few DWORD return values from Windows APIs were getting imported as UInts and had garbage data.

Oh, this will work fine for Windows itself, I just don't like the idea of differences across the targets.  We have the ability to get this right unlike C/C++, so we should take advantage of that.  I think that generalizing your change to all targets is what I would aim for.
Quoting the Swift Language Reference:

Int

On a 32-bit platform, Int is the same size as Int32.
On a 64-bit platform, Int is the same size as Int64.

UInt

On a 32-bit platform, UInt is the same size as UInt32.
On a 64-bit platform, UInt is the same size as UInt64.

It seems like the mapping being recommended here is the most portable approach, which I think we should aim to generalize it to all targets.

What you’re specifically proposing is that long should be imported as a sized type rather than as an Int, correct?
I don’t have strong feelings on that, but my instinct would be that you’d just be introducing another type that differs between systems: rather than long being an Int everywhere apart from Win64, it becomes an Int32 on 32-bit platforms and Win64 and an Int64 elsewhere.
Rather, I think a better solution is just to be explicit (where possible) in the C code: use int where you want an Int32 value, long long where you want an Int64, and NSInteger, size_t, intptr_t etc. if you want an Int.
Passing an Int to a size_t parameter still works in this patch; likewise, a size_t return value is imported as an Int.

I could see how consistency across 64-bit platforms is more useful than consistency across 32-bit and 64-bit versions of the same OS (which is the property we'd maintain with the current version of this patch), but in practice it's way too late to change this on Apple platforms, and it's convenient that all the Apple platforms—a mix of 32-bit and 64-bit environments—use the same Swift type for long.
I think "CLong is Int on LP64 platforms and Int32 on LLP64 platforms" is a reasonable rule, especially with size_t and intptr_t already being understood specially by the compiler everywhere. (Let's hope we don't have any ILP64 platforms to support any time soon.)

Okay, if its not possible to get the consistency across all the targets, then lets stick with the behavior that we have on Windows.  I do think that the && arch(x86_64) is unnecessary, since there is consistency on the types across all of the Windows variants.

@swift-ci please test

Build failed
Swift Test OS X Platform
Git Sha - 01f57fc20503c704c44dee6e44559107abd17d7c

Not having arch(x86_64) would make long Int32 rather than Int on 32-bit Windows, so it would be consistent with Win64 but inconsistent with other 32-bit platforms. It’s not exactly ‘unnecessary’, but I can see an argument for why that’d be better - @compnerd, would that be your preference?

Build failed
Swift Test Linux Platform
Git Sha - 01f57fc20503c704c44dee6e44559107abd17d7c

TBH, I don't have enough of a gut feeling on which would be better here.  I think that tabling that for now is the best approach.  Lets get Windows x86_64 working, and then when restoring the Windows x86 build, we could easily see how painful that would be.

I'm inclined to say long on 32-bit Windows should be Int32 rather than Int so that we have consistency across Windowses, but on the other hand I'm not sure how much that matters in practice. That's also easy to say from over here where I'm unlikely to be building anything for Windows any time soon.

The 'wait and see' approach sits comfortably with me. If it ends up being an issue on 32-bit Windows then it'll only be a three-line change to have 32-bit get the same behaviour as Win64, and I don't think source compatibility is going to be a concern on Windows for quite some time yet.

Sounds like we have quorum.  Could you squash the two commits, since they aren't standalone I believe and I think we should get this in then.

Commits squashed. No changes since the tests passed but feel free to test again if you'd like.

Still need to at least smoke test to be allowed to merge, so
@swift-ci Please smoke test

@swift-ci please smoke test macOS platform


Github Desktop

https://desktop.github.com/
https://github.com/desktop/desktop
https://githubengineering.com/how-four-native-developers-wrote-an-electron-app/
cc @joshaber @shiftkey @niik @donokuda

Looks like Preview.app did something weird when I extracted that PNG from the ICNS.
@donokuda can you hook me up with a better PNG?

@donokuda can you hook me up with a better PNG?

I gotchu


Layout improvements for the new auto-generated resource-level doc

Some early thoughts that were discussed for this were:

[ ] Sticky breadcrumbs
[x] Improving the side-nav
[ ] Reducing the repetition of the language chooser
[ ] Fill in appropriate front matter on each generated page

The header.tmpl that is injected into every page contains just the title in the front-matter right now.

Note that the templates that generate the markdown files are in the pulumi/pulumi repo under pkg/codegen/docs.

Closing this in favor of what's captured in https://github.com/pulumi/docs/issues/2816.


Consolidate logging dependencies

Goals:

Keep using SLF4J API as default in modules for logging API.
baremaps-cli use Log4j2 as logging implementation, and redirects SLF4J, JUL to it.
Parent module provides a similar set of logging implementation for test in any child module.
Remove any logging implementation from modules except for baremaps-cli and test scope.

Open questions:

Should we revisit the logging API used in baremaps: SL4FJ or log4j2-api, since log4j2 is used as logging implementation?

@Perdjesk do you know if the Security Hotspot identified by sonarcloud is a false positive?


Add Livebox Router

Description:
Add Orange Livebox (router)
Sensors for bandwith ans status connection
Device Trackers
Pull request with documentation for home-assistant.io (if applicable): home-assistant/home-assistant.io#10260
Example entry for configuration.yaml (if applicable):
      livebox:
         host:
         port:
         username:
         password:

Checklist:

[X] The code change is tested and works locally.
[X] Local tests pass with tox. Your PR cannot be merged unless tests pass
[X] There is no commented out code in this PR.
[X] I have followed the development checklist

If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.io

Sorry Martin , big bug between the chair and the keyboard.
I took all your remarks and I corrected everything

Many of my earlier comments have not been addressed.

Ok I added all the recommendations of the previous PR 26318

Many of my earlier comments have not been addressed.

This code
tasks = []
for component in COMPONENTS:
tasks.append(
hass.config_entries.async_forward_entry_unload(config_entry, component))
return all(await asyncio.gather(*tasks))
is Not OK . Infinite Loop or Max depth exceed.

is Not OK . Infinite Loop or Max depth exceed.

Please push the code, and I can have a look.

Don't give up ;) I'm waiting for this plugin.
Take care.

this pl

Don't give up ;) I'm waiting for this plugin.
Take care.

the plugin works but they do not want to take it
You can copy the directory to custom_components if you want and it will appear in the Integration menu

@Cyr-ius are you planning to continue here?

yes I would like to continue but what needs to be improved?

@Cyr-ius are you planning to continue here?

yes I would like to continue but what needs to be improved?

The comments need to be addressed and the build needs to pass.


Non-null usage for return types

The examples in the spec suggest that the return type for mutations should be non-nullable. There's two issues with that:
One, operations like updating or deleting a node by an id might not find a matching node, in which case they'll have nothing to return. In this case, we want to return null to indicate that a match wasn't found and the operation wasn't executed.
And two, even operations like creating a node can still fail. If they do, we don't want that to obfuscate any other mutation fields that did resolve successfully. For example, given an operation like
mutation CreateNotes ($a: CreateNoteInput!, $b: CreateNoteInput!){
  a: createNote(input: $a) {
    id
  }
  b: createNote(input: $a) {
    id
  }
}

under the current spec, if either a or b fails, the returned data will be null, even if the other mutation field resolved just fine. That happens because of the way GraphQL handles errors and non-null fields. A field that errors always resolves to null, but a non-null field can't be null, so the parent is nulled instead (or the next highest nullable field, if the parent is also non-null... all the way up to the data root).
I think it would be a good idea to at least make the return types for all mutations nullable.
It's generally good practice to make almost all fields nullable for the same reason -- you might not want one bad field causing your entire query to return null. Going from non-nullable to nullable is also a breaking change if (when) your business rules change and that description is now optional. However, there's something to be said for not having to a bunch of optional chaining on the client side too.

I think it would be a good idea to at least make the return types for all mutations nullable.

Fully agree.
CC @craicoverflow

Nope, I'm happy with this.

Addressed by @danielrearden


[shardformer] support fused layernorm

We should provide support to use fused normalization kernels in shardformer.

Fixed #4112


Add step closure instead of regular log

What does this PR do?
As per title.

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

This issue has been automatically marked as stale because it has not had recent activity. If you think this still needs to be addressed please comment on this thread. Thank you!

Handled in #602


Update pointer example

Pointers example were not working for me.
Update them.

All the commands worked for me when I was in the example4 folder and tried it.
# github.com/ardanlabs/gotraining/topics/go/language/pointers/example4
./example4.go:24:6: cannot inline createUserV1: marked go:noinline
./example4.go:38:6: cannot inline createUserV2: marked go:noinline
./example4.go:14:6: cannot inline main: function too complex: cost 132 exceeds budget 80
./example4.go:39:2: u escapes to heap:
./example4.go:39:2:   flow: ~r0 = &u:
./example4.go:39:2:     from &u (address-of) at ./example4.go:46:9
./example4.go:39:2:     from return &u (return) at ./example4.go:46:2
./example4.go:39:2: moved to heap: u

@ardan-bkennedy but there is no pointers folder at
https://github.com/ardanlabs/gotraining/tree/master/topics/go
Did you run it in this repo? And it did not require -tags OMIT for you?

https://github.com/ardanlabs/gotraining/tree/master/topics/go/language/pointers
I did not need to add -tags OMIT.  That output I provided worked as copied.

Oh, ok. Sorry for the confusion.

THANK YOU for taking the time to report this issue. Please do it again if you find anything else.


eslint error when using vue file extension

ERROR in ./src/App.vue

  ✘  https://google.com/#q=import%2Fextensions  Unexpected use of file extension "vue" for "./components/Dashboard.vue"
  /Users/callumacrae/Sites/samknows/dashboard/src/App.vue:10:25
  import Dashboard from './components/Dashboard.vue';
                           ^

I'm assuming that .vue files should work by default!

Ah sorry, misunderstood the error - I'm not supposed to specify the .vue extension. Please ignore!


New version based on libR-sys 0.6.0?

Are there any plans for releases?

#580
Please do not release a version based on libR-sys 0.5.0.

Any chance to the new release?

+1 for cutting a new release, not only because libR-sys is too outdated, but also because #555  is so critical.
@Ilia-Kosenkov @CGMossa @andy-thomason @multimeric
Any thoughts?

I'd be so thankful if you made a release.
On Thu, 5 Oct 2023, 02.58 Hiroaki Yutani, @.***> wrote:

+1 for cutting a new release, not only because libR-sys is too outdated,
but also because #555 https://github.com/extendr/extendr/pull/555 is so
critical.
@Ilia-Kosenkov https://github.com/Ilia-Kosenkov @CGMossa
https://github.com/CGMossa @andy-thomason
https://github.com/andy-thomason @multimeric
https://github.com/multimeric
Any thoughts?
—
Reply to this email directly, view it on GitHub
https://github.com/extendr/extendr/issues/567#issuecomment-1747870419,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAIDVSHQAQDS7NFP4T65CCLX5YA2VAVCNFSM6AAAAAAZVNQDN2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTONBXHA3TANBRHE
.
You are receiving this because you were mentioned.Message ID:
@.***>

Fine with me. Can we ensure the changelog is up to date so I can better understand the new release?

Please go ahead, but +1 to checking changelog & running full CI once again (if it has not recently been executed). Thanks!

Thanks. The changelog looks good to me. Please let me know if you have any concern.
https://github.com/extendr/extendr/blob/master/CHANGELOG.md

I updated the version to v0.6.0 (https://github.com/extendr/extendr/pull/637). I think this is ready to publish the release now. Please let me know if there's any concern.

I think you should publish it as is.
I looking around, I released that there are a ton of improvements that I didn't make PRs for.
Of course this can be a message to someone else.

Done! Thanks for all your help.
https://crates.io/crates/extendr-api/0.6.0
https://crates.io/crates/extendr-macros/0.6.0
https://crates.io/crates/extendr-engine/0.6.0

THanks!


Wrong argument when invoking

I get an error message saying --path-to-ignore is not a valid argument.
Changing to --path-to-agignore seems to fix the issue.
I'm running ag version 0.31.0.

ag and ripgrep (rg) have standardized on the .ignore file name and thus ag renamed its option to --path-to-ignore recently. I suggest updating to the latest, and I will update the requirements in the readme.


TreeViewItem doesn't update IsSelected in SelectionMode=Multiple when clicking on Checkbox or content

Describe the bug
When you have a TreeView using ItemsSource binding and set to SelectionMode="Multiple", the IsSelected property is not changed when clicking on the checkbox.  Also, the checkbox is not changed when clicking on the item, either.
Steps to reproduce the bug
Steps to reproduce the behavior:

Clone XamlControlsGallery and update Microsoft.UI.Xaml to latest stable release (v2.0.181018003.1)
Go to TreeViewPage.xaml under ControlPages.
Go to third TreeView sample (A TreeView with DataBinding Using ItemSource)
Add SelectionMode="Multiple" to TreeView
Add IsSelected="{x:Bind IsSelected,Mode=TwoWay}" to the TreeViewItem
Add Debug.WriteLine($"Selected changed: {value}"); to the set statement for IsSelected in the code-behind file.  Include using statement for Debug.
Run sample, go to TreeView page, and try clicking on the checkboxes, then the item contents instead.

Expected behavior
The debug output should show Selected changed: true when the checkbox is checked and Selected changed: false when unchecked.  Also, the checkbox should be checked/unchecked when the content of the TreeViewItem is toggled.
Screenshots

Version Info
NuGet package version:
Microsoft.UI.Xaml v2.0.181018003.1
Windows 10 version:

[x] Insider Build (1809)
[ ] October 2018 Update (17763)
[ ] April 2018 Update (17134)
[ ] Fall Creators Update (16299)
[ ] Creators Update (15063)
[ ] Anniversary Update (14393)

Device form factor:

[x] Desktop
[ ] Mobile
[ ] Xbox
[ ] Surface Hub
[ ] IoT

Additional context

I tried some hacky workarounds to see if I could use Multiple mode, but everytime I changed my IsSelected property on my viewmodel to True, the other nodes would immediately all be set to False

I took a quick look at this and the culprit here seems to be the call to ListView's::PrepareContainerForItemOverride call here. When we data bind a collection to the TreeView (using ItemsSource), set the TreeView to SelectionMode:Multiple and set a (two-way) bound IsSelected property in our bound data collection items, this call to ListView's PrepareContainerForItemOverride() sets the IsSelected property of the bound data item to false.
This happens because we set the SelectionMode of the ListView to None in multi-selection mode so there is no conccept of "selecting an item". The ListView will thus set the IsSelected property of the ItemContainer to false which is then reported back to the bound item.
As such, I wrote a quick guard against this call when we are using data binding in SelectionMode::Multiple:
// Don't call ListView's base method when we are using data binding and are in SelectionMode::Multiple
if (!IsContentMode() || !m_isMultiselectEnabled)
{
    __super::PrepareContainerForItemOverride(element, item);
}

With additional logic to handle checkbox selection and updating the data-bound IsSelected properties, using IsSelected property binding to select treeview items now works partly. The issue I'm currently facing is this one:
Suppose we have the following data collection we bind to:
private ObservableCollection<TreeViewItemSource> PrepareItemsSource(bool expandRootNode = false)
{
    var root0 = new TreeViewItemSource() { Content = "Root.0", IsSelected = true };
    var root = new TreeViewItemSource() { Content = "Root", Children = { root0 } };

    // TestTreeViewItemsSource
    return new ObservableCollection<TreeViewItemSource>{root};
}

We have a root item (Root) with one child (Root.0). The child has its IsSelected property set to true and we use data binding like this:
<muxcontrols:TreeView
    ItemsSource="{x:Bind TestTreeViewItemsSource}"
    SelectionMode="Multiple">
    <muxcontrols:TreeView.ItemTemplate>
        <DataTemplate x:DataType="local:TreeViewItemSource">
            <muxcontrols:TreeViewItem
                ItemsSource="{x:Bind Children}"
                Content="{x:Bind Content}"
                IsSelected="{x:Bind IsSelected, Mode=TwoWay}"/>
        </DataTemplate>
    </muxcontrols:TreeView.ItemTemplate>
</muxcontrols:TreeView>

(Code is a slightly modified vesion of the MUXControlsTestApp treeView test code.)
Important here is that root TreeViewItem is not set to be expanded (IsExpanded = false). The expected look is this:

However, the actual behavior is this one:

We first need to actually expand the root item for it to be marked as selected. This is the case because there is no TreeViewItem created for its child (Root.0) yet. A TreeViewItem is only created for the child once we request it to be shown (by expanding its parent). Once it is created, the registered property changed callback for its IsSelected property is called which in turn updates the selection state of its parent and its children (if any). Thus, Root will be set to selected state.
So then, the question I now have...how can we proceed from here? Seems like we currently need the TreeViewItem's children to be able to set the correct selection state on its parent yet we don't have those available when the parent is not in an expanded state initially.

I spent the whole day wrapping my head around what seems to be the same issue as this one until I finally found this issue.
I am also using databinding and the selection state seems to be very unreliable - usually only one checkbox is selected even though multiple should be ticked.
Would be awesome if this could be fixed at some point - looks like the issue is already pretty old. If you need a repro project, let me know and I can make one.
<muxc:TreeView x:Name="treeView" ItemsSource="{x:Bind odFolders}" Expanding="OneDriveFolderView_Expanding"
               CanDragItems="False" CanReorderItems="False" SelectionMode="Multiple">
    <muxc:TreeView.ItemTemplate>
        <DataTemplate x:DataType="local:ODFolder">
            <muxc:TreeViewItem ItemsSource="{x:Bind Children, Mode=OneWay}" IsSelected="{x:Bind IsChosen}"
                          IsExpanded="{x:Bind IsExpanded}" Content="{x:Bind DisplayPath}" Padding="0,0,8,0"
                          HasUnrealizedChildren="{x:Bind HasUnrealizedChildren, Mode=OneWay}"/>
        </DataTemplate>
    </muxc:TreeView.ItemTemplate>
</muxc:TreeView>

@Felix-Dev's observation is correct, the rudimentary cause of this problem is the underlying ListView's selection mode being set to none.  To fix the issue we probably need to either make changes in ListView to make it comply with TreeView or swap out the underlying implementation using ItemsRepeater.
The current workaround is using selection Apis without data binding.

Thanks, that workaround seems to work. I can still use databinding, but have to manually add the item to the SelectedItems list

Thanks, that workaround seems to work. I can still use databinding, but have to manually add the item to the SelectedItems list

@tipa What do you mean by "I can still use databinding"? Because when I do IsSelected="{x:Bind IsChecked, Mode=TwoWay}" IsChecked does not gets updated whenever I make changes on the UI.
Please don't get me wrong, I understand that I need to modify SelectedNodes to reflect UI changes from the code, but I want to have information in my ViewModel about IsSelected changes that were made on UI.
Did you have any luck to have this working?
This is not the case for IsExpanded (IsExpanded="{x:Bind IsOpened, Mode=TwoWay}"). That works as expected.
@kaiguo
Sample project where the issue occures.

This is still a issue 17.02.2022. Please fix!

It is annoing that I can make a workaround to databind the threeview this easy:
`
<TreeView.ItemTemplate>

<CheckBox IsChecked="{x:Bind ErValgt,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
                              Content="{x:Bind KategoriNavn}"/>
                </TreeViewItem>
            </DataTemplate>
        </TreeView.ItemTemplate>
    </TreeView>`

` public class DtoKategoriTre : ParentTypes.StandardPropertyChanged
{
private bool? erValgt;
    public bool? ErValgt
    {
        get => erValgt;
        set
        {
            if (value == erValgt)
                return;

            erValgt = value;
            NotifyPropertyChanged();

            if (UnderKategorier != null && value != null)
            {
                foreach (var rad in UnderKategorier)
                    rad.ErValgt = value;
            }

            if (DtoParent is { UnderKategorier: { } })
            {
                if (DtoParent.UnderKategorier.All(a => a.ErValgt != null && (bool)a.ErValgt))
                    DtoParent.ErValgt = true;
                else if (DtoParent.UnderKategorier.All(a => a.ErValgt != null && !(bool)a.ErValgt))
                    DtoParent.ErValgt = false;
                else
                    DtoParent.ErValgt = null;
            }

        }
    }

    public string KategoriNavn { get; set; } = default!;

    public int KategoriCode { get; set; } = default!;

    public DtoKategoriTre[]? UnderKategorier { get; set; }

    public DtoKategoriTre? DtoParent { get; set; }
}`

This issue is causing a big roadblock for my ongoing project... please fix it

How is this still an issue after four years? please fix it.

Here is the workaround I came up with:
I have a class Entity.cs that my make up the nodes of my treeview:
public abstract class Entity : ObservableRecipient
    {
        private bool _selected = false;
        public bool Selected { get { return _selected; } set { SetProperty(ref _selected, value); } }

        private string _name;
        public virtual string Name { get { return _name; } set { SetProperty(ref _name, value); } }

        public int ID { get; set; }
        public virtual ObservableCollection<Entity> Children { get; set; } = new ObservableCollection<Entity>();
    }

Then in View.xaml:
<TreeView
      x:Name="EntitiesTreeView"
      ItemsSource="{x:Bind ViewModel.Entities, Mode=OneWay}"
  />

View.xaml.cs:
    public sealed partial class EntitiesTreeViewComponent : UserControl
    {
        public EntitiesTreeViewViewModel ViewModel { get; }

        public EntitiesTreeViewComponent()
        {
            ViewModel = App.GetService<EntitiesTreeViewViewModel>();

            this.InitializeComponent();

            DispatcherQueue dispatcherQueue = DispatcherQueue.GetForCurrentThread();
            Thread CheckingThread = new Thread(() => CheckThread(dispatcherQueue));
            CheckingThread.Start();
        }

        private async void CheckThread(DispatcherQueue dispatcherQueue)
        {
            if (dispatcherQueue != null)
            {
                while (true)
                {
                    await Task.Run(async () =>
                    {
                        await dispatcherQueue.EnqueueAsync(() =>
                        {
                            if (EntitiesTreeView.SelectedItems != null)
                            {
                                Entity root = ((ObservableCollection<Entity>)EntitiesTreeView.ItemsSource).FirstOrDefault();

                                if (root != null)
                                {
                                    List<Entity> entities = EntitiesTreeView.SelectedItems.Cast<Entity>().ToList();
                                    SetItemSelected(root, entities);

                                    ViewModel.HasSelected = entities.Count > 0;
                                }
                            }

                        });

                    });

                    await Task.Delay(100);

                }
            }
        }

        private void SetItemSelected(Entity root, List<Entity> selectedItems)
        {
            if (selectedItems.Count > 0)
            {
                root.Selected = selectedItems.Where(x => x.ID == root.ID && x.Name == root.Name).Any();

                List<Entity> rest = selectedItems.Where(x => x != root).ToList();

                foreach (Entity child in root.Children)
                {
                    SetItemSelected(child, rest);
                }
            }
        }
    }

ViewModel.cs:
    public class EntitiesTreeViewViewModel : ObservableRecipient
    {
        public ObservableCollection<Entity> Entities { get; set; } = new ObservableCollection<Entity>();

        private bool _hasSelected;
        public bool HasSelected { get { return _hasSelected; } set { SetProperty(ref _hasSelected, value); } }
    }

This spins up a thread that constantly checks what items are selected, and updates a selected prop on what you are binding to. It's inefficient and destroys the purpose of using MVVM, but the best I could come up with, because the selection events also don't work / aren't comprehensive.

Anyone fix this?

Here's a workaround sample app just in case.

Bump, is anyone looking into this issue or has it gone stale? @jevansaks

Same here, broken, but with UWP almost done, not surprising.

Using WinUI3. Same issue... is this not a key component to a working tree view using MVVM? any status update?

Focus might work
treeViewItem.Focus();

The verification found that the above issue is a type error; Should the binding type be bool? Instead of using bool

In addition, SelectionChanged is not fired when SelectedItems is changed in multiple selection mode.

WinUI 3 now has a SelectionChanged event we can use. So, at least there's that.

The IsSelected property with Mode=TwoWay is still not working. As a "solution," I set the SelectedItems property in the Loading event of the TreeView, but my TreeView has several hierarchy levels.
Item 1
Item 1.1
Item 1.1.1
If item 1.1.1 is in the list of selected items, it does not render in the view. It would be nice if SelectedItems had both set and get, rather than just get. Is this something they are going to fix in the short term?


BUG - copilot login for the first time, does not reconize node update up to 16+

I am trying to setup copilot for the first in my emacs v28.1. After adding the elisp code ~/.emacs.d/myinit.org, evaluating the code block, and next attempting to execute the step M-x copilot-login, it display the error message:
user-error: Node 16+ is required but found 12.22 [2 times]
In the first occurrence of the error, I checked and indeed was the case of under version; but even after I updated to the version v16.20.1; it still persist displaying the error.
My guess:
It seems some global variable was set, and its state pointing the version or the executable was not updated; persisting triggering the error even after the update. Probably, something related to the variable copilot-node-executable,  that it is not properly captured after the updated during the M-x copilot-login step.
My workaround:
I did the following after the elisp code that was to setup copilot:
(setq copilot-node-executable "<my-base-path>/.nvm/versions/node/v16.20.1/bin/node")

This is working for me.
Maybe adding in the readme.md documentation this step, or fixing the copilot.el would be a nice idea for others avoiding this bug. I hope the issue helps! Thanks in facilitating this awesome tool in emacs, great job!

The default value of copilot-node-executable is either node or node.exe, depending on the platform. It is used to directly locate the node executable, as shown in this link: https://github.com/zerolfx/copilot.el/blob/9694981880b9fed7ced4ccff4e60fc072290c9a4/copilot.el#L142.
Therefore, the behavior you described seems strange because nothing should be cached. I suggest evaluating (locate-file "node" exec-path) in your Emacs to find out the reason.
I will update the readme to include copilot-node-executable in the setup instructions.


not working

This is actually not a valid template, please choose Bug Report!
I have the malware in my dist file, but when i try to open it it doesnt work

man actually used the "this is not a valid template" template. Also I need more information like errors, etc. I would recommend you to choose "Bug Report" this time and make a new issue. It will guide you through the process of providing us with useful information :)


LIBERO Problem

(openvla) wangyi@amax:/data/wy/znz/openvla$ python experiments/robot/libero/run_libero_eval.py \

--model_family openvla
--pretrained_checkpoint openvla/openvla-7b-finetuned-libero-spatial
--task_suite_name libero_spatial
--center_crop True
2024-09-16 15:15:04.726175: I tensorflow/core/util/port.cc:113] oneDNN custom operations are on. You may see slightly different numerical results due to floating-point round-off errors from different computation orders. To turn them off, set the environment variable TF_ENABLE_ONEDNN_OPTS=0.
2024-09-16 15:15:04.777282: E external/local_xla/xla/stream_executor/cuda/cuda_dnn.cc:9261] Unable to register cuDNN factory: Attempting to register factory for plugin cuDNN when one has already been registered
2024-09-16 15:15:04.777331: E external/local_xla/xla/stream_executor/cuda/cuda_fft.cc:607] Unable to register cuFFT factory: Attempting to register factory for plugin cuFFT when one has already been registered
2024-09-16 15:15:04.778716: E external/local_xla/xla/stream_executor/cuda/cuda_blas.cc:1515] Unable to register cuBLAS factory: Attempting to register factory for plugin cuBLAS when one has already been registered
2024-09-16 15:15:04.786655: I tensorflow/core/platform/cpu_feature_guard.cc:182] This TensorFlow binary is optimized to use available CPU instructions in performance-critical operations.
To enable the following instructions: AVX2 AVX512F AVX512_VNNI AVX512_BF16 AVX_VNNI AMX_TILE AMX_INT8 AMX_BF16 FMA, in other operations, rebuild TensorFlow with the appropriate compiler flags.
2024-09-16 15:15:05.705885: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Could not find TensorRT
[robosuite WARNING] No private macro file found! (macros.py:53)
[robosuite WARNING] It is recommended to use a private macro file (macros.py:54)
[robosuite WARNING] To setup, run: python /home/wangyi/miniconda3/envs/openvla/lib/python3.10/site-packages/robosuite/scripts/setup_macros.py (macros.py:55)
[] Instantiating Pretrained VLA model
[] Loading in BF16 with Flash-Attention Enabled
:283: DeprecationWarning: the load_module() method is deprecated and slated for removal in Python 3.12; use exec_module() instead
Loading checkpoint shards: 100%|███████████████████████████████████████████████████████████████████████████████████| 4/4 [00:01<00:00,  2.87it/s]
WARNING: No local dataset_statistics.json file found for current checkpoint.
You can ignore this if you are loading the base VLA (i.e. not fine-tuned) checkpoint.Otherwise, you may run into errors when trying to call predict_action() due to an absent unnorm_key.
Loaded model: <class 'transformers_modules.openvla.openvla-7b.e5822cc24559b04e532f49b1c1ddb64376c1a485.modeling_prismatic.OpenVLAForActionPrediction'>
Traceback (most recent call last):
File "/amax/data/wy/znz/openvla/experiments/robot/libero/run_libero_eval.py", line 286, in
eval_libero()
File "/home/wangyi/miniconda3/envs/openvla/lib/python3.10/site-packages/draccus/argparsing.py", line 203, in wrapper_inner
response = fn(cfg, *args, **kwargs)
File "/amax/data/wy/znz/openvla/experiments/robot/libero/run_libero_eval.py", line 117, in eval_libero
processor = get_processor(cfg)
File "/amax/data/wy/znz/openvla/experiments/robot/openvla_utils.py", line 77, in get_processor
processor = AutoProcessor.from_pretrained(cfg.pretrained_checkpoint, trust_remote_code=True)
File "/home/wangyi/miniconda3/envs/openvla/lib/python3.10/site-packages/transformers/models/auto/processing_auto.py", line 342, in from_pretrained
raise ValueError(
ValueError: Unrecognized processing class in openvla/openvla-7b-finetuned-libero-spatial. Can't instantiate a processor, a tokenizer, an image processor or a feature extractor for this model. Make sure the repository contains the files of at least one of those processing classes.

Hi @LemonZhong,
I have tried rerunning the command you pasted above but am not encountering any errors on my end. Can you double check that the fine-tuned OpenVLA checkpoint has been downloaded to your Transformers cache directory correctly? It should be about ~15 GB total and contain files such as config.json, preprocessor_config.json, tokenizer_config.json, etc. In addition, could you check that you have the latest version of the main branch?
-Moo Jin

I have solved the problem, thanks! Because I have used VPN to download the ckpt and transmit it to the remote server, I need to have a different location to load the ckpt. And now I have solved it.


[Q] Is it possible to display full image on navigator when the tile is clipped

Is there a way to clip only the image in the main viewer but keep the full image in the navigator?

Looks like there's no feature for that yet, but it seems like a nice feature idea.
Here's where it happens:
https://github.com/openseadragon/openseadragon/blob/d3ef7674874ce5b5fd5d52816acbe4708e24c44a/src/navigator.js#L473
The simplest workaround would be to do this sometime after the viewer has loaded (or maybe after the navigator has loaded... I'm not sure the timing). I'd try putting it in an "open" event handler on the viewer.
viewer.navigator.world.getItemAt(0).setClip(null);

That's not very robust, though; if you're changing items in your viewer, you'll have to always remember to add that afterwards. A more comprehensive version would be to monkey-patch _matchBounds like so:
var originalMatchBounds = OpenSeadragon.Navigator.prototype._matchBounds;

OpenSeadragon.Navigator.prototype._matchBounds = function(myItem, theirItem, immediately) {
    originalMatchBounds.call(this, myItem, theirItem, immediately);
    myItem.setClip(null);
}

Of course, that may or may not stand the test of time. The best would be to add this as a real feature, like a new option when setting up the viewer. If you're interested in making a PR for that, I'm happy to point you in the right direction. Otherwise, hopefully someone else will take an interest!


The first implementation of import ... from

This is the first batch of support for import .. from '<filename>'. I had to keep balance between hacking it quickly and making it not too hacky. ~This PR only has happy path tests.~ The construct itself is working now. ~But we would need a follow up PR that adds tests for cyclic imports and other error processing~.
Now it is working with parse but will probably fail with run, test, and REPL.
Also, we have to update the docs :)

[x] Tests added for any new code
[x] Entries added to the respective CHANGELOG.md for any new functionality
[ ] Feature table on README.md updated for any listed functionality

Posted my last batch of pending comments and removed my change request.

Not to block, but to record my uncertainty for the record, and maybe so I'd learn the motivation for the approach here:
The general thing I don't understand about this PR's approach is why we cannot approach the problem here in a shape a bit more like this:

Do a pass to recursively phase1 parse all files imported by file reference
in the process, rewrite relative file imports paths to absolute paths
Extend the phase1 result with a mapping absFilePath -> IR
Use this structure for dependency ordering (this part likely using the imperative algorithm, but only for benign state, without need for I/O. This is really just a special case of topological sorting iiuc?).
Pass this ordered collection of modules on for module resolution.

The main benefits of this approach to my mind are

Easier to reason about the separate operations.
Don't need to mix file I/O into the relatively subtle dep resolution code

I have addressed most of the comments, also renamed the parsing phases. It took me a bit longer than expected. But imports seem to work as expected now. Very exciting feature 🔥
The only annoying thing is that REPL does not use the current shell directory to load imports. Postponed for #829.
Merging this PR to unblock @bugarela and @thpani on the IBC work.


How do i change the npc's model

Hi,
I was wondering if we can change the npc's model.

Hello,
Any ideas?

Thank you very much!
What about motorcycle?
How can I change it to the motorcycle model?
Thank you!

Great!!
Thank you very much!


Support for external tables (databricks)

Hi, I really like this package! Unfortunately it doesn't seem to support creating a source from external tables (e.g. Databricks Lakehouse).
I looked at the generate_source.sql` code, which calls dbt_utils.get_relations_by_pattern to create a list of tables. Unfortunately that only seems to work for relational databases(?). We are using the dbt-external-tables package to create our external (hive) tables, but it requires manually putting in all the source information and this package would be very helpful.
Do you think it would be a lot of work to make it work for external tables?

+1 for Redshift Spectrum external tables 🙏

Commenting to reopen... this would be so valuable (+1 on Redshift Spectrum)

+1 for databricks. This would be great


Storefront links to icons on storybook broken

Storybook has been updated and there are new links to the icons. All links in storefront need updating.
https://eds.equinor.com/0b0c666ab/p/196746-resources
https://eds.equinor.com/0b0c666ab/p/347dd6-system-icons/b/25520a
https://eds.equinor.com/0b0c666ab/p/347dd6-system-icons/b/7568e4

Links are updated and made a new release.
If you can have a second look @BeckyBrekke  :)

@lucasveil 2 were fixed but the one on the resources page was broken (storybook - icons). I fixed it and just made a new release. Do you want to check now?

Yep works for me @BeckyBrekke :)


Configuring Radium

Little history first: originally, Radium had no configuration. Then we introduced a global setter for the matchMedia function. Not liking the global state, I changed matchMedia to be configured via an options hash passed to Radium({..}), and proposed wrapping the result in a module (see the docs). After actually trying this same thing (but with userAgent instead), I realized this approach doesn't really work for things you only set once (matchMedia), and doesn't work at all for things you need to set on every request, like userAgent. For example:
let myMatchMedia = window.matchMedia;
function setMatchMedia(newMatchMedia) {
  myMatchMedia = newMatchMedia;
}

function ConfiguredRadium(component) {
  return Radium({
    matchMedia: myMatchMedia,
  })(component);
}

Looks fine on the surface, right? Wrong. The Radium function, or ConfiguredRadium in this case, is only called once per component, when the module is loaded. So they only way to make setMatchMedia work is to call it before any of your components that use Radium are loaded. Ugh.
Turns out there are three ways you might want to configure Radium, split into groups by when and how often they are configured:

Static configuration, e.g. changing the default plugins for all components
Static configuration per component, e.g. adding a single plugin or tweaking a single setting for an individual component
Dynamic configuration that changes (say per request when rendered server side), e.g. userAgent

The existing configuration mechanism works fine for 1 and 2, but completely fails at 3. In fact, it isn't even possible, since Radium is only configured once per component!
I'm open to suggestions for solving this, but here is my idea so far:

Keep the existing mechanism for static configuration, except move it to Radium.configure() so it is more explicit. We also need to make sure the configured object that is returned has all the statics you expect on Radium, so you don't need to import ConfiguredRadium and Radium; you should just be able to replace Radium. I'm not set on the rename, but we definitely need the statics copied.
Create Radium.Container that passes dynamic config down the tree via context. Container would be optional, only needed if you have dynamic config. Could even be named Radium.DynamicConfigContainer or something crazy. Context would allow us to pass configuration down at render-time as opposed to module load time.

Thoughts?

So, without resorting to global state, the only way to pass data down the tree transparently is context, the same mechanism used in React Router and Redux. My current thoughts are:

Eliminate the existing configuration via @Radium({...}). Just use @Radium everywhere
Any component using Radium can take a special prop, radiumConfig. radiumConfig will contain everything the existing config has, plus dynamic things like userAgent for server-side rendering.
If the radiumConfig prop is present, it will also transfer it down the component tree via context

This should keep the API simple, no more ConfiguredRadium nonsense, and cover all of the use cases above.

Thought about this some more, and realized that the userAgent also needs to get passed to <Style> and keyframes. <Style> is easy, since it is in the component tree and can just grab it from context. keyframes is a bit trickier. Right now it is usually called once at module initialization. Instead, I propose that keyframes returns an opaque object that Radium resolves at runtime to an animation name, e.g. {animationName: Radium.keyframes({...})}. That way we can use the userAgent to prefix the keyframes.
I also propose that we merge PrintStyleSheet, Style, the keyframes injected style, and media queries (which need to be in CSS for SSR). Instead of having all these different mechanisms, you will add Radium to the root of your app, render Radium.Stylesheet once, and all the different things that need CSS, including selectors like :visited, can render to this special stylesheet by passing data up through context. This would make everything in Radium work seamlessly using server side rendering, without any discrepencies.

I have been struggling with server side rendering as was considering switching away from Radium because of it. Your proposed solutions sound good to me :+1:

Yes, we'll have the SSR story cleaned up soon.
On Sat, Nov 7, 2015 at 1:23 AM Brett Ausmeier<EMAIL_ADDRESS>wrote:

I have been struggling with server side rendering as was considering
switching away from Radium because of it. Your proposed solutions sound
good to me [image: :+1:]
—
Reply to this email directly or view it on GitHub
https://github.com/FormidableLabs/radium/issues/397#issuecomment-154668290
.

I've landed the changes for this, but haven't yet fixed keyframes. I'm happy to do an interim release, though.

:+1: interim release.

Done, and released.


createnetwork: Show tabs only when supported networks are determined

Fixes the issue when L2 network is selected even though isolated network is the first tab
Basic Zone

Advanced zone

@blueorangutan package

@blueorangutan package

@davidjumani a Jenkins job has been kicked to build primate packages. I'll keep you posted as I make progress.

Packaging result: :heavy_check_mark:centos :heavy_check_mark:debian :heavy_check_mark:archive.
QA: http://primate-qa.cloudstack.cloud:8080/client/pr/901 (JID-3756)


featured SubQuery

Hello Polygon team,
We are submitting this contribution with the intention of incorporating SubQuery into your project documentation. As you can observe, we have already prepared the initial project. Kindly inform us if any adjustments are necessary on our part.

Hi @bgodlin just a few stylistic suggestions. Please can you commit and we will go ahead and publish. Thank you.


NOT WORKING

plz tell how to install in detailed instructions and doesnt it have a code to install andn tampermonkey
if not just give how to make it work

This is not bot, this is library for agar.io protocol. If you know Node.JS/JavaScript language then you install it via npm install agario-client, read documentation https://github.com/pulviscriptor/agario-client/blob/master/README.md and write your own code.
If you don't then you're in the wrong place.

i did make one but only normal are coming for facebook it says failed to get token

Dude.. how often does i have to say it?? ALL LEAKED ACCOUNTS ARE BANNED FROM $MONEY$CLIP$

can you help me make it work at least trying with my one account

Set the cookies of YOUR facebook account in and then log off ur Account from agario and then run the feeder

not working do you have your script that is working

or can you say how to get  token
for agario fb

@kurama129 you dont have to acces the token, just get COOKIES!!!


how to remove ollama from macos?

When deleting an application from the list, the error "ollama is still running" is displayed
If you terminate processes from system monitoring, they start again immediately and the application itself cannot be deleted either.

When deleting an application from the list

What list?
Have you quit Ollama via the menu bar icon first?

When deleting an application from the list

What list?
Have you quit Ollama via the menu bar icon first?

Of course

Some people think the app is just an installer and don't realize that it remains in the menu bar.
You still didn't say what list you are removing it from.

Some people think the app is just an installer and don't realize that it remains in the menu bar.
You still didn't say what list you are removing it from.

finder - programs - move to trash
and
system monitoring - delete process

To remove it completely, you also need to remove the symlink and app files:
$ rm /usr/local/bin/ollama
$ rm -rf ~/Library/Application\ Support/Ollama

Most important of all you'll want to get rid of ~/.ollama as that's where all the huge model files are.
rm -rf ~/.ollama

$ rm /usr/local/bin/ollama
$ rm -rf ~/Library/Application\ Support/Ollama

When I try to remove it it says "Command not found"

I installed Ollama on an M2 Macbook. There were several files to remove, at least in my case. This is what I did:
find / -name "*ollama*" 2>/dev/null - this command will look for Ollama in your system. It might take a while to execute. Once you have the output skim through it and ensure you're not removing something you shouldn't. Then remove the files from the output using rm -rf.
Alternatively, if you use something like Warp terminal you can just ask their AI assistant to do the work for you. I hope it helps.

Have you quit Ollama via the menu bar icon first?

There isn't one on my machine.

rm -rf ~/.ollama

that's dangerous! especially with tons of AI related apps

@OpeyemiSanusi Dangerous? How so? Other AI related apps shouldn't be saving anything in ~/.Ollama.

@OpeyemiSanusi Dangerous? How so? Other AI related apps shouldn't be saving anything in ~/.ollama.

my bad! i quoted the wrong reply. I want referring to the comment that suggested using find / -name "*ollama*" 2>/dev/null because that would all files with "ollama"


variant/genotype integration

adds integration of vcf files into the io module

Coverage decreased (-7.8%) to 72.402% when pulling cee1f82460a54cded272386a72cdafee5bb66c9c on abhim00:mangoupdate1 into ad046a8ae51aa3f297305e74976896b0d2a61628 on bigdatagenomics:master.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/mango-prb/880/
Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/mango-prb/881/
Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/mango-prb/894/
Test FAILed.


Send a document as content data using Psr7 stream.

All credit for this PR goes to @pavlyuts
Sorry it took so long!
This is basically a copy of #329 and closes #325.
Copying the original PR message here to explain:

Makes it possible to send all kind of files from memory, not from file on disk by usage of PSR-7 streams.
All we need is to create PSR-7 stream and pass it as a part of $data to any of the sendXXXX methods. The patch fixes exec method to handle request as multipart for both cases: file resource and stream.
The key should be set in accordance to the API call type: document, photo, audio, etc. using the corresponding sendDocument, sendPhoto, sendAudio, etc. methods.
PSR-7 metadata uri must contain filename.
Code example:
$chat_id = 1234;
$caption = 'File send from memory!';
$stream = \GuzzleHttp\Psr7\stream_for(
    'File contents here!',
    ['metadata' => ['uri' => 'filename.ext']]
);

$data = [
    'chat_id' => $chat_id,
    'caption' => $caption,
    'document' => $stream,
];

Request::sendDocument($data);

The example will send as document the file named 'filename.ext' containing 'File contents here!'.

Nice work, thanks!


ISPN-10975 Transactional cache will slow down the expiration reaper

https://issues.redhat.com/browse/ISPN-10975

Merged, thanks


position info should be a debug msg or there should be a way to turn it off

position info is popped out every second line. There should be a way to turn it off
Actual Behavior
[12:00:43] {'distance_unit': '', 'distance': '', 'current_position': (40.726170875463126, -74.01135689922691), 'last_position': (40.726285850679226, -74.0113399969404)}
[12:00:44] Moving towards pokestop Spy Stations - 0.15km
[12:00:44] {'distance_unit': '', 'distance': '', 'current_position': (40.726098411318034, -74.01140421413263), 'last_position': (40.726170875463126, -74.01135689922691)}
[12:00:46] Moving towards pokestop Spy Stations - 0.14km
[12:00:46] {'distance_unit': '', 'distance': '', 'current_position': (40.72599170898951, -74.01142418915855), 'last_position': (40.726098411318034, -74.01140421413263)}
[12:00:48] Moving towards pokestop Spy Stations - 0.12km
[12:00:48] {'distance_unit': '', 'distance': '', 'current_position': (40.72589191219117, -74.0114452929735), 'last_position': (40.72599170898951, -74.01142418915855)}
[12:00:52] Moving towards pokestop Spy Stations - 0.11km

#3484, same "issue" 👍


Reimport a Deleted Computer

We deleted a Computer without "thinking first" with the edit button.
We can't get the machine to report bck in munkireport.
Script is running fine on the machine.
Is there any cache entry somewhere we'd have to reset so the machine reports back again ?
Or is there anything obvious I'm missing out ?
Any help would be super great.
O.

Forget about it. just reinstalled munkireport and all is fine.
O.


Vivaldi 6.9.3447.46 x86 for Win 7 does not run on 8.1 (x64).

Vivaldi 6.9.3447.46 x86 for Win 7 does not run on 8.1 (x64). I tried to run it as an administrator - the result is similar.

The requirements require need VxKex 1.1.1+, but it does not download - the browser blocks the download because it considers the file dangerous. Plus Comodo IS also responding to this file. Is this how it should be? I have never encountered this software.

I am just considering the same problem. VxKex is not a virus, unless to had downloaded from shady site.
Vivaldi 6.9 x86 nor x64 works on Win 8.1. You can use 6.8.3381.x for now.

I didn't see version 6.8.3381.x here.
Here I found the vivaldi-portable version-6.6.3271.61.x64-win8.7z, but it does not start either.

Maybe some of this?
https://github.com/adeii/supermium-portable/releases/download/C125/vivaldi-portable-win32-6.7.3329-35-win7.7z
https://github.com/adeii/supermium-portable/releases/download/C125/Vivaldi-portable-win64-6.7.3329.39-win8.7z
https://github.com/adeii/supermium-portable/releases/download/v6.5/vivaldi-6.8.3381.44-x86-win7.7z

Hello @Someone-G ,
Can you try this version of Vivaldi on Win 8.1?  No VxKex this time!
https://github.com/adeii/supermium-portable/releases/download/v6.9/Vivaldi-7.0.3495.11-x86-Win7.7z

Hello @Someone-G , Can you try this version of Vivaldi on Win 8.1? No VxKex this time! https://github.com/adeii/supermium-portable/releases/download/v6.9/Vivaldi-7.0.3495.11-x86-Win7.7z

Hello. It doesn't start. I tried to run it as an administrator - there is no effect.

Did you tried to run it via vivaldi.bat or vivaldi.exe --no-sandbox ?
At first I started vivaldi.exe - it didn't work.
Then I created a shortcut for vivaldi.exe and in the line "Object" (file path) I added the key "--no-sandbox" - everything worked. The browser is working stably. There was not a single problem.

Thanks for reply and good news!
Also add "--test-type" to hide popup-bar about low security without sandbox.


Failed to compile 'rustc-std-workspace-alloc'

Hello! With:
$ cat .cargo/config
[target.aarch64-unknown-linux-musl]
linker = "aarch64-openwrt-linux-gcc"
rustflags = ["-C", "target-feature=-crt-static"]

and
$ cat Xargo.toml
[dependencies]
std = {}

Trying to build for aarch64-unknown-linux-musl gives:
$ xargo build --target aarch64-unknown-linux-musl --release
    Updating crates.io index
   Compiling libc v0.2.58
   Compiling compiler_builtins v0.1.16
   Compiling core v0.0.0 (/home/master/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libcore)
   Compiling cc v1.0.37
   Compiling unwind v0.0.0 (/home/master/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/src/libunwind)
   Compiling rustc-std-workspace-alloc v1.0.0
error[E0463]: can't find crate for `std`

error: aborting due to previous error

For more information about this error, try `rustc --explain E0463`.
error: Could not compile `rustc-std-workspace-alloc`.
warning: build failed, waiting for other jobs to finish...
error: build failed
error: `"cargo" "build" "--release" "--manifest-path" "/tmp/xargo.Snvllf1eSkON/Cargo.toml" "--target" "aarch64-unknown-linux-musl" "-p" "std"` failed with exit code: Some(101)
note: run with `RUST_BACKTRACE=1` for a backtrace

Any idea? Thanks

Are you using the latest version of xargo? It looks like there's a missing [patch] section, but that should be autogenerated.

Yes, I am:
$ xargo --version
xargo 0.3.13
cargo 1.37.0-nightly (545f35425 2019-05-23)

The latest version is 0.3.14 actually.

I see we didn't do a release on GitHub. Also I think I pushed the version tag to the wrong remote, so that's fixed now. @japaric @RalfJung what's the release process?

Yes, it seems to be working now. I did check https://github.com/japaric/xargo/releases to see what the latest release is though. Thank you!

@japaric @RalfJung what's the release process?

I have no idea, I have never released any Rust project.^^

Oh I think it's just a matter of creating a tag, creating the release on GitHub, and then CI will automatically build & add the binaries!

Wow, nice.
I am not sure though if we really want to support distributing outside of crates.io? I mean I am fine with it if you are doing all the work. ;) But @iulianR I am wondering why you don't just cargo install xargo?

I did cargo install xargo but never got around to using it and haven't cargo install xargo --force since then.


Fix hyperlinks in Ingress concept

This PR fixed the hyperlink for spec, flag, and recommended under The Ingress resource in the Ingress  docs.
Fixes #43105

Hi @nate-double-u @tengqm
PTAL!

Ahm.. 🤔
Why this PR not showing cncf-cla label, Maybe this will work
/check-cla

/approve

As this PR is approved, anyone can give a lgtm label if it seems good to you?

/lgtm
/label tide/merge-method-squash


Arc 2112 catch 405 on other jira api 2

What's in this PR?

Try/catch 405 for other similar jira api as well.
Merge into the previous logic to convert it into 404 instead of silently mark it as success
Modify the backfill to accept 404 as a success

Why
That try/catch 405 works well on the devinfo, would like to apply it to other jira api.
Added feature flags
N/A
Affected issues
N/A
How has this been tested?
Unit test.
Whats Next?

Will raise another one.


Convert to ES module

Convert to an ES module for performance gain with tree-shaking.
Requires:

[x] igorskyflyer/npm-upath#2,
[x] igorskyflyer/npm-unc-path#3,
[x] igorskyflyer/npm-is-rootdir#2,
[x] igorskyflyer/npm-str-is-in#4,
[x] igorskyflyer/npm-pathexists#1,
[x] igorskyflyer/npm-recursive-readdir#19,
[x] igorskyflyer/npm-valid-path#9,
[x] igorskyflyer/npm-windev#2,
[x] igorskyflyer/npm-chars-in-string#2,
[x] igorskyflyer/npm-zep#27

being done first.

Previously referenced issues cannot be resolved until the new release of Modern Module.

Previously referenced issues cannot be resolved until the new release of Modern Module.

Stable enough for production. 🎉💃

Due to issues present when using ES modules in Visual Studio Code extension, implement a cross-over solution until the issues are resolved.

Due to issues present when using ES modules in Visual Studio Code extension, implement a cross-over solution until the issues are resolved.

See microsoft/vscode#130367.

It's not possible to use ES modules in Visual Studio Code extensions, closed until further notice.


[Publisher][UI] The action buttons should be disabled if a Revision is selected.

Describe your problem(s)
Revisions are read-only view of an API. In this view, the action buttons should be disabled. Currently, those are not disabled and does not show any message when trying to update an API Revision.
Describe your solution

How will you implement it

Optional Fields
Related Issues:

Suggested Labels:

Suggested Assignees:

Not reproducible in the latest pack.


Can we avoid plain text passwords for DB connectivity.? We dont want to specify text passwords.

# User and password to access the DB server
db_username: <user name to access the db>
db_password: <passwd to access the db>

Encryption or reading passwords from centralized location will help

We can add an util to return an encrypted version of the password. Then decrypt it before using it in the connection path. That would fix the issue.
To do that, we can use javax.crypto.Cipher which contains a lot of functionality for this task. This, however, will require a password to decode the encoded password (within the application). The question is then, how do we provide the decipher password? Would giving it as a runtime property ( option -D in the JVM) work? How do people like to handle this?
Another related question is how do we identify whether the password is encrypted or not? Should we have two different fields in the YAML config file (e.g., db_password  and also db_password_encrypted?) This would work because we can then check at runtime that at least one has a value and: i) use it directly if not encrypted or; ii) decrypt with the provided decryption password and use.
Does that sound good?


Where to find other zip codes?

Where can I find the bound information in this format for other zip codes?
settings["zipcode_bound_info"] = {
"15202": [-80.108617, 40.482170, -80.033285, 40.521929, -80.070951, 40.5020495],
"15205": [-80.172815, 40.408126, -80.040698, 40.459977, -80.106757, 40.4340515]
};

Hi, you can find the code that generates the bound information from the geo json file in the following url: https://github.com/CMU-CREATE-Lab/ehp-channel/blob/master/py/createZipcodeBoundInfo.py


Exclude concierge links from OldDot link handling

Details
Excludes concierge links from link handling since they cannot be properly parsed and lead to an error page. Seamless transitions with authTokens also shouldn't be necessary for internal coaches and employees.
Fixed Issues
$ https://github.com/Expensify/Expensify/issues/220219
Tests

Copy a concierge chat link
In NewDot, start a chat and send the concierge link
Click the link in the chat
Verify the concierge chat is opened successfully
Open OldDot, navigate to the Reports page, and copy the URL
Sign out of OldDot
In NewDot, paste and send the Reports page link
Click the link in the chat
Verify you're signed back into OldDot and the reports page opens successfully.

[x] Verify that no errors appear in the JS console

PR Review Checklist

Contributor (PR Author) Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I included screenshots or videos for tests on all platforms
[ ] I ran the tests on all platforms & verified they passed on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[x] MacOS / Chrome
[ ] MacOS / Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product was added in all src/languages/* files
[x] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] Any functional components have the displayName property
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] I have checked off every checkbox in the PR author checklist, including those that don't apply to this PR.

PR Reviewer Checklist
The Contributor+ will copy/paste it into a new comment and complete it after the author checklist is completed

[ ] I have verified the author checklist is complete (all boxes are checked off).
[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[ ] MacOS / Chrome
[ ] MacOS / Desktop

[ ] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] Any functional components have the displayName property
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn't already exist
[ ] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

QA Steps

Find a valid concierge chat link to test with (ask in #success-coach if you can't find one)
Use this concierge link to follow the steps in the Tests section on staging (https://staging.new.expensify.com and https://staging.expensify.com)

[ ] Verify that no errors appear in the JS console

Screenshots

Web

Mobile Web

Desktop

iOS

Android

Ahhhh I see. The problem is the concierge chat has a /#/ in the link. Maybe we can just exclude those and fix it in a single line or two.

Ahhhh I see. The problem is the concierge chat has a /#/ in the link. Maybe we can just exclude those and fix it in a single line or two.

Yes.. I guess the question is... are we interested in putting the shortLivedAuthToken in the concierge chat URL? if we are not, I think the PR is fine. If we were interested, then we should fix it in the mentioned function...
thinking a bit more about I don't see a good reason to try to attach the shortLivedAuthToken to this url, and I tried testing it (fixing manually the URL) and it didn't logged me in.. so 🤷

Yes.. I guess the question is... are we interested in putting the shortLivedAuthToken in the concierge chat URL? if we are not, I think the PR is fine. If we were interested, then we should fix it in the mentioned function...

Ah you're right, we don't need it

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

Not an emergency: I only see the "warnCPLabel" check not done, the rest all passed.

This early InternalQA assignment seems weird so I did it myself and looks good. Concierge links open without issue:
https://user-images.githubusercontent.com/6833644/185423625-73c714b8-a6ab-4a5a-abf2-fb096086407a.mov

However transition links to OldDot don't automatically sign you in because of the following PR and Issue:

https://github.com/Expensify/App/pull/10144
https://github.com/Expensify/App/issues/10431

Not sure as it seems to be working fine in dev with the latest on main, but not on staging as it was reported in that issue. I'm just following the test steps I added on this PR.

@madmax330 have you started the QA for this, keeping track here


 It should be back to ~ 1 / 3 % of cpu usage , but when a lot of packet come it's come back to like 30% even if no more lot of paquet come. then if receive again a lot of packet = 100% cpu . and stay at 100% even if no more packet come . If you need a test , just handle a DDoS with the node running and look how the process is working ... . It's strange because it's a cpu leak .

Can you share the code you are using?

I can give you in private my code ? so you have a skype or so ?

You can share the code at gist.github.com.
If it's proprietary code, maybe strip out just the portions dealing with cap?

Hum, the leak come when like 3 MPPS come per sec . The node reach 100% , but it's always keep like 25/ 30 % CPU after the network peak ... the node should hand the paquet asyn then come back to 0/1% cpu ... but sometimes it's stay 25% ...

it's can be done by using the code example ... , need only receive on the node CAP a lot of traffic like 3mpps UDP. or so ...

I'm not sure what to suggest other than tweaking various parameters like buffer sizes and possibly some OS-level settings. libpcap/winpcap should drop packets if the buffer for storing packets gets filled up.

hum how can i do this ? I dont understand why when the traffic come back , after handle the paquet async , it's keep cpu loaded ... sometimes .


Generated PDF is damaged and is unable to open

Trying to narrow down why my PDFs that are created aren't able to be opened properly. Is this happening for anyone else? I'm using this same recipe below that is in test/simple.py but pdf.err returns "0" which I assume means that there are no errors, but when loading the .pdf file Adobe Acrobat say that it is damaged and not able to be opened.
pdf = pisa.CreatePDF(
cStringIO.StringIO(data),
    file(dest, "wb")
    )

if pdf.err:
    dumpErrors(pdf)
else:
    pisa.startViewer(dest)

Problem solved, going to make pull request.


Adopt custom hovers in view header toolbars

Testing #150557

When I press Alt after these hovers are displayed, they disappear (and cause File to be selected). This is confusing due to difference of behavior.

This is @TylerLeonhardt's alt account on Linux

We have talked about this problem and I think the current plan is that we will move towards the custom hover everywhere. Moving to @sbatten as this is specifically about view headers.

I think an adoption of custom hovers here would be an adoption for all action/toolbars, but maybe there is a flag. Is the recommendation to go ahead with this change?

I think this should cover all action bars, not just in view headers to be consistent. It seems unpractical to ask every user of action bars to pass down the IHoverDelegate. We will only play catch-up game for users forgetting about this. For this, I would probably let the workbench set a default hover delegate on startup that is then being picked up by widgets in base automatically.

I think this can be closed?