set default font to BC Sans

Description
This PR includes the following proposed change(s):

Set app default font to BC Sans

Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Refactoring / Documentation
[ ] Version change

if your change is a breaking change, please add breaking change label to this PR
How Has This Been Tested?
Please describe the tests that you ran to verify your changes.
Does the change impact or break the Docker build?

[ ] Yes
[x] No

If Yes: Has Docker been updated accordingly?

[ ] Yes
[ ] No

Checklist:

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[ ] New and existing unit tests pass locally with my changes

this PR no longer needed


Russian Translatione work-on-coding-challenges

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #18308

@tkachenkomaksym  Thank you for your pull request.
I am closing this pull request. This is a duplicate of the following PR - #18544
If you think I’m wrong in closing this issue, please reopen it and add further clarification. Thank you, and happy coding.


Parallex effect

Related Issue

Parallax Effect using RellaxJS Library, js, HTML and CSS. Parallax scrolling is a web site trend where the background content (i.e. an image) is moved at a different speed than the foreground content while scrolling.

Closes: #1393
Describe the changes you've made
I have made the respective HTML, CSS and js files with images added in it. I have used RellaxJS Library for Basic Markup , Optional Speed , Use the data-rellax-speed attribute to set the speed of a .rellax element to something other than the default value (which is -2), Use responsive speed attributes for breakpoint levels that require a different speed, also to to sort the elements properly in the Z space
Describe if there is any unusual behaviour of your code(Write NA if there isn't)
NA
Checklist:

[x] My code follows the style guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] I have made corresponding changes to the documentation.
[x] New and existing unit tests pass locally with my changes.

Screenshots

@Vishal-raj-1 @ridsuteri please review my pr and merge it

@ridsuteri please review my pr

@urvashi-code1255 @harshgupta20 @ridsuteri @991rajat please review and merge my pr

@Vishal-raj-1 please review and merge my pr

okay @ridsuteri I will fix this and make a different pr


Tus server not found

Hello everyone,
I integrated Tus server in Laravel application but when I dump :
$response = app('tus-server')->serve();
dd($response);
the message is :
Response {#493 ▼
+headers: ResponseHeaderBag {#494 ▶}
#content: ""
#version: "1.0"
#statusCode: 404
#statusText: "Not Found"
#charset: null
}

I have tried this and it works. https://github.com/ankitpokhrel/tus-php/issues/245

I have tried this and it works. https://github.com/ankitpokhrel/tus-php/issues/245

@dusanjablanovic2224 Its hard to say anything based on the details you shared but I assume that you might have missed some steps when setting up the package. You can find setup instructions for Laravel here. The instructions are based on Laravel5 so few things might have got changed in the new version, yet, it should give you the general idea.


[CI borken] Tests fails on appveyor

... with python3.6/PyQt5 and python2.7/PyQt4.
It looks to come from PR #1208 which tests failed

Fixed by https://github.com/silx-kit/silx/pull/1240
A lost commit from my side.


Make document creation options available from Document context menu + Introduce functionality to paste a new document from clipboard +  	Add several more shortcut keys

This pull request contains the following new functionality:

Document creation options are now available from the Document context menu. The point of this is to make the shortcut options more obvious as well as not having to go up to the top of the list and click on the parent node if you are in a large collection of documents.

There is now a new option to paste a document from the clipboard, either via the context menu or by using ctrl+v. The functionality will verify that the contents of the clipboard is a valid json payload as well as containing an "id" node with a valid guid value before allowing the contents to be pasted into the creation window.

Several new shortcut keys has been added.

Replaced with new pull request


Errors after latest Bagnon update

Message: ...rface/AddOns/Bagnon_ItemInfo/modules/uncollected.lua:53: Usage: local hasTransmog = C_TransmogCollection.PlayerHasTransmog(itemID [, itemAppearanceModID])
Time: Fri May  5 20:26:16 2023
Count: 110
Stack: ...rface/AddOns/Bagnon_ItemInfo/modules/uncollected.lua:53: Usage: local hasTransmog = C_TransmogCollection.PlayerHasTransmog(itemID [, itemAppearanceModID])
Locals:
Getting errors like that after the latest 10.1 bagnon update

Bagnon was (finally) updated. Looks like this addon needs to be updated to suit all those changes. Disabling for now, hopefully an easy fix!! :)

Yeah, getting errors too. :/

Any chance for update or at least let us know if there are plans to do so?
There are alternatives but I really want to stick with this one....
Thanks :)


Cannot start faster-whisper

I attempted to use faster-whisper in PyCharm, created a new project with dedicated venv and followed  the installation instructions given in this repo. However, when I tried to run the example script I got the following error message:
Could not load library libcudnn_ops_infer.so.8. Error: libcudnn_ops_infer.so.8: cannot open shared object file: No such file or directory
OS: Linux Mint

We experienced this issue with torch v2.4. Downgrading to v2.3.1 fixed it for us.

Denis, any update? Same issue here on Debian 12.
Cuda 12 installed, OpenAi`s whisper works, this one not :(

We experienced this issue with torch v2.4. Downgrading to v2.3.1 fixed it for us.

Thanks. I checked torch version. It is already 2.3.1 in my case.

Denis, any update? Same issue here on Debian 12. Cuda 12 installed, OpenAi`s whisper works, this one not :(

Alas no, I have given up on it. I am just a language researcher.
I hope to be able to use "slower" Whisper for my application (online speech translation) through simpler logic. Another faster option is Vosk, but Whisper is better.

Note that LD_LIBRARY_PATH must be set before launching Python.

pip install nvidia-cublas-cu12 nvidia-cudnn-cu12

export LD_LIBRARY_PATH=`python3 -c 'import os; import nvidia.cublas.lib; import nvidia.cudnn.lib; print(os.path.dirname(nvidia.cublas.lib.__file__) + ":" + os.path.dirname(nvidia.cudnn.lib.__file__))'`

Did you see this in installation instructions? You need to do export LD_LIBRARY_PATH=... every time in the terminal where you are running faster-whisper.

We experienced this issue with torch v2.4. Downgrading to v2.3.1 fixed it for us.

this fixed it for me as well!

Note that LD_LIBRARY_PATH must be set before launching Python.

pip install nvidia-cublas-cu12 nvidia-cudnn-cu12

export LD_LIBRARY_PATH=`python3 -c 'import os; import nvidia.cublas.lib; import nvidia.cudnn.lib; print(os.path.dirname(nvidia.cublas.lib.__file__) + ":" + os.path.dirname(nvidia.cudnn.lib.__file__))'`

Did you see this in installation instructions? You need to do export LD_LIBRARY_PATH=... every time in the terminal where you are running faster-whisper.

Hi! No, I did not see it and do not see it now at https://github.com/SYSTRAN/faster-whisper
Anyhow, I started PyCharm and ran this command in the terminal but got the same error.


Support backteating with two different timeframes

I would like to run backteating for BTCUSDT pair 1h timeframe but then simulate exchange behavior using 1s timeframe to have more realistic analys. Is it possible to do using existing code or it is a new feature?

Hi @ramilexe, I never tested with 1s timeframe. But it works fine with 1m and above. I believe that Binance do not provide the 1s timeframe data feed to download. Because the real time feed is updated each 2s.
To use this feature, you have to load a small time frame in the backtest, example:
	csvFeed, err := exchange.NewCSVFeed(
		strategy.Timeframe(),
		exchange.PairFeed{
			Pair:      "BTCUSDT",
			File:      "testdata/btc-1m.csv",
			Timeframe: "1m",
		},
		exchange.PairFeed{
			Pair:      "ETHUSDT",
			File:      "testdata/eth-1m.csv",
			Timeframe: "1h",
		},
	)

And in your strategy you have to specify your time frame, e.g.: 1h

Thank you, does the order of PairFeed matter?

I think it will not affect the trading results.


cardinal: init at 2020-01-05

Motivation for this change
This is a package for Cardinal, an LV2 plugin version of VCV-Rack.
Ping the maintainers of VCV in Nixpkgs:
@moredread and @nathyong.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

For ref, I've been able to build and run Cardinal (for my own needs) with https://git.marvid.fr/mpo/overlays-personal/src/branch/master/pkgs/cardinal/default.nix

Ttile of PR should be cardinal: init at 2022-01-05, right?

Ttile of PR should be cardinal: init at 2022-01-05, right? (as well as commit message)

Ah, yes indeed.
Fixed now!

I updated to today's version.

New PR for release version: https://github.com/NixOS/nixpkgs/pull/160488


Unable to login with new authentication system.

logs.zip
Describe what happened:
Entering token does nothing.
What was your system configuration?

Product and Version [VS/VSCode]:

OS Version[macOS/Windows]:
Amazon linux which is a yum based distro based on who knows what these days.
Live Share Extension Version:
v1.0.3784
Target Platform or Language [e.g. Node.js]:
???
Steps to Reproduce / Scenario:

Click Sign into liveshare

Click Authorize and give you guys read/write access to literally everything I have in github 🤔

Redirect doesn't work so I copy the token that doesn't look like a token

Pase URL/Token thing into prompt in VS Code, press enter, nothing happens

Please attach logs to this issue:
You can access them via the Live Share: Export Logs command from the command palette (ctrl + shift + p) and attach them to this issue
Screenshots
If applicable, add screenshots to help explain your problem.

I think its similar to mint? but not really.
No I can't I have also opened an issue with them https://github.com/microsoft/vscode/issues/117377
Even with debug logging on this is all that shows up:[Info  - 15:27:20.770] Logging in...
[Info  - 15:27:56.54] Treating input as toke

Thanks for the information. It looks like an upstream issue in VSCode at this point. If the previous implementation of the authentication flow worked on this OS you can revert to it by doing the following:
Add .vs-liveshare-settings.json file to the home directory. Then add this content to it:
{
	"nativeAuthSwitch": false
}

Yes the issue was with vscode and is fixed in the insiders build.

Glad to read that, thanks for the update!

Thanks for the information. It looks like an upstream issue in VSCode at this point. If the previous implementation of the authentication flow worked on this OS you can revert to it by doing the following:
Add .vs-liveshare-settings.json file to the home directory. Then add this content to it:
{
	"nativeAuthSwitch": false
}

I tried /home/ralex/.vs-liveshare-settings.json without success
I'm I missing something? @olegoid

@ralexrdz, let's keep the investigation in this ticket. Please submit the following info so we can investigate this issue further:

Live Share logs (you can use "Live Share: Export Logs" command in VSCode)
Did Live Share authentication work for you prior to v1.0.3784 release?
Does Settings Sync work for you with VSCode stable/insiders?


Incorrect table order

Hi there,
I'm facing an issue where my tables are not being exported in a correct order. This leads to attempting to reference foreign keys from a table that does not exists yet.
Restoring the backup works after manually rearrange the order.
For example, my last backup starts with this:
CREATE TABLE IF NOT EXISTS  alt_texts (
    id INTEGER PRIMARY KEY AUTOINCREMENT,
    image_id INTEGER NOT NULL,
    alt_text VARCHAR(150) NOT NULL,
    FOREIGN KEY (image_id) REFERENCES images(id)
);

But the images table is only created later.

Hi, can you give me the images schema as well so I can reproduce properly?

Hi, can you give me the images schema as well so I can reproduce properly?

CREATE TABLE IF NOT EXISTS "images" (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  filename TEXT NOT NULL UNIQUE,
  created_at TIMESTAMP WITHOUT TIME ZONE DEFAULT CURRENT_TIMESTAMP
);

Can you make sure you're on the latest version?


Check for function-like rule and configuration

Reviewer checklist

[ ] Test coverage: stack test --coverage
[ ] Public API documentation: stack haddock

I just pushed fixes for all of the test failures except the \ceil ones. What did we decide to do about \ceil simplification rules again?

@ttuegel please take a look.


Using input fields inside form

Hello,
First of all, gotta say that this feature is awesome, works like a charm.
I'd like to mention that if I use the color picker inside a form, when I send the information to the back-end, I receive a lot of unnecessary information, because since the color picker has input fields with the "name" attribute, all this data gets saved, even if I disable HSL and RGB picker, they're still in the DOM but not rendered, so I get the numbers anyway.
Is there any way to solve this? A way to not send everything on submit.
What I have on my form is a hidden input field that I change the value using the .onChange property when instancing it. Like this:
const picker = AColorPicker.createPicker({       attachTo: 'div.colorPicker',       showHSL: false,       showRGB: false     }).onchange = (picker) => {       $('input#color').val(picker.color);     };

Hi @L1qu1d1c3 ,
you're right, all fields, even hidden ones, have the attribute name. In this way all of them are submitted.
I'll fix it as soon as possible.

Hi @L1qu1d1c3 ,
try new version 1.1.4, unused DOM elements will no longer be rendered.
I also removed the "name" attribute from all input elements.


Change forRoot to provideStore while importing StoreModule

I have just started with ngrx and found that the forRoot wasn't working. Then need to search google for this issue. Just made the change to provideStore.
Hope the next beginner will start easier.

The docs reflect the upcoming V4 release which uses forRoot. See https://github.com/ngrx/store/pull/356


mkcloud: allow independent creation/use of DRBD disks

Currently the hacloud option is very opinionated and requires at least 11 VMs
to work.  On a machine with only 16GB of RAM this is totally useless.  There
are plans to fix this:
https://trello.com/c/9viz41KH
However as a short-term workaround it is good enough to simply allow DRBD
disks to be set up even if the hacloud parameter is not set to 1; then we can
do:
mkcloud instonly
and then feed a pre-prepared YAML to crowbar batch to set up the cloud.

:+1: nice


Tobias Snake make is Shutting down automatically

I dont know why, My tobias snake make pipeline is automatically shuting down. I tried with the same sample multiple times, Each time its shutdown at different timepoint. I have enough space in my system space and memory. I cant able to figure out why this error is showin you can any one help me out. I have enlcosed my log file for your reference.
2023-11-06T155421.896425.snakemake.log
The command i used for the analysis.
snakemake --configfile config.yaml --cores 30 --use-conda --conda-prefix Temp

Hi @mano2991,
Thank you for the log. It says that it is the format_motifs rule that fails - you can see the log for it at /home/manoj/Documents/anisha/DRG_simone/Tobias/logs/format_motifs.log.
I suspect the issue is due to a matplotlib deprecation error, which I just pushed a fix for today. If you run git pull or just download the TOBIAS_snakemake repository again, the error should be fixed. Please let me know if this is not the case.
BR Mette

@msbentsen
Still the error on matplotlib  is ocuring.
TOBIAS DownloadData
Traceback (most recent call last):
  File "/home/manoj/anaconda3/envs/tobias_snakemake_env/bin/TOBIAS", line 7, in <module>
    from tobias.TOBIAS import main
  File "/home/manoj/anaconda3/envs/tobias_snakemake_env/lib/python3.10/site-packages/tobias/TOBIAS.py", line 38, in <module>
    warnings.filterwarnings("ignore", category=matplotlib.cbook.mplDeprecation)
AttributeError: module 'matplotlib.cbook' has no attribute 'mplDeprecation

While trying to run my sample Im facing an different error
[Wed Nov  8 10:46:17 2023]
Finished job 6.
4 of 14 steps (29%) done
Select jobs to execute...

[Wed Nov  8 10:46:17 2023]
rule uropa:
    input: /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated.config
    output: /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_finalhits.txt, /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_finalhits_sub.txt, /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated.bed, /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_header.txt
    log: /home/manoj/Documents/anisha/DRG_simone/Tobias/logs/uropa.log
    jobid: 5
    reason: Missing output files: /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated.bed, /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_header.txt; Input files updated by another job: /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated.config
    threads: 30
    resources: tmpdir=/tmp

Activating conda environment: Temp/61c1023a82669b0f72b381fad05b3541_
cut: /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_finalhits.txt: No such file or directory
[Wed Nov  8 10:46:34 2023]
Error in rule uropa:
    jobid: 5
    input: /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated.config
    output: /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_finalhits.txt, /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_finalhits_sub.txt, /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated.bed, /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_header.txt
    log: /home/manoj/Documents/anisha/DRG_simone/Tobias/logs/uropa.log (check log file(s) for error details)
    conda-env: /home/manoj/Documents/TOBIAS_snakemake/Temp/61c1023a82669b0f72b381fad05b3541_
    shell:
        uropa --input /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated.config --prefix /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated --threads 30 &> /home/manoj/Documents/anisha/DRG_simone/Tobias/logs/uropa.log; cut -f 1-4,7-13,16-19 /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_finalhits.txt > /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_finalhits_sub.txt; head -n 1 /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_finalhits_sub.txt > /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_header.txt;tail -n +2 /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_finalhits_sub.txt > /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated.bed
        (one of the commands exited with non-zero exit code; note that snakemake uses bash strict mode!)

Removing output files of failed job uropa since they might be corrupted:
/home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated_finalhits_sub.txt
Shutting down, this might take some time.
Exiting because a job execution failed. Look above for error message
Complete log: .snakemake/log/2023-11-08T103458.327735.snakemake.log

I have enclosed the log file for your reference.
[uropa.log](https://github.com/loosolab/TOBIAS_snakemake/fil
2023-11-08T103458.327735.snakemake.log
es/13292839/uropa.log)

Hi @mano2991 ,
Great, thank you for the logfiles. If you look into the uropa.log file, you can see the error:
2023-11-08 10:46:20 (485343) [INFO]	Preparing .gtf-file for fast access
2023-11-08 10:46:34 (485343) [ERROR]	Query feature(s) ['gene'] not found in gtf

This means that there is no feature (3rd column of the .gtf) named gene to use for annotation. Can you check which .gtf-file you are given in the config file? Making sure that this has genes should solve the issue.

Hello @msbentsen,
I'm currently using the mouse mm10 GTF file, which I downloaded from https://ftp.ebi.ac.uk/pub/databases/gencode/Gencode_mouse/release_M22/gencode.vM22.annotation.gtf.gz.
While comparing this file with the example file from Tobias, I noticed that they appear quite similar. I've attached a screenshot of the first two lines from my GTF file for your reference.

In both files, the third column contains the value 'gene', and within this column, separated by semicolons, there are also gene names. Despite these similarities, I'm encountering an error in the TOBIAS pipeline, and I'm unsure why this is happening.
Additionally, it would be helpful if you could provide a link to download a GTF file that is compatible with the TOBIAS pipeline, or if you could specify the format requirements for a GTF file to be used with this tool.

Hi @mano2991 ,
Thank you for the link to the file. Are you giving it as .gtf or .gtf.gz in the config file? I will recommend to unzip it and give it as raw .gtf.
If this does not work, can you send me the content of the /home/manoj/Documents/anisha/DRG_simone/Tobias/peak_annotation/all_merged_annotated.config file? Thank you.
Best regards,
Mette

@msbentsen
im using it in unziped format only.  As i cant able to upload the config file directly, i have renamed it as .text for your refernce.
all_merged_annotated.txt

@msbentsen im using it in unziped format only. As i cant able to upload the config file directly, i have renamed it as .text for your refernce. all_merged_annotated.txt

Great, that looks good. Can you check the output of:
head -n 10 /home/manoj/Documents/anisha/DRG_simone/Tobias/flatfiles/mm10_v2.gtf and
tail -n 10 /home/manoj/Documents/anisha/DRG_simone/Tobias/flatfiles/mm10_v2.gtf
Just to make sure the .gtf file is not corrupted or otherwise has issues.

@msbentsen,
Identified the issue. I resolved it by removing the conda environment, reinstalling it, and restarting my machine, which helped clear the temporary memory. Thank you for your support


fix(config parser): lodash removal had some errors

looks sane, thanks!

Why didn't these show up in a test failure? Can we add something to our CI suite?

We don't run all the tests in CI.  I guess we don't hit the suite feature at all?


C++ port of Milsymbol

There's a comment at the bottom of this issue: https://github.com/spatialillusions/milsymbol/issues/36
that mentions Milsymbol has been ported to C++ before. I can't find any information about it from googling though and I'm wondering if anybody knows what that's about and where I could find it if it is opensource.

I don't know if this will help you, but I've been using this JavaScript library in C++ by calling it via a .NET javascript compiler from Microsoft called ClearScript https://github.com/microsoft/ClearScript which works on Windows, Linux, and MacOS.
I use ClearScript in C# like this to run milsymbol.js:
V8ScriptEngine engine = new V8ScriptEngine(nameof(MilStd2525), V8ScriptEngineFlags.EnableDebugging);
string jsContents = string.Empty;
using (Stream stream = File.Open("milsymbol.js"))
{
  using (var reader = new StreamReader(stream))
  {
    jsContents = reader.ReadToEnd();
  }
}
engine.Execute(jsContents);

and I have a function that gives me the symbol like this:
public string CreateSymbolAsSvgString(int size, string sidc, out bool isValid)
{
  sidc = $"\"{sidc}\"";

  // Insert javascript as a string for the milsymbol creation
  var script = $@"var size = {size};
            var sidc = {sidc};
            var symbol = new ms.Symbol(sidc, {{ size: {size} }});
            var symbolValid = symbol.isValid(false);
            var symbolSvg = symbol.asSVG();";
  engine.Execute(script);

  isValid = (bool)engine.Script.symbolValid;

  // Return svg as string
  return (string)engine.Script.symbolSvg;
}

Thanks for the example code, I ended up doing something similar since I was using UE4, I just used the unreal.js plugin to handle the milsymbol side of things and then send the svg string over to cpp.


Update the starter

Things to do

[ ] Remove webpack aliases and add js configuration json file
[ ] Restructure files
[x] Upgrade dependencies
[ ] Add another branch with a markdown blog setup
[ ] Make it easy to customize the colors of this starter including the colors of the illustrations

Ended up making a Gatsby Theme with the above todos: https://www.npmjs.com/package/gatsby-theme-portfolio


Investigate RMC

Ideas:

LoF vs unconstrained
Dosage sensitivity
Disease-associated in OMIM vs not
Coding base pairs

closing because this is done


Twitch.tv buffering a lot, Failed to open segment, etc..

Hi there, I'm very new to this whole livestreamer thing. As the program is made, I'm using it to watch twitch.tv streams through VLC Media player. I have the quality set to source, for every stream.
Now for having the quality set to source, of course it's going to buffer/lag. But looking at windows task manager in windows 8.1 It's showing the CMD/VLC Media player is averaging download speeds at 2Mbps, when my max download speed is 7Mbps. It might be a slow max speed, but It runs twitch.tv livestreams on source, perfectly fast in browser. But when it comes to opening it with the livestreamer file, in VLC Media player, The speeds stay very low.
Also the command prompt is showing the Failed to open segment error, continuously. Doesn't happen on all streams, just when It starts to dramatically buffer every second.
My question is, How can I make the livestreamer file with VLC Media player run the default max download speed, (7Mbps) instead of averaging around 2Mbps?
How can I make it more faster?
How could it be equally same as when It's being played in browser mode?
Thanks!

hls-segment-threads saved my 4$$. It's the only thing that's worked for me besides relaying the stream via a dedicated server. Thanks so much for adding this essential feature, so glad I found it!!!  I'm also in South Africa btw


Export Calendar copy to clipboard

Because you can't highlight pop-ups in Chrome, and also it's more convenient.

Works now, thanks to a very handy package. Unfortunately it always copies to clipboard even if the link fails validation with the backend, but the browser won't automatically copy in response to a query (see this stackoverflow topic), so a small compromise was made.


Introduce "unsafe" streaming file reader

...with optional validation at the end. Closes #44

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (c95749b) 74.27% compared to head (0803c17) 74.14%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #62      +/-   ##
==========================================
- Coverage   74.27%   74.14%   -0.13%
==========================================
  Files          24       24
  Lines        2192     2193       +1
==========================================
- Hits         1628     1626       -2
- Misses        564      567       +3

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Inconsistent control visibility

Currently the control visibility is handled by the browser:

Controls are and stay visible when the video loads.
Controls hide if mouse leaves to the bottom of the controls, but not through the top (Firefox?)
Controls are shown again when video loops.

Better behavior:

Controls should not be visible on load.
Controls should become visible when mouse moves to the bottom of the video.
Controls should not be shown on loop.

The only way to control this behavior is by not using the browser controls and creating custom controls. Then we would also archive the same behavior across Firefox and Chrome.

Would fix #17


iOS Events Manager

I've an issue on our production app whereby any Events are not published to Events Manager.  However, in TestFlight the exact same build works fine and we receive events within Events Manager.
Has anyone got this working within their app?
Android is totally fine, but iOS doesn't work.

Hello! I think it's strange to say "iOS doesn't work" when you mention explicitly that it works on TestFlight builds. That's a very very curious difference that TestFlight builds work but "production app" doesn't work.
What exactly is the difference between your TestFlight build and your "production app"? I ask because for my apps, the TestFlight build is the production app, just not released entirely to production yet. All the configs are the same. All of the bits are the same. Only the set of users able to use it is different.
So for my situation at least I don't recognize a difference between "TestFlight build" and "production app", they're equivalent. So then a statement where it works for a "TestFlight build" means to me: it's working.
Really strange...
:thinking:

We are using it on iOS production app and it's working fine, have you followed the official documentation?
Make sure you have followed the steps below:

Step 1: Configure Your Facebook App
Step 2: Link your Ad Account
Step 3: Set Up Your Development Environment
Step 4: Register and Configure Your App with Facebook
Step 5: Configure Your Project
Step 6: Connect Your App Delegate and Scene Delegate

Step 6 might be confusing because the example is written in swift and also using Scene Delegate which isn't in regular react-native project, here below is how we implement it(we are not using Scene Delegate):
// AppDelegate.m

//  ⬇  import this ⬇
#import <FBSDKCoreKit/FBSDKCoreKit.h>

// ... other imports ...

@implementation AppDelegate

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  //  ⬇  add this ⬇
  [[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];

  // ... other code ...
}

// ... other code ...

//  ⬇  rewrite this method ⬇
- (BOOL)application:(UIApplication *)application
            openURL:(NSURL *)url
            options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options
{
  BOOL fbHandled = [[FBSDKApplicationDelegate sharedInstance] application:application openURL:url options:options];
  BOOL rctHandled = [RCTLinkingManager application:application openURL:url options:options];

  return fbHandled || rctHandled;
}

// ... other code ...

I've spent some more timing looking at this, and trying to change code...
It looks as though there are a number of issues raised in the Facebook iOS SDK github repository with regards to this:
https://github.com/facebook/facebook-ios-sdk/issues/1937
https://github.com/facebook/facebook-ios-sdk/issues/1957
We bumped to 6.2.0 of this library to run the latest Facebook SDK's.
@rnike - I was sure whether Step 3 was really necessary because this package pulls the relevant SDK's in anyhow?
@mikehardy - I know I'm at a loss too, as our binary to TestFlight is the same as Production 😞.

@rnike
I have the following code:
useEffect(() => {
    const changeListener = AppState.addEventListener(
      'change',
      async (nextAppState) => {
        if (Platform.OS === 'ios' && nextAppState === 'active') {
          const trackingStatus = await getTrackingStatus();
          const isEnabled = (result: TrackingStatus): boolean =>
            result === 'authorized' || result === 'unavailable';
          Settings.setAdvertiserTrackingEnabled(isEnabled(trackingStatus));
          Settings.initializeSDK();
        }
      },
    );

    return () => {
      changeListener.remove();
    };
  }, []);

Do you know what version of this package you are using?  I wonder whether it's linked to the underlying Facebook SDK that I'm using now.
Thanks for the help btw...

We are currently on 7.0.0-beta.2, but I believe 6.1.0 will still work as well (our last version is on 6.1.0), haven't tested on 6.2.0.
About the AppState.addEventListener( 'change', callback) in your code, as my experience, the callback will not be fired on the first start of the app.
So far that's all I can do, if the issue still exists, we will need more information (build environment, package versions, etc).

We managed to get this working in TestFlight last night, we'll release later this week hopefully.
I made the following changes:

Moved the initializeSDK to a useEffect in the App.tsx
Upgaded to 7.0.0-beta.4
Removed an old openURL in our AppDelegate for iOS 8.x or older
I enabled AEM reporter - as per the documentation thanks - @rnike


add openwrt support

add cmake file
because mipsel-openwrt-linux-uclibc-gcc-ar in openwrt toolchain will report "sorry - this program has been built without plugin support" error, just replace with mipsel-openwrt-linux-uclibc-ar can fix the error,
so some changes in CMakeLists.txt is needed

LGTM

@ruben-ayrapetyan
Hi, sorry, when I pull the latest jerry submodule in iotjs, the change in CMakeList.txt is not needed anymore

@qdk0901, could you, please, update the pull request to remove the change that is not needed, and combine all commits of the pull request into one with signed-off message?

@ruben-ayrapetyan sorry， I don't know how to clean the pull request messages here， so I make a new pull request，please close this one


Update AboutUs for Wanyu's details

added section about Wanyu in AboutUs
added relevant png and md files

Codecov Report

Merging #23 (65d7eb1) into master (76fcd84) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #23   +/-   ##
=========================================
  Coverage     72.15%   72.15%
  Complexity      399      399
=========================================
  Files            70       70
  Lines          1232     1232
  Branches        125      125
=========================================
  Hits            889      889
  Misses          311      311
  Partials         32       32

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 76fcd84...65d7eb1. Read the comment docs.


Add option to print logs from successful process

Changes
Allows user to pass a --verbose option to npm-scripts-watcher, so that logs for a successful build process (exit code == 0) are not hidden.
Motivation
I was (reasonably) bothered by the same point described in this issue.
I don’t know if you deliberately discarded this possibility or didn’t like the implementation alternatives or just didn’t have time. Feel free to merge or not.

@ghengeveld Can we get this merged, please?

I'm moving onto npm-watch instead. It's active and already has this feature.

For some reason I completely missed this PR. Unfortunately I'm no longer with Wehkamp so I don't have write access to this repository anymore. I'll see if I can fork it and publish to npm from my fork.
npm-watch does pretty much the same thing, with the exception that it has a slightly different syntax.


[Documentation]: Combine /documentation content into /docs

Motivation
Resolve #3
How to test the behavior?
Check the readthedocs build for the modified content in User Guide
Checklist

[x] Have you thoroughly read our Developer Guide?
[x] Have you ensured the PR description clearly describes the problem and solutions?
[x] Have you checked to ensure that there aren't other open or previously closed Pull Requests for the same change?
[x] If this PR fixes an issue, is the first line of the PR description fix #XXX where XXX is the issue number?
[x] Did you update the CHANGLOG.md file on your branch to describe your changes?
[ ] Did you bump the appropriate version number in setup.py on your branch?

@weiglszonja Thanks for tackling this!


HDDS-6574. Set owner of buckets created via S3 Gateway to actual user rather than s3g; print LinkBucket owner field on the client

What changes were proposed in this pull request?
Currently if a bucket is created using S3 API via S3 Gateway, the bucket owner is always set to "s3g" (whoever S3 Gateway authenticated itself as to the Ozone Manager).
$ ozone sh bucket list /tenant1
[ {
  "metadata" : { },
  "volumeName" : "s3v",
  "name" : "bucket1",
  "storageType" : "DISK",
  "versioning" : false,
  "usedBytes" : 0,
  "usedNamespace" : 0,
  "creationTime" : "2022-04-07T14:51:49.053Z",
  "modificationTime" : "2022-04-07T14:51:49.053Z",
  "quotaInBytes" : -1,
  "quotaInNamespace" : -1,
  "bucketLayout" : "OBJECT_STORE",
  "owner" : "s3g",  <---
  "link" : false
} ]

This bucket owner field should be set to the user behind the accessId (short name) as this should be the intended behavior.
$ ozone sh bucket list /tenant1
[ {
...
  "bucketLayout" : "OBJECT_STORE",
  "owner" : "hive",  <---
  "link" : false
} ]

Bonus
Also added owner field in the client output when the bucket is a link (rather than a regular one) as it wasn't there in the class LinkBucket:
bash-4.2$ id
uid=1000(hadoop) gid=100(users) groups=100(users)
bash-4.2$ ozone sh volume create vol1
bash-4.2$ ozone sh bucket create vol1/buck2
bash-4.2$ ozone sh bucket link vol1/buck2 vol1/linkbuck3
bash-4.2$ ozone sh bucket info vol1/linkbuck3
{
  "volumeName" : "vol1",
  "bucketName" : "linkbuck3",
  "sourceVolume" : "vol1",
  "sourceBucket" : "buck2",
  "creationTime" : "2022-04-14T00:00:25.395Z",
  "modificationTime" : "2022-04-14T00:00:25.395Z",
  "owner" : "hadoop"  <--- NEWLY ADDED
}

The above output is from compose/ozone (insecure). But this also applies to compose/ozonesecure (secure) and others. The only difference would be that secure ones require kinit and the owner would become the "short name" after UGI conversion according to the hadoop.security.auth_to_local rule.
This was causing trouble for the acceptance test addition. Also it makes sense as the linked (symlink) bucket itself also has an owner, it just wasn't printed.
Output of ozone sh bucket info on a regular bucket, just for reference:
bash-4.2$ ozone sh bucket info vol1/buck2
{
  "metadata" : { },
  "volumeName" : "vol1",
  "name" : "buck2",
  "storageType" : "DISK",
  "versioning" : false,
  "usedBytes" : 0,
  "usedNamespace" : 0,
  "creationTime" : "2022-04-14T00:00:02.984Z",
  "modificationTime" : "2022-04-14T00:00:02.984Z",
  "quotaInBytes" : -1,
  "quotaInNamespace" : -1,
  "bucketLayout" : "OBJECT_STORE",
  "owner" : "hadoop",
  "link" : false
}

What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-6574
How was this patch tested?

[x] Add an acceptance test case
[x] All existing tests shall pass

Ah. Finally got a good run after a bunch of test tweaking. @avijayanhwx would you take a look again when you have time. Thx

Thanks for catching this! LGTM

Thanks @smengcl for the patch, @avijayanhwx and @kerneltime for the review.

Thanks @avijayanhwx and @kerneltime for reviewing this. Thanks @adoroszlai for merging this.


Add LoadSnapshot implementation

Description of changes:

Added implementation for loading snapshots
Exposed waitsocket as public
Added tests for load snapshots

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Superseded by #414. Big thanks to @gc-plp who helped pave the way for load snapshot in the SDK.


related work on substitutability

Substitutability is a key concept to increase diversity in the software supply chain.
Here we collect works related to this concept.

Code Librarian: A Software Package Recommendation System.
http://arxiv.org/abs/2210.05406

Automatic diversity in the software supply chain

Automatic discovery of function mappings between similar libraries
https://www.labri.fr/perso/xblanc/data/papers/WCRE13b.pdf

a tool to look for similar libraries
https://graphofknowledge.appspot.com/similartech

Don't Reinvent the Wheel: Towards Automatic Replacement of Custom Implementations with APIs
https://arxiv.org/pdf/2208.07624

Testing-based process for component substitutability
https://onlinelibrary.wiley.com/doi/pdf/10.1002/stvr.438

Large-Scale Study of Substitutability in the Presence of Effects
https://dl.acm.org/doi/pdf/10.1145/3236024.3236075

Darwinian Data Structure Selection
https://dl.acm.org/doi/pdf/10.1145/3236024.3236043

Chameleon: Adaptive selection of collections.
http://www.cs.technion.ac.il/~yahave/papers/pldi09.pdf

A large‐scale empirical study of low‐level function use in Ethereum smart contracts and automated replacement SPE 2022

Unleashing the hidden power of compiler optimization on binary code difference: an empirical study
https://dl.acm.org/doi/10.1145/3453483.3454035

DiffCSP: Finding Browser Bugs in Content Security Policy Enforcement through Differential Testing
https://publications.cispa.saarland/3891/1/wi2023diffcsp.pdf

The Swedish State Railways' experience with n-version programmed systems

diversification in package registries
Helix++: A platform for efficiently securing software.
http://arxiv.org/abs/2304.04846


route OpenAPI requests to kube-apiserver

Workaround for 1.8 kube.

ok to test

Works for me.
FIxes the issue with openAPI.


Implement UC.ViewExpenseClaimApprover

Implement this use case

Complete aside from listed things.

Apart from #73 this is complete.


Add support for multiple records in event

Add handling of multiple records in the event as AWS might generate one
event that contains several records in body.

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


WebP and AVIF generated images put into wrong folder in v3.0.8

It seems like in 3.0.8, the assets for avif and webp somehow land in the wrong folder, which in my cases causes the frontend to fallback to some non-cropped and not properly sized version of the image. I had to downgrade for the moment, as it broke the website.
What I see so far, in my root folder (I have a public folder setup as described on the Kirby website), the cropped version of the avif and webp images added (this is the wrong location. They also have double extension naming, so there is definitvely something wrong.
When I check the correct location for the images (in this case, media/pages/team, I find some avif and webp version, but they are not cropped.

Expected behaviour (like in 3.0.7): Cropped AVIF and WebP images go to /media/pages/team
Current behaviour (3.0.8): Cropped AVIF and WebP images go to /media.

srcset config:
  'default' => [
    '280w' => ['width' => 256, 'height' => 256, 'quality' => 100, 'crop' => true],
    '335w' => ['width' => 335, 'height' => 335, 'quality' => 100, 'crop' => true],
    '560w' => ['width' => 560, 'height' => 560, 'quality' => 100, 'crop' => true],
    '670w' => ['width' => 670, 'height' => 670, 'quality' => 100, 'crop' => true],
    '728w' => ['width' => 728, 'height' => 728, 'quality' => 100, 'crop' => true],
    '1024w' => ['width' => 1024, 'height' => 1024, 'quality' => 100, 'crop' => true],
    '1456w' => ['width' => 1456, 'height' => 1456, 'quality' => 100, 'crop' => true],
    '2048w' => ['width' => 2048, 'height' => 2048, 'quality' => 100, 'crop' => true]
  ]

Edit: The srcset config example doesn't above is not showing the chosen image format, as in my case, I have a function generating this and adding the 'format' options for avif and webp.

@flokosiol Are you able to reproduce it? I am currently having to pin the plugin in all websites to the 3.0.7 release as of my CI/CD automation automatically update patch versions, and therefore breaking websites with 3.0.8.
I tried to look at your code changes to get a sense of what could go wrong, but I don't exactly see how your changes lead to that result.

Seeing this too :(

Thanks for the reminder. I set up a test installation (which I hopefully will extend furthermore). Could you please check out if this works for you?
https://github.com/flokosiol/kirby-focuskit
For me everything worked fine with this installation, but it's based on the plainkit (which has no public folder setup) and I couldn't get avif files to work at all. At least the generated webp files has been saved to the correct media subfolder. So maybe we can use this as a starting point?!

I am not getting the srcset images at all with that.

In my test i used the Starter kit and switched the album.php template to use the plugin.

Like this:
<?php
/*
  Templates render the content of your pages.

  They contain the markup together with some control structures
  like loops or if-statements. The `$page` variable always
  refers to the currently active page.

  To fetch the content from each field we call the field name as a
  method on the `$page` object, e.g. `$page->title()`.

  This example template makes use of the `$gallery` variable defined
  in the `album.php` controller (/site/controllers/album.php)

  Snippets like the header and footer contain markup used in
  multiple templates. They also help to keep templates clean.

  More about templates: https://getkirby.com/docs/guide/templates/basics
*/
?>
<?php snippet('header') ?>

  <?php snippet('intro') ?>

        <?= $page->text() ?>

        <?php foreach ($gallery as $image): ?>

          <a href="<?= $image->url() ?>" data-lightbox>
            <figure class="img" style="--w:<?= $image->width() ?>;--h:<?= $image->height() ?>">

                <picture class="item-class">
                <source srcset="<?= $image->focusCrop(800, null, ['format' => 'avif'])->url()?>" type="image/avif">
                <source srcset="<?= $image->focusCrop(800, null, ['format' => 'webp'])->url()?>" type="image/webp">
                <img src="<?= $image->thumb(['width' => 800, 'height' => null, 'format' => $image->extension()])->url() ?>" alt="<?= $image->alt() ?>">
                </picture>

        <?php endforeach ?>

<?php snippet('footer') ?>

With that i get i get the thumbs in the webroot with names like
last-tree-standing-800x800-crop-50-50.avif.avif

and only Avifs... no webps... i think it uses the first thing in the source list and ignores the rest.

Thanks for the quick reply.
Maybe it's an GD vs. ImageMagick thing. I used GD version 2.3.3 for my tests and just learned that it doesn't support AVIF at all until PHP 8.1.
I will try to get IM up and running and test it again. What do you use?

So does this only happen with ImageMagick or also with GDLib? If only with ImageMagick, I suspect that something could be off with the command line arguments.

I mean, I never tried with GD. To my knowledge, or that's what I read when Kirby added support for it is, that only ImageMagick supports AVIF. That said, I always used ImageMagick then. But for sure, the issue doesn't apply when "Kirby Focus" isn't used.

Just to confirm, im using IM as the image driver.

Oh and i discovered that Kirby generates on access and on browser support. If you knock out the avif line so you just have source tags for webp and jpg, you will get webps. Adjust the browsers window size and you get the other sizes too.

I feel like the issue could be coming from these lines:
https://github.com/flokosiol/kirby-focus/blob/96177849a70fdca2ec7b36028f8d9bcaea3393f6/src/Focus/ImageMagick.php#L220-L222
It would simultaneously explain the images being stored in the root and also the double extension.
@flokosiol I'd also recommend using escapeshellarg() for the dynamic arguments for added security and reliability. We've updated the core driver recently.

That's what I thought, too. The image driver need to be in sync with Kirby core – with a few additional focus specific lines of code. I'm pretty sure this can be fixed with a re-sync of the IM driver.
I'll have a look at this. Thanks for your investigation and your patience.

I mean, you could watch composer dependencies (pointing to the Kirby dev branch directly) with Dependabot or Renovate and automatically test those in GitHub Actions or with Docker images. At least, that's how my setup is with websites: Checking for new dependencies with Renovate every night, then automatically update those dependencies on a branch and make docker builds to test them. Probably kind of a stretch for what you want.

@flokosiol ok so some progress with your tweaked driver - GD is working fine, with IM the images are now ending up in the media folder BUT no cropping is happening.

@flokosiol Since you don't extend our core drivers but the general Darkroom class, your drivers don't need to be perfectly in sync with ours. If there were any breaking changes for plugin devs, we would communicate that in the release notes.

@HashandSalt Thanks for testing. Obviously, changing code blindly is not the best option. I will install IM on my machine and test it propperly 😉
@lukasbestle Thanks for the info!

Hey folks. I think I fixed it for the https://github.com/flokosiol/kirby-focuskit/
Would be awesome if someone could confirm this. Afterwards I would update the plugin and publish it as 3.1.0 here.
Thanks for your patience!

@flokosiol Awsome :) Just tested it and everything seems good now on IM

Thanks a lot for testing! Unfortunately the grayscale version does not work yet. I totally missed that, too.
Nevertheless the main work is done and I can release 3.1.0 for K3.6+ soon. 👍

I just released 3.1.0 and hope I configured the version numbers and dependencies correctly.

Can those people that tested this confirm, that the AVIF file is really an AVIF file and not just a renamed JPG? I just checked the new version, set the focus point on an image, used by overcomplicated Twig macros to render it and checked with Google Lighthouse. The performance stats gave me a warning that I should use next gen image formats. The AVIF file triggers that warning. When I download the AVIF file, it appears as a JPG on my local file system.
I suspect there is something wrong in the AVIF conversion, which I never had before without the focus plugin. I might have to dig a bit deeper to confirm this is not because of my setup or config, but it would be good if anyone having the new version running with AVIF could check too.
I gladly create a new issue for that as soon as I can confirm that it's indeed an issue caused by the plugin.

I added an AVIF test case to the FocusKit Test Setup and updated to the latest versions of Kirby and Focus.
https://github.com/flokosiol/kirby-focuskit
For me everything seems to be fine with the generated AVIF files. Strange. @renestalder

@flokosiol Thanks a lot for taking the time for checking. After your check. I pushed the code where this happens to a remote server and there it worked flawlessly, so I suppose there is something broken with my local docker images.

Alright. Thanks a lot for the info!


Panic when sorting a billion items

The following program panics:

use rand::{rngs::SmallRng, Rng, SeedableRng};
use rdst::*;
#[derive(Default, Debug, Copy, Clone, PartialEq, Eq)]
pub struct SigVal {
    pub sig: [u64; 2],
    pub val: usize,
}

impl RadixKey for SigVal {
    const LEVELS: usize = 16;

    fn get_level(&self, level: usize) -> u8 {
        (self.sig[level / 8] >> level % 8) as u8
    }
}

fn main() {
    const N: usize = 1_000_000_000;
    let mut r = SmallRng::seed_from_u64(0);
    let mut v: Vec<_> = (0..N)
        .map(|i| SigVal {
            sig: [r.gen(), r.gen()],
            val: i,
        })
        .collect();
    v.radix_sort_unstable();
}

Result:
thread '<unnamed>' panicked at /Users/vigna/.cargo/registry/src/index.crates.io-6f17d22bba15001f/rdst-0.20.11/src/sorts/out_of_place_sort.rs:207:19:
attempt to subtract with overflow

My mistake, the implementation of RadixKey was wrong (sometimes Copilot gets in the way).


The SAC genotype field is listed in the "format" vcf field, but it is not available for selection in the dialog

For the demo exome vcf dataset, there are 8 format fields listed in the header, but 6 actual genotype values that can be parsed.
Here is the header:

But not all of these fields in the header are actually included in the genotype. Here is the format column, showing 6 fields:

And in the Select Annotations dialog: there are 7 fields listed for selection. Notice that SAC is not included and 2 fields (PGT, PID) are not available in the format (and genotype) fields.

To fix, you should filter the vcf.infoFields.FORMAT to only include those format fields (from the header) that are available in the format column.
As for the SAC field not being included, you will need to troubleshoot the code in vcf.iobio.js that creates the vcf.infoFields.FORMAT. I suspect that an error is occurring when trying to parse out the vcf header FORMAT record for the SAC field. I noticed some suspicious code in _parseHeaderForInfoORFormat. The field infoOrFormat is never initialized, so what happens if matches on the regular expression doesn't work? I'd try printing some console messages when matches == null to see if SAC is not getting parsed correctly. If that is the problem, then something must be wrong with the regular expression.

This is also a bug that needs to be fixed before 4.9 can be released.

Please make sure you create a branch off of the latest 4.9 branch as much of the code has changed.

@tonydisera I checked the regular expression, it turns out that there maybe dot character in Number. The SAC is this case. Now it is fixed.

As for the genotype values are not matched to the Format Header you mentioned. For some variants, including the case you mentioned, just 6 values are matched. But in other variants, there are 8 of them. For example:

Do you think it makes sense that we keep displaying all 'Format Header' in selectVariantAnnotationDialog, but display the 'None' Value if some format headers are not matched in the Genotype Column in some variants.

This makes sense to me. We can’t guarantee that the header is accurate. Someone could have just added the header from a different vcf file, so it might have nothing to do with the actual data. We can’t validate this though, so we just assume the header is valid and show all options. So long as we’re clear that data is missing for a specific variant, this is fine

If INFO or FORMAT header rec cannot be parsed, print message to console about field being bypassed. Fix bug that was returning previous record when match failed.


Allow placing Taskbar and MenuBar on secondary monitor

NOTE: I renamed IMenuBar.GetIsPrimaryDisplay to IMenuBar.GetIsMainMenuBar to better match semantic of the new behavior.
Did not make a descent UI for the new setting yet, for now can be tested by going into Advanced and setting the first Time format (which actually points to the new setting) to something like Pos=-700,800 (requires restart). which would then treat monitor at those coordinates as primary for the purpose of Taskbar and MenuBar placement. If there are no monitors at those coordinates, system primary monitor is used. To revert back, set the setting to Primary.

Thanks!
While I understand setting primary taskbar could be beneficial, what does changing the primary menu bar enable (or do you have future ideas)? Also, for the settings interface, do you have a plan for making the setting intuitive?

@dremin re: menu bar, I imagine they'd go together most of the time (that's what I personally did locally) so at least a shared setting is useful, but it is also conceivable why one would want them on different screens.
re: intuitive setting, I was thinking to have a selector that looks like the Windows displays layout window. e.g.

@dremin do you want me to make the UI before this goes in? I was planning individual PRs.

@dremin I am curious if there's a reason no to use latest C# (10.0)?

@dremin I am curious if there's a reason no to use latest C# (10.0)?

Cairo still targets .NET Framework 4.7.1, which I don't believe supports the latest C# versions.

@dremin language version has only a little to do with the target framework. As long as you don't need it to be buildable with old msbuild and compiler (which I believe it is not, as it is using .NET SDK project format), you can set <LangVersion>10</LangVersion>, and most features will be available (except the ones that require types missing in .NET 4.7.1).

@dremin I am curious if there's a reason no to use latest C# (10.0)?

Cairo still targets .NET Framework 4.7.1, which I don't believe supports the latest C# versions.

I develop some applications targeting .NET 2.0/4.0, but I can still use most of the features of C# 10, there should be no issue by using LangVersion.

In that case, feel free to enable the new version!

@dremin added UI, enabled C# 10, and slightly cleaned code up.

Sorry it's taken me so long to get to this! Overall it looks good, but I ran into an issue: if the selected monitor is removed, the [menu bar/taskbar] is gone forever, even after the monitor is reconnected (of course, it works correctly when reconnecting the monitor before starting Cairo again). Ideally, the window would be re-opened on the primary display when the preferred one is removed, and back to the preferred once it is reconnected. The settings UI should also handle this other than showing no option selected (maybe a selected-but-inactive-looking state).
I also think we can make the UI a bit easier to understand:

Rather than a distinct 'primary' option plus individual monitor options, the individual monitor option representing the primary display should be labeled as such, whether with text or a clear symbol. Selecting the primary display could still set the bespoke 'Primary' setting value.
The 'Show [menu bar/taskbar] on multiple displays' option should probably be turned into a radio group with the following options:

Show [menu bar/taskbar] on: ( ) Multiple displays
                            ( ) This display:

I also think we can improve the appearance of the displays in the UI but that doesn't need to happen before merging this (and is something I'm happy to play with as well). One thing I'm concerned about is this has pushed the settings UI height to a size that is no longer possible to use properly on a 720p display.


Markdown includes not replaced

I see multiple markdown includes in this page, e.g.:
![Schematic showing tasks](_img/2017-user-experience/Process parameters view.png)
Expected: replaced by actual content.

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

ID: 8b96fad0-7bfb-8c02-701a-5960da7fb313
Version Independent ID: 74847500-c617-31f4-999c-a344e7b4299e
Content: New Build Editor
Content Source: docs/pipelines/archive/preview/2017-user-experience.md
Product: devops
GitHub Login: @andyjlewis
Microsoft Alias: alewis

@jawn Thanks for letting us know, we'll take a look and get that fixed.

@jawn I fixed this, I think it selectively didn't like the spaces in some of the image names. It should be live shortly, thanks for letting us know.


there has some problem when load yolact_base_54_800000.pth model in eval.py

First, thank you contribute such outstanding work.
I just change the coco dir, and run eval.py

looking for you replay

check your model pls

must add this code snippet and then load model
        if self.args.config is None:             model_path = SavePath.from_str(self.args.trained_model)             # TODO: Bad practice? Probably want to do a name lookup instead.             self.args.config = model_path.model_name + '_config'             print('Config not specified. Parsed %s from the file name.\n' % args.config)             set_cfg(self.args.config)


fix: [mas] remove usage of private APIs

See electron/electron#13957

hrm, heads up, this patch causes some gfx_unittests to fail upstream: https://ci.chromium.org/p/chromium/builders/luci.chromium.try/mac_chromium_rel_ng/111640
Gonna see if i can figure out what's going on.

Looks like my assessment that _CFIsObjC always returns 0 was wrong. Going to have to find another workaround.


Installation Instructions

I followed what was there... from inside Vim, I ran
:CocInstall coc-elixir

I got:
E492: Not an editor command: CocInstall coc-elixir

Is there something more that could be included in the docs?

You have to install coc.nvim first


feat(linter/eslint): implement func-names

Rule: https://eslint.org/docs/latest/rules/func-names
Implentation: https://github.com/eslint/eslint/blob/main/lib/rules/func-names.js

I added function name detection from eslint/rules/ast-utiles/ so the warning messages are clearer :)

@Sysix thanks a ton for the PR, we're just about there!

@DonIsaac I implemented the requested changes. Have a look again :)
Also I check if the CallExpression is inside the invalid_funcs vec, so we can skip the parent node traveling when the name doesn't match


Shorten the compilation times with vsf1-local-webpack

Reference: https://www.yireo.com/blog/2020-05-22-improving-vue-storefront-compilation-times
Thanks to @jissereitsma we've got a really awesome, new webpack configs to speed-up the development times by an order of magnitude. The magic happens when you disable the SSR (which is very rarely required for development mode, local deployment)
VSF1 local webpack: https://github.com/yireo-training/vsf1-local-webpack
Acceptance Criteria:

We've got this new webpack build files included in the core within the core/build
The existing development command (yarn dev) now starts the dev mowde with the new webpackfiles - so it's the equivalent of happydev
The new command is added for the development mode including the SSR: yarn dev:ssr or yarn dev-with-ssr

I would be honored if this could be added. The only thing that was really bugging me when putting together the Webpack configuration was that dayjs needed to be downgraded: It is in the core and their later release was containing a bug which required TypeScript, while actually my Webpack script would run with regular Node instead. Perhaps this is fixed already, but one would notice simply when firing up the yarn command.
What needs to be done?


Investigate card generation process

It would be awesome to have have the cards saved as text files instead of complete svg files. They should be specifying a template and an image to be used. Then we have all templates and images separately and on release all the files get generated. In that way diffs will be clearer and you could also generate different kinds of files (with or without backside, sheets for printer service, separate card files etc).

Having all te cards as text was solved in #7. We still need to create a way to actually generate the cards though. Here is a template with margins from one prospective vendor that might be useful as a start.

@felixfaassen I tried building the cards from the code branch but it seems in an early stage still with features like the costs & scores in the LaTeX template that aren't used at the moment. Is there some overview of what the entire deck of card should end up looking like to start improving the LaTeX templates?

Hi @nicorikken  would be superb if you could help us improve the LaTeX template. Below is an example of and index sheet for the front an back of cards how they should be generated. Would be cool to have a PDF per card rendered
front:

back:

Yeah, these sheets just show how the last batch were produced. But since that was in the US and the shipping proportionally too expensive, we are looking for a European supplier, and the one we found (linked in the second comment) uses a one file per card  system instead of a sheet of 18 cards per file system. Either way, here are the other cards we had to have something to be inspired by, but feel free to suggest improvements on the layout.

Fixed by #27 28

Here is our first deck from the print run that was generated with the scripts.


Add conf for issue redirection

This PR will configure the repository such that, when we select the Create New Issue option, we are directed to the WSO2 OB3.0 Repo New Issue Page for creating new issues.

This is a duplicate of https://github.com/wso2/docs-ob-toolkit-uk/pull/43


Broken rendering of covid-19 information folder's front page

Attach (recommended) or Link to PDF file here: https://d15k2d11r6t6rl.cloudfront.net/public/users/Integrators/a0a42ab5-3cb9-4912-84b7-3c6e47330d5c/smart-pr-805/Consumentenfolder_A5_zonder_paskruizen _2.pdf (and the similar other files under "Informatiefolder" on https://news.pressmailings.com/hvdm/partnertoolkit)
Configuration:

Web browser and its version: Firefox 84.0 (64 bits)
Operating system and its version: Arch Linux
PDF.js version: 2.7.262 (built-in) and 2.7.434 (development version at time of writing)
Is a browser extension: no

Steps to reproduce the problem:

Open the linked PDF file linked above.
Notice that the first page is rendered completely broken. There are no warnings/errors in the console unfortunately, and it's not related to layers since the document does not contain any.

What is the expected behavior? (add screenshot)

What went wrong? (add screenshot)

Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension): -

This is related to Shading-patterns, by the looks of it.

I tried to figure out what's wrong here. I'm not sure to understand everything but I've the impress that the different issues (contents "move" and clipping issue with the shading-pattern fill) are related to soft mask implementation.
When a group is suspended:
https://github.com/mozilla/pdf.js/blob/master/src/display/canvas.js#L1110
we may loose any information we've in the canvas about clipping and stack of transforms:

they aren't transfered in https://github.com/mozilla/pdf.js/blob/master/src/display/canvas.js#L1159 like other properties
and if suspendSMaskGroup is followed by a beginSMaskGroup, then the canvas got from the cache is the same as one before suspendSMaskGroup and this one is "reset" (https://github.com/mozilla/pdf.js/blob/master/src/display/canvas.js#L186)

The contents "move" issue is not reproductible with chrome because we've a dummy context (because of no mozCurrentTransform) and _transformStack is never reset (adding a ctx._transformStack = []; at https://github.com/mozilla/pdf.js/blob/master/src/display/canvas.js#L50 allows to have the same wrong behaviour of contents "moving" with chrome too).
I think that a good way to fix that is to have a Canvas object where we can track whatever we want and so we could transfer correctly the ownership of these data.
It would help to fix the issue we've with empty clipping path too (empty clipping path results into an empty picture).

I tried to figure out what's wrong here. I'm not sure to understand everything but I've the impress that the different issues (contents "move" and clipping issue with the shading-pattern fill) are related to soft mask implementation.
When a group is suspended:
https://github.com/mozilla/pdf.js/blob/master/src/display/canvas.js#L1110
we may loose any information we've in the canvas about clipping and stack of transforms:

they aren't transfered in https://github.com/mozilla/pdf.js/blob/master/src/display/canvas.js#L1159 like other properties
and if suspendSMaskGroup is followed by a beginSMaskGroup, then the canvas got from the cache is the same as one before suspendSMaskGroup and this one is "reset" (https://github.com/mozilla/pdf.js/blob/master/src/display/canvas.js#L186)

The contents "move" issue is not reproductible with chrome because we've a dummy context (because of no mozCurrentTransform) and _transformStack is never reset (adding a ctx._transformStack = []; at https://github.com/mozilla/pdf.js/blob/master/src/display/canvas.js#L50 allows to have the same wrong behaviour of contents "moving" with chrome too).
I think that a good way to fix that is to have a Canvas object where we can track whatever we want and so we could transfer correctly the ownership of these data.
It would help to fix the issue we've with empty clipping path too (empty clipping path results into an empty picture).

In https://github.com/mozilla/pdf.js/issues/9017#issuecomment-339104565 I had similar thoughts about the SMask processing that sometimes loses the clipping path.

In https://github.com/mozilla/pdf.js/issues/9017#issuecomment-339104565 I had similar thoughts about the SMask processing that sometimes loses the clipping path.


Ratelimit throttling Interface

Provide Rate Limit Throttling Interface

Provide an IRateLimitClient to be implemented by the consumer
In the base client MakeRequest and MakeRequestAsync methods add in a check to see if the call is a get/head call and if the IRateLimitClient has been implement.  If so then make a call to the RateLimitWaitExecute.
In the BaseClient HandleResponse if the RateLimitClient has been implemented then make the call to the IRateLimitClient SetRateLimitMetaData method passing the Limit, Remaining and Reset values from the X-RateLimie headers.

On the Client and BaseClient provide the constructors that would allow the consumer to inject their implementation of the IRateLimitClient.
namespace Recurly
{
    public interface IRateLimitClient
    {
        void RateLimitWaitExecute();
        void SetRateLimitMetaData(int rateLimit, int remaining, int fullReset);
    }
}

Example implementation
public class RateLimitClient : Recurly.IRateLimitClient
    {
        private string cacheKey;
        private ICacheClient cacheClient { get; set; }

        public RateLimitClient(string cacheKey, ICacheClient cacheClient)
        {
            this.cacheKey = cacheKey;
            this.cacheClient = cacheClient;
        }

        public void RateLimitWaitExecute()
        {
            if (cacheClient != null)
            {
                var rateLimitValue = cacheClient.Get<RateLimitValues>(cacheKey);
                if (rateLimitValue != null)
                {
                    var timeToSleepInMilliseconds = 0;
                    var percentage = rateLimitValue.RemaingCalls * 100.0 / rateLimitValue.Limit;
                    if(percentage < 5)
                    {
                        //Sleep for 10 seconds
                        timeToSleepInMilliseconds = 10000;
                    }
                    else if(percentage < 10)
                    {
                        //sleep for 5 seconds
                        timeToSleepInMilliseconds = 5000;
                    }
                    else if(percentage < 15)
                    {
                        //sleep for 2.5 seconds
                        timeToSleepInMilliseconds = 2500;
                    }
                    else if(percentage < 20)
                    {
                        //sleep for 1 seconds
                        timeToSleepInMilliseconds = 1000;
                    }
                    System.Threading.Thread.Sleep(timeToSleepInMilliseconds);
                }
            }
        }

        public void SetRateLimitMetaData(int rateLimit, int remaining, int fullReset)
        {
            if (cacheClient != null)
            {
                cacheClient.Set<RateLimitValues>(cacheKey, new RateLimitValues
                {
                    FullResetTime = fullReset,
                    Limit = rateLimit,
                    RemaingCalls = remaining
                });
            }

            TimeSpan t = DateTime.UtcNow - new DateTime(1970, 1, 1);
            int secondsSinceEpoch = (int)t.TotalSeconds;
            var secondsTillReset = fullReset - secondsSinceEpoch;
        }

        private class RateLimitValues
        {
            public int Limit { get; set; }
            public int RemaingCalls { get; set; }
            public int FullResetTime { get; set; }
        }
    }

 private void HandleResponse(IRestResponse resp)
        {
            if (resp.Headers.Any(t => t.Name == "Recurly-Deprecated"))
            {
                var headers = resp.Headers.ToList();
                var deprecated = headers
                    .Find(x => x.Name == "Recurly-Deprecated")
                    .Value.ToString();
                var sunset = headers
                    .Find(x => x.Name == "Recurly-Sunset-Date")
                    .Value.ToString();

                if (deprecated.ToUpper() == "TRUE")
                {
                    Debug.WriteLine($"[recurly-client-net] WARNING: Your current API version \"${ApiVersion}\" is deprecated and will be sunset on ${sunset}");
                }
            }
            if (RateLimitClient != null && resp.Headers.Any(t => t.Name.StartsWith("X-RateLimit")))
            {
                var headers = resp.Headers.ToList();
                int limit = 0;
                int remaining = 0;
                int reset = 0;
                _ = int.TryParse(headers
                    .Find(x => x.Name == "X-RateLimit-Limit")
                    .Value.ToString(), out limit);
                _ = int.TryParse(headers
                    .Find(x => x.Name == "X-RateLimit-Remaining")
                    .Value.ToString(), out remaining);
                _ = int.TryParse(headers
                    .Find(x => x.Name == "X-RateLimit-Reset")
                    .Value.ToString(), out reset);
                RateLimitClient.SetRateLimitMetaData(limit, remaining, reset);
            }
            var status = (int)resp.StatusCode;
            Debug.WriteLine($"Status: {status}");
            Debug.WriteLine($"Content: {resp.Content}");

            // If the response has an ErrorException,
            // an error casting the json to a Resource
            // has likely occurred
            if (resp.ErrorException != null)
            {
                throw new RecurlyError(resp.ErrorMessage);
            }
            else if (status < 200 || status >= 300)
            {
                // Turn web exceptions into Recurly.NetworkErrors
                if (resp.ErrorException is WebException)
                {
                    var netError = new Errors.NetworkError(resp.ErrorMessage);
                    netError.ExceptionStatus = ((WebException)resp.ErrorException).Status;
                    throw netError;
                }
                // everything else becomes a Recurly.ApiError
                else
                {
                    var serializer = Recurly.JsonSerializer.Default;
                    var err = serializer.Deserialize<Errors.ApiErrorWrapper>(resp).Error;
                    var ex = Errors.Factory.Create(err);
                    throw ex;
                }
            }
        }

public T MakeRequest<T>(Method method, string url, Request body = null, Dictionary<string, object> queryParams = null) where T : new()
        {
            Debug.WriteLine($"Calling {url}");
            var request = BuildRequest(method, url, body, queryParams);
            RateLimitClient?.RateLimitWaitExecute();
            var resp = RestClient.Execute<T>(request);
            this.HandleResponse(resp);
            return resp.Data;
        }

public BaseClient(string apiKey, IRateLimitClient rateLimitClient)
        {
            if (String.IsNullOrEmpty(apiKey))
                throw new ArgumentException($"apiKey is required. You passed in {apiKey}");

            ApiKey = apiKey;
            RestClient = new RestClient();
            var apiUri = new Uri(ApiUrl);
            RestClient.BaseUrl = apiUri;
            RateLimitClient = rateLimitClient;

            RestClient.Authenticator = new HttpBasicAuthenticator(ApiKey, "");

            // AddDefaultHeader does not work for user-agent
            var libVersion = typeof(Recurly.Client).Assembly.GetName().Version;
            RestClient.UserAgent = $"Recurly/{libVersion}; .NET";

            Array.ForEach(BinaryTypes, contentType =>
                RestClient.AddHandler(contentType, () => { return new Recurly.FileSerializer(); })
            );
            RestClient.AddHandler("application/json", () => { return new JsonSerializer(); });

            // These are the default headers to send on every request
            RestClient.AddDefaultHeader("Accept", $"application/vnd.recurly.{ApiVersion}");
            RestClient.AddDefaultHeader("Content-Type", "application/json");
        }

@flyingtiger71 I'm just waiting on this change to finish: https://github.com/recurly/recurly-client-dotnet/pull/549
I'm going to be changing your interface a little bit. I'll ping you when the PR is up to get your feedback.

@bhelx Thank you for the update.

@flyingtiger71 if you have a moment, please check out my draft PR here: https://github.com/recurly/recurly-client-dotnet/pull/560
I'm working on designing it as a more generic events / hook system so it can get use outside of just rate limit throttling. before I work on it more and add tests, I wanted to get feedback from you. Namely to see if it will work for your case and if you have any other ideas.

Thank you @bhelx I agree this is a better approach as it is more flexible.  IHook works although it is not very descriptive but the alternative IRequestResponseHook may be too much.

@flyingtiger71 Thanks for the feedback. We agree about the name. Will run some ideas by my team and get it updated and merged.


Ability to encapsulate tool subscenes (New ways of using tool keyword)

Issue description:
Quite often I have tool scene which is working inside editor. Sometimes I need for those scenes to be encapsulated inside other bigger scenes. To make them work in reaction to level designer actions I need to heavily modify the bigger scene, and this usually a lot of work and sometimes it's not even possible (when scenes are using/based on many other scenes/scripts which should not work in tool mode).
What I would want to have would be some kind of ability to notify child tool subscene about exported variable change without making owner scene a tool, maybe some kind of 'tool redirect' keyword for exported variables?
Maybe even better would be to have more general ability of using 'tool' keyword not for whole scripts, but only for single members/functions instead.
Though for a second I will be able to overpass this issue with multi-script (different script for normal usage and different script for working inside the editor), but as many people pointed out there is little benefit from introducing multiscript and a lot of problems.

I have a ton of tool scripts and child scenes and this would be an awesome quality of life improvement.

I think it would be the best if we could use Curly braces with tool keyword to determine what parts of the script should be exacutable inside editor, example code could look like this:

tool{
export (NodePath) var sourceStateID setget setSourceStateID;
export (NodePath) var targetStateID;
export (Vector2) var devGraphPos = Vector2(0,0); #position in editor tool graph
}

onready var fsm = Global.findParentNodeWithType(self, FSM)#get_parent().get_parent();
onready var logicRoot = fsm.getLogicRoot();
onready var sourceStateNode = get_node(sourceStateID);
onready var targetStateNode = get_node(targetStateID);

tool{
func _ready():
	setSourceStateID(sourceStateID);
        }
	fsm.init();

tool{
func setSourceStateID(inStateId):
	sourceStateID = inStateId;
	if(!is_inside_tree()): return;
}

(... rest of the class here...)

I'm wondering if it would be possible to write editor plugin that would do just that. Let's assume for example that tool{ and } must be preceded by  #(comment). Now I should be able to write tool plugin inside which you could select your 'tool' scripts, and this plugin should be able to load those scripts inside editor, remove all the parts that are not between 'tool{' and '}' and attach this new script (with set_script() (without saving it as a file) to the node).

But I think the downside of this solution would be the fact that you would see just the tool part after opening the script in Godot :(

Magic code modification will just make things complicated I think.
What about just marking lines about tooling with a pipe | symbol make parse avoid them depending on a sort of environment parameter.
|export (NodePath) var sourceStateID setget setSourceStateID;
|export (NodePath) var targetStateID;

onready var fsm = Global.findParentNodeWithType(self, FSM)

func _ready():
|   setSourceStateID(sourceStateID);
    fsm.init();

|func setSourceStateID(inStateId):
|	sourceStateID = inStateId;
|	if(!is_inside_tree()): return;

(... rest of the class here...)

A pipe symbol will only lead to unending questions 'what's that symbol do?'

But it seems more pythonic than curly braces and shorter than marking each line "tool". At first encounter this may seem different but when meaning is known this will be most easy on the eye and parser I think. Character for marking lines may be different ^ or ! can be used instead which have less usage than pipe while coding.

Only down side is this causes alignment for tool lines will be one character left of regular lines. This can make curly braces more acceptable and easy on the eye.

How about:
tool:
    export (NodePath) var sourceStateID setget setSourceStateID;
    export (NodePath) var targetStateID;

or Java/Python-like annotations?
@tool
    export (NodePath) var sourceStateID setget setSourceStateID;
    export (NodePath) var targetStateID;

@tool
func foo():
    pass

func bar():
    @tool
        setSourceStateID(sourceStateID);

An other syntax without additional indentation might be :
@tool@
export ....
export ....
@@

or
%tool%
export ....
export ....
%%

Wouldn't having something like this be cleaner and more maintainable? :
element.gd:
tool "element_tool.gd"
# This script isn't tool by itself, but is replaced by the other in-editor
extends Node2D

export(int, "Fire", "Water", "Ice") var element_type = 0

func get_damage():
  return ConfigAutoload.elements[type].damage

element_tool.gd:
tool # Might be unnesesary, discuss
extends "element.gd"
# extends is not required, but better if you do this so you would get all the exported vars

# Discuss: do we really need to extend the other script for that?
# We might handle it like placeholder scripts, exporting/autocompleting the same, but
# having different in-editor logic.

export(bool) var debug = true setget set_debug

func _ready():
  set_debug(debug)

func _draw():
  if debug:
    pass # Draw circles, whatever..

# Needed since we don't have a cool way to observe property changes yet
func set_debug(new_debug):
  debug = new_debug
  update()

@bojidar-bg interesting concept, I quite like it, like I said in first post I had hope it would be possible to use multi-script to achieve something similar. But I'm not sure how you want to handle exported variables in this scenario. Mean if we replace script with another one we will have in editor exported variables of another one

@kubecz3k That's what I mentioned in the # Discussion comment -- we are already replacing the non-tool scripts with the so-called "placeholder" scripts in the editor.
If we can get the tool GDScript instance to know that it should also export some variables of another script, it would have no problem doing so. Since we can set that other script at initialisation time, it would all work "just fine".
Thus, the second script would become:
tool # Might be unnecessary
extends Node2D
# ... ...

I'm a bit confused by the two scripts idea...

@bojidar-bg another thing to consider: I'm not sure how tool script would work when it's extending original script. Mean some part of the reason why we want to distinguish between tool and non tool part is because currently tool scripts sometimes cant even pass through the code validation inside the editor (like singletons are invisible in tool for example).  Besides that I think your proposition is good especially since you are one of the few people who actually know how this stuff is working, and how to implement this in the most straightforward way.
When it comes to exposing exported vars of runtime script I think any solution would be fine for me personally, even if there would be some functions that we would need to use manually.
if we will have tool scripts to replace original one in editor, there should be ability to not extend original one. What I mean is currently it's hard to use tools also because some of Godot features are not present

@kubecz3k Well, you would be free to not extend the other script at all, yes.
@Zireael07 Why? You can just think of it as swapping the script at editor time, with some nifty details about exported vars.

@bojidar-bg also I have yet another use case. In fsm plugin which I made, there is Transition class which is working in tool mode. It need to work in tool mode because visualisation part of the plugin need to know to which node states this transition is linked to  (implemented by exported nodePath). The problem is there are generated classes which are extending this Transition class (users are doing this via UI), and those classes also need to be in tool mode because of the fact that their ancestor is sharing some data with plugin (this is a problem since if user make syntax error in this script, it will be gone for editor plugin until fix).
It's meant for the users to subclass this function and implement couple methods

@reduz could you take look at this issue? Specifically at @bojidar-bg proposition? Having this would be huge quality of life improvement and would be cool to have it in 3.0. Not sure if I'm right man to do the job but I think I might want to give it a try.

tool # Might be unnesesary, discuss

For the discussion part, I think marking tool scripts in a clear way is a handy requirement. So that they can be searched and processed in batch when necessary both by Godot and outside processes. Using a regex from terminal to find all tool scripts in a project folder may be handy.

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.
The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.
If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!


configure: Add params for inherit defaults config

By default, Configure don't inherit the "defaults" from
node's process.config object. But sometimes it need to be
inherit from node's compile params.
So add process.env.GYP_INHERIT_DEFAULTS environment variable
and --enable-inherit arguments to control it.

I don't think that's a good idea.  Using process.config from the node binary that runs node-gyp instead of the binary that loads the add-on leads to issues, see https://github.com/nodejs/node-gyp/issues/652 for an example.

not a fan of magic env vars either, closing due to staleness


DOC: settings-api.ini, settings-pandas.ini: metadata

Sorry I missed this!

Thanks.
Is this the Intersphinx?
https://docs.readthedocs.io/en/stable/guides/intersphinx.html#using-intersphinx
https://docs.readthedocs.io/en/stable/guides/intersphinx.html#using-intersphinx
On Sat, Nov 16, 2024, 10:52 PM Jeremy Howard @.***>
wrote:

Merged #38 https://github.com/fastai/nbdev-index/pull/38 into master.
—
Reply to this email directly, view it on GitHub
https://github.com/fastai/nbdev-index/pull/38#event-15323499685, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAAMNS7JSVW2663IWO5WZ3T2BAHJPAVCNFSM6AAAAABR5PS6VKVHI2DSMVQWIX3LMV45UABCJFZXG5LFIV3GK3TUJZXXI2LGNFRWC5DJN5XDWMJVGMZDGNBZHE3DQNI
.
You are receiving this because you authored the thread.Message ID:
@.***>


Separate.wav is blank

Good Afternoon! Thank you for your previous responses, they were very helpful and I was able to train a model on my voice.
After I had created a new data set and ran the
python train.py
After that, I ran python separator.py with a new source.wav.
However, it seems like the separate.wav file is blank. Is there a specific format that source.wav needs to be for to run as intended?
Otherwise, perhaps this was an issue with how I trained it? If you could give any insight, it would be much appreciated. Thank you!

Sorry for the late contact.
separate.wav file is there any sound at all?
Isn't even a small sound included?
Thanks for the report!


DO NOT MERGE! Fast Forward stable to 6dbd19dd4e3fd7fe1b32dd460be1b14e6c1533b7.

This PR will be merged automatically once checks are successful.

Jenkins job manager/postsubmit passed

Jenkins job manager/e2e-suite passed


Multiple krill

We got like 150 krill. Adjustable through local constant. Idle animation and sizes are changed to be ascetically pleasing with the amount of entities.
There are some weird things with the random number generator that I am using. Need to discuss on discord.
Also I suggest that we use certain global constants. These can be deployed as resources. Right now I have added global constants to map file. these constants don't actually reflect the size of the bounding box. This should be rectified in some way.

Looks great!


Does composer support web?

Does composer support web?
I want to server the composer on the server as web app.
How to complie and deploy
Thank you!

Hi @wcc526 the code as packed in this repository does not. It is a standalone desktop App. However, it has been adapted for web use by users.

@kaushik-work Do you mean we can modify to work as a web app? Thanks.


Update to latest lib version where possible and bump csx version to 1.2.0

Last task for 1.2.0

Try upsetting to python 3.10 and test if you can replace dict with switch statements

Update to latest libs in 1.3.0


Valid Triangle Number

🚀 Feature
Given an array consists of non-negative integers, your task is to count the number of triplets chosen from the array that can make triangles if we take them as side lengths of a triangle.
Have you read the Contributing Guidelines on Pull Requests?
Yes
Motivation
Adding a new algorithm and hence making the repo more extensive.
Plz assign me this issue in java and c++

I would like to take this in Java and/or Javascript for CH20

I would like to take this in python

I would like to do this in C


fix: fully qualify hashmap

this resolves the following issue that occurs if multiple DocConsts are used in the same place:
error[E0252]: the name `HashMap` is defined multiple times
  --> src/lib.rs:14:14
   |
5  |     #[derive(DocConsts)]
   |              --------- previous import of the type `HashMap` here
...
14 |     #[derive(DocConsts)]
   |              ^^^^^^^^^ `HashMap` reimported here
   |
   = note: `HashMap` must be defined only once in the type namespace of this module
   = note: this error originates in the derive macro `DocConsts` (in Nightly builds, run with -Z macro-backtrace for more info)

Thank your 👍🏼


Wox JJW24.v1.14.3 fail to startup, throw AccessViolationException and a possible fix

So the release v1.3.524+JJW24.v1.14.3, when running at my computer can't startup, the icon at system tray disappears after around 10 seconds, this is the log: wox-log.txt
I tried to build from your source code and get AccessViolationException at FirefoxBookmarks.cs:35
AccessViolationException - screenshot
So I tried to delete the plugin Wox.Plugin.BrowserBookmark and now Wox can startup and function normally.
After a bit messing around, I find out that the System.Data.SQLite.dll ship with your release is version <IP_ADDRESS>, which is older than the lib be shipped with official BrowserBookmark on Wox.one (<IP_ADDRESS>). So I change the reference in VS2015 to the newest version of System.Data.SQLite.dll and Wox now functions normally with FirefoxBookmarks enabled.
So I guess the problem is System.Data.SQLite.dll <IP_ADDRESS> doesn't work with newer firefox, I use firefox 69.0.1, and Windows 8.1, all 64-bit.
Changes:
https://github.com/jjw24/Wox/compare/master...thanhmssl10:fix-access-violation

Hey @thanhmssl10, thanks for the find and investigation. I personally don't use Firefox so wouldn't have come across this bug. I have added in the change as a pull request.
I am not able to replicate your issue with Firefox (same Firefox version but on Windows 10) and come across another issue where the Firefox bookmarks are not showing up at all with the current release. So I have released your bug fix as a pre-release, and will investigate a bit more on the bug that I came across.
Please test out the new build here and let me know if it fixes this issue.

Your new build works perfectly :+1:
If you can't replicate the issue, I can help, although I don't know much of C#, but  I have setup a dev environment, you can send me test cases or instructions to further investigation 😃

Hey thanks for the offer. So far all good, I have replicated the issue and know why it is causing a access violation. If you are interested you can check out the description in the referenced PR.
Also found out why Firefox bookmarks are not showing up for me. The code in BrowserBookmarks plugin looks for an incorrect attribute in the profile.ini file. I will put up a PR to fix the code later on, and get you to test if it is OK.

It will throw an System.AccessViolationException due to the incorrect sqllite dll included where the plugin is expecting sqllite dll version 1.0.93 and the version embeded is actually 1.0.102.

So if I understand correctly, 1.0.93 and 1.0.102 both can work with Firefox 69.0.1? Although the version in packages.config have to match with the lib being reference? :thinking:

Usually if the dll version does not match packages.config, the project may not complain during compile and build , but when it comes to actual run time the behavior may not be what you had expected. In this instance it throws an access violation.
I think 1.0.93 may work with Firefox 68.0.1 but can't prove it because NPM no longer restores that sqlite version probably because it is no longer supported.
The new pre-release is here(https://github.com/jjw24/Wox/releases/tag/v1.3.524%2BJJW24.v1.14.5), please test it and let me know if your Firefox bookmarks are still good.


Add CMS Detection

Add CMS detection for the major CMS's available. Should be available as part of the scan command, and a new cms command.

This will be addressed, one way or the other, in the new Python version.


chore: release main

:robot: I have created a release beep boop
auto-instrumentations-node: 0.49.2
0.49.2 (2024-08-09)
Dependencies

The following workspace dependencies were updated

dependencies

@opentelemetry/instrumentation-undici bumped from ^0.4.0 to ^0.5.0
@opentelemetry/resource-detector-aws bumped from ^1.5.2 to ^1.6.0
@opentelemetry/resource-detector-azure bumped from ^0.2.9 to ^0.2.10
@opentelemetry/resource-detector-container bumped from ^0.3.11 to ^0.4.0

instrumentation-undici: 0.5.0
0.5.0 (2024-08-09)
Features

instrumentation-undici: Add responseHook (#2356) (60a99c9)

resource-detector-aws: 1.6.0
1.6.0 (2024-08-09)
Features

detector-aws: add sync version for all detectors (#2376) (167dced)

resource-detector-azure: 0.2.10
0.2.10 (2024-08-09)
Bug Fixes

detector-azure: suppress tracing for AzureVmDetector (#2371) (5952127)

resource-detector-container: 0.4.0
0.4.0 (2024-08-09)
⚠ BREAKING CHANGES

detector-container: change implementation to DetectorSync interface (#2334)

Features

added prefix to look for containerid (#2341) (1991aed)
detector-container: change implementation to DetectorSync interface (#2334) (18a5731)

This PR was generated with Release Please. See documentation.

Should I have expected this PR to automatically update to include instr-mongoose since https://github.com/open-telemetry/opentelemetry-js-contrib/pull/2353 recently merged?

Should I have expected this PR...

Yup. Discussed at OTel JS SIG today. It was a failed GH actions job. All good now.

:robot: Created releases:

resource-detector-aws-v1.6.0
resource-detector-azure-v0.2.10
resource-detector-container-v0.4.0
auto-instrumentations-node-v0.49.2
instrumentation-mongoose-v0.41.0
instrumentation-tedious-v0.13.0
instrumentation-undici-v0.5.0
instrumentation-generic-pool-v0.38.1
instrumentation-redis-4-v0.41.1
:sunflower: