Update transactional-data.md

Fixing two typos.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/data-guide/concepts/transactional-data.md
:white_check_mark:Succeeded
View

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


winrt doesn't work well with a single digit?

While pytesseract.image_to_string(im, config="--psm 6") returns 6.

Sounds entirely plausible especially with a dark background. It works best with flowing text. I don't have any control over this, so I'm closing.


Ensure that mail service failures are very visible

A failure of the mail system needs to publish some kind of event or notify an admin in some way.

Uses #2

Now using #25


Easter eggs?

📝 Provide a description of the new feature
What is the expected behavior of the proposed feature?  What is the scenario this would be used?
Add fun and hidden easter eggs in PowerToys.
I don't mind if you don't think this is a good idea. I think it's fun. Even GitHub has a few of them: https://api.github.com/zen
If you'd like to see this feature implemented, add a 👍 reaction to this post.

/cc @crutkas @enricogior

I have a good idea, if that's possible. If you press 15 times on the open fancyzones editor without closing the editor clippy appears and says:

or something more funny than that

I am younger than Clippy but I know about it 😄

Sorry, while Easter eggs could be fun, they add bugs / security issues.

Real reason why we don't do Easter Eggs: https://www.youtube.com/watch?v=2fsUAdlzwAs :smile:


[WIP] Bidirectional plugin transport and multiplexing

connect https://github.com/SkygearIO/skygear-server/issues/295
depends on https://github.com/SkygearIO/py-skygear/pull/123
Work in progress

Pick ccbaca1 and be85c21 to a separate PR?

@limouren let me invite you to do the peer review on channel with me 💯

I merged this PR into zmq-multiplex branch, and open following issue in order to make it good enough to merge to master.
Please refer to #303, #304, #305, #306, #307, #308


using dawidd6/action-download-artifact@v2 in docs for forked repos and dependabot branches

This is more a question / feature request than an issue, apologies if this is the wrong place to raise this.
I very much appreciate this github actions and its comprehensive and well-laid out documentation is one of the reasons.
To make this action work for pull requests created by Dependabot I follow the instructions in the section Support fork repositories and dependabot branches which works seamlessly.
I recently stumbled upon the github action dawidd6/action-download-artifact@v2. Could this be a potential replacement for the code that currently sits in the step Download and Extract Artifacts of the documentation in the section Support fork repositories and dependabot branches? If so, adding this to the documentation with an example would be great 😃

I am currently evaluating that action and I plan to use it in the section. Thanks for the pointer!


Air-gapped mixed (win+linux) env preperation, private registry issue

What kind of request is this (question/bug/enhancement/feature request):
Hi,
I am running an air-gapped env, mixed windows + Linux nodes.
Rancher version 2.5.8.
Using your instructions as described here:
https://rancher.com/docs/rancher/v2.x/en/installation/other-installation-methods/air-gap/populate-private-registry/
and here
https://github.com/rancher/docs/issues/1742

I am using the registry:2 image to run a local registry.
After downloading both windows +Linux images using the rancher_save scripts, I am uploading the windows images using the default rancher_load script.
After the windows upload is done, I am running the rancher_load on a Linux node, using:
./rancher-load-images.sh --registry <reg-ip>:5000 --windows-image-list ./rancher-windows-images.txt --windows-versions "1809" --image-list ./rancher-images.txt
After the script finished and all of the images are uploaded successfully, I am starting a Rancher cluster, adding Linux nodes as usual, and when I need to add the windows node when it tries to pull the :5000/rancher-agent image, I am getting:
image operating system “Linux” cannot be used on this platform” error.
Which means the manifesting didn't work.
What can I do?

Steps to reproduce (least amount of steps as possible):
as mentioned in the instructions.
Result:
In a UI connected to the registry, I can see different tags:

Expected Result:
A fixed manifest process that allows me to use one registry for both rancher on windows+linux
Other details that may be helpful:
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI):
2.5.8
Installation option (single install/HA):
Mixed windows+linux

Cluster information

Cluster type (Hosted/Infrastructure Provider/Custom/Imported):
Self-hosted
Machine type (cloud/VM/metal) and specifications (CPU/memory):
Bare metal
Kubernetes version (use kubectl version):

(paste the output here)

Docker version (use docker version):

Linux: 18.06.3-ce
windows: 19.03.16

Any suggestions please? thanks!

Hi! Thanks for filing an issue. We do not allow Rancher to be installed on a mixed Windows and Linux cluster. A mixed node cluster must be a downstream cluster.
Provisioning Windows clusters: https://rancher.com/docs/rancher/v2.5/en/cluster-provisioning/rke-clusters/windows-clusters/
Rancher requirements: https://rancher.com/docs/rancher/v2.5/en/installation/requirements/#operating-systems-and-container-runtime-requirements

"Rancher should work with any modern Linux distribution."

Perhaps, we may want to make this more clear. I recommend filing an issue or PR in rancher/docs.


Not working as per superbase Docs

I have fallowed the docs of superbase to run dart edge in superbase platform. but even hello world function also not working
doc: https://supabase.com/docs/guides/functions/dart-edge

The function is being served on:
 http://<IP_ADDRESS>:54321/functions/v1
but your url is missing the /v1.

This helps as a temporary fix : https://github.com/invertase/dart_edge/issues/52#issuecomment-1834515475

Finally worked after defining edge.yml configuration as below.
supabase:
  functions:
    task1: 'lib/task1.dart'
    task2: 'lib/task2.dart'
  projectPath: "supabase"

i feel need documentation for better clarity. otherwise new users of this library will get confuse.

I was getting confused already to see that I´m following every doc-tutorial step and getting Function not found. Impostor syndrome, they call it sometimes. At least until I encountered several issues discussing the same subject.

I was getting confused already to see that I´m following every doc-tutorial step and getting Function not found. Impostor syndrome, they call it sometimes. At least until I encountered several issues discussing the same subject.

Maybe this is a duplicate of #52


⚠ Bofrost.es has degraded performance

In e792ea8, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1649 ms

Resolved: Bofrost.es performance has improved in 3ae964e after 8 minutes.


Automatically create DB if does not exist

Currently needs user to manually create the sqlite3 database, should instead create one automatically whenever the database has failed to load

actually it seems as if the DB is being automatically created, the issue is that the default config file specifies that the database to be created at /usr/share/matsuba, which the user may not have permission to access. Should default to $HOME/.cache/matsuba instead, which should be resolved by #28


save() function issue

Q
A

Bug?
no

New Feature?
yes

Version Used
0.5

FFmpeg Version
3.1

OS
Windows 8.1

Actual Behavior
I was going to clip the video using PHP-FFMpeg. Audio codec of the input file(mp4) is AAC.
To clip, when I use $video->save(new FFMpeg\Format\Video\X264(), 'clip1.mp4') function, I got some errors.
I found out the solution in the below url.
http://stackoverflow.com/questions/29253498/php-ffmpeg-unknown-encoder-libfaac-on-windows
So I have used the below code to clip the input video.
$ffmpeg = FFMpeg\FFMpeg::create();
$video = $ffmpeg->open('input.mp4');
$video->filters()->clip(FFMpeg\Coordinate\TimeCode::fromSeconds(65), FFMpeg\Coordinate\TimeCode::fromSeconds(10));
$video->save(new FFMpeg\Format\Video\X264('libmp3lame', 'libx264'), 'clip1.mp4');
It works well, but it takes a long time to clips in same codec. It takes more long time when clip the multiple files. I think that PHP-FFMpeg may render the codec of the input file.
When I use 'ffmpeg' command in terminal to do it, it takes a short time.
"ffmpeg -i input.mp4 -ss 00:00:05 -t 00:00:10 -c copy clip.mp4"
Expected Behavior
How can I clip the video without rendering?
Possible Solutions
I'd like to just call "save()" function if it doesn't need to render.
Like as follows:
$video->filters()->clip(FFMpeg\Coordinate\TimeCode::fromSeconds(65), FFMpeg\Coordinate\TimeCode::fromSeconds(10));
$video->save('output.mp4');
Could you tell me the best way to do this?
Thanks.

I have same problem like you, php-ffmpeg always rendering video in clip filter

Hi @duongcuong96, @wiktordev,
Does the PR #257 solve this problem? This PR has been merged this day. Could you manage to try it and tell us if it's what you were expecting?
If yes, I'll close this issue.


fix: Add Japanese Translations

SUMMARY

An unassigned translation was added.

BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
TESTING INSTRUCTIONS
ADDITIONAL INFORMATION

[ ]  Has associated issue:

[ ]  Required feature flags:

[ ]  Changes UI

[ ]  Includes DB Migration (follow approval process in SIP-59)

[ ]  Migration is atomic, supports rollback & is backwards-compatible
[ ]  Confirm DB migration upgrade and downgrade tested
[ ]  Runtime estimates and downtime expectations provided

[ ]  Introduces new feature or API

[ ]  Removes existing feature or API

Hi @rusackas
Thank you for approving our pull request.
We changed the title to fit the form of the template.
But there still is one more error regarding Cypress
Is this something can be fixed on our end?
We would appreciate for any support on this.
BR

@avintonOfficial 貢献していただきありがとうございます。Cypressを再実行してみます。


Support for MacOS

Is your feature request related to a problem? Please describe.
It doesn't look like this supports MacOS, given how tied it is to avahi?
Describe the solution you'd like
There appears to be no easy way to point MacOS cups to an existing cups server without overwriting client.conf (which naturally breaks local-only printing). Adding MacOS support would fix this.

The easiest way here would be to replace the direct Avahi interaction by the new libcups API functions, in libcups2 from CUPS 2.5.x on and libcups3 (libcups repo, for CUPS 3.x).


Definitions for keyworks

This feature would be focusing on easing the learning curb of programming by adding definitions to keywords, similar to how you get definitions on variables. As an example, say you're programming in TypeScript, you can hover over the interface keyword and get info on how to use it, when or when not to use it, when to use type instead, and a link to the documentation. I don't think this should be incredibly hard to implement and would help new or even intermediate/advanced developers to thoroughly understand what these keywords mean.

This feature is powered by the TypeScript project. Please file a feature request upstream


Online demo

Online demo displays loading message and hangs.

Better late than never. I'm sorry I missed it. Thank you for reporting.


Write tests

Exercise all endpoints at minimum.

Testing framework is now in place, currently checking only that basic HTTP responses are correct. This can easily be expanded as we add more functionality.


Only prompt to switch to perFile mode when submitting code to interactive window from a different owning file

For https://github.com/microsoft/vscode-jupyter/issues/5471
@greazer ran into this earlier today while dogfooding the new native interactive window. The problem predates native interactive window work; while unscheduled and not a regression, it was straightforward to fix.

Codecov Report

Merging #6383 (ba87386) into main (2253b23) will decrease coverage by 0%.
The diff coverage is 50%.

@@          Coverage Diff          @@
##            main   #6383   +/-   ##
=====================================
- Coverage     69%     69%   -1%
=====================================
  Files        407     407
  Lines      27911   27925   +14
  Branches    4137    4138    +1
=====================================
- Hits       19504   19492   -12
- Misses      6755    6777   +22
- Partials    1652    1656    +4

Impacted Files
Coverage Δ

...eractive-window/nativeInteractiveWindowProvider.ts
14% <0%> (+<1%)
:arrow_up:

...ce/interactive-window/interactiveWindowProvider.ts
75% <85%> (+<1%)
:arrow_up:

...ent/datascience/jupyter/pythonVariableRequester.ts
72% <0%> (-2%)
:arrow_down:

...rc/client/datascience/jupyter/debuggerVariables.ts
76% <0%> (-2%)
:arrow_down:

src/client/datascience/jupyter/jupyterNotebook.ts
75% <0%> (-1%)
:arrow_down:

src/client/common/utils/decorators.ts
76% <0%> (-1%)
:arrow_down:

src/client/datascience/baseJupyterSession.ts
71% <0%> (-1%)
:arrow_down:

...active-common/intellisense/intellisenseProvider.ts
74% <0%> (-1%)
:arrow_down:

.../datascience/notebook/notebookControllerManager.ts
86% <0%> (-1%)
:arrow_down:

...ence/interactive-window/nativeInteractiveWindow.ts
5% <0%> (-1%)
:arrow_down:

... and 3 more


Replace calls to QUtil::int_to_string with std::to_string

In these cases, this is what int_to_string eventually does anyway.

I was going to say I didn't know about std::to_string, but apparently a previous version of me knew about it. Thanks. I guess this will help with performance because it won't pass through the layers of function calls and conditions, and obviously this is called a lot. Besides, no reason to use a qpdf function when a standard one will do. Good change.

On average, a bit over 2.5%. I expected a bit, but not quite that much.


Implement issue #704 and enable multi-schema validation

Fixes Issue #704
Description of Change
Enables wildcard source and confidence and regex value matching for <given> and <remove> clauses of the hints file (when using the new version 1.3 XSD).
Also cleans the code of the HintParser with a clean way to support multiple XSDs for a validating SAX Parser, solving an old TODO comment.
Have test cases been added to cover the new functionality?
yes

Can one of the admins verify this patch?


Add a delete type

@JungWinter for your consideration - will add documentation if it's ok!

I'll fix the broken integration ci

Dang sorry 🙏


DOC: Describe the proper way to replace a Transformer or a Line

Location of the document
disconnecting-an-element
Documentation problem
The documentation explains how to disconnect a Load, but not the proper way to replace a Transformer or Line with a new one with different parameters. The use case would be : a constraint is violated in a transformer or line, the user wants to replace it with a larger one, without having to recreate the network from scratch.

The addendum is now available here. Be careful, the github.io pages still displays the doc of the 0.6.0 version. The new address for the documentation of v0.7.0 and following is https://roseau-load-flow.roseautechnologies.com.


Variable explorer shows wrong size

Problem Description
When I run my script using Pandas some variables appear on the variable explorer wrong sized. At first, I thought there was a problem with my code, so I double-checked it and tried np.shape() on the variables that seemed to be wrong. But when I do this the output is different from what the variable explorer shows, as you can see in the image below:
Variables "edad", "genero", "manipulada",  "polarizacion", "dicc2" and "dicc3".

I have tried already restarting Spyder, restarting my computer and  spyder --reset on the Anaconda prompt.
Versions

Spyder version: 3.3.3
Python version: 3.7.0 64-bit
Qt version: 5.9.6
PyQt version: 5.9.2
Operating System name/version: Windows 10

Dependencies

IPython >=4.0     :  6.5.0 (OK)
cython >=0.21     :  0.28.5 (OK)
jedi >=0.9.0      :  0.12.1 (OK)
matplotlib >=2.0.0:  2.2.3 (OK)
nbconvert >=4.0   :  5.4.0 (OK)
numpy >=1.7       :  1.15.1 (OK)
pandas >=0.13.1   :  0.23.4 (OK)
pycodestyle >=2.3 :  2.4.0 (OK)
pyflakes >=0.6.0  :  2.0.0 (OK)
pygments >=2.0    :  2.2.0 (OK)
pylint >=0.25     :  2.1.1 (OK)
qtconsole >=4.2.0 :  4.4.1 (OK)
rope >=0.9.4      :  0.11.0 (OK)
sphinx >=0.6.6    :  1.7.9 (OK)
sympy >=0.7.3     :  1.1.1 (OK)

Please upload a simple code that consistently shows this error. That way we'll be able to better understand what's happening here.

Closing due to lack of response.

The same error occurs for me. I think it happens if the workspace is really large and many big variables are stored. I hope I find time to artifically recreate this error wihtin the next weeks


Extend support in diff code to see differences in some JSON fields (user data) and in FABNetv4,6Ext properties

@kthare10 please comment if you have additional suggestions.

Fixed in #160


Can't delete delete file used by StreamingReader

Hi,
When I use the StreamingReader with a manual file it cannot be deleted. In windows it complains that the file is used by another process:
final File source = new File("\some\file.xlsx");
final File tmp = Files.createTempFile("tmp-", ".xlsx").toFile();
FileUtils.copyFile(source, tmp); //this is Apache-commons-IO but it doesnt' really matter how we produced the temp file, the problem is the same
System.out.println(tmp.getCanonicalPath());
try(StreamingReader reader = StreamingReader.builder().sheetIndex(0).read(tmp)){
    for (Row row : reader) {
        //do something
    }
}
Files.delete(tmp.toPath()); //throws an exception

Looking at the StreamingReader code I see that you are creating a OPCPackage, shouldn't it be closed when the StreamingReader is closed? Is it something else? Are you able to reproduce this?
Thanks,
Cesar,
PS: Great library btw!

To be honest, I haven't really tested much on Windows. I know it's a lot weirder about file locking than *nix filesystems though, so I guess I just never noticed this issue before.
You're likely correct that a stream just needs to be closed. I'll take a look.

@cesartl Can you give the latest code a try on Windows? I added a revert() call to close the OPCPackage without saving.

Hi, the same test now passes. Thanks!

0.2.13 has been released to Maven Central, so you should be able to use that version now.

Hi do we have remove row functionality for excel sheet using StreamingReader


Document/Implement Eosio SDK

Goal:
Have Eosio SDK which contains everything necessary to write, build, and test Eos contracts on a Linux operating system.
Components of the SDK:

Eos Blockchain software (eosd, eosc)
Eos standard library (eoslib)
Toolchain (wasm-llvm, s2wasm)
Contract compiler script (eoscpp)
Skeleton contract project (hello world contract impl, test cases, CMakeLists.txt)

SDK installs to /opt/eosiosdk, and contains all of the above components in a standard Linux software directory structure:
/opt/eosiosdk/bin contains {eosd, eosc, toolchain binaries, s2wasm, eoscpp}
/opt/eosiosdk/include contains eoslib
/opt/eosiosdk/lib contains eos, fc libraries
/opt/eosiosdk/share/eosiocontract/skeleton contains skeleton contract project

How to develop an Eosio contract:

Download/install SDK
Run eoscpp --newcontract mycontract

Creates mycontract folder and populates it with skeleton contract
Interpolates mycontract name into skeleton

Implement contract/test cases
Run cmake .

Finds Eosio SDK
Creates Makefile or equivalent

Run make or equivalent

Runs eoscpp to compile mycontract.cpp to mycontract.wast

Run make test or equivalent

Creates mycontract.wast.hpp from mycontract.wast
Builds test program against mycontract.wast.hpp
Runs test program

To deploy, run eosc contract mycontract mycontract.wast mycontract.abi

Related to this would be integration of a tool that automatically generates mycontract.abi based upon comments / annotations within contract.  Not necessary to close this issue, just adding it to the list of tools that need to be included in the final SDK.

awesome

Tried making a CMake project which includes the various SDK components as subdirectory projects, and builds and installs the relevant targets only... This is not something CMake supports, and I ran into dead ends with every dirty hack and workaround I tried, so I've ditched CMake and am now evaluating using a simple shell script that downloads, builds, and assembles the SDK.

Rolling with the shell script for now, because it makes things work.
I've written a super basic eoscpp now; all that remains is to put together a skeleton project w/ test cases

Ported contract project w/ cmake to build w/ eoscpp. Using that as the basis for the skeleton project. No test cases as yet.

Todo:

[ ] Add test cases
[ ] Implement renaming to new project name (in eoscpp) when copying skeleton

It has been decided that the SDK should be part of Eos, rather than Eos part of the SDK which is the typical pattern. This is because we want to build and run Eos contracts as part of the Eos build and test process.
To accomplish this, it is proposed to put the build script (presently build.sh in the SDK repo) into the Eos repo, but rewrite it to remove the Eos build steps and have it build/install the toolchain outside of the Eos repo (where?), in contrast to the previous bundled SDK design which keeps all components within a single dedicated install tree (recommended: /opt/eosiosdk). The Eos cmake must be updated to locate the toolchain, and generate a copy of eoscpp that contains a hard-coded reference to it, instead of the autodetection eoscpp currently uses (can't autodetect, as eoscpp is becoming part of Eos, but the toolchain is installed separately). Furthermore, eoscpp must be rewritten to detect whether it's being run as part of the source distribution of Eos, in which case it must auto-locate the Eos binaries, or whether it's being run as installed as part of Eos within the OS, as the paths to binaries change depending on whether Eos is installed or not (ie <srcdir>/programs/eosd/eosd vs <installpath>/bin/eosd)
Todo:

[ ] Re-engineer build.sh

[ ] Remove Eos build/install steps
[ ] Move script into Eos repo
[ ] Amend script to build/install toolchain somewhere outside of Eos repo

[ ] Update eoscpp

[ ] Replace eoscpp script with cmake input file (cmake must generate script now)
[ ] Detect whether Eos is installed or running from build dir, adapt accordingly
[ ] Remove toolchain autodetection in favor of hard-coded paths from cmake

[ ] Update Eos cmake

[ ] Locate toolchain (whether installed by build.sh or some other manner)
[ ] Generate a copy of eoscpp with hardcoded path to toolchain
[ ] Restructure contracts to build with eoscpp

[ ] Ideally, restructure contract tests to be part of their parent contract's build rather than Eos's

[ ] Unify SDK's eoslib and Eos's copy, as these have fallen out of sync

We will break this task into following staged steps:

Integrate eoscpp into eos repository (without generation from cmake).
Modify build.sh to take the path of installed dependencies and generate cmake for eos and eoscpp.
Modify build.sh to build/install all dependencies in user desired folder.

Initial version completed.

@nathanhourt @pavybez  we not able to compile the code.  Getting below errors. Please provide assitance.
Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" failed.
Compiler: /usr/bin/c++
Build flags: -Wno-error=implicit-fallthrough=
Id flags:
The output was:
1
cc1plus: error: -Werror=implicit-fallthrough=: no option -Wimplicit-fallthrough=


Rewrite update script in Node

What
Rewrite the script update.sh to be written in Node instead of Bash.
Why
It is easier for the team to maintain code in Node.
Who needs to work on this
Developers
Who needs to review this
Developers
Done when

[ ] update.sh is now update.js

With v13 this upgrade script is no longer used, I think for older versions it's fine to leave the script in bash. Closing this issue.


New logo for Qlist

I wanted to contribute to Qlist I designed a logo for Qlist. If you like it, I'll send you the files.

Hi,
thanks for your hard work. You created really fantastic logo.
Do you know how to use git ? If you do, would you mind forking this repo, adding logo image in root of this repo as logo.extension and adding it to README.md as image (markdown syntax), then create pull request ?
In case you don't know, you can send me files to<EMAIL_ADDRESS>but in this case your contribution won't be shown in github contributors (I think, but not sure), but I would add your name in list of contributors, if that's OK ?
Cheers

Hello, I do not use Github very well. I don't want to ruin the repository :) I will send you mail. Thank you for accepting the logo.

Thanks, do you want that I include you real name in contributors list or only your username ?

You can add my username to the list. Which logo do you prefer? Left or right?

I prefer left logo.


Use Microsoft.Extensions.FileSystemGlobbing

Is your feature request related to a problem? Please describe.
There are some places in the configuration file where we kind of just have to ask to the user for complete paths
https://www.nuget.org/packages/Microsoft.Extensions.FileSystemGlobbing
for example: build.copyPaths.includes it requires an array of paths/directories that we use to know what to copy into the final build
Describe the solution you'd like
by using Microsoft.Extensions.FileSystemGlobbing we should be able to ease these constraints of either a full directory or a complete file path and just ask for a glob string
Describe alternatives you've considered
I wasn't aware of any other glob libraries we could explore a little bit before implementing these
Additional context
Add any other context or screenshots about the feature request here.

Jordan Marr also suggested this library, we should also take a look at it
https://github.com/kthompson/glob/


🐛 When applying a fix with lint/style/noUnusedTemplateLiteral it doesn't respect formatter params like javascript.formatter.quoteStyle

Environment information
CLI:
  Version:                      1.4.1
  Color support:                true

Platform:
  CPU Architecture:             aarch64
  OS:                           macos

Environment:
  BIOME_LOG_DIR:                unset
  NO_COLOR:                     unset
  TERM:                         "xterm-256color"
  JS_RUNTIME_VERSION:           "v20.10.0"
  JS_RUNTIME_NAME:              "node"
  NODE_PACKAGE_MANAGER:         "npm/10.2.3"

Biome Configuration:
  Status:                       Loaded successfully
  Formatter disabled:           false
  Linter disabled:              false
  Organize imports disabled:    false
  VCS disabled:                 true

Workspace:
  Open Documents:               0

What happened?

Set javascript.formatter.quoteProperties to single, use recommended settings everywhere.
Have a file with unnecessary template literal of a string in TS/JS file instead of single quotes
Run npx biome format --write .

As a result, it formats this string inside a double quote, and probably also ignores the max line length as after biome check --apply-unsafe . it also formats a long string in a new line:
// before:
const test = {
  description: `Some long text here ...`,
}

// after:
const test = {
  description: "Some long text here ...",
}

Expected result
String should use single quote, and respect line length. Expected result is:
const test = {
  description:
    'Some long text here ...',
}

Code of Conduct

[X] I agree to follow Biome's Code of Conduct

Hey @dmythro , we require a minimal reproduction for this issue. You can use our CBS https://codesandbox.io/p/devbox/biome-starter-cbs-rky6zq

Closing because we can't reproduce the issue

Experiencing the same issue on 1.5.1
Here's a CSB: https://codesandbox.io/p/devbox/festive-margulis-mg2plq

I believe this isn’t an issue but a feature request. The linter doesn’t have opinions on formatting choices. Also, if the formatter is disabled, users would expect different defaults.

FWIW from user point of view it's very confusing that when configuration is defined in a certain way you see one thing in the editor (when trying to apply the fix for example) and another when running a specific CLI command.
Argument can be made that seeing how it's "One toolchain for your web project" one would expect that the underlying tools should be aware of and respect each tool configuration.

FWIW from user point of view it's very confusing that when configuration is defined in a certain way you see one thing in the editor (when trying to apply the fix for example) and another when running a specific CLI command.
Argument can be made that seeing how it's "One toolchain for your web project" one would expect that the underlying tools should be aware of and respect each tool configuration.

You're right, and I can agree with your point of view. I am not dismissing your argument.
This was a deliberate choice from the very beginning. Having our tools that work separately, so we can improve them without stomping on each other, then slowly join their features together and see how it plays out.
That's why I deem this as a feature request and not a bug.


Use real (clickable) entity tags in the warning messages

So users can navigate into the problematic Entity

Seems implemented in some new warning messages (Territory-based validation warnings)... so done? Or remains to be done in the other warnings where applicable?

It was implemented in the meantime and should be now deployed.


mozillavpn: 2.23.1 → 2.24.0

Description of changes
Upgrade the Mozilla VPN client from 2.23.1 to 2.24.0. Also migrate it to by-name.
https://github.com/mozilla-mobile/mozilla-vpn-client/releases/tag/v2.24.0
https://github.com/mozilla-mobile/mozilla-vpn-client/compare/v2.23.1...v2.24.0
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] 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/)
24.11 Release Notes (or backporting 23.11 and 24.05 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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-ready-for-review/3032/4617


OAUTH_CALLBACK_ERROR : expected 200 OK, got: 301 Moved Permanently with Custom provider

Environment
- Operating System: Darwin
- Node Version:     v20.12.2
- Nuxt Version:     3.12.4
- CLI Version:      3.12.0
- Nitro Version:    2.9.7
- Package Manager<EMAIL_ADDRESS>- Builder:          -
- User Config:      runtimeConfig, colorMode, tailwindcss, app, compatibilityDate, ssr, devtools, modules, hooks, auth
- Runtime Modules<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>- Build Modules:    -

Reproduction
nuxt.config.ts
  auth: {
    globalAppMiddleware: true,
    disableServerSideAuth: false,
    provider: {
      type: 'authjs',
      defaultProvider: 'wp',
      addDefaultCallbackUrl: true
    }
  }

server/api/auth[...].ts
{
      id: "wp",
      name: "wp",
      type: "oauth",
      authorization: {
        url: "https://mywp.local/oauth/authorize/",
        params: {
          scope: [ "basic" ]
        }
      },
      token: "https://mywp.local/oauth/token",
      userinfo: "https://mywp.local/oauth/me",
      clientId: "veDKK7K9vRS9D87S5kqcc3tfIwezuD5XqHmqaQbF",
      checks: ['state'],
      clientSecret: "1yvJZ4SGlqWDGM6ZhpS1D6e4fc6k9mX8JJ5vmruxj",
      profile(profile) {
        return {
          ...profile
        }
      },
    }

Describe the bug
I have a nuxt application that I would like to authenticate using oauth to my wordpress oauth Server.
Im using the authorization code grant type :
For this, I created a custom provider but I constantly get a OAuthCallbackError. But I can't get more info about the real cause of this problem.
Additional context
Here is the callback request:
https://app.mywp.local/api/auth/callback/wp?code=exhwgu0nueado5lvc8srgw1zscv3fsybwrkuetah&state=5abthZSJDSAOxagJwnYu3sBYQnIk3Nk5kERBrlJ7uzs&iframe=break

Logs
nuxt-1  |  ERROR  [next-auth][error][OAUTH_CALLBACK_ERROR]
nuxt-1  | https://next-auth.js.org/errors#oauth_callback_error expected 200 OK, got: 301 Moved Permanently { error:
nuxt-1  |    { OPError: expected 200 OK, got: 301 Moved Permanently
nuxt-1  |        at processResponse (/srv/app/node_modules/openid-client/lib/helpers/process_response.js:41:11)
nuxt-1  |        at Client.userinfo (/srv/app/node_modules/openid-client/lib/client.js:1264:18)
nuxt-1  |        at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
nuxt-1  |        at async oAuthCallback (/srv/app/node_modules/next-auth/core/lib/oauth/callback.js:131:17)
nuxt-1  |        at async Object.callback (/srv/app/node_modules/next-auth/core/routes/callback.js:52:11)
nuxt-1  |        at async AuthHandler (/srv/app/node_modules/next-auth/core/index.js:201:28)
nuxt-1  |        at Object.handler (/srv/app/node_modules/@sidebase/nuxt-auth/dist/runtime/server/services/authjs/nuxtAuthHandler.mjs:88:24)
nuxt-1  |        at async file:///srv/app/node_modules/h3/dist/index.mjs:1975:19
nuxt-1  |        at async Object.callAsync (file:///srv/app/node_modules/unctx/dist/index.mjs:72:16)
nuxt-1  |        at async Server.toNodeHandle (file:///srv/app/node_modules/h3/dist/index.mjs:2266:7)
nuxt-1  |      name: 'OAuthCallbackError',
nuxt-1  |      code: undefined },
nuxt-1  |   providerId: 'wp',
nuxt-1  |   message: 'expected 200 OK, got: 301 Moved Permanently' }

Ok its WordPress Oauth plugin issue.
Had to add trailing slash at the end of the token endpoint « https://mywp.local/oauth/token/« , otherwise  it will redirect to the correct endpoint with trailing slash.


Inconsistency in API Method Implementation in OpenAi Chat Model

Overview
The class OpenAiChatModel:

extends the abstract class AbstractFunctionCallSupport (implementing methods callWithFunctionSupport and callWithFunctionSupportStream)
implements the two interfaces ChatModel and StreamingChatModel (defining the call and  stream methods).

OpenAiChatModel implements the call method relying on the callWithFunctionSupport method, as expected. However, the implementation of the stream method does not rely on callWithFunctionSupportStream as one would expect.
Issue Description
This inconsistency in the implementation of the stream method makes it challenging to customize the existing models. When the call method uses  callWithFunctionSupport, it provides a standard, extendable approach that can be easily adapted or overridden for custom behavior. However, the custom implementations of the stream method bypass callWithFunctionSupportStream, resulting in a fragmented and non-uniform codebase. This discrepancy hampers the ability to make consistent enhancements or apply uniform customizations across different models.
Current Implementation
The model classes implement the call method relying on the callWithFunctionSupport method, as expected. However, the implementation of the stream method does not rely on callWithFunctionSupportStream as one would expect.
OpenAiChatModel
@Override
public ChatResponse call(Prompt prompt) {
    ChatCompletionRequest request = createRequest(prompt, false);
    return this.retryTemplate.execute(ctx -> {
        ResponseEntity<ChatCompletion> completionEntity = this.callWithFunctionSupport(request);
        // other code
    });
}

@Override
public Flux<ChatResponse> stream(Prompt prompt) {
    ChatCompletionRequest request = createRequest(prompt, true);
    return this.retryTemplate.execute(ctx -> {
        Flux<OpenAiApi.ChatCompletionChunk> completionChunks = this.openAiApi.chatCompletionStream(request);
       // other code
    });
}

Suggested Change
Refactor the stream method in each of the model classes to use the callWithFunctionSupportStream method, similar to how the call method uses callWithFunctionSupport.
Note
This problem may also be present in other chat models implementing  AbstractFunctionCallSupport

We are making some changes in this area, will review your comments with these in flight changes.  Thanks for reporting.

I believe that after M4 this issue has been addressed. Now bot the call() and the stream() rely on common set of utilities for function calling.
In the case of OpenAiChatModel:

call() -> https://github.com/spring-projects/spring-ai/blob/c05714881303e9b43ab710ec900cef11f3dbd9e4/models/spring-ai-openai/src/main/java/org/springframework/ai/openai/OpenAiChatModel.java#L266-L272
stream() -> https://github.com/spring-projects/spring-ai/blob/c05714881303e9b43ab710ec900cef11f3dbd9e4/models/spring-ai-openai/src/main/java/org/springframework/ai/openai/OpenAiChatModel.java#L337-L342

I'm closing this as resolved.
@RikJux feel free to re-open it if you still see unresolved problems.


Next mayor version release

[x] Update babel-env
[x] Remove yarn as dependency
[ ] Update README
[x] Add karma-runner to run tests in headless Chrome
[ ] Add environment helpers
[ ] Add email helpers
[ ] Rename spec scripts and folders to test to make use of npm test script.
[ ] Take advantage of npm hooks
[ ] Replace flow with TypeScript ?

Replacing flow with TypeScript is not a given for this release, maybe worth doing this separately, it would remove the need for further scripts in package.json and the flow config and decls/flowtype folders, but not sure what that means for new projects built on top of this.


FFmpegError when FFmpeg is installed

System OS
Linux
Python Version
3.11 (CPython)
Install Source
GitHub
Install version / commit hash
v4.2.8 (866dadd)
Expected Behavior vs Actual Behavior
No response
Steps to reproduce - Ensure to include actual links!

Download a song. I'll be using California Gurls as an example.

$ spotdl download https://open.spotify.com/track/6tS3XVuOyu10897O3ae7bi?si=145ab15f1bdb45c2

Traceback
Processing query: https://open.spotify.com/track/6tS3XVuOyu10897O3ae7bi?si=145ab15f1bdb45c2
FFmpegError: Failed to convert Katy Perry - California Gurls, you can find error here: /home/a260/.spotdl/errors/ffmpeg_error_2024-11-07-12-03-56.txt

Other details
OS: Manjaro Linux 6.10.13-3-MANJARO
Python version: 3.12(NOT 3.11)
Download source: GitHub binary(the AUR package didnt work for me)
I've tried to use spotdl --download-ffmpeg but that resulted in the same error. Removing spotdl's ffmpeg and then forcing it to use the system one also results in the same error. The log provided is produced by using the system-wide one.
FFMPEG Logs
### return_code:
1

### arguments:
['-nostdin', '-y', '-i', '/home/a260/.spotdl/temp/NFODb2JRXBI.webm', '-movflags', '+faststart', '-v', 'debug', '-progress', '-', '-nostats', '-codec:a', 'libmp3lame', '-b:a', '123k', '/home/a260/Katy Perry, Snoop Dogg - California Gurls.mp3']

### ffmpeg:
ffmpeg

### version:
None

### build_year:
None

### error:
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /usr/lib/librubberband.so.2)
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /usr/lib/libopenmpt.so.0)
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `CXXABI_1.3.15' not found (required by /usr/lib/libvapoursynth-script.so.0)
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /usr/lib/libsrt.so.1.5)
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `CXXABI_1.3.15' not found (required by /usr/lib/libsrt.so.1.5)
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /usr/lib/libx265.so.209)
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /usr/lib/libshaderc_shared.so.1)
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /usr/lib/libSPIRV.so.14)
ffmpeg: /tmp/_MEIoP5N7i/libgcc_s.so.1: version `GCC_13.0.0' not found (required by /usr/lib/libhwy.so.1)
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /usr/lib/libglslang.so.14)
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /usr/lib/libSPIRV-Tools.so)
ffmpeg: /tmp/_MEIoP5N7i/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /usr/lib/libSPIRV-Tools-opt.so)

As a test I also downloaded the actual video from YouTube and converted it to mp3 using ffmpeg, which is working.
ffmpeg -i 'Katy Perry - California Gurls (Official Music Video) ft. Snoop Dogg [F57P9C4SAW4].webm' -y californiagirls.mp3

Nevermind, I didn't realise I have to point spotdl to its own copy of ffmpeg manually. I think the error I have is to do with my environment.

https://stackoverflow.com/questions/76974555/glibcxx-3-4-32-not-found-error-at-runtime-gcc-13-2-0
https://askubuntu.com/questions/575505/glibcxx-3-4-20-not-found-how-to-fix-this-error
Doesn't appear to be a spotDL issue. Try Googling your erorr first.
The reason your own invocation of FFmpeg works is you are not using all the libraries/normalisation we use, to create

Thanks for the links, I did try google it specific to my environment but no help. Telling spotdl to use its own copy of ffmpeg worked though.

Telling spotdl to use its own copy of ffmpeg

can you tell more about how you did that?

Telling spotdl to use its own copy of ffmpeg

can you tell more about how you did that?

Once you run the download ffmpeg command its under ~/.spotdl. Go into your config file and type the absolute path to that binary (i.e. /home/xxx/.spotdl/ffmpeg) in the ffmpeg field.

I feel like its something that should be in the docs since it's more presumable that the default behaviour is to use its own copy if one exists.

https://spotdl.rtfd.io/
All in the docs.
--download-ffmpeg to download spotDL's own binaries.
Or add FFmpeg to path for systemwide installation, this is the default/assumed state

What does one do if he wants to use the system's ffmpeg? As suggested already, I edited the relevant line in ~/.spotdl/config.json so it has the full path to the system's ffmpeg (which is unnecessary  I think), but I still get the same error message as above.
$ cat .spotdl/config.json | grep ffmpeg
    "ffmpeg": "/usr/bin/ffmpeg",
    "ffmpeg_args": null,

Debian unstable x64 and ffmpeg 7.1 and the error section is a bit different
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /lib/x86_64-linux-gnu/libjack.so.0)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `CXXABI_1.3.15' not found (required by /lib/x86_64-linux-gnu/libjack.so.0)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `CXXABI_1.3.15' not found (required by /lib/x86_64-linux-gnu/libopenal.so.1)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /lib/x86_64-linux-gnu/librubberband.so.3)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /lib/x86_64-linux-gnu/libtesseract.so.5)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.31' not found (required by /lib/x86_64-linux-gnu/libtesseract.so.5)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `CXXABI_1.3.15' not found (required by /lib/x86_64-linux-gnu/libzimg.so.2)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /lib/x86_64-linux-gnu/libopenmpt.so.0)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.31' not found (required by /lib/x86_64-linux-gnu/libopenmpt.so.0)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /lib/x86_64-linux-gnu/libchromaprint.so.1)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /lib/x86_64-linux-gnu/libsrt-gnutls.so.1.5)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `CXXABI_1.3.15' not found (required by /lib/x86_64-linux-gnu/libsrt-gnutls.so.1.5)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /lib/x86_64-linux-gnu/libshaderc.so.1)
ffmpeg: /tmp/_MEIIkYp8S/libssl.so.3: version `OPENSSL_3.2.0' not found (required by /lib/x86_64-linux-gnu/libcurl.so.4)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.31' not found (required by /lib/x86_64-linux-gnu/libz3.so.4)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /lib/x86_64-linux-gnu/libz3.so.4)
ffmpeg: /tmp/_MEIIkYp8S/libstdc++.so.6: version `CXXABI_1.3.15' not found (required by /lib/x86_64-linux-gnu/libz3.so.4)

Use system FFmpeg by adding it to path.
Your system FFmpeg is missing libraries that spotDL needs - the error message is pretty clear.

Please define what you mean by "use system ffmpeg by adding it to the path". As you can see above, the system's ffmpeg IS added to spotdl's path and my users $PATH also contains the folder in which the ffmpeg executable is in
$ echo $PATH
/home/user/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

so is should work for spotdlby only having "ffmpeg": "ffmpeg" in there, but it does not.
Ffmpeg does work when called from other apps, e.g. ftom yt-dlp for extracting to mp3
[download] Destination: Βέβηλος  Μήνυμα στο μπουκάλι - Λευτεριά [pyglFaKPQ-0].m4a
[download] 100% of    5.94MiB in 00:00:05 at 1.15MiB/s
[FixupM4a] Correcting container of "Βέβηλος  Μήνυμα στο μπουκάλι - Λευτεριά [pyglFaKPQ-0].m4a"
[ExtractAudio] Destination: Βέβηλος  Μήνυμα στο μπουκάλι - Λευτεριά [pyglFaKPQ-0].mp3

or merging 2 formats to one file
[download] Destination: Βέβηλος  Μήνυμα στο μπουκάλι - Λευτεριά [pyglFaKPQ-0].f232.mp4
[download] 100% of   11.96MiB in 00:00:16 at 749.40KiB/s
[download] Destination: Βέβηλος  Μήνυμα στο μπουκάλι - Λευτεριά [pyglFaKPQ-0].f140.m4a
[download] 100% of    5.94MiB in 00:00:05 at 1.14MiB/s
[Merger] Merging formats into "Βέβηλος  Μήνυμα στο μπουκάλι - Λευτεριά [pyglFaKPQ-0].mp4"

Can you please tell me the EXACT parameters/arguments spotdl makes ffmpeg use for the conversion? Because I tried setting all this and I got to various errors, e.g.  it says that -nostdin is not a valid one.
### arguments:
['-nostdin', '-y', '-i', '/home/jim/.spotdl/temp/file.webm', '-movflags', '+faststart', '-v', 'debug', '-progress', '-', '-nostats', '-codec:a', 'libmp3lame', '-b:a', '145k', '/home/jim/test/file.mp3']

If FFmpeg binary is on path, spotDL should automatically access it. Try reset your config spotdl --generate-config or don't use it "load_config": false
https://github.com/spotDL/spotify-downloader/blob/866daddc9fdc7f764b89e8278426fcbb2af6b03e/spotdl/utils/ffmpeg.py#L107-L123
Can you run ffmpeg in bash and show output? You could also run the above code in the ffmpeg.py file for spotDL.
The FFmpeg arguments used are dependent on the output file format. The below code excerpts hopefully answer your questions.
https://github.com/spotDL/spotify-downloader/blob/866daddc9fdc7f764b89e8278426fcbb2af6b03e/spotdl/utils/ffmpeg.py#L54-L61
https://github.com/spotDL/spotify-downloader/blob/866daddc9fdc7f764b89e8278426fcbb2af6b03e/spotdl/utils/ffmpeg.py#L279-L293
Some FFmpeg installations do not have all the required libraries for our usecase - which is why we provide the ability to download FFmpeg through spotDL. The sources are below
https://github.com/spotDL/spotify-downloader/blob/866daddc9fdc7f764b89e8278426fcbb2af6b03e/spotdl/utils/ffmpeg.py#L37-L52

First and foremost, my issue is not about trusting the sources of the ffmpeg binary. I have no problem with that. My problem is that since my distro does package ffmpeg, I want to use that one and not the one the app can provide.
For the record, that is ffmpeg 4.4, buit with gcc 8!
$ ./ffmpeg-spotdl
ffmpeg version 4.4-static https://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2021 the FFmpeg developers
  built with gcc 8 (Debian 8.3.0-6)

No wonder it fails to find the needed libraries to run then. The same dev also provides static binaries up to version 6
$ ./ffmpeg-linux-x64
ffmpeg version 6.0-static https://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2023 the FFmpeg developers
  built with gcc 8 (Debian 8.3.0-6)

For comparison, and from the full output of the ffmpeg command that you requested, here is how ffmpeg 7.1 looks, built on gcc 14 and on a current distro version.
$ ffmpeg
ffmpeg version 7.1 Copyright (c) 2000-2024 the FFmpeg developers
  built with gcc 14 (Debian 14.2.0-7)
  configuration: --disable-decoder=amrnb --disable-gnutls --disable-liblensfun --disable-libopencv --disable-podpages --disable-sndio --disable-stripping --disable-omx --enable-avfilter --enable-chromaprint --enable-frei0r --enable-gcrypt --enable-gpl --enable-ladspa --enable-libaom --enable-libaribb24 --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libdavs2 --enable-libdc1394 --enable-libdrm --enable-libdvdnav --enable-libdvdread --enable-libfdk-aac --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libharfbuzz --enable-libiec61883 --enable-libilbc --enable-libjack --enable-libjxl --enable-libklvanc --enable-libkvazaar --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libplacebo --enable-libpulse --enable-librabbitmq --enable-librist --enable-librsvg --enable-librubberband --enable-libshine --enable-libsmbclient --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvmaf --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-nonfree --enable-openal --enable-opencl --enable-opengl --enable-openssl --enable-postproc --enable-pthreads --enable-shared --enable-version3 --incdir=/usr/include/x86_64-linux-gnu --libdir=/usr/lib/x86_64-linux-gnu --prefix=/usr --toolchain=hardened --enable-vaapi --enable-libvpl --cc=x86_64-linux-gnu-gcc --cxx=x86_64-linux-gnu-g++ --disable-altivec --shlibdir=/usr/lib/x86_64-linux-gnu
  libavutil      59. 39.100 / 59. 39.100
  libavcodec     61. 19.100 / 61. 19.100
  libavformat    61.  7.100 / 61.  7.100
  libavdevice    61.  3.100 / 61.  3.100
  libavfilter    10.  4.100 / 10.  4.100
  libswscale      8.  3.100 /  8.  3.100
  libswresample   5.  3.100 /  5.  3.100
  libpostproc    58.  3.100 / 58.  3.100
Universal media converter
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'

Proof that the system's ffmpeg binary can do the conversion, although with only a few options
$ ffmpeg -i Hotel_California_2013_Remaster-BciS5krYL80.m4a -b:a 145k -codec:a libmp3lame Hotel_California_2013_Remaster-BciS5krYL80.mp3

(ffmpeg info here)

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Hotel_California_2013_Remaster-BciS5krYL80.m4a':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    encoder         : Lavf61.7.100
  Duration: 00:06:31.38, start: 0.000000, bitrate: 129 kb/s
  Stream #0:0[0x1](und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
      Metadata:
        handler_name    : ISO Media file produced by Google Inc.
        vendor_id       : [0][0][0][0]
Stream mapping:
  Stream #0:0 -> #0:0 (aac (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
Output #0, mp3, to 'Hotel_California_2013_Remaster-BciS5krYL80.mp3':
  Metadata:
    major_brand     : isom
    minor_version   : 512
    compatible_brands: isomiso2mp41
    TSSE            : Lavf61.7.100
  Stream #0:0(und): Audio: mp3, 44100 Hz, stereo, fltp, 145 kb/s (default)
      Metadata:
        handler_name    : ISO Media file produced by Google Inc.
        vendor_id       : [0][0][0][0]
        encoder         : Lavc61.19.100 libmp3lame
[out#0/mp3 @ 0x55fc26809b00] video:0KiB audio:7645KiB subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead: 0.008495%
size=    7646KiB time=00:06:31.38 bitrate= 160.0kbits/s speed=22.9x

Isn't this error caused by the fact that ffmpeg was built with newer/older version of GCC/libstdc++ than what's available on your system.

Is that a question? I think it is more than obvious that my ffmpeg is on a newer version and was built with a newer version of gcc.
As for the missing libraries due to licencing issues, I will have a look and then ask the maintainer how he builds it. It is not ffmpeg from the main repo, it is the one from deb-multimedia, which exists exactly for that reason: to provide debian users with binaries that have proper functionality regardless of licencing issues.
So, I want to change the ffmpeg-args option in the config file to this for instance
"ffmpeg_args": "-b:a 145k -codec:a libmp3lame"
What do I put in there? I am asking because mp3 is also listed as a format a few lines below, so I guess it can be omitted, right? Because,  I just tried it and it returns the same exact error for the missing libs.

Same thing happens when setting the arguments myself
$ cat .spotdl/config.json | grep ffmpeg
    "ffmpeg": "/usr/bin/ffmpeg",
    "ffmpeg_args": "-b:a 145k -codec:a libmp3lame",

I will try it later on libreelec 10 which comes with ffmpeg 4.4 installed. For that test though, I will have to use v4.2.9, because it is the last one compatible with python 3.8 and that system is indeed on python 3.8.
Yesterday I gave up for 2 minutes and followed the windows-user route, i.e. let spotdl download its own ffmpeg binary. And it worked.

That was unexpected!
# ./spotdl-4.2.9-linux https://open.spotify.com/track/111IKEag43s1xYz4nf6gO1
[PYI-865:ERROR] Failed to load Python shared library '/tmp/_MEIe04wTv/libpython3.10.so.1.0': dlopen: /usr/lib/libm.so.6: version `GLIBC_2.35' not found (required by /tmp/_MEIe04wTv/libpython3.10.so.1.0)

 # ffmpeg
ffmpeg version 4.4.3 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 10.2.0 (GCC)


Add a link to Terms on the acct screen

https://github.com/textileio/textile-mobile/blob/master/TERMS.md

Fixed with #504.


updated adampro branch

I would assume this request was to go the other way around..?

Uh ja, sorry
On 15.09.2016 17:24, Luca Rossetto wrote:

I would assume this request was to go the other way around..?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/dbisUnibas/cineast/pull/4#issuecomment-247360500,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ANpr9Dqzk5ln2NCT5V4gUBwj2AWxrkkTks5qqWMQgaJpZM4J9126.


[NEW ICON] Docker Light

Skill Name
Docker
Why?
Skill-icons' way themed light Docker icon.
Reference Image

Currently, themed icons are only used when the logo does not provide a background or is not visible on both black and white. Thank you for the suggestion, though!


Update for Slate v0.25.0

transform is renamed to change since v0.25.0 in Slate

Are you supposed to instead return the change object instead of just a boolean? I'm just basing this on what the new documentation currently says. Here's a link to an example of the normalize function in action.
https://docs.slatejs.org/slate-core/schema#normalize

It seems that return value should be either a boolean or undefined (answer by alan from Slack):

i've kind of been thrown off by it too. i'm not 100% sure my understanding is right, but my guess is that the examples got some code lingering in them that was written in the context of plugins. returning a value from a plugin method is saying "i got this, stop trying to handle," and if you want other handlers to still apply, you return undefined. so, it doesn't really matter in the basic use case (i think). (edited)

When the editor needs to resolve a plugin-related handler, it will loop through its plugin stack, searching for the first plugin that successfully returns a value. After receiving that value, the editor will not continue to search the remaining plugins; it returns early. If you'd like for the stack to continue, a plugin handler should return undefined.
https://docs.slatejs.org/slate-react/plugins

In the docs walkthrough the sample code has return true: https://docs.slatejs.org/walkthroughs/using-plugins - that's what I used as my guide.

I'll merge it and complete it on master, I don't know why, but I can't push to your branch

Awesome, thank you @Soreine !


query优化

Coverage remained the same at 98.561% when pulling b77f01d34d8c6a52ce30845860275d0901b3523d on bottle0825:master into 4968a3843841e82bfc4f74cd1b0d659af947c7ed on rugao-web-fullstack:master.


Liftover for CNA data

Description:
As a PDXFinder user, I want all the CNA data to be at the same assembly so that I can easily use it for my needs.
Acceptance criteria:

[x] all CNA data is updated to GRCh38

Did not complete in previous sprint.  Current method of lifting CNA still results in heavy data loss due to coordinates being marked as "deleted in new assembly"
This happens heavily in NKI and UOC-BC datasets. I will need to experiment with turning off fidelity on the liftOver process for CNA data.
Curie-LC CNA data is not formatted correctly and does not run as is (low complexity fix)
CLR data is not currently being read because of the nested file structure (low complexity fix)

CNA data exists in the following UPDOG directories:
./NKI/cna - 366 dropped out of 255865 data points
./UOC-BC/cna - WGS - Many dropped data points after lift - 228601 dropped out of 867163
./Curie-LC/cna - Capable of lifting, however yet to attempt
./PMLB/cna - No genomic coordinates - no assembly
./IRCC-GC/cna - No genomic coordinates - hg19
./CRL/cna - No genomic coordinates -- already on GRCh38
./IRCC-CRC/cna - Wes is Hg38 - targeted NGS has no assembly and no genomic coordinates

is taking longer than expected because of the differences in datasets

done

./CRL/cna: lifted all data points to GRCh38
./PIVOT/cna: 28224 not lifted out of 8126244 = 0.32%
./PMLB/cna:  100864 not lifted out of 5698304 = 1.7%
./IRCC-GC/cna: 3180 not lifted out of 14989 = 21%
./LIH/cna: lifted all data points to GRCh38
./Curie-LC/cna: 495 not lifted out of 89585 = 0.5%


Even after removing cache, patches are pre-applied?

Version
% pacaur -v
pacaur 4.7.2

Description
Some packages, like linux-ck and linux-zen-flipdone, compile successfully with makepkg -sc, but not with pacaur.
The reason is that, somehow, it seems patch files have already been applied(!). This occurs even after clearing the pacaur cache. My guess is that one of the makepkg commands prior to the final makepkg -sfc may be having unintended effects on the srcdir.
Output
With makepkg -sc, packages compile normally, but with pacaur, they already have patches applied somehow, even after nuking ~/.cache/pacaur.
% rm -rf ~/.cache/pacaur && pacaur -S linux-zen-flipdone
:: Package linux-zen-flipdone not found in repositories, trying AUR...
:: resolving dependencies...
:: looking for inter-conflicts...

AUR Packages  (1) linux-zen-flipdone-4.9.8-1

:: Proceed with installation? [Y/n]

:: Retrieving package(s)...
Cloning into 'linux-zen-flipdone'...
remote: Counting objects: 11, done.
remote: Compressing objects: 100% (11/11), done.
remote: Total 11 (delta 1), reused 1 (delta 0)
Unpacking objects: 100% (11/11), done.
:: View linux-zen-flipdone PKGBUILD? [Y/n] n
:: View linux.install script? [Y/n] n
:: Checking linux-zen-flipdone integrity...
==> Making package: linux-zen-flipdone 4.9.8-1 (Wed Feb  8 15:34:17 GMT 2017)
==> Retrieving sources...
  -> Downloading linux-4.9.tar.xz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 88.8M  100 88.8M    0     0  1370k      0  0:01:06  0:01:06 --:--:-- 2157k
  -> Downloading linux-4.9.tar.sign...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   455  100   455    0     0    626      0 --:--:-- --:--:-- --:--:--   625
  -> Downloading patch-4.9.8.xz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  235k  100  235k    0     0   138k      0  0:00:01  0:00:01 --:--:--  138k
  -> Downloading patch-4.9.8.sign...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   833  100   833    0     0   1341      0 --:--:-- --:--:-- --:--:--  1341
  -> Downloading zen-4.9.8-d48cc9dca58f613e9f3589f44d5962e717f8f6a1.diff.xz...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  315k  100  315k    0     0  1183k      0 --:--:-- --:--:-- --:--:-- 1186k
  -> Downloading zen-4.9.8-d48cc9dca58f613e9f3589f44d5962e717f8f6a1.diff.sign...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   488  100   488    0     0   2818      0 --:--:-- --:--:-- --:--:--  2804
  -> Found config
  -> Found config.x86_64
  -> Found 99-linux.hook
  -> Found linux.preset
  -> Found change-default-console-loglevel.patch
  -> Found flip-done.patch
==> Validating source files with sha256sums...
    linux-4.9.tar.xz ... Passed
    linux-4.9.tar.sign ... Skipped
    patch-4.9.8.xz ... Passed
    patch-4.9.8.sign ... Skipped
    zen-4.9.8-d48cc9dca58f613e9f3589f44d5962e717f8f6a1.diff.xz ... Passed
    zen-4.9.8-d48cc9dca58f613e9f3589f44d5962e717f8f6a1.diff.sign ... Skipped
    config ... Passed
    config.x86_64 ... Passed
    99-linux.hook ... Passed
    linux.preset ... Passed
    change-default-console-loglevel.patch ... Passed
    flip-done.patch ... Passed
==> Verifying source file signatures with gpg...
    linux-4.9.tar ... Passed
    patch-4.9.8 ... Passed
    zen-4.9.8-d48cc9dca58f613e9f3589f44d5962e717f8f6a1.diff ... Passed
:: Building linux-zen-flipdone package(s)...
==> Making package: linux-zen-flipdone 4.9.8-1 (Wed Feb  8 15:35:52 GMT 2017)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found linux-4.9.tar.xz
  -> Found linux-4.9.tar.sign
  -> Found patch-4.9.8.xz
  -> Found patch-4.9.8.sign
  -> Found zen-4.9.8-d48cc9dca58f613e9f3589f44d5962e717f8f6a1.diff.xz
  -> Found zen-4.9.8-d48cc9dca58f613e9f3589f44d5962e717f8f6a1.diff.sign
  -> Found config
  -> Found config.x86_64
  -> Found 99-linux.hook
  -> Found linux.preset
  -> Found change-default-console-loglevel.patch
  -> Found flip-done.patch
==> Validating source files with sha256sums...
    linux-4.9.tar.xz ... Passed
    linux-4.9.tar.sign ... Skipped
    patch-4.9.8.xz ... Passed
    patch-4.9.8.sign ... Skipped
    zen-4.9.8-d48cc9dca58f613e9f3589f44d5962e717f8f6a1.diff.xz ... Passed
    zen-4.9.8-d48cc9dca58f613e9f3589f44d5962e717f8f6a1.diff.sign ... Skipped
    config ... Passed
    config.x86_64 ... Passed
    99-linux.hook ... Passed
    linux.preset ... Passed
    change-default-console-loglevel.patch ... Passed
    flip-done.patch ... Passed
==> Verifying source file signatures with gpg...
    linux-4.9.tar ... Passed
    patch-4.9.8 ... Passed
    zen-4.9.8-d48cc9dca58f613e9f3589f44d5962e717f8f6a1.diff ...   Assume -R? [n]

Debug output
Since the output of bash -x /bin/pacaur -S linux-zen-flipdone is huge, it's at https://paste.pound-python.org/show/VvfY9j8sj07WBDLIV3RP/.

Okay, after some debugging it appears my theory is correct.

I created a new version of pacaur at /tmp/pacaur with makepkg sleeping prior to execution to catch it in the act, by adding makepkg() { sleep 3 && command makepkg "$@" && sleep 3; } to the top of pacaur
rm -rf ~/.cache/pacaur
In one terminal: while sleep 0.5; do ls ~/.cache/pacaur/linux-zen-flipdone/src/linux-4.9/arch/x86/include/asm/asm-prototypes.h; done
In another, do the build and compare when the file shows up to the commands: bash -x /tmp/pacaur -S linux-zen-flipdone

After this, I sat around and waited until it happened. It happens during makepkg -od --skipinteg --nocolor, which is run here: https://github.com/rmarquis/pacaur/blob/fa98859f515c1202f702ba9504187e15ca307d98/pacaur#L1129
My guess is the proper thing is to add --noprepare here. I will submit a pull request to that effect after testing.

PR at #646.

This bug was introduced in https://github.com/rmarquis/pacaur/commit/40e4f0766623ee2e49662c31d3bdc9605617961a.
See this post for the rational behind it. Looks like it's not possible to support both scenario.

Merged your patch, ty! Applying patches is indeed more common than handling pkgver in prepare(), we'll see if we find another workaround for this situation later on.

Thanks! I'll have a think about if there's some other way to make this work reasonably.

No, the real problem is that pacaur should not use --nobuild to check the versions and then naively run makepkg with the existing srcdir but without specifying --noextract.
makepkg does the right thing in this situation, and using --noprepare was probably a bad workaround for that in the first place. So in order to badly quash one bug, you introduced another, less common bug? I'm actually surprised this is even the case :p when I initially suggested this on the forums, I kinda assumed --noextract was used later, but as I am not terribly familiar with the code...
@cdown, given that you rediscovered the bug with linux-ck/linux-zen, I'm kinda surprised that you didn't also notice pacaur is wasting (potentially lots of) time by re-extracting those 90MB tarballs repeatedly. :p

@eli-schwartz Heh, well with all of the noise that flies by when running with bash -x, it's hard to tell :-) Besides, fio cards are fast.


AAMP root nodes

Just wanted to tell you ive figured out more than what is publically known about the AAMP format.
Check out my repository "aampTool".
Maybe you can update your writeup of aamp with this.
Thanks.
//ZerQ

Btw, are you aware of the botw modding hub discord server?
https://discord.gg/K47PrU

Awesome. I'm looking over it. I will also jump on discord.


The replay was not the same as the actual score

Downloaded my new top play but realised that the play in the video was the same, but for some reason max combo was wrong and pp counter was different from how much I got. Im not to fussy about this and all and I'm really grateful for all that you guys have done but just wanted to bring the issue up keep up the good work!
https://drive.google.com/file/d/14S4km7tsEKne4dtDfx9JhoDrrFO0ZF2C/view?usp=sharing
link to the play, u can see the max combo in the video as well as the end screen, and compare the differences.
The 100,50 and miss count were the same as well as acc but the combo was different as well as pp actually received
I am so sorry for wasting your time if the problem was with the osr i downloaded.

@fak-scream can you send .osr file and map link

I couldn't get the exact replay from the original author, but I found the beatmap using the video and exported the top play. The same issue occurred, it seems like some elements (Usually sliders) are being placed improperly causing what happens in the video to differ from the actual play. I'm not sure if it's an issue with this specific beatmap or if it's a wider issue.
Beatmap link: Hatsune Miku no Gekishou
Replay (Top play for relevant "Prayed" difficulty):
Wilken-nyan - Hatsune Miku - Hatsune Miku no Gekishou [Easy] (2016-09-25) Osu.zip
I can also upload the mp4 if you would like. I'll test the other difficulties of this map to see if this problem is persistant.

Thanks I appreciate that.


no drawing controls work

https://www.loom.com/share/23dd8a324de74e9797aff8c49d57f6b9
The app works fine for sometime and then this happens. all controls stop working.. can't select anything draw anything.

This usually signifies a corrupted state. When this happens, can you open up console, and paste this:
copy({...localStorage})

It'll copy the state and elements to your clipboard which you can paste here (provided the scene isn't private).


S3 Upload not checking nextStaticDir

Describe the bug
feat(serverless-component): decouple uploading of next static assets to S3 from next component (#374) broke a feature I introduced which allowed specifying where the static directory lived. Broke by this commit 2b74304dd5d669caed399221e9cd7de0f4fbb0bc
To Reproduce
Steps to reproduce the behavior:

try and use nextStaticDir
nextStaticDir Doesn't get used and if no folder exists in nextConfigDir/static|public then no files will get uploaded

Expected behavior
nextStaticDir should be used when determining the parent folder of the "static" or "public" directory
nextStaticDir is needed because there are use cases where nextConfigDir does not contain the static directories as outlined in #259

@jlaramie Sorry about this! This needs some tests from preventing it happening again. Please if you have time could you PR a fix? 🙏

@danielcondemarin Yes I'm working the pull request right now. A test for this is a great idea as it took me a while to realize this was happening to my projects :(


Cross Domain Issue

Hi!
I'm trying to use the career portal out of the box as described here: https://github.com/bullhorn/career-portal/wiki/Downloading-and-Configuring. However, my dashboard, jobs (and everything) is blank due to a cross domain issue.
I'm getting the following console error:
XMLHttpRequest cannot load https://public-restsl5.bullhornstaffing.com/rest-services/1BH7K4/search/Job…showTotalMatched=true&query=(isOpen:1)&fields=id&sort=id&count=500&start=0. No 'Access-Control-Allow-Origin' header is present on the requested resource.  Origin 'http://numan.com.ar' is therefore not allowed access. The response had HTTP status code 404.
To replicate this, I did exactly everything indicated here:  https://github.com/bullhorn/career-portal/wiki/Downloading-and-Configuring and uploaded it to my server here http://numan.com.ar/careerportal
I asked for support vía email but had no answer so far. Could my site be authorized? Is there anything I can do on my side to get this working?
Thanks in advance!

Hello,
I have taken a look at your career portal at http://numan.com.ar/careerportal and have noticed that in your app.json file, the swimlane says "SL5".  The swimlane just should be the numeric value.  The app,json file is located here http://numan.com.ar/careerportal/app.json
Please let me know if you have any more questions.

Thanks! That solved the issue.


add Slumber filter

please get this updated with master and if you can, please rebase your commits into one! thanks!

Hey! Thanks for the PR!
This looks a little dark to me:

try upping the brightness a bit instead of decreasing it
and try this on the after element:
    background: rgba(203, 215, 160, 0.5);
    mix-blend-mode: soft-light;

It might need a few more tweaks too.


Routing Error shown but requeest done successfully

Hi,
after including the three required js files from the first issue I'm running into the following issue:
I'm calling openroute with the following parameters:
api_key: MY API KEY
coordinates: 7.525634765625001,51.93071827931289|8.613281250000002,52.77618568896171|9.030761718750002,52.61639023304539|9.25323452800512,52.2344968188554|9.799804687500002,51.48822432632349|10.2820713166147,52.3361206054688|10.9871744457632,52.2615397721529|11.3787116669118,52.1878051757813|11.585083007812502,52.68304276227743|11.9270318001509,52.2344970703125|12.2231248766184,52.2509765625|12.5491333007813,52.4102783203125|13.0599975585938,52.4020385742188
geometry_format: geojson
instructions: true
instructions_format: text
preference: recommended
profile: driving-car
units: m

I get a "Routing error" with following details:
message: "HTTP request failed: [object XMLHttpRequestProgressEvent]"
status: -1

Interestingly, the developer statistics @openrouteservice shows 1 successful token usage for this call.
Not sure what to do here? Any idea on where I could start digging deeper?

Some more info:

The url that is created is:

https://api.openrouteservice.org/directions?coordinates=7.525634765625001%2C51.93071827931289%7C8.613281250000002%2C52.77618568896171%7C9.030761718750002%2C52.61639023304539%7C9.25323452800512%2C52.2344968188554%7C9.799804687500002%2C51.48822432632349%7C10.2820713166147%2C52.3361206054688%7C10.9871744457632%2C52.2615397721529%7C11.3787116669118%2C52.1878051757813%7C11.585083007812502%2C52.68304276227743%7C11.9270318001509%2C52.2344970703125%7C12.2231248766184%2C52.2509765625%7C12.5491333007813%2C52.4102783203125%7C13.0599975585938%2C52.4020385742188&instructions=true&instructions_format=text&geometry_format=geojson&preference=recommended&units=m&profile=driving-car&api_key=MY_API_KEY

When I enter that into my browser I get a response containing 9228 geometry entries of type "LineString". That sounds like a proper response to me. I would love to attach the response but github keeps failing for file uploads :-(


add protobuf definition and generated Golang code which is buildable with TinyGo

What type of PR is this?
/kind feature

What this PR does / why we need it:
add protobuf definition + generated Golang protobuf code which is buildable with TinyGo.
We cannot use the proto definitions in kubernetes/api because it depends on many stuff which aren't buildable with TinyGo.
(Hopefully, it'll be buildable in the future version of TinyGo.)
The protobuf definition is generated from https://github.com/nytimes/openapi2proto with the patch. And use google.golang.org/protobuf/cmd/protoc-gen-go for Golang code generation.
As you see in ./kubernetes/proto/go.mod, it only depends on google.golang.org/protobuf, which is buildable with TinyGo.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?

NONE

/cc @codefromthecrypt

Maybe you can add a test that shows hot to do the following flow? This will help make sure it still works. The test may need to be in the plugin module, in order to avoid leaking v1 deps to the guest.

Convert from v1.Pod to api.IoK8SApiCoreV1Pod
Marshal api.IoK8SApiCoreV1Pod to proto
UnMarshal api.IoK8SApiCoreV1Pod from proto
Convert back to v1.Pod (optional)

I made notes on #6 and not sure how much of https://github.com/kubernetes-sigs/kube-scheduler-wasm-extension/pull/7#issuecomment-1556129351 is needed. Basically, first thing is to make sure we can build tinygo wasm which reads it. For some reason my laptop doesn't respond when trying to build, both 0.27 and dev version of tinygo.

In #6 I added code to generate the MarshallVT functions

It's included in #6.
/close


Stock Mgmt - Receive Stock [10h]

On hold until we get answers from team

Issue
When a user clicks "Receive Stock", they will be taken to a new screen where they can input all the necessary details.

Date - calendar will pop up
Where is the stock from - drop down (options in red on the screenshot)
Expiration Date - Calendar will pop up
How much stock is being received - numerical input
Months of Stock - this should be automatically calculated (Months of stock=Total current stock(balance)/monthly consumption average)
Log In verification - make sure its the correct user - if no, they need to select the correct user OR @adamhstewart do we want them to log out and log in as the correct user - forces them to be diligent about who they are logged in as.
Signature

@adamhstewart

Log In verification should be first question. Also, need to define what happens if the answer is NO.
Please define formula for Months of Stock.

Updated Designs for Receiving Stock:
The first screen will verify the user -

If answer is no, this screen will appear and should take them back to the home screen.

If the answer is yes, then they can proceed with the rest of the receive stock inputs:

As a reminder these are the dropdown options for "where was this received from?"

MOH (Ministry of Health)
RBC (Rwanda Biomedical Center)
UNICEF
RWANDA MEDICAL SUPPLY (RMS)-Central level
RWANDA MEDICAL SUPPLY (RMS)-District Level
BUFMAR (Le Bureau des Formations Médicales agréées du Rwanda)

This is the formula we were given for months of stock:
Months of Stock = Total Current Stock (Balance) / monthly consumption average

@jeanette-pelizzon consumption average needs to be defined as well.

conumption per month = total consumption over last six month / 6


Extra prompt in Excelsheet

Thanks for the lib!
When I try to open the excel file after downloaded, it always says
"The file format and extension of 'filename.xls" don't match. The file could be corrupted or unsafe. Unless you trust its source, don't open it. Do you want to open it anyway?"
I tried it in the origin code from Stackoverflow that you referred and it also shows the same message. Is there a way to get rid of it?

Same exact thing here. I also get a fuzzy text when the excel sheet opens.

Hi @smaharj1, it's an issue with the recent versions of Microsoft Office, they doesn't accept xml files as native format. It's not posible to avoid that message right now, maybe implementing a xlsx file generator. Sadly, at this moment I don't have the time to do that change :disappointed:

Requesting bump, this seems like a major issue since the entire point of the package is to export to excel. If you don't plan to fix it soon please update the readme to save people the trouble of finding this error out after integration...

@beargie you're right, I add the message in the new Readme file to ensure that the people know about this issue.

bumped into this one as well. @jecovier - any potential plans on fixing this one in the near future ? Thanks in advance.

We would also appreciate if this gets fixed

no news here

Sadly there is no way to avoid this, it's an excel security measure. The only solution is to export to xlsx, but that means to import a bunch of js code to process and compress the data to xlsx format in client side. I try to avoid that in order to keep this component as a lite as posible.


accelerate equivalent DFA states using simpler graph algorithm

As a follow-up on issue #280, this change further improve the search for
equivalent DFA states with simpler graph traverse algorithm, given the
fact that finding equivalence classes in a graph is identical to looking
for connected components.

after realizing the nature of finding equivalence classes as the same as finding connected components in graph, this change makes it a bit simpler and a lot faster.  The compile-time is reduced to from previous 3 minutes to 10 seconds.
The previous change is kind of premature, my apologies for keeping you on this topic back and forth.


Fix for Windows crash (exit code: 0xc0000135, STATUS_DLL_NOT_FOUND)

Windows 10, ffmpeg 5.0.1 and ffmpeg 5.1.3.
Followed the instructions exactly, downloaded full shared build from https://www.gyan.dev/ffmpeg/builds/.
Set environment variables, restarted PC.
FIX:
The fix was to copy all dll files from ffmpeg to the root rust directory.
PROPOSAL:
Include a fix for this in the build instructions. I don't know how it's done.

God, it works pretty good for me :(

I'm new to Rust, and I'm working on a small project to capture my Windows desktop. I've stumbled upon this crate for encoding my bgr8 pixel bitmap I get from Windows. I was running into this same issue so I want to run through the steps I did in-case any noobies like myself run into the issue.

Follow the installation on the wiki
Copy the .dll files in the ffmpeg/bin/ directory to the .cargo/bin/ directory
Rebuild/Run your project and hope it now works :)


Added New Game: Ping pong

PR Description 📜
A Class Ping Pong Game in which both players control their paddles and defend their side while trying to score on their opponent.
Fixes #5034

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for website preview in assets/images
[x] I have added entries for my game in GameZone's README.md
[x] I have added README.md in my Game folder
[x] I have added working video of the game in README.md (optional)
[x] I have specified the respective issue number for which I have requested the new game.
[x] I have added my Game to gamesData.json file and it is loading properly on main website as intended.

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @AaryanManghnani ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

Thank you  @AaryanManghnani , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀


Example of usage with STM32

Describe the solution you'd like
A clear and concise description of what you want to happen.
I am in the process of building my own control surface and would like to use this crate an an STM32F4 Blackpill.
Do you have an example that I can use as a starting point?

Which HAL are you using for the STM32F4?

Hi there, I am using v1.0.0 for all my projects.

I think you mean the embedded-hal crate, but that's not what I was asking. There are several options for HAL implementations targeting an STM32F4 like:

stm32f4xx-hal
stm32-hal
embassy-stm32

Each of these HALs have their own way to setup things and also contain example code how to use USB in general. The first two options can be used with this crate, embassy however has it's own implementation of a MIDI device class.

Oh my bad, sorry!.
I am using stm32f4xx-hal.

Here's some code based on the README using a modification of the serial example.
You have to activate the features stm32f411, otg-fs and usb_fs for the stm32f4xx-hal crate, of course and also adapt the clock configuration.
//! USB MIDI example using polling in a busy loop.
//! Target board: any STM32F4 with a OTG FS peripheral and a 25MHz HSE crystal
#![no_std]
#![no_main]

use panic_halt as _;

use cortex_m_rt::entry;
use stm32f4xx_hal::otg_fs::{UsbBus, USB};
use stm32f4xx_hal::{pac, prelude::*};
use usb_device::prelude::*;
use usbd_midi::{
    data::{
        midi::{channel::Channel, message::Message, notes::Note},
        usb_midi::midi_packet_reader::MidiPacketBufferReader,
    },
    midi_device::MidiClass,
};

static mut EP_MEMORY: [u32; 1024] = [0; 1024];

#[entry]
fn main() -> ! {
    let dp = pac::Peripherals::take().unwrap();

    let rcc = dp.RCC.constrain();

    let clocks = rcc
        .cfgr
        .use_hse(25.MHz())
        .sysclk(48.MHz())
        .require_pll48clk()
        .freeze();

    let gpioa = dp.GPIOA.split();

    let usb = USB::new(
        (dp.OTG_FS_GLOBAL, dp.OTG_FS_DEVICE, dp.OTG_FS_PWRCLK),
        (gpioa.pa11, gpioa.pa12),
        &clocks,
    );

    let usb_bus = UsbBus::new(usb, unsafe { &mut EP_MEMORY });

    // Create a MIDI class with 1 input and 1 output jack.
    let mut midi = MidiClass::new(&usb_bus, 1, 1).unwrap();

    let mut usb_dev = UsbDeviceBuilder::new(&usb_bus, UsbVidPid(0x16c0, 0x5e4))
        .device_class(0)
        .device_sub_class(0)
        .strings(&[StringDescriptors::default()
            .manufacturer("Fake Company")
            .product("Product")
            .serial_number("TEST")])
        .unwrap()
        .build();

    loop {
        if !usb_dev.poll(&mut [&mut midi]) {
            continue;
        }

        let mut buffer = [0; 64];

        if let Ok(size) = midi.read(&mut buffer) {
            let buffer_reader = MidiPacketBufferReader::new(&buffer, size);
            for packet in buffer_reader.into_iter() {
                if let Ok(packet) = packet {
                    match packet.message {
                        Message::NoteOn(Channel::Channel1, Note::C2, ..) => {
                            // Do something.
                        }
                        Message::NoteOff(Channel::Channel1, Note::C2, ..) => {
                            // Do something.
                        }
                        _ => {}
                    }
                }
            }
        }
    }
}

@sourcebox Thanks a lot!!!

I have tried this code with a minor change to punt DP and DM pins into altenate mode (AF10). The code looks like this:
        // Configure the button pin as input and obtain handle
        // On the Blackpill STM32F411CEU6 there is a button connected to pin PA0
        // 6) Promote the GPIOA PAC struct
        let gpioa: gpio::gpioa::Parts = dp.GPIOA.split();

        // Configure USB pins to be of type alternate function 10 (AF10)
        let usb_dm: gpio::Pin<'A', 11, gpio::Alternate<10>>  = gpioa.pa11.into_alternate();
        let usb_dp: gpio::Pin<'A', 12, gpio::Alternate<10>> = gpioa.pa12.into_alternate();

        // 7) Configure USB peripheral
        let usb = USB::new(
            (dp.OTG_FS_GLOBAL, dp.OTG_FS_DEVICE, dp.OTG_FS_PWRCLK),
            (usb_dm, usb_dp),
            &clocks,
        );
        let usb_bus = UsbBus::new(usb, unsafe { &mut EP_MEMORY });

        // Create a MIDI class with 1 input and 1 output jack.
        let mut midi = MidiClass::new(&usb_bus, 1, 1).unwrap();
        let mut usb_dev = UsbDeviceBuilder::new(&usb_bus, UsbVidPid(0x16c0, 0x5e4))
            .device_class(0)
            .device_sub_class(0)
            .strings(&[StringDescriptors::default()
                .manufacturer("Fake Company")
                .product("Product")
                .serial_number("TEST")])
            .unwrap()
            .build();

        defmt::info!("Before entering loop");
        loop {
            if !usb_dev.poll(&mut [&mut midi]) {
                continue;
            }
            defmt::info!("Left USB Poll");
            let mut buffer = [0; 64];
            let payload = UsbMidiEventPacket::from_midi(
                CableNumber::Cable0,
                Message::NoteOn(
                    Channel::Channel1,                            // Channel
                    Note::C3,                                     // Note
                    U7::from(Note::try_from(127 as u8).unwrap()), // Velocity
                ),
            );
            let result = midi.send_message(payload);
            delay.delay_ms(1000_u32);
        }

this code compiles fine but it hangs when  UsbDeviceBuilder::new(...) is invoked. Did I miss anything?
Thanks in advance for any help.

Unfortunately, I don't have the appropriate hardware to run this. Did you activate the control-buffer-256 feature on the usb-device crate? Because not doing so can lead to crashes when the config descriptor gets too large and with USB MIDI, that can happen quite easily.

Unfortunately, I don't have the appropriate hardware to run this. Did you activate the control-buffer-256 feature on the usb-device crate? Because not doing so can lead to crashes when the config descriptor gets too large and with USB MIDI, that can happen quite easily.

I have just re-tried enabling control-buffer-256 and the behaviour is the same. Any other suggestion?

I have just re-tried enabling control-buffer-256 and the behaviour is the same. Any other suggestion?

If the code stalls inside UsbDeviceBuilder::new(), there's a good chance that the problem is not related to this crate but usb-device in general.
Some suggestions:

Try to use the current git version of usb-device via [patch.crates-io]. You need some changes in your code because of different control buffer management.
Try to run another USB example from the HAL like the {serial-example](https://github.com/stm32-rs/stm32f4xx-hal/blob/master/examples/usb-serial-poll.rs) and check if it also crashes.
There's a room on Matrix where the maintainers of usb-device are also present and maybe someone has a compatible board to run your code.
There's also Discord-Server where someone else can help.

Overall, this is the kind of issue that has to be checked on the target hardware with a JTAG debug probe connected. Using that, you can single step the code up to the point where it hangs or crashes.

Thanks again for the suggestions, I will keep you posted if I make it work.

Try to run another USB example from the HAL like the {serial-example](https://github.com/stm32-rs/stm32f4xx-hal/blob/master/examples/usb-serial-poll.rs) and check if it also crashes.

I have jsut tested and I can confirm this works.

I have jsut tested and I can confirm this works.

Ok, good to know. But the serial device has a much simpler descriptor, so it's not sure whether usbd-midi is doing something wrong internally.

There was some issue with STM32F4 devices mentioned on the tracker a while ago, but this can be unrelated:
https://github.com/rust-embedded-community/usb-device/issues/112#issuecomment-1545545348

Aghh!! I have just noticed I missed sth very basic: I forgot to enable the PLL!
It lists for a short period of time now :-) but with the following line.

I suspect this is due to me running macOS.

That can be caused by enabling the pullup on the USB D+ line. The host then tries to access the port, but if the clocks aren't 100% correct, then there's no reply.

That can be caused by enabling the pullup on the USB D+ line. The host then tries to access the port, but if the clocks aren't 100% correct, then there's no reply.

Oh I see so if I am understanding correctly, despite DP being configured in alternate mode, there is the need for it to be pulled up?

I have added a 1.5k pull-up but no change. I am a bit confused, do not understand how is one example working and the other one requires a pull up?

I have added a 1.5k pull-up but no change. I am a bit confused, do not understand how is one example working and the other one requires a pull up?

The pullup is always required, but some STM32 series have it internally, so it just needs to be enabled by the HAL. Others (like the F3 series) need an external pullup. Not sure what's on your board already, but if one example works, then the pullup is working.

What you also can do: remove just the MIDI class part and check if the device then enumerates. If not, there's some deeper problem like the USB clock not running at exactly 48MHz.

So just to make sure it is not OS related, I plugged it on a Raspberry Pi 5 running Raspbian and I see
[  416.552130] usb usb3-port2: attempt power cycle.
[  416.963971] usb 3-2: new full-speed USB device number 6 using xhci-hcd.
[  422.183893] xhci-hcd xhci-hcd.1: Timeout while waiting for setup device command.
[  427.559761] xhci-hcd xhci-hcd.1: Timeout while waiting for setup device command.
[  427.767724] usb 3-2: device not accepting address 6, error -62.
[  427.895716] usb 3-2: new full-speed USB device number 7 using xhci-hcd.
[  439.079519] usb 3-2: device descriptor read/all, error -110.
[  439.079594] usb usb3-port2: unable to enumerate USB device.

What you also can do: remove just the MIDI class part and check if the device then enumerates. If not, there's some deeper problem like the USB clock not running at exactly 48MHz.

I am testing that in a min.

What you also can do: remove just the MIDI class part and check if the device then enumerates. If not, there's some deeper problem like the USB clock not running at exactly 48MHz.

If I remove the MIDI class,
let mut midi = MidiClass::new(&usb_bus, 1, 1).unwrap();
then I think I also need to remove
if !usb_dev.poll(&mut [&mut midi]) {
                continue;
            }

right?

What you also can do: remove just the MIDI class part and check if the device then enumerates. If not, there's some deeper problem like the USB clock not running at exactly 48MHz.

If I remove the MIDI class, let mut midi = MidiClass::new(&usb_bus, 1, 1).unwrap(); then I think I also need to remove
if !usb_dev.poll(&mut [&mut midi]) {
                continue;
            }

right?

Yes.

But it's possible that you need to call the poll() function without any classes to get the USB communication handled. Not sure about this though.

Yes.

Same, no changes.
[ 1411.362920] xhci-hcd xhci-hcd.1: Timeout while waiting for setup device command
[ 1416.738868] xhci-hcd xhci-hcd.1: Timeout while waiting for setup device command
[ 1416.946842] usb 3-2: device not accepting address 19, error -62
[ 1416.946925] usb usb3-port2: unable to enumerate USB device
[ 1472.914254] usb 3-2: new full-speed USB device number 20 using xhci-hcd
[ 1488.290109] usb 3-2: device descriptor read/64, error -110
[ 1503.905926] usb 3-2: device descriptor read/64, error -110
[ 1504.141901] usb 3-2: new full-speed USB device number 21 using xhci-hcd
[ 1519.521743] usb 3-2: device descriptor read/64, error -110```

But it's possible that you need to call the poll() function without any classes to get the USB communication handled. Not sure about this though.

That does not seem to be possible since .poll( expects an arg of type mut dyn UsbClass<stm32f4xx_hal::otg_fs::UsbBus<USB>>

Same, no changes.

That indicates a more fundamental problem in the hardware setup or the clocks.

Maybe another thing to check would the MCO output...sadly I do not have an oscilloscope.

Hi @sourcebox, I wanted to say the code you provided in https://github.com/rust-embedded-community/usbd-midi/issues/19#issuecomment-2396296939 works fine. The device is listed correctly in Raspbian.

Since I am trying to make this work using RTIC, I suppose the issue is related to something else.