NixOS Manual is wrong. How to install?

Issue description
My motherboard uses UEFI, not BIOS, but the NixOS installer gives this error:
[root@nixos:~]# nixos-install
building the configuration in /mnt/etc/nixos/configuration.nix...
error:
Failed assertions:
- You must set the option ‘boot.loader.grub.devices’ or 'boot.loader.grub.mirroredBoots' to make the system bootable.
(use '--show-trace' to show detailed location information)

Following the instructions here to see if the system is UEFI or BIOS , there is no such folder as "/sys/firmware/efi" . How is this possible?

Check if you are using UEFI or BIOS on Linux
The easiest way to find out if you are running UEFI or BIOS is to look for a folder /sys/firmware/efi. The folder will be missing if your system is using BIOS.

After doing what the error message tells me, it tries to install NixOS, but fails a different way:
[root@nixos:~]# nixos-install
building the configuration in /mnt/etc/nixos/configuration.nix...
[168 built, 375 copied (1556.3 MiB), 7.5 MiB DL]
copying channel...
installing the boot loader...
setting up /etc...
Initializing machine ID from random generator.
updating GRUB 2 menu...
mktemp: failed to create directory via template ‘/tmp/os-prober.XXXXXX’: No such file or directory
grub-probe: error: cannot find a GRUB drive for /dev/sda1.  Check your device.map.
mktemp: failed to create directory via template ‘/tmp/os-prober.XXXXXX’: No such file or directory
Found Windows 10 on /dev/sdc1
installing the GRUB 2 boot loader on /dev/nvme0n1...
Installing for i386-pc platform.
/nix/store/zgcj53sxwri8wjm7zxw82c8cv67qjwfn-grub-2.02/sbin/grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
/nix/store/zgcj53sxwri8wjm7zxw82c8cv67qjwfn-grub-2.02/sbin/grub-install: warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged..
/nix/store/zgcj53sxwri8wjm7zxw82c8cv67qjwfn-grub-2.02/sbin/grub-install: error: will not proceed with blocklists.
/nix/store/qn1321bzrc0v9pzyznmhw0zvj8p8dnyi-install-grub.pl: installation of GRUB on /dev/nvme0n1 failed

Technical details
I have ASrock Z170m Pro4s motherboard
https://www.asrock.com/mb/Intel/Z170M Pro4S/

I think you need:
boot.loader.grub.devices = [ "/dev/nvme0n1" ];
boot.loader.grub.efiSupport = true;

I think you need:
boot.loader.grub.devices = [ "/dev/nvme0n1" ];
boot.loader.grub.efiSupport = true;

OK I tried this and got:
[root@nixos:~]# nixos-install
building the configuration in /mnt/etc/nixos/configuration.nix...
[3 built, 3 copied (27.8 MiB), 0.0 MiB DL]
copying channel...
installing the boot loader...
setting up /etc...
updating GRUB 2 menu...
mktemp: failed to create directory via template ‘/tmp/os-prober.XXXXXX’: No such file or directory
grub-probe: error: cannot find a GRUB drive for /dev/sda1.  Check your device.map.
installing the GRUB 2 boot loader on /dev/nvme0n1...
Installing for i386-pc platform.
/nix/store/zgcj53sxwri8wjm7zxw82c8cv67qjwfn-grub-2.02/sbin/grub-install: warning: this GPT partition label contains no BIOS Boot Partition; embedding won't be possible.
/nix/store/zgcj53sxwri8wjm7zxw82c8cv67qjwfn-grub-2.02/sbin/grub-install: warning: Embedding is not possible.  GRUB can only be installed in this setup by using blocklists.  However, blocklists are UNRELIABLE and their use is discouraged..
/nix/store/zgcj53sxwri8wjm7zxw82c8cv67qjwfn-grub-2.02/sbin/grub-install: error: will not proceed with blocklists.
/nix/store/qn1321bzrc0v9pzyznmhw0zvj8p8dnyi-install-grub.pl: installation of GRUB on /dev/nvme0n1 failed

I have to mention, I have the OS prober activated in the config file:
boot.loader.grub.useOSProber = true;

I got it to work by setting
  boot.loader.grub.device = "nodev";

This is obnoxiously inconsistent with what the manual dictates. This exception needs to be explained in the manual. In fact I have zero clue what it really does and why to use it. The auto-generated configuration.nix file has it in the same line as the setting:
  boot.loader.grub.device = "nodev"; # or "nodev" for efi only

Reopening the issue because this needs to be updated in the NixOS Manual

If there is no /sys/firmware/efi and boot.loader.systemd-boot.enable was not generated, then you have probably booted the installer in BIOS mode. boot.loader.efi.canTouchEfiVariables will have no effect because EFI variables do not exist in this mode. To boot in EFI mode, you can try one of these:

after powering on, press a key to choose the boot device (some motherboards show two entries for the installer, one BIOS and one EFI)
enter system setup and disable BIOS boot, legacy boot, legacy boot compatibility etc.
wipe BIOS boot record on the installer:  dd if=/dev/zero of=/dev/_?_ bs=446 count=1: https://unix.stackexchange.com/a/71390/182445

What is BIOS mode on a UEFI machine, anyway, and how does it get invoked?

What is BIOS mode on a UEFI machine, anyway, and how does it get invoked?

EFI computers support booting BIOS operating systems by providing BIOS services to the OS. They choose which services to provide, BIOS or EFI, based on the following considerations:

if the last two bytes of the MBR, which is the first 512 bytes of the disk, are 0x55 0xAA, then it is considered BIOS-bootable
if the partition table of the disk contains a partition of type EFI System, then it is considered EFI-bootable

The NixOS installer meets both criteria to support both types of boot.

The installer's boot menu only shows these options

I meant the boot disk selection menu. On the third screenshot here, the motherboard offers EFI boot of the ST2000DX01 disk as the first option, and BIOS boot of the same disk as the third option.

The manual mentions CSM (Compatibility Support Module), but this option was removed in the updated UEFI.

Here a user reports that they did not have the CSM option until they updated the firmware.
So, you can try any of these options:

use the EFI entry in the boot disk selection menu if it presents two entries for the installer; your motherboard manual does not mention how to enter this menu, but you could try enabling Boot Manager, or disabling Full Screen Logo, since it may obscure the key to enter the menu
boot the installer in BIOS mode, wipe the BIOS support indicator from the disk with the installer with dd bs=1 count=2 seek=510 if=/dev/zero of=/dev/? (where ? is sd? or nvme?n?; look at the output of mount or blkid ), then boot the installer again
update firmware, disable CSM, then install (after installation you can probably enable CSM back, it won't matter)
just install in the BIOS mode by following the manual for BIOS systems (then it will not boot if you later disable CSM)

Thank you @orivej

I got it to work by setting
  boot.loader.grub.device = "nodev";

This is obnoxiously inconsistent with what the manual dictates. This exception needs to be explained in the manual. In fact I have zero clue what it really does and why to use it. The auto-generated configuration.nix file has it in the same line as the setting:
  boot.loader.grub.device = "nodev"; # or "nodev" for efi only

Thank you very much!

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/nixos-rebuild-switch-isnt-updating-the-grub-menu-with-new-generations/49650/10

boot.loader.efi.canTouchEfiVariables = true;

Thank you! This solved an issue that I was having regarding new generations not being added to GRUB menu or new generations not being booted into. I had posted about this issue on NixOS discourse here.


SPK hld_update shouldn't end up with confict on HLD repo

Topic:
SPK hld_update
Question:
I'm working on a repo which have two services.
if i trigger both service pipelines at the same time, there are two open pull request on HLD, both of them are updating the "common.yaml" file under "config" folder at hld root repository which end up with conflict.
Is this expected behavior?

@luongbac301092 this is an issue as they're both attempting to update the same file - and there's no automated rebase after one of the PRs is merged
Since there's multiple places where configuration can be set in the tree, it's possible that we can fix this - will investigate

Created https://github.com/microsoft/bedrock/issues/1100 to track issue moving this question to blocked

@luongbac301092 we fixed this issue via https://github.com/CatalystCode/spk/pull/378. this will remain an issue pending a new release of spk, for now.

@luongbac301092 the latest release of spk should contain a fix for this now. Please do note, any config closer to the root of the repository may overwrite any configs set higher up in the tree/nodes. To fix this, remove any image.tag and image.repository or other configurations set  in the hld's /config/common.yaml that may conflict.
tagging @bnookala @evanlouie for sanity check.
Please let us know if this addresses your issue @luongbac301092

Closing this issue for now, feel free to reopen if needed @luongbac301092


Split / Join in Pipelines

Feature request
It appears there is currently no way to split / join a Pipeline. This is a basic feature that is missing - and will prevent broad adoption of Tekton Pipelines. Almost every Pipeline that I build (besides simple demo ones) requires this capability.
Note that this is different from parallel execution of tasks where all tasks will run.
Use case
The use case is actually quite simple.
In my pipeline I have Task A.
After Task A I either need to execute Task B1 or Task B2 - but not both -> Split. This could also be B1/B2/B3/B4/... In my example I have a mutually exclusive when condition on tasks B1 and B2 (is condition / is not condition) guaranteeing that one task gets executed.
After either task finishes I would like to continue the pipeline with task C -> Join.
I tried to set this up with runAfter clauses on the tasks - but the pipeline just ends after either Task B1 or B2 is executed - Task C is never reached.

Hi @wkulhanek the simple use case you have provided in the description is now supported with branch scoped when expressions (released in 0.27). Please refer to the release notes or the documentation on how to configure it.
We have introduced a new feature flag scope-when-expressions-to-task (set to false by default). Setting it to true will enable branch scoped when expressions i.e. task C will be executed after either B1 or B2.
when expressions guards C (and never reached) if it relies on the result of either B1 or B2, a new feature is coming to address this use case where C can continue executing without actual results - demoed in the API WG.
Hope it helps, let me know if you there is anything missing 🙏


Move "docs" in "cloudflare" to include in add-on repository

Proposed Changes

Move "docs" folder into "cloudflare" in order to include it in the ha-addons repository.
see https://github.com/brenner-tobias/ha-addons/issues/5

I am not sure if this folder will be copied but let's give it a try, otherwise we need to change the referring links to use the full domain.


Error during execution

Hi guys,
i am trying to get the toolchain running.
When trying to run CoTeTo with one of the UniTest Cases i get the following error:
INFO: Starting CoTeTo.Controller from file C:\Users\A200209509\Downloads\CoTeTo-master\CoTeTo-master\CoTeTo\Controller.py, version 1.0
INFO: IFCFile - loading C:/Users/user/Downloads/BIM2Modelica-master/BIM2Modelica-master/IFC/IFC2X3/UdKB_Unit_Test_Cases/MultiZoneBuilding.ifc
INFO: determine building model information for file: C:/Users/user/Downloads/BIM2Modelica-master/BIM2Modelica-master/IFC/IFC2X3/UdKB_Unit_Test_Cases/MultiZoneBuilding.ifc
CRITICAL: An unhandled exception occured

Traceback (most recent call last):
File "C:\Users\user\Downloads\CoTeTo-master\CoTeTo-master\CoTeTo\GUI.py", line 269, in executeGenerator
x = self.activeGenerator.execute(uriList, outputBase)
File "C:\Users\user\Downloads\CoTeTo-master\CoTeTo-master\CoTeTo\Generator.py", line 262, in execute
self.executeFilter()
File "C:\Users\user\Downloads\CoTeTo-master\CoTeTo-master\CoTeTo\Generator.py", line 187, in executeFilter
function(self.data, self.controller.systemCfg, self.cfg, self.logger)
File "C:\Users\user\Downloads\CoTeTo-master\CoTeTo-master\Generators\IFC_MultiZoneBuildings_Modelica\Filters\Filter01.py", line 497, in filter01
dataModel = mapIFCtoBuildingDataModel(fileData['IfcData'], fileName)
File "C:\Users\user\Downloads\CoTeTo-master\CoTeTo-master\Generators\IFC_MultiZoneBuildings_Modelica\Filters\Filter01.py", line 61, in mapIFCtoBuildingDataModel
mesh = DataClasses.Mesh(toposhape)
File "C:\Users\user\Downloads\CoTeTo-master\CoTeTo-master\Generators\IFC_MultiZoneBuildings_Modelica\Filters\IfcLib\DataClasses.py", line 120, in init
for i in range(1, nTri + 1):
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'

Do you have any idea?
Thank you very much.
Best regards

I added an if clause in Dataclasses.py
it is working now
        if nTri is not None:
            for i in range(1, nTri + 1):


chore: enable cgo and use google buildbase

cgo needs to be enabled to link against boringcrypto, so we add that here.
In addition, we use the google-go.pkg.dev/golang image as the Go buildbase to ensure build-time requirements, like boringcrypto, are enabled.
We also use gke.gcr.io/gke-distroless/libc as our runtime image.
We add the "cryp/tls/fipsonly" import to ensure boringcrypto is linking properly at build time. We guard this with a build tag "boring" in a dedicated file.
Finally, we remove promtool from the image, as its not intended to be used.
Cherry-pick 6cd5dd0bb63e12eed80f5f87ef775ae399196741

/prombench

Results look good.
/prombench cancel

/prombench cancel


Add mock request dispatcher and example unit test using it

Pulled this out of some un-merged stuff since there's a need for it.
Adds a MockRequestDispatcher that allows the whole HTTP request/response to be easily mocked for unit tests.  There's an example unit test in sqs.rs that demonstrates its use.
Essentially, you create a mock dispatcher that always returns a specified body, status code, and headers.  That mock is used by the WhateverClient that our codegen outputs instead of the default, and then when a method is called, it gets the mocked response back.

Minus my comments, LGTM

Closing in favor of https://github.com/rusoto/rusoto/pull/371 .


Enumeration does not support string enumeration

enum B {
    'string' = 'B'
 }
 let key :string = B['B']
 let value :string = B["string"]

After compilation
var B;
(function (B) {
    B["string"] = "B";
})(B || (B = {}));
var key = B['B'];
var value = B["string"];

It seems that the current enumeration does not support the mutual mapping of strings. Will it be supported in the future

You forgot to fill out the issue template for bug reports.
Duplicate of #21935. Used search terms: enum mapping in:title


chore(perception_launch): sync universe/tier4_perception_launch into perception_launch

Signed-off-by: yukke42<EMAIL_ADDRESS>PR Type

Improvement

Related Links

Description
Copy files of launch/tier4_perception_launch in autoware.universe to perception_launch except traffic light module and ground_segmentation.launch.py. And then, apply find launch -type f -exec sed -i "s/tier4_perception_launch/perception_launch/g" {} \; to change perception_launch package names.

Review Procedure

Remarks

Pre-Review Checklist for the PR Author
PR Author should check the checkboxes below when creating the PR.

[x] Code follows coding guidelines
[x] Assign PR to reviewer

Checklist for the PR Reviewer
Reviewers should check the checkboxes below before approval.

[ ] Commits are properly organized and messages are according to the guideline
[ ] Code follows coding guidelines
[ ] (Optional) Unit tests have been written for new behavior
[ ] PR title describes the changes

Post-Review Checklist for the PR Author
PR Author should check the checkboxes below before merging.

[ ] All open points are addressed and tracked via issues or tickets
[ ] Write release notes

CI Checks

Build and test for PR: Required to pass before the merge.
Check spelling: NOT required to pass before the merge. It is up to the reviewer(s). See here if you want to add some words to the spell check dictionary.

@miursh Cloud you approve if there is no issue?


Issues with Multiple Versions of the AMX-IPComm Extension Uploaded to a MUSE Controller

I have observed that if you have installed multiple versions of the amx-ipcomm MUSE Extension on a MUSE controller it's almost impossible to get the version running that you want to run.
Short of a factory reset there's no obvious way to delete an extension from a MUSE controller. Even if you uninstall it you can't remove it so if you upload another version of the extension to the controller you can see that there are multiple versions loaded but even if you select the version you want to run and press the Install button it doesn't necessarily mean that version will be the one that runs.
The only way I can tell which version of the amx-ipcomm extension is actually running from it's behaviour when connecting to a TCP server. If it send a TLS client hello when establishing a connection to a TCP server it's v1.0.2, if it connects but then immediately disconnects, and then immediately reconnects again it's v1.0.3, and if it connects with no issues but doesn't trigger the fault event when there is a connection issue (and only has a TCP and UDP driver available) then it's v1.0.0.
I realise this might be an issue on the MUSE controller itself so have also reported this to HARMAN APAC Tech Support but am posting here as well in case there's anything on the extension side that might be causing this behaviour.

Thanks Ian. Have pushed that one to HARMAN APAC TS.


Exporter support extension "MSFT_lod"

Is your feature request related to a problem? Please describe.
The ArcGIS JS API supports to load gltf. For performance reason this API supports LOD's through the "MSFT_lod" extension.
Describe the solution you'd like
It would be great if the exporter supports creating and writing the extension MSFT_lod

Unfortunately I don't think we should implement the MSFT_lod extension, but should wait until a Khronos (KHR_) or multi-vendor (EXT_) extension has been created. See https://github.com/KhronosGroup/glTF/issues/1045.

Ok. Thanks for the answer. At the moment it looks that there is no Khronos (KHR_) or multi-vendor (EXT_) extension on the way?

There is discussion and a request for feedback in the issue mentioned above. But until the extension is complete we likely wouldn't implement it here, no.

Thanks for the feedback.

I have implemented MSFT_lod support on my fork https://github.com/xissburg/glTF-Blender-IO/tree/xissburg/MSFT_lod
Instructions are at the bottom of README.
I will not submit a PR because I don't think they want to officially support this extension. However this implementation could be adapted to support a future official LOD spec.


crash when running

Traceback (most recent call last):
File "/home/aaronw/.local/share/kicad/6.0/3rdparty/plugins/com_github_mitxela_kicad-round-tracks/round_tracks_action.py", line 141, in validate_all_data
tested_val = float(self.netclasslist.GetTextValue(i, j))
RuntimeError: wrapped C/C++ object of type DataViewListCtrl has been deleted
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/aaronw/.local/share/kicad/6.0/3rdparty/plugins/com_github_mitxela_kicad-round-tracks/round_tracks_action.py", line 104, in on_item_editing
self.validate_all_data()
File "/home/aaronw/.local/share/kicad/6.0/3rdparty/plugins/com_github_mitxela_kicad-round-tracks/round_tracks_action.py", line 145, in validate_all_data
self.netclasslist.SetTextValue(str(RADIUS_DEFAULT), i, j)
RuntimeError: wrapped C/C++ object of type DataViewListCtrl has been deleted
Traceback (most recent call last):
File "/home/aaronw/.local/share/kicad/6.0/3rdparty/plugins/com_github_mitxela_kicad-round-tracks/round_tracks_action.py", line 141, in validate_all_data
tested_val = float(self.netclasslist.GetTextValue(i, j))
RuntimeError: wrapped C/C++ object of type DataViewListCtrl has been deleted
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/aaronw/.local/share/kicad/6.0/3rdparty/plugins/com_github_mitxela_kicad-round-tracks/round_tracks_action.py", line 104, in on_item_editing
self.validate_all_data()
File "/home/aaronw/.local/share/kicad/6.0/3rdparty/plugins/com_github_mitxela_kicad-round-tracks/round_tracks_action.py", line 145, in validate_all_data
self.netclasslist.SetTextValue(str(RADIUS_DEFAULT), i, j)
RuntimeError: wrapped C/C++ object of type DataViewListCtrl has been deleted
Segmentation fault (core dumped)
Application: KiCad PCB Editor
Version: (6.0.5-152-g7765e63f10), release build
Libraries:
wxWidgets 3.1.7
libcurl/7.66.0 OpenSSL/1.1.1d-fips zlib/1.2.11 libidn2/2.2.0 libpsl/0.20.1 (+libidn2/2.2.0) libssh/0.8.7/openssl/zlib nghttp2/1.40.0
Platform: Linux 5.3.18-150300.59.68-preempt x86_64, 64 bit, Little endian, wxGTK, , x11
Build Info:
Date: Jun 11 2022 21:58:23
wxWidgets: 3.1.7 (wchar_t,wx containers) GTK+ 3.24
Boost: 1.75.0
OCC: 7.6.1
Curl: 7.66.0
ngspice: 36
Compiler: GCC 11.3.0 with C++ ABI 1016
Build settings:
KICAD_USE_OCC=ON
KICAD_USE_EGL=ON
KICAD_SPICE=ON
Python 3.10.4 installed with latest wxPython

Could you let me know a little more about what caused this? Is it repeatable? Does it only happen on one board design? Does this also happen in 6.0.5 release?

It's actually 2044fe591dcccbcf172302767d915e66cdd84446 but I cherry-picked a focus-stealing fix which should not impact this. I have not been able to recreate this. It has only happened once.


PDF with various rendering issues

PDF in question: http://qoal.x10.mx/cache/6_c188dcd9e829f3450cdf3dc01b5106ff9d0e0ec5.pdf
On the first page, the background rectangle seems to have rounding errors, so often is a pixel too small on the left or bottom.
Lots of the text should horizontally squished, however it looks like it's stretched the opposite way.
Rendering of all gradients stops before the end of the page
Tested with the latest nightly on windows 7, with HWA on, and the current github hosted live demo.
The PDF was generated using FPDF (http://fpdf.org/) and using several additional scripts:
http://fpdf.org/en/script/script92.php
http://fpdf.org/en/script/script74.php
http://fpdf.org/en/script/script62.php
http://fpdf.org/en/script/script72.php
http://fpdf.org/en/script/script78.php
http://fpdf.org/en/script/script35.php

@QOAL, who is the author of this PDF? If it's yours can it be included as test PDF?

@notmasteryet Yes, I am its author.
If it'll help the project, then I see no problem with its inclusion for reference purposes.

It's a good test and it will help a lot. Thanks.
The font issues are fixed. We will be looks at gradients and rounding issues.


[BUG] [BACKPORT] [1.2.5] A snapshot has a child that is no-longer exist in the snapshot chain

ref: https://github.com/longhorn/longhorn/issues/3883

verified passed on v1.2.x-head (longhorn-engine:232d53c)
following the test steps and the steps for snapshot purge, the bug mentioned in the original issue cannot be reproduced.


Add support for annotating multiple gem lock files

It's useful to be able annotate multiple Gemfile lock files in a single PR. It's especially useful when working with a dual booting system such as bootboot.
This PR adds support for annotating multiple Gemfile lock files.

@johnsyweb @orien thanks for reviewing and providing feedback!
I think I've addressed all the feedback, so would be great if you could cast your eyes over the changes one more time?

@johnsyweb Could you please publish the latest version of this gem when you get a chance?

TIL bootboot.


Client Allocation Request for: pyfg

Client Allocation Questions
Core Information

Name: pyfg
Website / Social Media: pyfg.com, (@pyfg, Twitter)
Region: Africa
DataCap Requested: 32 GiB
Addresses to be Notarized: f2532973298393627437546385399324
Notary Requested: Irene Young

This user’s identity has been verified through filplus.storage


Add pointer_to_address [align=] option.

Support for addresses with arbitrary alignment as opposed to their
element type's natural in-memory alignment.
Required for bytestream encoding/decoding without resorting to memcpy.
SIL instruction flag, documentation, printing, parsing, serialization,
and IRGen.

@swift-ci test

Build failed
Swift Test Linux Platform
Git Sha - 06f1aedf464f1914c094b5d1ab3976d91d7e638b

Build failed
Swift Test OS X Platform
Git Sha - 06f1aedf464f1914c094b5d1ab3976d91d7e638b

@swift-ci smoke test and merge


Reflect the latest embedded WG team membership changes

There're quite a few updates we forgot to make previously due to
highfive not being mentioned in the ops document. In addition the teams
have changed lately due to members going into hibernation.
CC https://github.com/rust-embedded/wg/pull/475
CC https://github.com/rust-embedded/wg/pull/476
Signed-off-by: Daniel Egger<EMAIL_ADDRESS>

We'd love a PR to the ops document as well if you get a chance to do so.

We'd love a PR to the ops document as well if you get a chance to do so.

Which ops document?

forgot to make previously due to highfive not being mentioned in the ops document

I don't know, whichever one you referenced. I assumed it was something on forge?

I was refering to the embedded WG internal ops document here: https://github.com/rust-embedded/wg/blob/master/ops/post-transfer.md 😅


I still have to format the code

Type: Bug
Hello,
I have been having a problem with pasting and typing code for a long time.
The issue is that when I copy a piece of code and paste, the pasted code is aligned to the left.
The same goes for going to a new line and typing a phrase - then the phrase moves to the left!
It's hard to write code like this when I constantly have to format it.
Video showing what this is all about:
https://1drv.ms/v/c/150f8e3ec553a9eb/Ec0ooke9LR1NlGrekjUPea8B1J8z18M1jiMD5lWDMCkngA?e=hxPUCw
VS Code version: Code 1.96.2 (fabdb6a30b49f79a7aba0f2ad9df9b399473380f, 2024-12-19T10:22:47.216Z)
OS version: Windows_NT x64 10.0.19045
Modes:

System Info

Item
Value

CPUs
Intel(R) Core(TM) i7 CPU         950  @ 3.07GHz (8 x 3074)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabledwebnn: disabled_off

Load (avg)
undefined

Memory (System)
11.99GB (1.14GB free)

Process Argv
E:\wamp64\www\wordpress\wp-content\themes\mytheme\page.php --crash-reporter-id a40e7615-7e61-4612-a4be-2156976f19c5

Screen Reader
no

VM
0%

Extensions (7)

Extension
Author (truncated)
Version

smarty-template-support
asw
2.1.1

cssrem
cip
4.1.0

dscodegpt
Dan
3.5.175

figma-vscode-extension
fig
0.4.0

live-sass
gle
6.1.2

easy-less
mrc
2.0.2

vscode-language-pack-pl
MS-
1.96.2024121109

A/B Experiments
vsliv368:30146709
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492cf:30256860
pythonvspyt551:31179978
vscod805:30301674
binariesv615:30325510
vsaa593:30376534
py29gd2263:31024239
c4g48928:30535728
azure-dev_surveyone:30548225
a9j8j154:30646983
962ge761:30959799
pythonnoceb:30805159
pythonmypyd1:30879173
h48ei257:31000450
pythontbext0:30879054
cppperfnew:31000557
dsvsc020:30976470
pythonait:31006305
dsvsc021:30996838
dvdeprecation:31068756
dwnewjupyter:31046869
nativerepl2:31139839
pythonrstrctxt:31112756
nativeloc1:31192215
cf971741:31144450
iacca1:31171482
notype1:31157159
5fd0e150:31155592
dwcopilot:31170013
stablechunks:31184530
6074i472:31201624

Title: "How to Fix Misaligned Code in VS Code by Enabling Format on Paste"
Hi ,
If you're struggling with misaligned code when pasting or typing in VS Code, I recommend enabling the Format on Paste feature. This has worked well for me and might help you too!
How to Enable Format on Paste
Open your VS Code settings. You can do this quickly by pressing Ctrl + , (or Cmd + , on Mac).
In the search bar, type formatOnPaste.
Look for the Editor: Format On Paste option and check the box to enable it.
Why This Works
When you enable Format on Paste, VS Code will automatically format the pasted code based on your project's formatting rules. This means:
Pasted code will align properly with the rest of your file.
You won’t need to manually fix the formatting after every paste.
Additional Tips
Make sure your formatter is configured properly. If you're using Prettier or ESLint, double-check that your configuration files (like .prettierrc or .eslintrc) match your project's style.
Customize indentation settings. In VS Code settings, ensure options like editor.tabSize and editor.insertSpaces are aligned with your preferences or the project’s standards.
If you’re still seeing issues, try disabling all extensions temporarily to rule out conflicts with formatters.
This feature has been a game-changer for me, and I hope it helps make your coding experience smoother too!
Let me know if you have any questions or if there’s anything I can clarify further.

Turning on the 'Format on Paste' option did nothing.
Disabling all extensions did not help.

bro you can
Check editor.formatOnType. If it's enabled, VS Code might be formatting your code automatically when you type or paste
&
A .editorconfig file or a specific linter/formatter (like Prettier or ESLint) in your project might be enforcing alignment rules.
Open .editorconfig or check your formatter settings to ensure they're not misconfigured.
&
if the issue persists, consider resetting VS Code to its default settings:
Delete or rename the settings.json file located in C:\Users<YourUser>\AppData\Roaming\Code\User.
&
update it if it is not ,
last option reinstall your vs code

I have enabled the editor.formatOnType option.
I do not see the .editorconfig file.
I am not using Prettier/ESLint.
I have renamed the settings.json file.
I reinstalled the VSC program (without uninstalling the previous version, because I don't want to lose my settings).
Nothing helped...
Does it work for you? Doesn't it mess up your code formatting when writing?
I also have another problem with VSC - often the Emmet option doesn't work when I type in e.g. "a.btn", click Tab and nothing happens.


[$500] The "Enter" key does not work when editing the "Description" and "Merchant" fields

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

Version Number:  1.4.40-0
Reproducible in staging?: y
Reproducible in production?: n
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause internal team
Slack conversation:
Action Performed:
Configure the OldDot administrator account, invite an employee and include multiple categories and tags
https://sites.google.com/applausemail.com/applause-expensifyproject/wiki-guides/newdot-categories?authuser=0
Steps:

Open https://staging.new.expensify.com/

Log in with the employee's login

Click on FAB

Select "Request money"

Deposit any amount

Click on the "Next" button

Select Group Policy WS

Select any category or tag

Click the Merchant or Description field

Entry any data

Press the "Enter" key

Expected Result:
Pressing the "Enter" key should save the data in the "Description" and "Merchant" fields and return to the IOU menu
Actual Result:
The Enter key does not work when editing the Description and Merchant fields after selecting a Category or Tag
Workaround:
unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[x] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence
https://github.com/Expensify/App/assets/38435837/da76f991-62cd-4499-8703-97db0e4f085a

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~012366b11cbf8f59eb
Upwork Job ID:<PHONE_NUMBER>262604800
Last Price Increase: 2024-02-12
Automatic offers:

shubham1206agra | Contributor | 0

Potentially a regression from https://github.com/Expensify/App/pull/34471, similar to https://github.com/Expensify/App/issues/36363

Potentially a regression from https://github.com/Expensify/App/pull/34471, similar to https://github.com/Expensify/App/issues/36363

asking people involved in the original PR if this is actually related to it

Thanks for explanation @shubham1206agra!
Assigning this issue to you

@shubham1206agra when can we expect a PR? 🙏  this is blocking deploy so it would be great to get a fix out ASAP please

PR merged & is being CP'd to staging 🙏

This also looks fixed on staging! 🚀


Gene characterization, clarification

I think we should call this page
"protein characterisation"
http://preview.pombase.org/status/gene-characterisation
more precise. that's what we call it in the poster too.....

Also, should be on the gene pages summary section  for protein coding only

changed to "protein-coding gene"
the part about gene pages is for Kim, and maybe should have its own ticket

Let's keep as is... Can change later...


Interpreter selection doesn't work when opening a folder with an existing venv inside a Docker container

Environment data

VS Code version:  1.51.0-insider
Extension version (available under the Extensions sidebar): 2020.11.346576184-rc (same for remote)
OS and version: macOS 10.15.6, Docker running on the same machine
Python version (& distribution if applicable, e.g. Anaconda): 3.9.0
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): venv
Relevant/affected Python-related VS Code extensions and their versions: Docker extension: 0.148.0
Value of the python.languageServer setting: Pylance

Expected behaviour
Interpreter update when I select a different interpreter
Actual behaviour
Nothing happens when I select a different interpreter until I reload the window:

Steps to reproduce:

Have a local workspace with a python file
Create a virtual environment (python -m venv .venv) in this folder, and use this virtual environment for the workspace
Reopen the workspace in a container (Python 3, select 3.9)
Observe that the currently selected interpreter is the virtual environment
Try selecting a different interpreter

Can you please double check if you're in the PythonPath experiment?

Closed as dup of https://github.com/microsoft/vscode-python/issues/14645. Release candidate + PythonPath experiment has this bug.


pull request for e2e test at 12/03/2016 22:45:04

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

optest/docs/updated_at.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[Issue]: Improve AutoGen README.md

Describe the issue
Improve per discussion with @ekzhu

[ ] Create and update visuals beyond conversable agents
[ ] ?

Steps to reproduce
No response
Screenshots and logs
No response
Additional Information
No response

Closing this issue due to inactivity. Feel free to open a new issue or join the discussion in AutoGen Discord server: https://discord.com/invite/Yb5gwGVkE5


Bump Open MPI to v4.0.x

We recently encountered many issues with Open MPI v3.1.x, see, e.g., open-mpi/ompi/issues/6322 and open-mpi/ompi/issues/6642. Given it's unreliability, updating to v4.0.x series may be the way out. I will try bumping the version in our Conda recipe to v4.0.2 when it's released so that both v3 and v4 exist in our channel, and users can upgrade/downgrade freely as they wish.

It might have been taken care of by https://github.com/nsls-ii-forge/openmpi-mpi-feedstock. Please check it out.

That's nice! Which channel will the new packages live? I'd like to test them first before closing.

conda install -c nsls2forge <pkg-name> should work.

@leofang, did it work for you?

Sorry @mrakitin, I've lost track of things recently. Starting tomorrow we'll have a full week Hackathon. I'll try to test it in my spare time.


Activate item with params

It looks like that IConductor<T> does not provide a way to activate items with some kind of parameters.
I want to have some kind of NavigationService which works like this
public void NavigateTo(Type t, IDictionary<string, object> @params)
{
    var vm = _container.Get(t);
    var msg = new OpenPageEvent(vm, @params);
    _eventAggregator.Publish(msg);
}

and my conductor would do something like this
public void Handle(OpenPageEvent msg, IDictionary<string, object> @params)
{
    ActivateItem(msg, @params)
}

Obviously I could create ViewModels manually and pass my parameters like that. But I'd like to do it as I explained above. Is there a way I can do that with Stylet?

I don't follow I'm afraid. What would ActivateItem do with the params? It also looks like you're tryingti activate the event, rather than the ViewModel?
When I do things like this, I have a navigation service, which defined a bunch of different methods which each take a set of strongly-typed parameters as necessary. So you'd call NavigateToLogin(param1, param2) rather than NavigateTo(typeof(Login ViewModel), new Dictionary<string, object>() { { "param1", param1}, { "param2", param2}}). The navigation service would then instantiate the VM and pass in the parameters as constructor parameters. This had the advantage of kit relying on weakly-typed dictionaries which only catch errors at runtime, and also means the caller doesn't need to know the type of the final ViewModel.

Thanks for your input. You helped me a lot.


GitHub package sometimes causes stuttering when switching buffers

Thanks in advance for your bug report!

[X] Have you reproduced issue in safe mode?
[X] Have you used the debugging guide to try to resolve the issue?
[X] Have you checked our FAQs to make sure your question isn't answered there?
[X] Have you checked to make sure your issue does not already exist?
[X] Have you checked you are on the latest release of Pulsar?

What happened?
In certain circumstances — one I can reliably reproduce, and others that are more sporadic — the GitHub package seems to be the cause of a stuttering behavior that occurs when a buffer is made active. It appears to block the UI while it's doing work: the editor is unresponsive to clicks, and syntax highlighting stops partway through the file. The stuttering stops after a couple seconds.
I did a performance profile and it seems to be because the app is spending an unusual amount of time shelling out to git. Here's a shot of one profile I did:

I put in a conditional breakpoint just so I could log the actual shell commands that are being run:

Here's what that looks like:

I had it log the arguments to exec along with a timestamp. You can see that the invocations of exec are spread several seconds apart. In theory it's good that the package seems to be yielding to the UI several times in between, but in practice the UI is still unresponsive until all these shell commands are done running.
In all these instances, the stuttering is occurring when (a) I've got a specific project open; (b) I open my snippets.cson within that project via Pulsar → Snippets…. The stuttering occurs on first open and whenever I switch tabs to a different buffer and then return to the snippets.cson tab. It does not occur when I switch between buffers for files within my project, but I've noticed similar symptoms when opening a project for the first time.
I can only guess that the package has to do extra work when I switch to editing a file that's not an ancestor of the project's root directory — it has to get some repo metadata that evidently doesn't get cached.
Atom 1.60.0 doesn't exhibit this behavior. I wanted to ascertain that it was hitting that same code path, but I can't, because git-shell-out-strategy.js doesn't exist in the equivalent location in the Atom.app bundle, nor can I find that file within the devtools.
Disabling the GitHub package definitely fixes the snippets.cson issue, and seems to improve startup time when opening a project.
Pulsar version
1.101.0-beta
Which OS does this happen on?
🍎 macOS
OS details
11.7.2
Which CPU architecture are you running this on?
64-bit(x86_64)
What steps are needed to reproduce this?

Open a project that does not contain ~/.atom/snippets.cson as an ancestor. Open a couple of source files for editing.
Open your snippets file via the menu. Observe the stuttering.
Switch to another tab. No stuttering should happen.
Switch back to the snippets.cson tab. Stuttering will happen.

Additional Information:
No response

Thanks a ton for contributing!
This is an issue we are aware of and have marked as a Notice currently. But do appreciate having some solid numbers to compare with later on,

Ah, lovely. Is there an issue somewhere I can track?

Ah, lovely. Is there an issue somewhere I can track?

Not that I'm aware of just yet, just something we have been keeping a mental note of since the root cause hasn't been fully determined. But ideally this can now be the issue to track, so it's a good thing you put it in


laplace_cdf: Presto throws while Velox returns non-NULL

Description
Query: select laplace_cdf(1, c0, 0.3) from (values nan()) t(c0);
Presto-0.289: Throws an exception "(INVALID_FUNCTION_ARGUMENT) laplaceCdf Function: scale must be greater than 0"
Velox: Returns NaN
Error Reproduction
No response
Relevant logs
No response

Since NaN is defined to be > 0, the error message from Java is obviously wrong


Adds copyright slot. Updates django-container to 2.0.2 and jsonconfig…

… excludes.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 63.089%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1981

Relevant Lines:
3140

💛  - Coveralls


Making givenName and surname optional should not set fields to UNKNOWN

If I set givenName/surname to not default, express sets it to UNKNOWN regardless of the input. This should not happen.
For instance, if I set:
web: {
register: {
  enabled: true,   // Explicit enable, if not using { website: true }
  nextUri: '/',    // Where to send the user to, if auto login is enabled
  fields: {
    givenName: {
      required: false
    },

And register with a Given Name set, express-stormpath turns my givenName into "UNKNOWN"
https://github.com/stormpath/express-stormpath/blob/master/lib/controllers/register.js#L84

Just tried to reproduce, still happens on latest for the framework-spec-upgrade branch


Investigate Android M Preview 2 correctly supported

A bug was fixed in master and all is working well with the final SDK 6
https://github.com/NativeScript/android-runtime/commit/118c53ed0e0df3f92ac2f528b5ab9848f66b8b70
closing this issue


pass winrt::weak_ref between implementation classes

I would like have one implementation class hold a weak reference to another. Can't seem to get this pattern work.

// ClassB.h

struct ClassA // forward declare. Can't include "ClassA.h" - will lead to circular refernce
struct ClassB
{
	void setClassA(winrt::weak_ref<winrt::implementation::ClassA> classA);

	// Compile error forward declare does'nt work
	// error c2139: an undefined class is not allowed as an argument to compiler intrinsic type trait '__is_base_of'
}

// ClassA.cpp

void ClassA::OnPropertyChanged(DependencyPropertyChangedEventArgs const& e)
{
	auto classB = e.NewValue().try_as<ClassB>();
	if (classB)
	{
            // Option A
	   classB->setClassA(get_weak());

            // Option B
            classB->setClassA(this);
	}
}

Yes, this is a limitation. The weak_ref uses type traits to figure out how to retrieve the weak reference itself and this requires the complete definition of the type. Thanks for the feedback. I'll see what we can do to improve this.

Detecting that a weak reference to an implementation should be created requires knowledge of the type that prevents forward declaration. Given that there are other ways to solve this problem, I'm going to leave this as is for now. Here's one solution:
https://gist.github.com/kennykerr/9f7ad000c8021cbe2d9f32727b9de901


add code for Product of maximum in first array and minimum in second

Have you read the Contributing Guidelines on Pull Requests?
yes
Description
added code for #4579 issue .please review this and let me know if changes required .
Checklist

[x] I've read the contribution guidelines.
[x] I've checked the issue list before deciding what to submit.
[x] I've edited the README.md and link to my code.

Related Issues or Pull Requests
(Write your answer here.)

I will add logic in the function.

I had added the logic  in the function.

Sir could you tell me how to resolve this ?I m new to pen source I don't know hoe to deal with this problem.

I had made most of the changes which were listed regarding whitespaces .


Compatibility with new cocoapods spec layout

Cocoapods has changes the layout of the specs repo recently enough, as part of the gitHub performance issues: https://github.com/CocoaPods/CocoaPods/issues/5002
As far as I can tell this has broken pod deploy.
Are there any plans to update this project to support the new spec repo format? I'm happy to work on a PR for this if you would like @jcampbell05

Also very interested in this. Currently this plugin is the only way we can have reasonable CI test run times with Cocoapods 1.0+.
Cocoapods did provide a copy of the old repo at https://github.com/CocoaPods/Old-Specs.git but it sounds like new version updates will only be made to https://github.com/CocoaPods/Specs.git.
I would love for this plugin to be part of cocoapods proper, but in the meanwhile it seems like we should be able to change the way we parse the specs repo depending on the source specified.

From my reading of https://github.com/CocoaPods/Core/blob/master/lib/cocoapods-core/source/metadata.rb#L41 it looks like the new layout adds 3 levels of folders, each using a character from the MD5 of the pod name, for example, https://github.com/CocoaPods/Specs/blob/master/Specs/d/a/2/Alamofire/1.1.5/Alamofire.podspec.json

:) I'm happy for a PR @marcomorain  - I don't have much time for this right now so contributions are appreciated :)

Started some work on fixing this and I've found a way to inject custom data into the lockfile.
I just need to grab the location of the podspec and store it in the lockfile when cocoapod figures out which one to use.
Hopefully this will make the plugin future proof and long term I'll talk to the cocoapod guys at how I can interstate a few of these features

@jcampbell05 Is there a work in progress branch for this? Would love to help if I can.

@dodongo  Sure I have my work so far at https://github.com/jcampbell05/cocoapods-deploy/tree/s/NewLayout
It just contains some code that I'm aiming to use so that I can infer the Podspec URL during the resolve step in pod install or pod update.
Then I hope to store this in the Lockfile using the patch to allow me to write to that.
Then I need to update the pod deploy code to use this lockfile infomation and to do thhe usual magic of swapping out the podspec requirements for URL ones.
Then hopefully we can get this released and hopefully in Cocoapods one day!

@dodongo Have you worked on this ? I'm going to try and resume what I did.


Space Science Timings

What timings are actually used for Space Science?

A Rocket Part is 3 secs
Rocket launch is 41.25 secs (2475 game ticks)

If I want find out how many Control Units I need to constantly run .854 of a Silo I use:
.8541024/???=
Is it possible to add the time used somewhere in the calculator? It seems like the time used here is 3.416, giving me an answer of 60 level 3 Assemblers to run .854 Silo. I'm not very good with numbers and don't really know what's going on tbh.
Awesome tool btw :D

Don't you just select Space science as your output and choose .854 space science 'factorys' (which is in fact the silo)?

Yeah, the calculator works it all out for you. I wanted to know what the hidden workings were. In this case, the time programmed into the calculator for space science. I like to work out the ratios myself and use the calculator to check before I build. Huge waste of time I know, but it's one of the things I love about the game. It seems when I change the amount of rocket silos in use in the calculator, it changes the time taken to launch.  So I was hoping the creator could add the timings in the calculator for a rocket launch, since 3 secs obviously doesn't work.

The time taken to launch does not change. The frequency that you can launch rockets changes that's all.
The time programmed into the calculator is dependent upon the modules and the beacons associated with the silo. Whilst these can make the craft time of the 100 rocket parts faster, they have no effect on the 2475 ticks for the rocket to emerge from the silo and for the doors to close post launch. That sequence is unaffected by modules and beacons.

Yes I know, this is the reason for my question. I'm asking what time the calculator uses for space science and if it can be displayed. If I were to use the 3 secs per part (plus or minus any beacons), plus rocket launch animation, it doesn't up. And if I change the amount of Silos used, as I say, the calculator  seems to change the time per part, not in game obviously. This only happens when Prod Mods are used in the calculator. It might have been formulated in a not so obvious way to account for productivity not affecting launch animation. Just wondering what it is and if it can be displayed.

factory.js  contains the code for the silo and thus space science. It's an open source project, you are free to propose code changes. :)

I were to use the 3 secs per part (plus or minus any beacons), plus rocket launch animation, it doesn't (add) up.

This only happens when Prod Mods are used in the calculator.

Are you remembering that the Prod modules reduce the number of rocket parts required for a launch? 4 Prod 3 Modules in a silo mean that only 714.29 rocket parts are required for a launch.

Thanks Dry :D I did have a look at that when I was trying to figure this out, but couldn't figure out how it was being worked out from it all. I'm not too bright in general.
Yeah, factored in the reduced parts needed.
Sorry, I mean the time used in the Silos. There must be a time used in the Silo for the calculator to know how many components would be needed to keep it running surely? For example, if I have 10 grey science assemblers and I need to know how many component assemblers I need to keep it running I use - 10(grey sci) x 1(red ammo needed) x 2.4(time for 1 red ammo in assembler 3) / 8(time for grey sci in assembler 3) = 3(assembler 3 making red ammo).
I assume the calculator takes the time from a recipe and divides it by the assemblers crafting time. It needs to know how long it takes for something to be made , in order to keep it running.

For example, if I have 10 grey science assemblers and I need to know how many component assemblers I need to keep it running I use - 10(grey sci) x 1(red ammo needed) x 2.4(time for 1 red ammo in assembler 3) / 8(time for grey sci in assembler 3) = 3(assembler 3 making red ammo).

Yes, so you would do something like this. https://kirkmcdonald.github.io/calc.html#data=0-17-60&rate=s&min=4&furnace=stone-furnace&items=military-science-pack:f:10
Tell the calculator that you want to have 10 grey science makers and let it calculate how many of the other assemblers it needs to have for red ammo. grenades and walls.

There must be a time used in the Silo for the calculator to know how many components would be needed to keep it running surely?

No. You tell the calculator how many 'rocket part factories' you want to have.
Example: I want 1 rocket part factory (essentially a silo). https://kirkmcdonald.github.io/calc.html#data=0-17-60&rate=s&min=4&furnace=stone-furnace&items=rocket-part:f:1&ignore=electronic-circuit,advanced-circuit
Note how it tells you that you need 1 silo. That means 1 silo running all the time (allowing for the 2475 ticks when it is idle). The rest of the output is the assemblers smelting and ore needed to keep the silo running 'all the time'.

If you tell the calculator the rate of  space science you want, it calculates the rocket part rate, which drives the number of silos required, and the extra for the sattelite manufacture.
Example: 1000 space science per minute
https://kirkmcdonald.github.io/calc.html#data=0-17-60&min=4&furnace=stone-furnace&items=space-science-pack:r:1000&ignore=electronic-circuit,battery,advanced-circuit
Here you are told that you need 5.7 silos. That's 5.7 silos running all the time, allowing for the 2475 ticks when it cannot make parts.

(Of course you cannot build 5.7 silos. Building  6 will mean that they are each working 5.7/6 = 95% of the time allowing for the 2475 ticks)

(Of course you cannot build 5.7 silos. Building 6 will mean that they are each working 5.7/6 = 95% of the time allowing for the 2475 ticks)

Or, perhaps wording it slightly differently, it means that each of the six silos will overproduce slightly, or will be inactive about 5% of their possible production time (not counting the launch animation), waiting for parts to be delivered to them.

Yeah I get how to use the calculator. I know that I can just punch in what I want and it works it out for me, like with the grey science. I literally just say I want to make so much science per sec, or I want to know the output of 10 machines, and it will give me all relevant machines needed. But for the calculator to know how to keep a machine running without pause, it needs to know how long each recipe takes, which will already be programmed into it, I'm not saying I need to input this, I just wanna know. It needs a time so it can calculate the component machines. If in the Silo's case, rather than know an individual time for each rocket part, it just does it as a whole per launch, what is this time? That's my query, and wondering if it can be displayed alongside the main calculator? Since I can't find it in the code. I don't think I'm being clear in what I'm asking, I just don't know how else to word it xD Maybe more simply, does anyone know the exact formula the calculator uses for silos? Maybe some handsome code trawler can fish it up for me?
Thanks for the help so far :)

(Of course you cannot build 5.7 silos. Building 6 will mean that they are each working 5.7/6 = 95% of the time allowing for the 2475 ticks)

Or, perhaps wording it slightly differently, it means that each of the six silos will overproduce slightly, or will be inactive about 5% of their possible production time (not counting the launch animation), waiting for parts to be delivered to them.

Sure. My stement was based on the assumption that the rest of the calculator wwould be followed, and there would be no capacity over production. :)

If in the Silo's case, rather than know an individual time for each rocket part, it just does it as a whole per launch, what is this time? That's my query, and wondering if it can be displayed alongside the main calculator? Since I can't find it in the code. I don't think I'm being clear in what I'm asking, I just don't know how else to word it xD

The calculator IS telling you how many silos you need for them to work without pause. If it tells you (for example) you need 0.5 silos, then if you could build 0.5 silos, it would work without pause.
You will though build 1 silo. If you don't double evrythng else that the calculator has output, and build 'to specification', then the 1.0 silos that you have built will only be working half the time. I'm not sure I understand the value in knowing what that time is, I understand what you are asking. If you knew that per launch, the silo was not making rocket parts for 20 seconds elapsed, what would you do with that information?

Maybe more simply, does anyone know the exact formula the calculator uses for silos? Maybe some handsome code trawler can fish it up for me?

In factory.js
`var rocketLaunchDuration = RationalFromFloats(2475, 60)
function launchRate(spec) {
var partRecipe = solver.recipes["rocket-part"]
var partFactory = spec.getFactory(partRecipe)
var partItem = solver.items["rocket-part"]
var gives = partRecipe.gives(partItem, spec)
// The base rate at which the silo can make rocket parts.
var rate = Factory.prototype.recipeRate.call(partFactory, spec, partRecipe)
// Number of times to complete the rocket part recipe per launch.
var perLaunch = RationalFromFloat(100).div(gives)
// Total length of time required to launch a rocket.
var time = perLaunch.div(rate).add(rocketLaunchDuration)
var launchRate = time.reciprocate()
var partRate = perLaunch.div(time)
return {part: partRate, launch: launchRate}
}
`

Thanks for the help so far :)

I don't think I can help further.

Yeah you're definitely not getting what I'm saying. I understand the calculator and what it's telling me. I know how to use it build a factory, it's pretty straight forward. I'm not asking how many Silos I need, or how to work it out, or how to use the calculator. Literally just if anyone knows the time the calculator uses for space science, to be able to give us the figures it does. And if it can be added to the interface. As I said, I can't figure out what time is used for the launch in the calculator based on the code. I get the launch animation of 2475 ticks for rocket launch, that's where I got it from, but that's not the whole story. It's the time used in the calculators formula I'm after. Not production per second, or amount of buildings needed, all of which I can get from the regular interface of the calculator. There's no reason for anyone to know why I want this info, but as I said, I like to work it out and build the factory without using the calculator. I use this sometimes to check big builds before I build it. It's part of my personal fun. If I know it won't be working for so much time, then I need to account for that when building component machines. I don't like idle machines. I like seeing all machines run perfectly, infinitely, without stopping. Very satisfying, but I want to work it out myself and have got stuck with just this last bit.

And you're not getting what I'm saying. The calculation for the silo is exactly the same as for the smelters, assemblers, refineries, chemical plants, and the miners.
The only difference is that the calculator knows that there are 2475 ticks for every rocket launch that it can do no work, due to the launch animation.
That was definitely my last word on the subject...

@JellyCoatedBean , the individual components are described in files divided by the game version and the expense:

data/vanilla-0.16.51.json
data/vanilla-0.16.51-expensive.json
data/017science-0.16.51.json
data/vanilla-0.17.60-expensive.json
data/vanilla-0.17.60.json

(Try this search.)
Looking in data/vanilla-0.17.60.json we can see ten occurrences of rocket-part. The first three assert (starting around line 2405) that rocket-part is affected by the three varieties of productivity module. Those definitions also describe the various attributes of those productivity modules, including as their speed and production bonus numbers.
A specific description of the rocket-part item begins on line 2741. This doesn't seem to go far toward answering your question.
Farther down in the file, beginning on line 7976, we find the recipe for rocket-part. This includes several interesting details, but the one that seems closest to your query is the, perhaps mis-named, energy_required:
"energy_required": 3,

Performing a manual comparison of this field in other recipes against the documented time to produce those items as described in the Factorio wiki suggests that this field is actually the number of game seconds required to produce one item in a factory (silo, in this case) with no modules, i.e. the base rate.
So, looking again at the code that @DRY411S pointed to above, we retrieve this recipe on line 281, and on line 286 we ask the factory, working with the recipe, to give a rate modified by the selected modules (I'm assuming that's what spec represents) for producing this item.
On line 290 we get a total production and launch time for 100 parts, i.e. one rocket. That's the "time" you asked for to produce 1,000 space science packs.
If you fork this project (GitHub is great about that), you can play with these numbers and look for a place to expose them in the interface.
I hope that helps and answers your questions.

@jdashton  "energy_required" is in fact the number of seconds to make the recipe, assuming that the 'factory' (in this case a silo) has a craft speed of 1. See https://wiki.factorio.com/Prototype/Recipe#energy_required
It is definitely not an intuitive name. It is used in all recipes, whether the recipe is made in a silo, miner, refinery, chemical plant or assembler.
I've been thinking about the OP request about displaying 'time to make space science'. I think that the answer is...
'all the time'.
It should be easy to display that. 🥇

Ooh, a part of the wiki that's new to me. Thanks for teaching me about that!

Ooh, a part of the wiki that's new to me. Thanks for teaching me about that!

Recently new to me. Before then, I was using definitions of everything factorio at https://lua-api.factorio.com/latest/ and publicly complaining on the forums that it wasn't being kept up to date.
That's when Klonan told me to use the wiki instead....

I get everything you're saying, but every reply you give, answers neither of my questions. When you input something for space science, it gives you the silos you need, since the silos are what create the rocket parts and launch, it's the figures in that calculation I'm after. Maybe I should have been more clearer on that, just didn't think I needed to. Obviously the formulas used will not change. My issue was when I use it manually, all things taken into account like rocket launch time, speed and prod mods, the timing for each part seems to change, which means there's an additional part of the formula I was missing. If I knew the time the calculator uses, that would help me along. Since the Silo can't produce during a rocket launch, this changes the way this specific recipe is worked out compared to the rest. So regardless of how similar it is to the rest, it isn't the same and doesn't help. The calculator tells you how many component machines you would need based on the speed of the silo and the time of the crafting recipe (rocket part) which is just what I was after. As opposed to knowing how long it takes based on my production. As jd says, it's 3 per part (base) which we knew it was, I just needed clarification to see if they changed it to make dealing with the idle time easier. Which is exactly what I needed, so thanks for that @jdashton. I'm just screwing something up when I'm working it out.
Obviously not all recipes are perfect, which kills me. especially the newer addition of 103/s water consumption in heat exchangers (that one hurt). But I won't know how close I can get it, if I don't have all the pieces I need to work it out. Most of my machines are perfect, no circuits, no over/under production. I've just always used circuits for the silos and wanted to better work it out myself and not rely on the calculator to do the work for me.
But yeah it would be cool if say after all beacons and mods are factored in, the new craft time for the recipe is displayed at the end or something. Seems like a simple addition, but really not necessary. Just helps people like me that aren't good with this sort of stuff, or explaining what I want it seems xD
Question answered, thanks for support guys <3

Now we heading offtopic and talking about the game rather than the calculator. But as far as I know, the heat exchangers have always consumed 103 water/s. There is nothing in the wiki that syas it has changed since nuclear was introduced in 0.15. https://wiki.factorio.com/Heat_exchanger.
But glad we got there in the end with the silo/space science timing. Though I confess I'm not sure where 'there' is. :lol:


Get Info for fan failure, array controller failure, smart storage battery status low or dead

Scenario/Intent
Is it possible to find Fans failure,Array Controller failure,Smart Storage Battery Status low or dead, Hard drive degraded or dead by api calls.
Environment Details

OneView SDK Version: release/4.8.0
OneView Appliance Version: 4.10.01-0348545
**Python Version:**3.7
Platform: macOS

@Imranatnisum ,
Sorry for the late replay.
After a quick search, I got the below info from the API doc.
For fan status use enclosure get method - status will be
Critical - Needs immediate attention.
Disabled - The resource is currently not operational.
OK - Indicates normal/informational behavior.
Unknown - The health status is not yet known or cannot be determined.
Warning - Needs attention soon.
Hard drive - refer "drive enclosure" resource
I am not able to see any direct call to get status of Array controller and storage battery but I believe most of the resource status info you can get from the Alert API call.


Fixed last snippet to select the counts property

You're right, I forgot that was the default behaviour. I'll close the PR


HistoryRouter Push method can remove first item but doesn't update historyIndex

Hi, I'm looking at the code to get familiar with your routers.  Great job and thank you for sharing.
Unless I'm missing something, I think there is a bug in the HistoryRouter Push method.  In the scenario when count is greater than history max size, it removes the first item but doesn't adjust the historyIndex to account for this.  Shouldn't the code decrement the history Index by 1 or -- to account for the removal of the first item?
I imagine this scenario is extremely rare and why no one has encountered an issue.

Shouldn't the code decrement the history Index by 1 or -- to account for the removal of the first item?

This seems to me like you are not experiencing an issue, but just having a question why things work like they do?!
Well, the HistoryMaxSize is something that should prevent the list of viewModels getting too big (e.g. to save memory as well as traversing time). This is designed as kind of a moving window, that discards items of the past that are no longer within the windowSize/HistoryMaxSize. So here is a short illustration:
# HistMaxSize=3

Action: push HomeViewModel
# Items: HomeViewModel
# Index=0

Action: push SettingsViewModel, push UsersViewModel
# Index=2
# Items: HomeViewModel, SettingsViewModel, UsersViewModel

Action: push RolesViewModel
# Index=2
# Items: SettingsViewModel, UsersViewModel, RolesViewModel

So the Index should not change when items are pushed beyond HistMaxSize, because everytime a new item is pushed upon the stack, another item is shifted from the beginning of the stack... Correct behaviour in my opinion. What do you think?

_history.Add(item);
_historyIndex = _history.Count - 1;
if (_history.Count > _historyMaxSize)
{
_history.RemoveAt(0);
// Need to add here or move the _historyIndex set below if
_historyIndex--;
}
_historyIndex will be equal to _history.Count instead of _history.Count - 1 without the change.  This would produce an error.

_historyIndex will be equal to _history.Count instead of _history.Count - 1 without the change. This would produce an error.

You may be right. I'll investigate this and probably write an xUnit-Test to prevent misbehaviour. Thank you for pointing this out.

No problem, great work on this library.  I'm just getting into Avalonia and found my way to your lib, extremely helpful.


Fix group size calculation when data has NAs

This reprex shows that whether cases with NA in the data are removed explicitly or implictly (as in #4), the objects created by OaxacaBlinderDecomp() are (as expected) identical up to the intentional differences in the dataset, but the summaries of the two objects differ:

Click to expand long reprex
library(OaxacaBlinder)

dv_na_incl <-
  OaxacaBlinderDecomp(
    formula = real_wage ~ age + education | female,
    data = chicago_long,
    type = "twofold",
    baseline_invariant = TRUE
  )

dv_na_cut <-
  OaxacaBlinderDecomp(
    formula = real_wage ~ age + education | female,
    data = chicago_long |> dplyr::filter(!is.na(real_wage)),
    type = "twofold",
    baseline_invariant = TRUE
  )

# Should be identical
waldo::compare(
  dv_na_incl[names(dv_na_incl) != "meta"],
  dv_na_cut[names(dv_na_cut) != "meta"]
)
#> ✔ No differences

# Should be identical except for dataset name
waldo::compare(
  dv_na_incl$meta[names(dv_na_incl$meta) != "data"],
  dv_na_cut$meta[names(dv_na_incl$meta) != "data"]
)
#> `old$dataset_name`: "chicago_long"
#> `new$dataset_name`: "dplyr::filter(chicago_long, !is.na(real_wage))"

# Summaries should be identical
summary(dv_na_incl)
#> Oaxaca Blinder Decomposition model
#> ----------------------------------
#> Type: twofold
#> Formula: real_wage ~ age + education | female
#> Data: chicago_long
#>
#> Descriptives
#>             n    %n mean(real_wage)
#> female==0 412 57.9%           17.52
#> female==1 300 42.1%           13.69
#>
#> Gap: 3.83
#> % Diff: 21.88%
#>               coefficient   % of gap
#> explained           -0.53     -13.9%
#> unexplained          4.37     113.9%
#> unexplained_a        1.89      49.2%
#> unexplained_b        2.48      64.6%
summary(dv_na_cut)
#> Oaxaca Blinder Decomposition model
#> ----------------------------------
#> Type: twofold
#> Formula: real_wage ~ age + education | female
#> Data: dplyr::filter(chicago_long, !is.na(real_wage))
#>
#> Descriptives
#>             n    %n mean(real_wage)
#> female==0 378 56.8%           17.52
#> female==1 288 43.2%           13.69
#>
#> Gap: 3.83
#> % Diff: 21.88%
#>               coefficient   % of gap
#> explained           -0.53     -13.9%
#> unexplained          4.37     113.9%
#> unexplained_a        1.89      49.2%
#> unexplained_b        2.48      64.6%

Created on 2024-03-01 with reprex v2.1.0

The output of summary() is wrong, or at best misleading, because it reports group sizes including cases with NA values even though the model removed them.  That's because summary() calculates the sizes directly from the data:
https://github.com/sinanpl/OaxacaBlinder/blob/5109b3c6a2f6491fa64ec13c4dedf1344023bc70/R/generics.R#L20
Hopefully there's a way to get this info from the fitted model itself so we can just rely on lm() to tell us what it did?  Needs further investigation.

I agree this is wrong. Initial thoughts are to

update counts based on dep_var being available
provide a message (in summary or list / metainfo kind of slot) with "n observations dropped"

In addition perhaps warning message at run for when NA values occur in DV / IV.
Any chance you've checked this scenario with the oaxaca package?

Any chance you've checked this scenario with the oaxaca package?

I think so, though not 100% sure.

I agree this is wrong. Initial thoughts are to
* update counts based on `dep_var` being available

* provide a message (in summary or list / metainfo kind of slot) with "n observations dropped"

In addition perhaps warning message at run for when NA values occur in DV / IV.

So OaxacaBlinderDecomp() calls fit_models(), which returns the whole lm objects for each model.  We could just store the result of nobs() for each model in the OaxacaBlinderDecomp results object and then have summary query that?
And in fact, maybe it'd be handy to just have the full lm objects in the OaxacaBlinderDecomp results?  It seems like #6 could use them too, and probably other things as well.  (For example, I'm not sure how things like augment would work for Blinder-Oaxaca, but it seems like they'd need the full model fits?)  There might be downsides though.  I'll open another issue for this.


Do I have to connect the hub before?

Hello Noam,
this would be awesome to connect and code the hub under Linux.
But I couldn't get it work. Do I have to connect the hub before by another tool? Or just plugin USB or start bluetooth?
I ask because there's not even a connection.
Would be great to get any help by you.
Thank you!
Update: I get the error rshell.pyboard.PyboardError: failed to access /dev/ttyACM0.

The /dev/ttyACM* showed:
crw-rw---- 1 root dialout 166, 0 Feb 16 19:15 /dev/ttyACM0
So I added me as user to the group by sudo adduser $USER dialout.
Then rebooted and ... thank you so much! It works!
I cannot write down how happy I am about it. Great support.

Great! Let me know how it goes!

@TravelTrader Bluetooth should work if you manage to get the serial port over bluetooth. It didn't work for me. If it works, you can just pass the device name (/dev/rfcomm0 or something like that) to Hub().
I found a library, spikedev, that allows reading of the sensors. I patched it a bit, and added a note on README.md on how to use it.


Scenario for QA setup 1b: HA with IPMI; swift; kvm and xen compute

This is specific for QA setup, as it points to shared storage devices used by QA (<IP_ADDRESS>:/var/ha-database)
Installation is expecting
3 controller nodes (named controller1, controller2, controller3)
4 compute nodes (named compute-kvm1, compute-kvm2, compute-xen1, compute-xen2) and
Such setup can be achieved by installing with
want_node_aliases=controller=3,computekvm=2,computexen=2

option.

There should be no misc node, according to the requirement. I'd just use controller1 for this.

I'd also add manila.

Note that you can steal bits from https://github.com/SUSE-Cloud/automation/pull/628 for most of my comments.

Manila was not in the requirements, do you think it was just an ommision?

Yeah, I think Manila was forgotten, let's add it.

+1

+1

I am not sure it is a good idea to put everything from misc to controller1.
Because when i install it manually i have to put some stuff on misc because of the disk claiming.
That is i get an error that no disks are available if something already claimed the disk (glance or something)
And besides, putting something to a node that is in a cluster was a big NO-NO before.

Well, there was no problem with disk claiming when I tested the deployment here. But you can adapt it to your needs of course, if they are different.


[WIP] Fix Jenkinsfile to build all variants

This is a work in progress to re-enable publishing of experimental images

no longer needed


[.dev] front end project pages have no margin

Front end project pages have no margin and hug the window:

All other pages have a margin I believe:

I can fix this one

@mot01 from the screenshots. does adding  a padding that way causes a horizontal scroll?

No, I'm pretty sure that's just my firefox being goofy again - that screenshot is from .dev and it shows this at the bottom on my firefox...

causing the horizontal scroll bar to appear, but it's fine on chrome.

That should get fixed by https://github.com/freeCodeCamp/freeCodeCamp/pull/36658, unless there's some other stuff overflowing.
It just needs
.btn {
  whitespace: pre-line;
}

Thinking about it: do you want to make that change in your PR as well, @moT01?  That way you can see if there are any other problems.

Looks like it might not be my firefox - I found that when signed in, it displays the button in the picture above - but when not signed in, the button says "I've completed this challenge"
So it's not the margin causing the scrollbar.

looks like that property does fix the scrollbar issue @ojeytonwilliams -

but it's strange that the button displays different text based on authentication


Log date and time?

Possible to add date and time to the log so i can see when it last checked? Just a feature request more then anything.

@mdhwoods Are you using Docker compose? If so, docker-compose logs --timestamps will give you the timestamps. (This is one of the few reasons why it has not been implemented.)

Didn’t use compose when building this one. But can. Used portainer. Will use logs —timestamp next time I rebuild the container. On Aug 24, 2024, at 5:46 PM, favonia @.***> wrote:
@mdhwoods Are you using Docker compose? If so, docker-compose logs --timestamps will give you the timestamps. (This is one of the few reasons why it has not been implemented.)
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

@mdhwoods The --timestamp option is not for you to build images, but to view the log of an existing container with timestamps. Anyway, if you are using Portainer, a similar option exists. Check out this website and enable "Show timestamp": https://docs.portainer.io/user/docker/containers/logs

@mdhwoods If you are happy with the timestamps provided by Portainer, I will close this issue soon (with an update to the FAQ section). If you think the updater should still timestamp the updates despite the existing timestamps, please respond with more comments. Thanks!

Ive been in there so many times never even saw that…. Thanks this is fine.On Aug 25, 2024, at 6:46 AM, favonia @.***> wrote:
@mdhwoods If you are happy with the timestamps provided by Portainer, I will close this issue soon (with an update to the FAQ section). If you think the updater should still timestamp the updates despite the existing timestamps, please respond with more comments. Thanks!
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>

Closing this. (BTW, perhaps you would like to respond directly on GitHub.)


HDDS-5326. EC: Create a new as many racks as possible placement policy for EC

What changes were proposed in this pull request?
One strategy for EC is to spread its replicas across as many racks as possible in the cluster to allow for multiple racks going down without affecting availability. This Jira is to implement an "As Many Racks As Possible" placement policy. While it is intended for EC, it could also be used by Ratis containers.
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-5326
How was this patch tested?
unit test

@sodonnel @umamaheswararao  Could you help to review this PR?

@symious Thanks for this change. I have a few comments and questions inline through the code.
One question - lets say we have a cluster with 3 racks and EC-3-2 needs 5 racks. Will the logic here handle that, and allocate something like below?
Rack1 - replica_1, replica_4
Rack2 - replica_2, replica_5
Rack3 - replica_3

@sodonnel Thanks for the suggestions.
I will first add two other tickets, one for NetworkTopology, the other for SCMPlacementPolicy refactor.
Then I will update this PR.

I have committed the two pre-requisites to master. Now I need to merge master to the EC branch before you can rebase.

@sodonnel Sure, thanks for the commits: )

I have merged master from today into the EC branch. Please rebase this one now and we can continue the good work on it.

@sodonnel Added shuffle for favoredNodes, choose skipped racks first for even distribution. Could you help to check?


FPS calculation is more accurate. On 60hz vsync it displays as 60.00 …

…rather than 60.2149... - Also display milliseconds per frame while we're at it.

Cool.


Security - Content Security Policy for inline Javascript

The current implementation works in development but in production it complains about insecure inline Javascript being loaded, due to the more restrictive Content Security Policy that gets (correctly) applied to production.
Some details:
https://guides.rubyonrails.org/security.html#content-security-policy

Fix the Javascript tags we can control and add the nonce to make them more secure.
The current backend plugin (RailsAdmin) doesn't seem to care much for CSP. Explore other options and fix the issue for the backend as well.

On the back of the feedback on https://github.com/DFE-Digital/npd-find-and-explore/pull/135, the following ticket will take care of fixing the remaining issues:
https://github.com/DFE-Digital/npd-find-and-explore/issues/139
https://github.com/DFE-Digital/npd-find-and-explore/issues/140
https://github.com/DFE-Digital/npd-find-and-explore/issues/141
https://github.com/DFE-Digital/npd-find-and-explore/issues/142
https://github.com/DFE-Digital/npd-find-and-explore/issues/143
https://github.com/DFE-Digital/npd-find-and-explore/issues/144
https://github.com/DFE-Digital/npd-find-and-explore/issues/145


Image flickering and loading times on re-render / inside animated component.

Is this a bug report?
Yes, i believe so. Related to either asset loading or performance.
Have you read the Contributing Guidelines?
Yes
Environment
Environment:
  OS: macOS High Sierra 10.13.1
  Node: 8.9.1
  Yarn: 1.3.2
  npm: 5.5.1
  Watchman: 4.9.0
  Xcode: Xcode 9.2 Build version 9C40b
  Android Studio: 3.0 AI-171.4443003

Packages: (wanted => installed)
  react: 16.0.0 => 16.0.0
  react-native: https://github.com/expo/react-native/archive/sdk-23.0.0.tar.gz => 0.50.3

Steps to Reproduce
Create an <Image /> housed inside an animated TouchableOpacity, then have the Image rendered be dependent on a state property - in this case to toggle between male and female icons on a custom toggle control.
I have @1x (no prefix) @2x and @3x versions of the icons, sized exactly right for the control - no resizing is taking place using style or otherwise.
Expected Behavior
After an initial loading flash (expected), toggling between the two icons (i.e. a re-render) should not cause a delay before showing the other icon.
You can see it works pretty quickly to switch in the Snack demo.
Actual Behavior
As you can see, any re-render triggers a flash where the image is empty, these are tiny images that have been loaded before, so i thought they'd perhaps remain in memory without having to re-request them from the filesystem (i'm assuming that's what the delay is caused by here).
First flicker is caused by tapping the user error banner (which causes a re-render). Second and onwards you see is caused by toggling the switch, which fires setState when tapped.
This doesn't happen even on Ionic applications - the first time the image is loaded, it is cached by the browser, and doesn't need to be refreshed again.

Reproducible Demo
Strangely enough, this snack demo works exactly how it should using the same code as mine - is it simply that the asset loading on my local version (expokit, ejected), takes longer to load the assets?
If you set the state change to happen after the animation (in the callback), it can take up to a full second to load the icon.
https://snack.expo.io/SyEgZnsXM

The problem is the library ("fresco") that uses react-native to render images in android. You must use cover in resizeMode


How to extract binary mask from points?

I have a region of interesting (some points), and I want extract the binary mask from these points.
For example:

I have the points (red line), and I want to obtain the binary mask under these points.
How can I implement this require using vedo?

hi did you close the issue because you solved it already?

Because I find another way to exclude this requirement. Or, could you please have some time to tell me how can I implement this requirement using vedo? So I can have a deeper understand into vedo.

it looks doable, a wise combination of frehandcutplotter and volume.binarize() should do the job :)


Implement a way to mark a public API as deprecated

Have the ability for the developer to indicate deprecated methods.
Calling deprecated methods (by default) should output a STDERR warning message saying that the deprecated method was called and what line of code called it.
The user of the gem should have the ability to suppress the warning messages or to raise an error when a deprecated method is called.

Fixed in #709


Run start command on system load

Hi, first of all thank you for creating this library, I am a huge fan of easystroke but it stopped working on Debian 12 (gnome 43). So because of that I found your library and it is awesome.
I have a question if it is possible to launch the start command on system load so user can use mouse actions without starting any script.
I tried to create custom service in systemd but I got KeyboardError.
Thank you for your work and have a nice day!

Hi, thank you for your comment !
Personally, I added a ".desktop" file in the folder "~/.config/autostart/", but MA could create this file indeed, I leave open this ticket to treat it in the future.
Your desktop environment (gnome) should probably allow you to configure this graphically, maiby : https://help.gnome.org/users/gnome-help/stable/shell-apps-auto-start.html.en ?

Jersou's answer is the easiest way - use your DE's GUI to add it as a startup item.
If you want a different approach (which will also unload it automatically when you leave the GUI) I have a pretty raw service unit file in my OBS build, this is just something I've been working on in the sidelines and isn't necessarily production-ready, but it might get you started, it definitely works (maybe it is production-ready after all, honestly):
[Unit]
Description=mouse-actions

[Service]
ExecStart=/usr/bin/mouse-actions start
ExecStop=/usr/bin/mouse-actions stop
ExecReload=/usr/bin/mouse-actions stop && /usr/bin/mouse-actions start

[Install]
WantedBy=graphical-session.target

Create this file as /usr/lib/systemd/user/mouse-actions.service
You may need to change the paths depending on your distro, but put it wherever it puts user unit files and change the Exec* lines in the unit file to wherever you have installed mouse-actions (and append -gui if you aren't installing the daemon-only version but only the GUI version). This one is setup for a standard installation in OpenSUSE TW because it comes from an OpenSUSE package, so change it as you require.
Run systemctl --user enable --now mouse-actions
Now mouse-actions will start and will always do so when your GUI does and stop when you leave the GUI (say you log out of gnome and are working in the TTY shell for some reason)
You can stop and start it as you would any systemd user service ie
systemctl --user stop mouse-actions
You may need to change the paths depending on your distro, but put it wherever it puts user unit files and change the Exec* lines in the unit file to wherever you have installed mouse-actions (and append -gui if you aren't installing the daemon-only version but only the GUI version). This one is setup for a standard installation in OpenSUSE TW because it comes from an OpenSUSE package, so change it as you require.

Here is another proposition for that...
It is a bit ugly and probably not the best, but it is a workaround that lessens the security risk of the requirement of the app, the user to be in the input/plugdev group...

You will need to make sure that you have the udev rule for uinput access described in the apps requirement. Do this by:

sudo tee /etc/udev/rules.d/80-mouse-actions.rules <<<'KERNEL=="uinput", SUBSYSTEM=="misc", TAG+="uaccess", OPTIONS+="static_node=uinput"'

Create a user service that provides some user environment variables which are important for the app to run. Put this file in /etc/systemd/user/ and name it export-user-environment.service. Thus you will have: /etc/systemd/user/export-user-environment.service. The content of the file:

[Unit]
Description=Export user environment for usage with X11 apps user systemd services

[Service]
Environment="U_HOME=%h"

ExecStart=bash --login -c 'env | grep -P -e "(XDG_|DISPLAY|GDK_|GTK_|LANG|LC_|SESSION_|XAUT|KDE)" | sort > $U_HOME/.magic-environment-file' 2>/dev/null

[Install]
WantedBy=default.target

Then create the user systemd service file for starting mouse-actions as user. The file should be: /etc/systemd/user/mouse-actions-control.service with this content:

[Unit]
Description=Starts mouse-actions as user using sudo
After=export-user-environment.service
Requires=export-user-environment.service

[Service]
RemainAfterExit=true

# Give some seconds for DE to load. You may comment this out if you do not need it.
ExecStartPre=/bin/sleep 10

ExecStart=sudo /usr/bin/systemctl start<EMAIL_ADDRESS>ExecStop=sudo /usr/bin/systemctl stop<EMAIL_ADDRESS>ExecReload=sudo /usr/bin/systemctl stop<EMAIL_ADDRESS>&& sudo /usr/bin/systemctl start<EMAIL_ADDRESS>

[Install]
WantedBy=graphical-session.target

Now create the real app starter but as a system service, so we can use the systemd SupplementaryGroups magic... Put the file in /etc/systemd/system/ and name it<EMAIL_ADDRESS>Thus you will have<EMAIL_ADDRESS>The content:

[Unit]
Description=Starts mouse-actions as user, so no security risk of being in input group

StartLimitIntervalSec=600
StartLimitBurst=5

[Service]
User=%i
# Depending on your distro you may need to replace this with plugdev
SupplementaryGroups=input

EnvironmentFile=/home/%i/.magic-environment-file

ExecStart=/usr/bin/mouse-actions start
ExecStop=/usr/bin/mouse-actions stop
ExecReload=/usr/bin/mouse-actions stop && /usr/bin/mouse-actions start

# Ensure auto restart if the app crashes or if the GUI is used to start/stop it
RestartSec=5s
Restart=on-failure

[Install]
WantedBy=graphical-session.target

Finally add the necessary entries for sudo, so system service to be able to start automatically with no password needed. Depending on the distribution you should put this either in /etc/sudoers.d/ as a separate file, or inside your /etc/sudoers file at its end. As a separate file it should be for example: /etc/sudoers.d/003_systemd_mouse_actions The content:

ALL ALL=NOPASSWD:/usr/bin/systemctl start<EMAIL_ADDRESS>ALL ALL=NOPASSWD:/usr/bin/systemctl stop<EMAIL_ADDRESS>ALL ALL=NOPASSWD:/usr/bin/systemctl restart<EMAIL_ADDRESS>ALL ALL=NOPASSWD:/usr/bin/systemctl reload<EMAIL_ADDRESS>ALL ALL=NOPASSWD:/usr/bin/systemctl status<EMAIL_ADDRESS>

Now enable the user service with this command (do this as your user, not as root):

systemctl --user enable mouse-actions-control.service

Now best restart your computer, so everything could work as expected.

All this is in order the user not to be in the input/plugdev group which increases the security risks of other programs to be able to "listen" to all your input devices.
The proposed workaround makes so, that only the mouse-action app can listen to all inputs.
The actual system service file, monitors the app for crashes and restarts it automatically. It does restart it also when the GUI is used to change the config (it is because the GUI kills the app and the service talks that as a crash)..
Any suggestions for changes are welcome.
Hope this helps.


build-guidelines-html errors

When building guidelines html the transformationn throws two errors concerning svg:
ERROR: Unable to resolve link to svg
ERROR: Unable to resolve link to svg_svg

@kepper could you please have a look?

this is fixed in https://github.com/music-encoding/music-encoding/tree/pdf-guidelines-test 5ab0214e8dbb6cea30a581a0633f9c7f572fae49


YAxis labels not shown when formatted starts with 0

Description
If the formatter you pass into the yaxis.labels.format function formats text that starts with zero, it'll appear empty
Steps to Reproduce

create a chart with a series
set yaxis.labels.formatter to ()=>'0 test'
on hover labels no longer appear

Expected Behavior
hover labels should appear
Actual Behavior
hover labels do not appear
Screenshots

Reproduction Link
https://codepen.io/sergeydus/pen/MWxJLOQ

I'm seeing this issue as well.
If it's a float number starting with 0 it is working. But not if you want to format it with a comma instead of a dot.

()=>'0.25 test' is working
()=>'0,25 test' is not working

The same also applies when using tooltip.y.formatter function

As a workaround for now, also set the tooltip.y.formatter when setting y-axis formatter.
      tooltip: {
          y: {
            formatter: (val) => {
              return val
            }
          }
        }

As a workaround for now, also set the tooltip.y.formatter when setting y-axis formatter.
This workaround doesn't work for me when val equals zero. Have to use:
if (val === 0) return '"0"'

This issue is no longer present. It was fixed with the latest releases.
Try upgrading apexcharts to 3.49.0


Add automatic DNS configuration

Add a way to configure the DNS server automatically during connection setup.
It will likely need different implementations per platform.

Blocked by https://github.com/tun2proxy/rust-tun/issues/92.


JobClusterTest#testCronTriggersSLAToKillOld is flaky

Context
There are some ordering assumptions that are made in the test io.mantisrx.master.jobcluster.JobClusterTest#testCronTriggersSLAToKillOld. This assumption may or may not hold true depending on timing and hence is flaky.
Steps to reproduce
Run the test a few times.
Expected behavior
The test should always succeed.
Actual Behavior
The test should fail sometimes.

Hi @sundargates is this issue resolved? I would like to work on this. Can you please assign this to me if its still open


Add CAE Support in Service Principal authentication

Adds CAE Support in SP Auth flows of Client Secret/Certifcate/Assertion, OBO etc.
Fixes #31173

API change check
API changes are not detected in this pull request.

/azp run java - identity - ci


Importing the plug-ins results in tow projects with identical resources

AppCentrakRTLS;

CentrakRTLS

Please file issues against the Vantiq/Blueprints repo, not the Vantiq/vantiq-blueprints repo. The latter is only for the zip files used to import in the UI. All issues should be reported against this repo, where the code lives.


Represent QScript buckets as an array of FreeMap

Currently QScript nodes provide bucketing information as a single FreeMap, which is sometimes created from an array of provenance. Instead, we should represent the bukets as List[FreeMap]. This way Nil signifies "no bucketing", and it's more in line with how we already store provenance information.

Upon further thought, the bucketing information FreeMaps are semantically combined with "and" and their order doesn't matter. So really, I think we can use an unordered data structure where each element is distinct.
For example the buckets: Array(ProjectIndex(src, 0), ProjectIndex(src, 0)) will produce the same bucketing information as Array(ProjectIndex(src, 0)).
When the initial array (or set, or whatever) is constructed, we may not know that elements within it are actually equal at the value level. For example we might create Array(ProjectIndex(src, 0), ProjectIndex(src, 1)) which later simplifies to Array(thing, thing) and thus could be rewritten as Array(thing).

This is done in next-major. Closing since there is no query to verify.


[PROPOSAL] Publish artifacts

What kind of business use case are you trying to solve? What are your requirements?
Need to publish artifacts (as binaries, as well as to PyPI) so that it can be easily consumed by our users.
What is the problem? What is preventing you from meeting the requirements?
N/A
What are you proposing? What do you suggest we do to solve the problem or improve the existing situation?
See above
What are your assumptions or prerequisites?
N/A
What are remaining open questions?
None

We at GrimoireLab use a semi-automatic system for managing releases.
Whenever a tag is pushed, github action workflow is triggered which builds the package, tests it with different python versions, and publishes it on github, PyPI, etc. Here is the release workflow file for reference.
Though, we cannot use the exact same file, I believe we can make use of github actions and come up with a workflow that publishes the artifacts. Would be interested to listen to your view on this. :slightly_smiling_face:

Would find this extremely useful

@rushiagr This is published (https://pypi.org/project/opensearch-py/). Can we close this?


Bump core image to v19.9.0

latest stable core release v19.9.0

is services/horizon/docker/docker-compose.integration-tests.yml an old file?

Run docker pull "$PROTOCOL_19_CORE_DOCKER_IMG"
Error response from daemon: manifest for stellar/stellar-core:19.9.0-1254.064a2787a.focal not found: manifest unknown: manifest unknown

all checks passed