The 'Undelete' dialog shows blank for one soft-deleted ADLS Gen2 blob/folder

Storage Explorer Version: 1.21.0-dev
Build Number: 20210719.1
Branch: main
Platform/OS: Windows 10/ Linux Ubuntu 18.04/ MacOS Big Sur 11.4
Architecture: ia32/x64
How Found: From running test cases
Regression From: Previous build (20210715.1)
Steps to Reproduce

Expand one ADLS Gen2 storage account -> Blob Containers.
Create a blob container -> Upload a blob.
Soft delete the blob -> Switch to 'Active and deleted blobs' view.
Right click the soft-deleted blob -> Click 'Undelete -> Undelete Selected'.
Check whether the 'Undelete' dialog shows well.

Expected Experience
The 'Undelete' dialog shows well.
Actual Experience
The 'Undelete' dialog shows blank.

It was due to using an incorrect version of the package.

Verified on the build 20210720.1. Fixed.


PHP8 release

Thanks for you great package!
Would it be possible to release a version with PHP8 support? I see that the master branch supports PHP8, but there is not version to reference it yet.

+1 for this please!

Update: I was able to get it to work with:
"repositories": [
	{ "type": "vcs", "url": "https://github.com/irazasyed/laravel-gamp" }
],
"require": {
	"irazasyed/laravel-gamp": "master",
},

Released v1.8
Please try it out and create a new ticket if there are any issues.


docs: Add a section for adding a Custom bootstrap using the Merge Option

Description:

Describe the issue.

Highlight the merge option https://gateway.envoyproxy.io/latest/api/extension_types/#proxybootstrap with a section in https://gateway.envoyproxy.io/latest/user/customize-envoyproxy/#customize-envoyproxy-bootstrap-config
[optional Relevant Links:]

Any extra documentation required to understand the issue.

https://github.com/envoyproxy/gateway/issues/2543 would be a good example before we proposal a new API for that.

any further guidance?


Add missing command

yarn is the same as doing npm install 😄

Yes, you're right.
But i was missing yarn without the npm install (on Debian machine) :-)


[QUESTION] Startup event dependencies

First of all, great work on FastAPI! I've been really impressed so far.
I need to start a long-running, periodic task on the startup event of my application. This long-running task requires the global app configuration. In my path handlers, I am using FastAPI's dependency injection to access the config, making it very easy to mock the dependency in tests. However, as of now I see no way to use dependency injection to get the config in the startup event. For now I can handle this by modifying the environ through starlette.environ, but it would be nice if I could mock the config in there the same way as I am doing the rest of the time. Is there a way to do this, or am I going about this in completely the wrong way?

@lockshaw I would use a pattern where the config is loaded by function call, and isn't loaded until the call. So then you can access it in your startup event without it being set prior to the test run. (Maybe I'm misunderstanding your architecture though.)
Something like:
class AppSettings(BaseSettings):
    setting1: str
    setting2: str

@lru_cache()
def get_app_settings():
    return AppSettings()

# -------

@app.on_event("startup")
def trigger_repeat_using_settings():
    settings = get_app_settings()
    trigger_repetitions(settings)

Let me know if that doesn't make sense, or if there is a problem this doesn't address.

@dmontagu That's my plan, and it's good to have some confirmation that there's nothing I'm missing. My main question was simply if there was a nice way I could just keep using dependency injection as I do in the rest of the tests, but I guess not. Thanks!

@lockshaw the app.on_event function is inherited directly from starlette, so I don't think it can do anything nice with dependencies. But yes, I think this is the standard approach.

Thanks for the help @dmontagu ! :cake: :tada:
Thanks @lockshaw for reporting back and closing the issue :heavy_check_mark:

It would be very nice indeed to be able to use dependency injection in startup events!
For example, say you have a database connection. It probably makes sense to initialize it as part of a startup event. I think a common pattern might be:
class AppSettings(BaseSettings):
    dbhost: str

class DataBase:
    def __init__(self, settings: AppSettings = Depends()):
        ....

@app.on_event("startup")
def startup(settings: AppSettings = Depends(), db: DataBase = Depends()):
    app.state.settings = Settings()
    app.state.db = DataBase(app.state.settings)

But now the only way (as far as I can tell) to replace the real DataBase implementation with a mock/fake is to do monkey patching on the app instance. Which is not great.
However imagine if startup events could handle dependency injection:
class AppSettings(BaseSettings):
    dbhost: str

class DataBase:
    def __init__(self, settings: AppSettings = Depends()):
        ....

@app.on_event("startup")
def startup(settings: AppSettings = Depends(), db: DataBase = Depends()):
    app.state.settings = settings
    app.state.db = db

Now, in your tests, I think you could just do:
app.dependency_overrides[DataBase] = FakeDataBase

Which would also work for nested dependencies and such.

bump

bump

@tandav thanks worked for me that way


Bump version to 0.6.1

I want to package smag for nix but the last tagged release is four years old. Can you please bump the version number and create a new tag for it?

Done :)


WIP - spec update

What was wrong?
Issue #
How was it fixed?
Summary of approach.
To-Do

[ ] Clean up commit history

[ ] Add entry to the release notes

Cute Animal Picture

This partially gets the v5.1 implementation up-to-date with the spec.  There is still at least one more update that needs to happen with the id_nonce_signature

Ok, this has successfully interop'd with the Nim and Go implementations.  That gives me adequate confidence to get this merged and iterate from there.


A major issue in Glow 24.10.

In Glow 24.10 version, it says virtualization is enabled in the processor tab even though virtualization is not enabled. @roines45

In Glow 24.10 version, it says virtualization is enabled in the processor tab even though virtualization is not enabled.
Virtualization returns Active because the Hyper-V feature is active.

@LinuxUsersLinuxMint Virtualization returns Active because the Hyper-V feature is active. This is not a problem, this is how it should be.

@LinuxUsersLinuxMint Virtualization returns Active because the Hyper-V feature is active. This is not a problem, this is how it should be.

Well, then how about writing Hyper-V in parentheses? @roines45


Plugins that generate assets cause karma-webpack to fail

I have a plugin that always generates a version file asset. It seems that karma-webpack checks to see if any assets exist, and if so then runs the tests. In this case the version file exists but the test bundle doesn't, and so karma-webpack fails with:
Fatal error: Path doesn't exist '/_karma_webpack_/test/config/tests.webpack.js'

@Stuk can you provide an example of the plugin you are using? Is this still an issue or did you find a work-around?

@goldhand - This is related to a node 4.1.x / npm version. See #86

@d3viant0ne is this related to #136 and #124 too? Is the _karma_webpack_ being added because the webpack config has no output.path described?
Looks like the default path is __karma_webpack__


Problems with more GPUs using v0.1.33-rc5

What is the issue?
I am testing the fantastic(!) new features with OLLAMA_NUM_PARALLEL and OLLAMA_MAX_LOADED_MODELS in v0.1.33-rc5.
I am running ollama using docker on a machine with two RTX4090.
Unfortunately it seems like ollama does not use both graphic-cards with v0.1.33-rc5 - it has worked perfect with previous versions (have just tested with v0.1.32).
It does not matter whether I set the environment variables, set them to 1 or set them to e.g. 4
As you can se in the log below - ollama detects the 2 GPU's
ollama  | time=2024-04-30T09:37:32.070Z level=INFO source=images.go:821 msg="total blobs: 68"
ollama  | time=2024-04-30T09:37:32.071Z level=INFO source=images.go:828 msg="total unused blobs removed: 0"
ollama  | time=2024-04-30T09:37:32.071Z level=INFO source=routes.go:1074 msg="Listening on [::]:11434 (version 0.1.33-rc5)"
ollama  | time=2024-04-30T09:37:32.072Z level=INFO source=payload.go:30 msg="extracting embedded files" dir=/tmp/ollama3211222627/runners
ollama  | time=2024-04-30T09:37:34.328Z level=INFO source=payload.go:44 msg="Dynamic LLM libraries [cpu_avx cpu_avx2 cuda_v11 rocm_v60002 cpu]"
ollama  | time=2024-04-30T09:37:34.328Z level=INFO source=gpu.go:96 msg="Detecting GPUs"
ollama  | time=2024-04-30T09:37:34.367Z level=INFO source=gpu.go:101 msg="detected GPUs" library=/tmp/ollama3211222627/runners/cuda_v11/libcudart.so.11.0 count=2
ollama  | time=2024-04-30T09:37:34.367Z level=INFO source=cpu_common.go:11 msg="CPU has AVX2"

But I can see (using nvtop)  that only one GPU is used during prompt-evaluation
OS
Docker
GPU
Nvidia
CPU
AMD
Ollama version
v0.1.33-rc5

Ollama  detects the GPU's at startup. See the log
ollama  | time=2024-04-30T09:37:32.070Z level=INFO source=images.go:821 msg="total blobs: 68"
ollama  | time=2024-04-30T09:37:32.071Z level=INFO source=images.go:828 msg="total unused blobs removed: 0"
ollama  | time=2024-04-30T09:37:32.071Z level=INFO source=routes.go:1074 msg="Listening on [::]:11434 (version 0.1.33-rc5)"
ollama  | time=2024-04-30T09:37:32.072Z level=INFO source=payload.go:30 msg="extracting embedded files" dir=/tmp/ollama3211222627/runners
ollama  | time=2024-04-30T09:37:34.328Z level=INFO source=payload.go:44 msg="Dynamic LLM libraries [cpu_avx cpu_avx2 cuda_v11 rocm_v60002 cpu]"
ollama  | time=2024-04-30T09:37:34.328Z level=INFO source=gpu.go:96 msg="Detecting GPUs"
ollama  | time=2024-04-30T09:37:34.367Z level=INFO source=gpu.go:101 msg="detected GPUs" library=/tmp/ollama3211222627/runners/cuda_v11/libcudart.so.11.0 count=2
ollama  | time=2024-04-30T09:37:34.367Z level=INFO source=cpu_common.go:11 msg="CPU has AVX2"

@cBrainAI the algorithm in this release tries to load models into a single card if it can, where in prior releases, we always spread the model over all available GPUs even if it wasn't necessary.   To leverage both cards in your setup, you'll either need to load 1 model that is larger than a single card can fit, or load 2 models.  If you've tried that and are still seeing only 1 GPU used, can you share a little more details about your scenario?  (nvidia-smi output might also help show where it's loaded)

@dhiltgen I can confirm that this is exactly how it is working :-)
I ran a test with 2 batches of requests in parallel with the same model (that could fit on one card) - and it just used one GPU. Changing the model on one the batches made both GPUs work.
I would (of course) prefer that both GPU's was working at the samt time, even with the same model.
(Just a simple "round-robin" where each request is sent to the next GPU in line)
My setup is a service, that uses the same model for a lot of users - where I try to get the most throughput out of my hardware.
Thank you for a fast and precise response to my issue :-)

Loading the same model multiple times isn't currently supported but something we may add in the future.  As a workaround, you can use a Modelfile to create 2 variations that are functionally equivalent but slightly different.


minor race in exists check

When receiving to a file, wormhole checks if the file exists and refuses to overwrite it. This is a useful check, and kind of a security guard. However, there's a race condition in this check: The file may not exist when _decide_destname checks it, but could be created immediately afterwards. Then, wormhole would overwrite the newly created file with the file it receives.
This race seems unlikely to be usefully exploitable, but it is a chink in the defenses and such minor holes can sometimes prove unexpectedly fatal. (Perhaps if there was some way for the attacker to delay the wormhole receive so it does not open the file until a carefully chosen time...)
I suggest opening the file with O_CREATE | O_EXCL which will fail atomically if it already exists. Or, since it seems to rename received files into place from a temp file, renameat2() with RENAME_NOREPLACE may be useful.

Good catch.. I agree we should fix this if we can. I'm not sure Python exposes the necessary APIs, though.
For the initial temporary file, we could use open(tmpfile, mode="x"), to ask python for exclusive creation, except that only works on py3.3 or later. I think f=os.fdopen(os.open(tmpfile, os.O_CREAT|os.O_EXCL|os.O_WRONLY), "wb") would be the py2.7-compatible way to express that, and the python docs say that O_EXCL is available on windows too, so we probably don't need any per-OS special-casing.
For the atomic rename, though, I don't see any APIs that offer failure-upon-target-exists. The existing ones all seem aimed to permit atomic replacement of an existing (or not existing) file, and go to great lengths to overcome e.g. windows' reluctance to clobber an existing file, the exact opposite of what we want here.
I'm guessing that in C, on Linux, we'd want to do something like:
int dirfd = diropen(TARGETDIR);
int rc = renameat2(dirfd, "target.tmp", dirfd, "target", RENAME_NOREPLACE)

I'm not finding any Python stdlib bindings to renameat2().. do you know of any? I see os.replace() (added in py3.3, not available in py2.7), which has a signature that comes close, but lacks the flags= option, which makes me think it binds to the old renameat() instead of renameat2().


Upgrade to use osrm-backend 4.9.0-rc3

Starts testing against latest osrm-backend tag
Fixes #116

Before merging:

Uncomment tests after #122 is fixed
Fix #123

Pulled your changes in https://github.com/Project-OSRM/node-osrm/pull/125


Wrong temporary directory created following a reset via fs.os

Describe the bug
The /tmp created by _create_temp_dir may be invalid following modification of fs.os. _create_temp_dir consults tempfile.gettempdir() to find the default directory for temporary files. After the os module has been patched, the tempfile module attempts to probe the filesystem using the mock filesystem. Because the filesystem is reset by writing fs.os, tempfile fails to create probe files in the non-existent test directories, and gettempdir() returns root / as a fallback. The _create_temp_dir function will then create a symlink of /tmp -> /.
Background: By default, pyfakefs creates directories with mode 0o777, which is not a realistic mode for most directories, and especially not /. To test directory permissions, I apply os.chown('/', 0, 0); os.chmod('/', 0o755) to create a more "realistic" root directory that rejects writes.
With the merge of #961, the symlink of /tmp -> / becomes problematic after marking / to be non-writable for non-root users, as tempfile assumes that the temporary directory has mode 0o777.
How To Reproduce
def test_write_tmp(fs):
    # Mark '/' to be modifiable by only root
    os.chown("/", 0, 0)
    os.chmod("/", 0b111_101_101)
    with tempfile.TemporaryFile("wb"):
        pass

def test_write_tmp_after_reset(fs):
    # Set Linux as the filesystem OS
    fs.os = pyfakefs.fake_filesystem.OSType.LINUX
    # Mark '/' to be modifiable by only root
    os.chown("/", 0, 0)
    os.chmod("/", 0b111_101_101)
    with tempfile.TemporaryFile("wb"):
        pass

Your environment
Please run the following in the environment where the problem happened and
paste the output.
$ python -c "import platform; print(platform.platform())"
Linux-6.7.6-arch1-1-x86_64-with-glibc2.39
$ python -c "import sys; print('Python', sys.version)"
Python 3.11.7 (main, Jan 29 2024, 16:03:57) [GCC 13.2.1 20230801]
$ python -c "from pyfakefs import __version__; print('pyfakefs', __version__)"
pyfakefs 5.4.dev0
$ python -c "import pytest; print('pytest', pytest.__version__)"
pytest 7.2.0

Thanks, that's a good point!
As far as I can see, the default is 0o666 for regular files and 0x777 for directories, with the umask applied for files (but not always), and not applied for directories. This should not have a big impact (I hope), as most tests don't work with different users / groups.
I have to go through the code and check that the umask is always applied, and will leave the defaults as they are (making sure they are always applied).
As for the root dir - this is something I probably won't change by default, because it would break too many tests. I may think about an option to make the root path root-owned, which may change to the default in some major update later.
The temp directory creation has to be fixed of course.

Though I'll probably fix the temp dir problem only (and any other problems you encounter) for now, as the other changes may be a bit more complicated. Always applying the umask as I just tried breaks a few tests both in the fake and the real fs, so this is also not correct. I have to read up on permission handling first...

Thanks for the quick turnaround! Looks to be mostly fixed. I am hitting some issues with /tmp that may or may not be my own fault, but will require more investigation.


Add slovenian translation

Hello Heki, first, thank you for delivering the translation, I appreciate your efforts.
Regrettably, I'm reluctant to accept it because I can see it's a near (98-99%) match with the result of Google Translate, and there are quite a few English phrases that are English-specific yet the translation goes word by word as seen on GT. I suspect that the context does not represent accurately some of the meanings in consideration of language differences and nuances and that a native Slovenian person will find some of the narrative mechanical and awkward.
Granted, I'm not a native Slovenian speaker so if you feel the current translation is 100% accurate feel free to defend it. Alternatively, if you feel my feedback is justified, can you please give it a thorough review and deliver a revision?
Thanks again.

Hi! It's near match with Google Translate, because it is Google Translate. I used it to make the process faster, but most of the strings (especially long ones) I changed, because they weren't grammatically correct or there was better translation for a word. If you translate fixed strings back to English, you will get the original string most of the time.
Due to Slovenian being a small language, we don't have very good translation for some cases, for example peer-to-peer, startups, FUNDRAISER (I hate that word, it's in every third string), secret view key, etc., so I sticked with the translation that Google gave me, which was not bad.
I looked through the translation for English-specific phrases and I found only one (on the go). I think in Slovenian it's not wrong if you translate word by word, but I also found a better word for that phrase. While looking I've also found some typos and one untranslated string, so I fixed that.
I am a native Slovenian speaker and I can confirm it's accurate. Maybe it's not a 100% accurate, but it's defenetly 99% :).

We have specifically warned on our GitHub listing not to deliver Google translations because they are not accurate. The very point of any translation is not to make it literal but native, it's not supposed to translate back to the original string. The fact you suggest otherwise is a big red flag, and the fact you suggest that Slovenian is a small language is a weak excuse and it raises an alarm. Slovenian is a Slavic language.
For that reason, we opted to reject the translation. Since your ask has been funded, and you've failed to deliver a reasonable standard, I can only suggest that you determine the right course of action.


The authentication library used by Storage Explorer has failed to start properly.

Preflight Checklist

[X] I have installed the latest version of Storage Explorer.
[X] I have checked existing resources, including the troubleshooting guide and the release notes.
[X] I have searched for similar issues.

Storage Explorer Version
1.32.1
Regression From
1.32.0
Architecture
x64
Storage Explorer Build Number
No response
Platform
Windows
OS Version
No response
Bug Description
When I open MASE

Steps to Reproduce
Launch Storage application
Actual Experience
When I open it, I get this error and then it closes.  Started doing it about a month ago and I have uninstalled and reinstalled everything and I have tried multiple computers.

Expected Experience
No response
Additional Context
No response

@MattHolton please gather authentication logs and share those here. Please follow all instructions at this link to do so: https://learn.microsoft.com/en-us/troubleshoot/azure/azure-storage/storage-explorer-troubleshooting?tabs=Windows#authentication-logs

logs.zip
Attached are the logs. I tried again today with the same error.

@MattHolten can you try running Storage Explorer as admin?

Yes and it works fine that way.  I can work with it that way.   THANK YOU!


1.18.2 sideways stairs don't break properly

If you place sideways wooden stairs, they break as if you were punching them even if you're using an axe. Same thing for stone-based stairs. Even if you have a pickaxe, they break as if you were punching them.

for gods sake, this is a user error. see https://github.com/FirEmerald/AdditionalPlacements/issues/31

Lmao my b


Multilined TextField & React-Bootstrap Tab ResizeObserver Issue

Hi there! I got this error while developing a react project with Material UI & React-Bootstrap:
Error: When I open my modal on page i see page1 tab on the screen, then ı switch my tab to other page. Everthing fine for now, then I switched back to page1 again tere is an error occured. When I removed multiline and minRows={2} properties, issue fixed. Also when I add this code to css it also fixes the problem but its only a temporary solution for me: iframe#webpack-dev-server-client-overlay{display:none!important}. But, I need a permanant solution for this.
ResizeObserver loop completed with undelivered notifications. at handleError
(http://localhost:3000/static/js/bundle.js:146801:58) at http://localhost:3000/static/js/bundle.js:146820:7

I added code example image and error image:

Search keywords:

@siriwatknp Hi! Has anyone seen this error?

@furkanerhann See this comment: https://github.com/mui/material-ui/issues/43718#issuecomment-2498121512


set discoveryAddress to be cluster-local by default (#23625)

Cherry picking #23625 into release 1.6 to fix shared control plane multicluster

Wait, this is a pretty big change in behavior.
The original PR claims there are only 2 ways - is there a RFC or decision to drop all other ways ?

Please don't merge into 1.6 without further discussion - not clear if master will keep this either.

cc @stevenctl @costinm With the code freeze on Wednesday the release managers @brian-avery and @irisdingbj would like some resolution to this. If not this may have to wait until 1.6.1.

@brian-avery would you mind cherry-picking? We've discussed offline and agreed that this is the right change for 1.6. Multicluster with remote clusters is effectively broken without it.

I tried test a bit on central istiod, no impact here.  I'm good to cherry pick this in 1.6

@brian-avery also we'll need to add a blurb about this to the upgrade notes. Something like:
This release makes the istiod host cluster-local by default. This means that the Istio control plane is not accessible to workloads that reside outside the cluster. It is now recommended that external workloads access istiod via the ingress gateway. This change was needed in order to support multicluster master/remote configurations. Future releases will remove this limitation.
Users may override this behavior in MeshConfig:
values:
  meshConfig:
    serviceSettings:
      - settings:
          clusterLocal: false
        hosts:
          - "istiod.istio-system.svc.cluster.local"

@costinm @smawson look good?


String concat/Template Literals throw TypeErrors

When utilizing a templated string for as, TypeScript throws an error.
<Typography
  as={`h${startHeadingLevel}`}
/>

Type '`h${string}`' is not assignable to type '((string | ComponentClass<any, any> | FunctionComponent<any>) & ElementType<any>) | undefined'.

The weird things is the "type" of h${string}... That's not a type and a mouseover of the template shows "string" in VSCode.
Moving it out to it's own variable causes the same issue, with a more sane TS error:
Type 'string' is not assignable to type '((string | ComponentClass<any, any> | FunctionComponent<any>) & ElementType<any>) | undefined'.

Casting the variable as an React.ElementType works, but I do not wish to force the users of my component to have to cast all their templated strings to work.
Any ideas?

Hey @mririgoyen, so a few things here, the as prop expects either a Component or IntrinsicElements type. the former is our custom components (class or functional) and the latter is the various HTML tags that we use (ex. "p", "h1", "button", etc.). So with that we now know that the problem is that we're assigning a string to our as prop which won't do,
one other thing is template literal types actually do exist! That's why we see the first error be h${string} which means that that specific template literal doesn't match with any of the types expected by the as prop. If we were to change the type of startHeadingLevel from string to 1 | 2 | 3 | 4 | 5 | 6 we can see this working.
Playground here


Bump setuptools from 66.0.0 to 66.1.0 (#5420)

Pull request opened by the merge tool on behalf of #5420

Merged in 6d76bfaf88220bb4451e04570135183ded962970


Create 0000-01-02-marius1203.md

created a branch, created a file and made a commit, and opened a pull request


Height of background image

The theme looks great on a laptop/desktop - thank you!
On a mobile display, the hero background however does not extend to the height of the screen, and it looks a little strange.
Is there a way to increase the height of the image please?

Yes you can. Duplicate the agency.css to your own files so it overwrites the theme default and then you can add "height: 800px;" in the "header { }" section. As it completely depends on the phone size how big it needs to be. I'll close this for now. We could do some resizing with the device size, but that is out of scope for now. Will add a note to maybe revisit this in the future.

I added height to the header in css in agency.css
header {
    text-align: center;
    color: #fff;
    height: 100vh;

That's great, thanks.


Go: Support omitempty tag for optional arrays

Optional array can be (or should be) marked as omitempty.
ref: #1288

Thank you so much!


Is there any option to use audio file instead of user's mic input as audio track in the output video

after searching and reading documentations for such solutions in google for a day nothing found

Yes, of course there is. This has more with AudioEncoder than this library, but this is how:
We already have an AudioEncoder, so now our goal is to create AudioData (expected by .encode) containing our audio file that we can encode using it.
// Fetch the audio file as an array buffer
const response = await fetch(url);
const audioBuffer = await response.arrayBuffer();

// Decode the audio data
const audioContext = new AudioContext();
const audioData = await audioContext.decodeAudioData(audioBuffer);

// Create a new Float32Array to hold the planar audio data
const numChannels = audioData.numberOfChannels;
const lengthPerChannel = audioData.length;
const planarData = new Float32Array(numChannels * lengthPerChannel);

// Fill the Float32Array with planar audio data
for (let channel = 0; channel < numChannels; channel++) {
    const channelData = audioData.getChannelData(channel);
    planarData.set(channelData, channel * lengthPerChannel);
}

// Construct an AudioData object
const audioData = new AudioData({
    format: 'f32-planar',
    sampleRate: audioData.sampleRate,
    numberOfFrames: lengthPerChannel,
    numberOfChannels: audioData.numberOfChannels,
    timestamp: 0,
    data: planarData
});

// With the encoder set up:
encoder.encode(audioData);

And you're done!

The above code is worked like charm 👍, as AudioEncoder is not supported in iOS, can we use any polyfills to encode audio in iOS like Audio Recorder Polyfill or something like that. currently ios encoded files are without audio.

Yeeah there should be, you can use the .addAudioChunkRaw method on the Muxer to add raw bytes directly. But note it's unlikely you'll be able to add just a straight up audio file, but instead we need raw encoded audio data. I think there was already an issue similar to this, hold on...
Here. This is about adding an AAC file directly without encoding it, which we ended up getting to work. It required a bit of manual slicing of the audio file. If your audio file is not AAC, then I don't know. But since you're recording the audio, I guess you should be able to write it as AAC?

Audio file is aac, reference from the previous issue helped to encode video and add raw audio from aac file but the resulted video file is not playing in all players, it can be played in the chrome browser, VLC player, pot Player but cannot play in windows media player and ios default player and while sending file through whatsapp web in chrome does not recognize it as a video and sending it as document, while opening in whatsapp web windows app it showing video preview without audio.
file sample attached
https://github.com/Vanilagy/mp4-muxer/assets/26264087/94974da1-8aa3-4dde-a877-728e58f42e16

I'm sorry, I've been busy! I'll get to this issue when I have the time.

@avhasib Sorry for not getting back to you, I kinda forgot about this issue. Do you still require help, or has this issue been resolved? :)

What audio file formats are supported? mp3, ogg and wav? We are using mp3 files...
Thanks a lot.

@Vanilagy unfortunately Issue is still there

What precisely is the issue?

@Vanilagy Issue is the file produced using the following page https://cypro.in/nx/1x.html cannot be played in all players

You'll need to be a bit more precise!

Yes, of course there is. This has more with AudioEncoder than this library, but this is how:
We already have an AudioEncoder, so now our goal is to create AudioData (expected by .encode) containing our audio file that we can encode using it.
// Fetch the audio file as an array buffer
const response = await fetch(url);
const audioBuffer = await response.arrayBuffer();

// Decode the audio data
const audioContext = new AudioContext();
const audioData = await audioContext.decodeAudioData(audioBuffer);

// Create a new Float32Array to hold the planar audio data
const numChannels = audioData.numberOfChannels;
const lengthPerChannel = audioData.length;
const planarData = new Float32Array(numChannels * lengthPerChannel);

// Fill the Float32Array with planar audio data
for (let channel = 0; channel < numChannels; channel++) {
    const channelData = audioData.getChannelData(channel);
    planarData.set(channelData, channel * lengthPerChannel);
}

// Construct an AudioData object
const audioData = new AudioData({
    format: 'f32-planar',
    sampleRate: audioData.sampleRate,
    numberOfFrames: lengthPerChannel,
    numberOfChannels: audioData.numberOfChannels,
    timestamp: 0,
    data: planarData
});

// With the encoder set up:
encoder.encode(audioData);

And you're done!

@Vanilagy , I can't hear any audio in the generated MP4 file with this code. Am I missing something?

Not sure. What issue was this from again, my response? Looking at my code now, I don't see any obvious issues with it.
The AudioDecoder typically spits out a lot of chunks per second, so only two chunks would either mean your audio is very short or there is some bug in this code.

Yes, of course there is. This has more with AudioEncoder than this library, but this is how:
We already have an AudioEncoder, so now our goal is to create AudioData (expected by .encode) containing our audio file that we can encode using it.
// Fetch the audio file as an array buffer
const response = await fetch(url);
const audioBuffer = await response.arrayBuffer();

// Decode the audio data
const audioContext = new AudioContext();
const audioData = await audioContext.decodeAudioData(audioBuffer);

// Create a new Float32Array to hold the planar audio data
const numChannels = audioData.numberOfChannels;
const lengthPerChannel = audioData.length;
const planarData = new Float32Array(numChannels * lengthPerChannel);

// Fill the Float32Array with planar audio data
for (let channel = 0; channel < numChannels; channel++) {
    const channelData = audioData.getChannelData(channel);
    planarData.set(channelData, channel * lengthPerChannel);
}

// Construct an AudioData object
const audioData = new AudioData({
    format: 'f32-planar',
    sampleRate: audioData.sampleRate,
    numberOfFrames: lengthPerChannel,
    numberOfChannels: audioData.numberOfChannels,
    timestamp: 0,
    data: planarData
});

// With the encoder set up:
encoder.encode(audioData);

And you're done!

Where do I need to add this in the code

Depends on your code! Just wherever you have the encoder (and therefore muxer) already set up.

Depends on your code! Just wherever you have the encoder (and therefore muxer) already set up.

it's the same one in demo of your repository

Just put after the initialization of the AudioEncoder.

Just put after the initialization of the AudioEncoder.

const startRecording = async () => {
    if (typeof VideoEncoder === 'undefined') {
        alert("Looks like your user agent doesn't support VideoEncoder / WebCodecs API yet.");
        return;
    }

    startRecordingButton.style.display = 'none';

    if (typeof AudioEncoder !== 'undefined') {
        try {
            let userMedia = await navigator.mediaDevices.getUserMedia({
                video: false,
                audio: true
            });
            audioTrack = userMedia.getAudioTracks()[0];
        } catch (e) {}
        if (!audioTrack) console.warn("Couldn't acquire a user media audio track.");
    } else {
        console.warn('AudioEncoder not available; no need to acquire a user media audio track.');
    }

    endRecordingButton.style.display = 'block';

    let audioSampleRate = audioTrack?.getCapabilities().sampleRate.max;

    muxer = new Mp4Muxer.Muxer({
        target: new Mp4Muxer.ArrayBufferTarget(),
        video: {
            codec: 'avc',
            width: canvas.width,
            height: canvas.height
        },
        audio: audioTrack ? {
            codec: 'aac',
            sampleRate: 48000,
            numberOfChannels: 2
        } : undefined,
        fastStart: 'in-memory',
        firstTimestampBehavior: 'offset'
    });

    videoEncoder = new VideoEncoder({
        output: (chunk, meta) => muxer.addVideoChunk(chunk, meta),
        error: e => console.error(e)
    });
    videoEncoder.configure({
        codec: 'avc1.4D4028',
        width: canvas.width,
        height: canvas.height,
        bitrate: 1e6
    });

    if (audioTrack) {
        audioEncoder = new AudioEncoder({
            output: (chunk, meta) => muxer.addAudioChunk(chunk, meta),
            error: e => console.error(e)
        });
        audioEncoder.configure({
            codec: 'mp4a.40.2',
            numberOfChannels: 1,
            sampleRate: audioSampleRate,
            bitrate: 128000
        });

        let trackProcessor = new MediaStreamTrackProcessor({
            track: audioTrack
        });
        let consumer = new WritableStream({
            write(audioData) {
                if (!recording) return;
                audioEncoder.encode(audioData);
                audioData.close();
            }
        });
        trackProcessor.readable.pipeTo(consumer);
    }

    audioEncoder = new AudioEncoder({
        output: (chunk, meta) => muxer.addAudioChunk(chunk, meta),
        error: e => console.error(e)
    });
    audioEncoder.configure({
        codec: 'mp4a.40.2',
        numberOfChannels: 2,
        sampleRate: 48000,
        bitrate: 128000
    });

    // Fetch the audio file as an array buffer
    const response = await fetch('sample.aac');
    const audioBuffer = await response.arrayBuffer();

    // Decode the audio data
    const audioContext = new AudioContext();
    const audioData = await audioContext.decodeAudioData(audioBuffer);
    console.log(audioData)

    // Create a new Float32Array to hold the planar audio data
    const numChannels = audioData.numberOfChannels;
    const lengthPerChannel = audioData.length;
    const planarData = new Float32Array(numChannels * lengthPerChannel);

    // Fill the Float32Array with planar audio data
    for (let channel = 0; channel < numChannels; channel++) {
        const channelData = audioData.getChannelData(channel);
        planarData.set(channelData, channel * lengthPerChannel);
    }

    // Construct an AudioData object
    const audiosData = new AudioData({
        format: 'f32-planar',
        sampleRate: audioData.sampleRate,
        numberOfFrames: lengthPerChannel,
        numberOfChannels: audioData.numberOfChannels,
        timestamp: 0,
        data: planarData
    });

    // With the encoder set up:
    audioEncoder.encode(audiosData);
    audiosData.close()

    startTime = document.timeline.currentTime;
    recording = true;
    lastKeyFrame = -Infinity;
    framesGenerated = 0;

    canvasInterval = setInterval(updateCanvas, duration);
    encodeVideoFrame();
    intervalId = setInterval(encodeVideoFrame, 1000 / 30);
    const totalDuration = images.length * duration;
    endRecordingTimeoutId = setTimeout(endRecording, totalDuration);
};

in here like this but it gives this error

mp4-muxer.js:1226 Uncaught Error: No audio track declared.
at Muxer.addAudioChunkRaw (mp4-muxer.js:1226:15)
at Muxer.addAudioChunk (mp4-muxer.js:1221:12)
at output (scripts.js:203:44)

The error message is a pointer to what's wrong.
I'm sorry, but it is not my job to debug your application code. I would suggest you take this issue to ChatGPT, which should help you adequately with the types of issues you're facing!


[FEA] Ensure no side effects in GpuDeltaTaskStatisticsTracker so we can retry stats calculation

This is a very low priority as the code path is doing very little work on the GPU, but I am filling as a follow on to https://github.com/NVIDIA/spark-rapids/pull/8667.
The code in GpuDeltaTaskStatisticsTracker.newBatch was changed to materialize a ColumnarBatch from a SpillableColumnarBatch as part of the PR linked above. We were able to easily put the materialization of the batch in a withRetryNoSplit but then we need to compute stats using this batch, and to get these stats we need to perform reductions on a spark InternalRow.
This should be OK in theory, but I am not 100% sure if we can see issues with side effects due to retry, so for now filing this follow on so we can look at putting batchStatsToRow inside of the withRetryNoSplit block in newBatch.

The code in GpuDeltaTaskStatisticsTracker.newBatch was changed to materialize a ColumnarBatch from a SpillableColumnarBatch as part of the PR linked above

This is no longer true. Closing this issue.


大神，微信视频号升级，WeChatDownloader可以下载视频，但下载后视频损坏无法播放。

大神，微信视频号升级，WeChatDownloader可以下载视频，但下载后视频损坏无法播放。
舍时候更新软件啊？

基于内存搜索的程序，经常失效。所以我用抓包思路写了个目前凑合能用的，可以试试
https://github.com/xuncv/WechatVideoSniffer

基于内存搜索的程序，经常失效。 So you've effectively abandoned your current project? Man I guess it's a hard life out there for third-party devs when the official app keeps breaking the API/endpoints.

基于内存搜索的程序，经常失效。 So you've effectively abandoned your current project? Man I guess it's a hard life out there for third-party devs when the official app keeps breaking the API/endpoints.


Long nip5 causes reactions modal to look janky

Follow/unfollow button height expands when a user has a long nip5 and the button overlaps the nip5 text. Would it be better to just remove the follow/unfollow button? Users can easily just click on the row to go to the user's profile page and follow/unfollow there.

+1, also looks terrible in spanish

"Kill that follow button"

I can do it. I love deleting code. 😂


Notes

a. Select SourceDataset for the Source Dataset field. => you mean AzureSqlDatabaseLinkedService ? (you have to make a selection!)

b. Values must not have trailing spaces/new lines when entered in the fields => not obvious

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

ID: e1d97ae7-50da-d422-1332-1493c8515b78
Version Independent ID: a67bb70b-b9de-e726-12a1-50c7c377f13d
Content: Incrementally copy a table by using Azure Data Factory
Content Source: articles/data-factory/tutorial-incremental-copy-portal.md
Service: data-factory
GitHub Login: @dearandyxu
Microsoft Alias: yexu

@dearandyxu could you take a look at this request?

I have created a pipeline but its not working.. when i run a pipeline its continue to processes, execution not finishing. I have tried so many time, some where is error i think so..can anyone tell me who ran this successfully

Its working now just be careful with commands Values must not have trailing spaces/new lines when entered in the fields.

In step 21.a, Select SourceDataset for the Source Dataset field.  The SourceDataset is the dataset you had already created in step 14. The type of the dataset is Azure SQL Database.
In step 21.c, when you enter the SQL query for the Query field, it will still work if you have trailing spaces/new lines in this field.
#please-close


Release

Codecov Report
Base: 61.35% // Head: 61.05% // Decreases project coverage by -0.30% :warning:

Coverage data is based on head (ce13f3f) compared to base (0bbc593).
Patch coverage: 52.05% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #321      +/-   ##
==========================================
- Coverage   61.35%   61.05%   -0.31%
==========================================
  Files          43       43
  Lines        4353     4321      -32
==========================================
- Hits         2671     2638      -33
- Misses       1506     1507       +1
  Partials      176      176

Flag
Coverage Δ

unittests
61.05% <52.05%> (-0.31%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/adapters/grpc/faas_grpc.go
0.00% <0.00%> (ø)

pkg/plugins/events/eventgrid/eventgrid.go
63.00% <0.00%> (-0.37%)
:arrow_down:

pkg/plugins/events/pubsub/pubsub.go
59.42% <ø> (-0.58%)
:arrow_down:

pkg/plugins/events/sns/sns.go
53.19% <ø> (-1.45%)
:arrow_down:

pkg/plugins/gateway/appservice/http.go
69.66% <ø> (-0.67%)
:arrow_down:

pkg/plugins/gateway/cloudrun/http.go
68.00% <ø> (-0.63%)
:arrow_down:

...kg/plugins/secret/secret_manager/secret_manager.go
69.50% <ø> (-0.64%)
:arrow_down:

.../plugins/secret/secrets_manager/secrets_manager.go
78.68% <ø> (-0.84%)
:arrow_down:

pkg/plugins/storage/azblob/azblob.go
78.01% <ø> (-0.35%)
:arrow_down:

pkg/providers/aws/core/provider.go
61.36% <ø> (+0.49%)
:arrow_up:

... and 18 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


fix build for forks

Coverage remained the same at 94.75% when pulling 98281d53e3737504a41ffcb1114f7752a24aaaca on fix-build-external into 7906abc6c3ab40833394633d3b68a2152d7fa207 on master.


aasthashahcodes patch 1

Looks good 👍
I think in another pull request you should rename the file to match your username exactly (same case)

Thank you Eddie.
Looks good now?

@aasthashahcodes did you create a new pull request to rename your file and folder?


Update documentation to use SwipeTableViewCellDelegate in class definition

Great library, thanks!
I'm fairly new at Swift/iOS development and I wasted some time on the fact that my ViewController didn't extend/implement SwipeTableViewCellDelegate
So: class MyViewController extends: UITableViewController, SwipeTableViewCellDelegate
Perhaps this should be added to the documentation to make a little more newbie friendly.

until i read this I had wasted a good bit of time on this issue!

There would be a compilation error if you did this in Swift, or a warning in Objective-C.

There wasn't. Xcode 9.2 and Swift 4. Wouldn't have wasted so much time if there was an error.

Remove the delegate declaration in the sample app. You can see any error occur.


Revert "Add support for New York city's Taxi and Limousine Commission yellow taxi trip records"

What I did

Reverted https://github.com/red-data-tools/red-datasets/pull/151

Reasons
We decided not to use Apache Parquet data in Red Datasets because we don't want to add red-parquet dependency to red-datasets for easy to install.
In details, red-parquet is an extension library. So it's difficult to install rather than a pure Ruby library.
Instead of it, we created Red Datasets Parquet to use Apache Parquet data.

Thanks!


Suggested documentation improvements.

Fixes https://github.com/axboe/liburing/issues/690.

That's a typo - but I can't apply this as it doesn't follow the commit rules for liburing. See other commits in the tree, but generally it's:
line 1: title
line 2: empty
line 3..N commit message
line N+1: empty
line N+2: Signed-off-by: Real Name<EMAIL_ADDRESS>


Added filter capabilities

(Due to @MichalPorag's instructions, I left out the search functionality). Also due to inactivity, I deleted this repo last week and had to recreate the components from scratch 😬, but I didn't want to lose this chance for a PR.  Lesson learned.
This PR adds a dynamic dropdown component that sifts through people. To avoid adding too many conditionals in the people.map, I took an abstract route and decided an array with all the filters is the way to go. This way, any future contributor can simply add a similar set of data and all filtering capabilities for that new dataset will be automatically enabled, as well as a new dropdown component representing that data (with all included functionality).

@asharonbaltazar could you squash the commits into one?

כן, אין בעיה, אבל מאוחר יותר.

hi @asharonbaltazar
please add responsive design
tnx alot!

Hey, @ozizhakGT. Thanks for the response.
Unfortunately, due to an exchange that happened off of GitHub with one of your core members and left me feeling rather unappreciated, I no longer want to participate in this PR wholeheartedly. Whatever work I've done until this point is yours to build on, but this is as far as I'll go.
Terribly sorry.


Add tasks to publish generated plugin zips

Signed-off-by: Vijayan Balasubramanian<EMAIL_ADDRESS>Description
Along with plugin jars, plugin zips should also be published to
maven repo with right maven coordinates,
so user can download these plugins using dependancy model.
Issues Resolved
#56
Check List

[x] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #72 (28b8cce) into main (e670f9d) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               main      #72   +/-   ##
=========================================
  Coverage     88.13%   88.13%
  Complexity      206      206
=========================================
  Files            34       34
  Lines           733      733
  Branches         41       41
=========================================
  Hits            646      646
  Misses           81       81
  Partials          6        6

Continue to review full report at Codecov.

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


Use util.inspect with depth: null for traceAny on node.js

Because currently recursive types without a Show instance are pretty much non-printable.

Not sure what's wrong with the tests, but it doesn't seem to be related to my changes.

It seems like this way of checking whether we're running on node.js doesn't work (with node v0.10). I'll see if I can find something better. @hdgarrood did you ever have this problem with purescript-affjax?

Maybe we make it simpler and just check if util and util.inspect are in scope, and if so, use them? This is only for debugging so doesn't have to be super correct in its implementation anyway. Perhaps worth enabling the colors option too?

I don't think we should worry about node 0.10 if it makes things significantly harder; we don't with the purescript-node libraries. I think we should support Node 4 but not older versions.

Okay, I've rewritten the commit so it checks for util.inspect. Let's see if it works like this...

Doesn't work like this. Seems like you have to import util first with node 0.10. I'll try !== undefined now as well, because I'm not sure if typeof is meant to work on undefined symbols (it obviously doesn't with node 0.10).

You also have to import util on node 6, it seems. Maybe it's just in the repl that the node api modules like fs and util and so on get automatically required.

Oh, okay. And I guess I'll also have to use module.require, not just require? The latter is what I found in the docs, but of course it doesn't work ^^°

Also, since we're here, maybe we should consider providing a version of traceAny that lets you specify the depth you want?
You shouldn't need module.require, just require should work. How is it failing?

@hdgarrood https://travis-ci.org/garyb/purescript-debug/builds/127774702#L261

Okay, now I'm really out of ideas. It just keeps saying that everything I check for being undefined is undefined, and that is somehow is an error. What's going on here? :/

Ah, that's the linter. You have to tell the linter separately that a global require exists, by putting a comment at the top of the file, like this: https://github.com/purescript-node/purescript-node-streams/blob/master/src/Node/Stream.js#L1-L2 (well, replace exports or Buffer with require, but yeah)

Thanks, should work now then. Actually I got the same error locally from my linter editor plugin, I just didn't expect that the server reported linter errors as build fails.

Aaand another rewrite... This time the linter didn't like my code style (but only on the server, no local errors) ^^°

Finally! :)

Thanks, sorry this turned out so painful! :smile:

No problem, at least I learned something :)

Also, since we're here, maybe we should consider providing a version of traceAny that lets you specify the depth you want?

That might be useful, but I think it should be in a seperate package that wraps the whole util module.

^ agreed. The depth argument would only apply on node too, as when you console.log in the browser you get the interactive expandable thing rather than a string value appearing in the log.


Day 6

Codecov Report

Merging #10 (2ba70ed) into main (acda4c8) will increase coverage by 0.62%.
The diff coverage is 79.48%.

@@            Coverage Diff             @@
##             main      #10      +/-   ##
==========================================
+ Coverage   82.56%   83.19%   +0.62%
==========================================
  Files           6        7       +1
  Lines         304      357      +53
==========================================
+ Hits          251      297      +46
- Misses         53       60       +7

Impacted Files
Coverage Δ

src/day_5.rs
81.08% <0.00%> (ø)

src/main.rs
0.00% <0.00%> (ø)

src/day_1.rs
85.00% <57.14%> (ø)

src/day_3.rs
88.46% <66.66%> (ø)

src/day_4.rs
91.30% <66.66%> (ø)

src/day_2.rs
92.85% <80.00%> (ø)

src/day_6.rs
88.46% <88.46%> (ø)

Continue to review full report at Codecov.

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


navigation bar on the bottom detection

how do we effectively to detection navigation bar on the bottom? the view size needs to be adjusted by its demand.
let me know if u got the solution

I have just made a  post on stackoverflow


Added Link to the v1.3.0 badge

Added link of Release v1.3.0 to the badge of v1.3.0 and it now redirects to the v1.3.0
Changes Proposed

Check List

[ ] The title of my pull request is a short description of the changes
[ ] This PR relates to some issue:
[ ] I have documented the changes made (if applicable)
[ ] I have covered the changes with unit tests

Fixes #318

@Satyxm This is not the correct way to fix it. You are hardcoding version number into the link and we'd need to update it with each release. It's too much of manual work.
Instead, please change the link to point to general releases page. The latest release will be on top: https://github.com/komodorio/helm-dashboard/releases

@Satyxm This is not the correct way to fix it. You are hardcoding version number into the link and we'd need to update it with each release. It's too much of manual work.
Instead, please change the link to point to general releases page. The latest release will be on top: https://github.com/komodorio/helm-dashboard/releases

Okay


az keyvault secret list gets stacktrace in WSL2 ubuntu

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az keyvault secret list
this was in ubuntu WSL2 in windows 10.  the summary command 'az keyvault secret' worked:
az keyvault secret
az keyvault secret: error: the following arguments are required: _subcommand
usage: az keyvault secret [-h]
{list,list-versions,list-deleted,set,set-attributes,show,show-deleted,delete,purge,recover,download,backup,restore}
also this worked: "az keyvault show --name mdesimone-vault"
i'd installed via 'apt install azure-cli'
Errors:
No module named 'azure.keyvault.v7_0'
Traceback (most recent call last):
python3/dist-packages/knack/cli.py, ln 206, in invoke
    cmd_result = self.invocation.execute(args)
cli/core/commands/__init__.py, ln 528, in execute
    self.commands_loader.load_arguments(command)
azure/cli/core/__init__.py, ln 299, in load_arguments
    self.command_table[command].load_arguments()  # this loads the arguments via reflection
cli/core/commands/__init__.py, ln 291, in load_arguments
    super(AzCliCommand, self).load_arguments()
...
<frozen importlib._bootstrap>, ln 961, in _find_and_load_unlocked
<frozen importlib._bootstrap>, ln 219, in _call_with_frames_removed
<frozen importlib._bootstrap>, ln 1014, in _gcd_import
<frozen importlib._bootstrap>, ln 991, in _find_and_load
<frozen importlib._bootstrap>, ln 973, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'azure.keyvault.v7_0'

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az keyvault secret list

Expected Behavior
list the secrets in the test vault
Environment Summary
Linux-4.4.0-19041-Microsoft-x86_64-with-glibc2.29
Python 3.8.5
Shell: bash

azure-cli 2.0.81

Extensions:
azure-devops 0.17.0

Additional Context

hi @bim-msft could you pls help to have a look?

hi @mdesimone1 the issue is fixed in latest Azure CLI, could you pls try install latest CLI to validate? will close the issue for now, pls create new one if see any errors, thanks.

Duplicate of #13101. To fix it, please see https://github.com/Azure/azure-cli/issues/19640#issuecomment-924578571.


cross build --target x86_64-pc-windows-gnu missing synchronization library

Checklist

[X] I've looked through the issues and pull requests for similar reports

Describe your issue
I am unable to cross compile for windows on the 1.78.0 nightly due to the following error (it also occurs on new new cargo init project).
➜ cross-test git:(master) ✗ cross build --target x86_64-pc-windows-gnu --release    Compiling cross-test v0.1.0 (/project) error: linking withx86_64-w64-mingw32-gcc` failed: exit status: 1
|
= note: LC_ALL="C" PATH="/rust/lib/rustlib/x86_64-unknown-linux-gnu/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/rust/bin" VSLANG="1033" "x86_64-w64-mingw32-gcc" "-fno-use-linker-plugin" "-Wl,--dynamicbase" "-Wl,--disable-auto-image-base" "-m64" "-Wl,--high-entropy-va" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/rsbegin.o" "/tmp/rustcjyWv8U/symbols.o" "/target/x86_64-pc-windows-gnu/release/deps/cross_test-451dd26ad7f599f1.cross_test.a1c4cb6c121cfa17-cgu.0.rcgu.o" "/target/x86_64-pc-windows-gnu/release/deps/cross_test-451dd26ad7f599f1.46gbdv0597lf24is.rcgu.o" "-L" "/target/x86_64-pc-windows-gnu/release/deps" "-L" "/target/release/deps" "-L" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib" "-Wl,-Bstatic" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libstd-53284af569e5f6ed.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libpanic_unwind-1886f36c6527e50c.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libobject-78ff9a17aa8e2177.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libmemchr-f41420a0b26cc037.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libaddr2line-8c4034e188fcccc2.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libgimli-e63890247676e919.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/librustc_demangle-77e65611771dd860.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libstd_detect-6b3d6f307421a89a.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libhashbrown-03166ff941b0d917.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/librustc_std_workspace_alloc-0cf300b3796ae454.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libminiz_oxide-52f9046473ace87d.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libadler-9db720405742c618.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libunwind-1bdaeecf79a3def1.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libcfg_if-9df93765f1cbf124.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/liblibc-bca6b94a9de46761.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/liballoc-7724ac2fef16edeb.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/librustc_std_workspace_core-430c8ff8148a7795.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libcore-0a5a55778bdea4e0.rlib" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/libcompiler_builtins-9cd876ce3c045fc3.rlib" "-Wl,-Bdynamic" "-lkernel32" "-ladvapi32" "-lkernel32" "-lntdll" "-luserenv" "-lws2_32" "-lsynchronization" "-lkernel32" "-lws2_32" "-lkernel32" "-lntdll" "-lkernel32" "-lgcc_eh" "-l:libpthread.a" "-lmsvcrt" "-lmingwex" "-lmingw32" "-lgcc" "-lmsvcrt" "-luser32" "-lkernel32" "-Wl,--nxcompat" "-L" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib" "-o" "/target/x86_64-pc-windows-gnu/release/deps/cross_test-451dd26ad7f599f1.exe" "-Wl,--gc-sections" "-no-pie" "-Wl,-O1" "-nodefaultlibs" "/rust/lib/rustlib/x86_64-pc-windows-gnu/lib/rsend.o"
= note: /usr/bin/x86_64-w64-mingw32-ld: cannot find -lsynchronization
collect2: error: ld returned 1 exit status
error: could not compile cross-test (bin "cross-test") due to 1 previous error
`
https://github.com/cross-rs/cross/issues/1445 is close but that is specific to a python lib where as I believe the synchronization library should be in the standard mingw install?
What target(s) are you cross-compiling for?
No response
Which operating system is the host (e.g computer cross is on) running?

[ ] macOS
[ ] Windows
[X] Linux / BSD
[ ] other OS (specify in description)

What architecture is the host?

[X] x86_64 / AMD64
[ ] arm32
[ ] arm64 (including Mac M1)

What container engine is cross using?

[X] docker
[ ] podman
[ ] other container engine (specify in description)

cross version
cross 0.2.5
Example
mkdir cross-test
cd cross-test
cargo init
cross build --target x86_64-pc-windows-gnu --release

Additional information / notes
I tested this on an ubuntu 22 host, in an ubuntu 22 container and in an ubuntu 24 container. I have made sure my mingw package is up to date.

I did some testing and everything works on nightly-2024-02-26-x86_64-unknown-linux-gnu but is broken on any nightly version after that.

can you try this with cross from the main branch instead?
cargo install cross --git https://github.com/cross-rs/cross

That appears to have fixed it on the latest nightly. Is there an ETA on when the next release will be so I can switch our pipelines back to a tagged release?

Let me know if I should make this a new issue but while that fix did work on my local tests with an empty repo when applying it to our CI/CD pipelines it fails with the following error (pinning to the 2024-02-26 nightly does work though with no other changes).
$ cross build --target x86_64-pc-windows-gnu  --features vendored-openssl --release
[cross] warning: got volume of "/usr/local/share/ca-certificates/ca.crt:/usr/local/share/ca-certificates/ca.crt" which is not a valid environment variable name. the proper syntax is `volumes = ["ENVVAR=/path/to/directory"]`

that warning is explaining itself, you have a malformatted entry in the config


maturin: 0.8.3 -> 0.9.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/maturin/versions.
meta.description for maturin is: "Build and publish crates with pyo3 bindings as python packages"
meta.homepage for maturin is: "https://github.com/PyO3/maturin"
meta.changelog for maturin is: ""
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

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

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

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

found 0.9.0 with grep in /nix/store/wzm1cf129dcydf75vr872j4scfcj0grj-maturin-0.9.0

directory tree listing: https://gist.github.com/9802f5339ed6916dcf4f8d36d217ba92

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

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

111 total rebuild path(s)

34 package rebuild(s)

28 x86_64-linux rebuild(s)
22 i686-linux rebuild(s)
27 x86_64-darwin rebuild(s)
34 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
maturin
python37Packages.johnnycanencrypt
python37Packages.qiskit
python37Packages.qiskit-aer
python37Packages.qiskit-aqua
python37Packages.qiskit-ibmq-provider
python37Packages.qiskit-ignis
python37Packages.qiskit-terra
python37Packages.retworkx
python37Packages.tumpa
python38Packages.fastapi
python38Packages.fastdiff
python38Packages.graphene
python38Packages.johnnycanencrypt
python38Packages.qiskit
python38Packages.qiskit-aer
python38Packages.qiskit-aqua
python38Packages.qiskit-ibmq-provider
python38Packages.qiskit-ignis
python38Packages.qiskit-terra
python38Packages.retworkx
python38Packages.snapshottest
python38Packages.starlette
python38Packages.tumpa
python38Packages.wasmer
python39Packages.johnnycanencrypt
python39Packages.qiskit
python39Packages.qiskit-aer
python39Packages.qiskit-aqua
python39Packages.qiskit-ibmq-provider
python39Packages.qiskit-ignis
python39Packages.qiskit-terra
python39Packages.retworkx
python39Packages.tumpa

Instructions to test this update (click to expand)

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

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

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/wzm1cf129dcydf75vr872j4scfcj0grj-maturin-0.9.0
ls -la /nix/store/wzm1cf129dcydf75vr872j4scfcj0grj-maturin-0.9.0/bin

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

21 packages failed to build:

python37Packages.johnnycanencrypt
python37Packages.qiskit
python37Packages.qiskit-aqua
python37Packages.qiskit-ignis
python37Packages.tumpa
python38Packages.fastapi
python38Packages.fastdiff
python38Packages.graphene
python38Packages.johnnycanencrypt
python38Packages.qiskit
python38Packages.qiskit-aer
python38Packages.qiskit-aqua
python38Packages.qiskit-ibmq-provider
python38Packages.qiskit-ignis
python38Packages.qiskit-terra
python38Packages.snapshottest
python38Packages.starlette
python38Packages.tumpa
python38Packages.wasmer
python39Packages.johnnycanencrypt
python39Packages.tumpa

10 packages built:

maturin (pyo3-pack)
python37Packages.adblock
python37Packages.qiskit-aer
python37Packages.qiskit-ibmq-provider
python37Packages.qiskit-terra
python37Packages.retworkx
python38Packages.adblock
python38Packages.retworkx
python39Packages.adblock
python39Packages.retworkx

Maintainer pings
cc @danieldk for testing.

python3Packages.wasmer needed to be updated in lockstep with maturin. Seems all issues are resolved (the python39Packages.starlette build failure is unrelated):
Result of nixpkgs-review pr 110095 run on x86_64-linux 1

1 package marked as broken and skipped:

python39Packages.starlette

2 packages failed to build:

python38Packages.fastapi
python38Packages.starlette

39 packages built:

maturin (pyo3-pack)
python37Packages.adblock
python37Packages.fastapi
python37Packages.fastdiff
python37Packages.graphene
python37Packages.johnnycanencrypt
python37Packages.qiskit
python37Packages.qiskit-aer
python37Packages.qiskit-aqua
python37Packages.qiskit-ibmq-provider
python37Packages.qiskit-ignis
python37Packages.qiskit-terra
python37Packages.retworkx
python37Packages.snapshottest
python37Packages.starlette
python37Packages.tumpa
python37Packages.wasmer
python38Packages.adblock
python38Packages.fastdiff
python38Packages.graphene
python38Packages.johnnycanencrypt
python38Packages.qiskit
python38Packages.qiskit-aer
python38Packages.qiskit-aqua
python38Packages.qiskit-ibmq-provider
python38Packages.qiskit-ignis
python38Packages.qiskit-terra
python38Packages.retworkx
python38Packages.snapshottest
python38Packages.tumpa
python38Packages.wasmer
python39Packages.adblock
python39Packages.fastdiff
python39Packages.graphene
python39Packages.johnnycanencrypt
python39Packages.retworkx
python39Packages.snapshottest
python39Packages.tumpa
python39Packages.wasmer

python3Packages.wasmer needed to be updated in lockstep with maturin. Seems all issues are resolved (the python39Packages.starlette build failure is unrelated):
Result of nixpkgs-review pr 110095 run on x86_64-linux 1

1 package marked as broken and skipped:

python39Packages.starlette

2 packages failed to build:

python38Packages.fastapi
python38Packages.starlette

39 packages built:

maturin (pyo3-pack)
python37Packages.adblock
python37Packages.fastapi
python37Packages.fastdiff
python37Packages.graphene
python37Packages.johnnycanencrypt
python37Packages.qiskit
python37Packages.qiskit-aer
python37Packages.qiskit-aqua
python37Packages.qiskit-ibmq-provider
python37Packages.qiskit-ignis
python37Packages.qiskit-terra
python37Packages.retworkx
python37Packages.snapshottest
python37Packages.starlette
python37Packages.tumpa
python37Packages.wasmer
python38Packages.adblock
python38Packages.fastdiff
python38Packages.graphene
python38Packages.johnnycanencrypt
python38Packages.qiskit
python38Packages.qiskit-aer
python38Packages.qiskit-aqua
python38Packages.qiskit-ibmq-provider
python38Packages.qiskit-ignis
python38Packages.qiskit-terra
python38Packages.retworkx
python38Packages.snapshottest
python38Packages.tumpa
python38Packages.wasmer
python39Packages.adblock
python39Packages.fastdiff
python39Packages.graphene
python39Packages.johnnycanencrypt
python39Packages.retworkx
python39Packages.snapshottest
python39Packages.tumpa
python39Packages.wasmer

This is a semi-automatic executed nixpkgs-review which is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 110095 run on x86_64-linux 1

1 package marked as broken and skipped:

python39Packages.starlette

8 packages failed to build and are new build failures:

python38Packages.fastapi: log was empty
python38Packages.qiskit: log was empty
python38Packages.qiskit-aer: log was empty
python38Packages.qiskit-aqua: log was empty
python38Packages.qiskit-ibmq-provider: log was empty
python38Packages.qiskit-ignis: log was empty
python38Packages.qiskit-terra: log https://termbin.com/f34z
python38Packages.starlette: log https://termbin.com/8f44

30 packages built:

maturin
python37Packages.fastapi
python37Packages.fastdiff
python37Packages.graphene
python37Packages.johnnycanencrypt
python37Packages.qiskit
python37Packages.qiskit-aer
python37Packages.qiskit-aqua
python37Packages.qiskit-ibmq-provider
python37Packages.qiskit-ignis
python37Packages.qiskit-terra
python37Packages.retworkx
python37Packages.snapshottest
python37Packages.starlette
python37Packages.tumpa
python37Packages.wasmer
python38Packages.fastdiff
python38Packages.graphene
python38Packages.johnnycanencrypt
python38Packages.retworkx
python38Packages.snapshottest
python38Packages.tumpa
python38Packages.wasmer
python39Packages.fastdiff
python39Packages.graphene
python39Packages.johnnycanencrypt
python39Packages.retworkx
python39Packages.snapshottest
python39Packages.tumpa
python39Packages.wasmer

This is a semi-automatic executed nixpkgs-review which is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 110095 run on x86_64-linux 1

1 package marked as broken and skipped:

python39Packages.starlette

8 packages failed to build and are new build failures:

python38Packages.fastapi: log was empty
python38Packages.qiskit: log was empty
python38Packages.qiskit-aer: log was empty
python38Packages.qiskit-aqua: log was empty
python38Packages.qiskit-ibmq-provider: log was empty
python38Packages.qiskit-ignis: log was empty
python38Packages.qiskit-terra: log https://termbin.com/f34z
python38Packages.starlette: log https://termbin.com/8f44

30 packages built:

maturin
python37Packages.fastapi
python37Packages.fastdiff
python37Packages.graphene
python37Packages.johnnycanencrypt
python37Packages.qiskit
python37Packages.qiskit-aer
python37Packages.qiskit-aqua
python37Packages.qiskit-ibmq-provider
python37Packages.qiskit-ignis
python37Packages.qiskit-terra
python37Packages.retworkx
python37Packages.snapshottest
python37Packages.starlette
python37Packages.tumpa
python37Packages.wasmer
python38Packages.fastdiff
python38Packages.graphene
python38Packages.johnnycanencrypt
python38Packages.retworkx
python38Packages.snapshottest
python38Packages.tumpa
python38Packages.wasmer
python39Packages.fastdiff
python39Packages.graphene
python39Packages.johnnycanencrypt
python39Packages.retworkx
python39Packages.snapshottest
python39Packages.tumpa
python39Packages.wasmer

This is a semi-automatic executed nixpkgs-review which is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 110095 run on x86_64-darwin 1

18 packages marked as broken and skipped:

python37Packages.fastapi
python37Packages.fastdiff
python37Packages.graphene
python37Packages.snapshottest
python37Packages.starlette
python37Packages.tumpa
python38Packages.fastapi
python38Packages.fastdiff
python38Packages.graphene
python38Packages.snapshottest
python38Packages.starlette
python38Packages.tumpa
python39Packages.fastapi
python39Packages.fastdiff
python39Packages.graphene
python39Packages.snapshottest
python39Packages.starlette
python39Packages.tumpa

10 packages failed to build and are new build failures:

python37Packages.qiskit: log was empty
python37Packages.qiskit-aer: log was empty
python37Packages.qiskit-aqua: log was empty
python37Packages.qiskit-ignis: log was empty
python38Packages.qiskit: log was empty
python38Packages.qiskit-aer: log was empty
python38Packages.qiskit-aqua: log was empty
python38Packages.qiskit-ibmq-provider: log was empty
python38Packages.qiskit-ignis: log was empty
python38Packages.qiskit-terra: log https://termbin.com/reuq

9 packages built:

maturin
python37Packages.johnnycanencrypt
python37Packages.qiskit-ibmq-provider
python37Packages.qiskit-terra
python37Packages.retworkx
python38Packages.johnnycanencrypt
python38Packages.retworkx
python39Packages.johnnycanencrypt
python39Packages.retworkx

This is a semi-automatic executed nixpkgs-review which is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
If you have any questions or problems please reach out to SuperSandro2000 on IRC.
Result of nixpkgs-review pr 110095 run on x86_64-darwin 1

18 packages marked as broken and skipped:

python37Packages.fastapi
python37Packages.fastdiff
python37Packages.graphene
python37Packages.snapshottest
python37Packages.starlette
python37Packages.tumpa
python38Packages.fastapi
python38Packages.fastdiff
python38Packages.graphene
python38Packages.snapshottest
python38Packages.starlette
python38Packages.tumpa
python39Packages.fastapi
python39Packages.fastdiff
python39Packages.graphene
python39Packages.snapshottest
python39Packages.starlette
python39Packages.tumpa

10 packages failed to build and are new build failures:

python37Packages.qiskit: log was empty
python37Packages.qiskit-aer: log was empty
python37Packages.qiskit-aqua: log was empty
python37Packages.qiskit-ignis: log was empty
python38Packages.qiskit: log was empty
python38Packages.qiskit-aer: log was empty
python38Packages.qiskit-aqua: log was empty
python38Packages.qiskit-ibmq-provider: log was empty
python38Packages.qiskit-ignis: log was empty
python38Packages.qiskit-terra: log https://termbin.com/reuq

9 packages built:

maturin
python37Packages.johnnycanencrypt
python37Packages.qiskit-ibmq-provider
python37Packages.qiskit-terra
python37Packages.retworkx
python38Packages.johnnycanencrypt
python38Packages.retworkx
python39Packages.johnnycanencrypt
python39Packages.retworkx


JsDayEs 2017

As you would already probably now I was candidate for the JsDayEs 2017... Ok, now it's oficial: I will talk about NodeOS at one of the biggest Javascript events here at Spain :-D And crazy of me, I will do it in english, so it will be the perfect time to sumarize and finally have some documentation of NodeOS internal in english :-)
Now it's time to clean-up a bit and pulish the project due this ocasion so we can be able to atract more collaborators, so I have two questions for you:

what do you think it's needed to do in the current NodeOS status to move it forward? From my mind, the only final tips for the final 1.0 release are the git client, fix nsh to allow interactive sessions, and probably update the website.
what do you want I talk about explicitly at the conference? :-) My initial intention is to talk about the story and architecture of NodeOS and what problems had surfaced during its development.

Anything else? :-)

That is great! Maybe this could lead into bigger things!
For me as a newcomer, the docs are not very easy to navigate. It would help greatly if there was more information on what NodeOS can do, and well, what the purpose of it is.
On a side note: I would gladly help with the new docs (for english), as soon as i am done with my current task(limited in time these days).
Maybe looking through some of the closed issues will spark some ideas?
You could definitely make some jokes around the #311


SwaggerUI not loading endpoints

swashbuckle version: 5.0.4
Getting "SwaggerUi is not defined" and other errors when i try to load the page. What is it that I am missing, I was getting the same error with 4.0 that's why I upgraded the version hoping it will take care of the javascript error.
Here is a screenshot:

Note: Calling docs/v1 i was able to get the valid json back.
Any guidance will be appreciated.

Are you using a custom "index.html"? If so, some of the JS dependencies changed in one of the swagger-hi upgrades. So, you should sync up with the latest embedded version

No, I am using everything out of the box, using the nuget package, didnt touch the swaggerConfig.cs at all.  Type in that url and then javascript error.  Is there any troubleshooting tips you can provide to figure out what is the issue?

Here is some more observations.  Looks like I am only having issues on this one machine.  Some machines take a long time for the page to come up, other rather quickly.
So my questions:

Why doesnt it work on some machines?  Any tip how to troubleshoot?
Why is it taking so long for some machines for the page to come up?  How to resolve?

Thanks!

Have you tried upgrading to the latest version of Swashbuckle - i.e. 5.3.1?

closing due to inactivity


setNotifications(true) on missing 2902 descriptor

Hello h2zero!
I worked on the ESP32-BLEKeyboard library  some time ago and modified it to work with both the classic BLE stack and NimBLE-Arduino stack (to reduce the resource load).
In doing so I removed some 2902 based code as NimBLE-Arduino no longer provides this and handles it internally.
This has caused the behavior that when restarting the ESP, the BLE connection is restored automatically, but the keyboard no longer works - see issue T-vK/ESP32-BLE-Keyboard#115
I was able to fix this for the non-NimBLE version by reimplementing parts of the old code:
void BleKeyboard::onConnect(BLEServer* pServer) {
  this->connected = true;

#if !defined(USE_NIMBLE)

  BLE2902* desc = (BLE2902*)this->inputKeyboard->getDescriptorByUUID(BLEUUID((uint16_t)0x2902));
  desc->setNotifications(true);
  desc = (BLE2902*)this->inputMediaKeys->getDescriptorByUUID(BLEUUID((uint16_t)0x2902));
  desc->setNotifications(true);

#else

// how to fix this in NimBLE?

#endif // USE_NIMBLE

}

void BleKeyboard::onDisconnect(BLEServer* pServer) {
  this->connected = false;

#if !defined(USE_NIMBLE)
  BLE2902* desc = (BLE2902*)this->inputKeyboard->getDescriptorByUUID(BLEUUID((uint16_t)0x2902));
  desc->setNotifications(false);
  desc = (BLE2902*)this->inputMediaKeys->getDescriptorByUUID(BLEUUID((uint16_t)0x2902));
  desc->setNotifications(false);
  advertising->start();

#else

// how to fix this in NimBLE?

#endif // !USE_NIMBLE
}

My question is how can I fix this behavior in the NimBLE-Arduino version since the 2902 descriptor is not available in the NimBLE-Arduino API.

The easiest way is to enable bonding and bond with the client on connection. If done, this process will be automatic.

My knowledge of BLE is very limited.
These lines are from BleKeyboard::begin()
  ...
  BLESecurity* pSecurity = new BLESecurity();
  pSecurity->setAuthenticationMode(ESP_LE_AUTH_BOND);
  ...

With this the bonding should be enabled already?

It should be enabled with that, however you need to specify that you require security from the client.
Have a look at this example https://github.com/h2zero/NimBLE-Arduino/blob/master/examples/NimBLE_Secure_Server/NimBLE_Secure_Server.ino

What I previously forked for NimBLE, would you like to help?
https://github.com/wakwak-koba/ESP32-NimBLE-Keyboard

Thanks for the tips and sorry for the delay in replying.
 BLEDevice::setSecurityAuth(true, true, true); solved the problem in NimBLE-Mode.
May I ask what the difficult way would be?

The problem itself is solved (thank you very much).
If you still like and have the time - the complicated way would still interest me.

If you still like and have the time - the complicated way would still interest me.

Sorry, been busy. The more complicated way is actually just to have the client re-subscribed every time it connects. There is one alternative and that would be to use the low level NimBLE calls that will broadcast a notification regardless if a client is subscribed.

Thanks for the explanation.
Unfortunately this is beyond my BLE programming skills.
The easy way has helped :)

Hi h2zero,
I have a bit a problem get things done with 2902 based stuff. I tried self several things - researched a little - had a look to this keyboard stuff of sivar2311. But I didn't get it. I'm a real newbie in the area of BLE.
I searched also for examples in the NewBLE-library but nothing to find.
Can you help me?
Here my code in to convert to NimBLED from the original BLE Library:
    NimBLECharacteristic* pCharacteristicTEMP = pBmeService->createCharacteristic(TEMP_UUID, NIMBLE_PROPERTY::NOTIFY);

    BLEDescriptor* pBLEDescriptorTEMP = pCharacteristicTEMP->createDescriptor(BLEUUID((uint16_t)0x2902));
    pBLEDescriptorTEMP->setValue("BME temperature Celsius");
    pCharacteristicTEMP->addDescriptor(pBLEDescriptorTEMP);

These last 3 lines: how I have to implement this in the NimBLE-way?
Jop

In this library the 2902 is automatic when the characteristic has the notification property. You need to delete those 3 lines.

Sorry guys, but I can't get it to work either despite following the steps above.
I still have the problem that the keyboard only works again after pairing again on Win10 computers.
On a Pi4 with Bullseye64 the keyboard works after every reconnection.

I would be very grateful for a helpful tip
BR SM124


Issue on docs

Path: /contributing/backend/api/pipelines
Missing documentation (WIP) for programmatic pipeline creation (POST) and updates (PUT)

Hi @joezein , we're working on this doc now.

Hi Joe! Thanks for bringing this to light.
This work is in progress here.

V1 docs for pipelines just went live!


BibFormat: prettify the bookmark element icons

Originally by nkasioum (@kasioumis) on 2013-02-12
The default bookmark icons could be prettified to reflect the modern logos of some of the offered services.

@ludmilamarian @switowski @egabancho this is only used on CDS...

Sure, we can close it. We might have a mega-branch containing this as well, we will see if time permits to clean it.


fix(registry/config): set correct key for engine version in config layer

Signed-off-by: Aldo Lacuku<EMAIL_ADDRESS>Use the engine_version instead of required_engine_version as a key when setting the engine version requirement in the config layer of the OCI artifacts.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: alacuku
Once this PR has been reviewed and has the lgtm label, please assign leogr for approval by writing /assign @leogr in a comment. For more information see the Kubernetes Code Review Process.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: bc80a9b26dc477cd47da69d56e8af551f15d221f

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: alacuku, jasondellaluce
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [jasondellaluce]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Ukrainian translation

This is a complete Ukrainian translation based on the latest source code, it includes translation of the interface and documentation.

Hello,
I need you to peform the following changes:

For each readme.tpl.md in addon\doc[lang], put your self as the Ucranian translator in credits. For Brazilian portuguese, the phrase would be:

* Ivan Shtefuriak - tradução para Ucraniano.

do it also on the readme.tpl.md on the top addon folder, which is the readme in english. The phrase is:

* Ivan Shtefuriak - Ucranian translation


Publish logging instrumentation package that injects X-Ray styled Trace IDs into logs

Description
The AWS X-Ray developer guide talks about Trace ID Injection. Trace ID Injection allows services like CloudWatch Service to link X-Ray segments to X-Ray segment Service Graphs. This is accomplished by injecting the current AWS X-Ray segment Trace ID into the log that is sent to CloudWatch under the AWS-XRAY-TRACE-ID key (the key is not important since the query is done on the Trace ID, but this is just an example). For example, as seen in the docs:
2019-09-10 18:58:30.844 [nio-5000-exec-4]  AWS-XRAY-TRACE-ID: 1-5d77f256-19f12e4eaa02e3f76c78f46a@1ce7df03252d99e1 WARN 1 - Your logging message here

The problem is, that we do not currently have a package that does this. This is unlike ADOT Java, which publishes a package for log4j and other logging libraries as well.
We should distribute a package like this which gives an OpenTelemetry Instrumentor that injects X-Ray formatted Trace IDs from the current OpenTelemetry Python span. Since we want to do X-Ray specific Trace IDs, the package should be hosted in this repo and not OTel Python Contrib.
NOTE: We need to set up publishing to PIP before we can work on this issue.

This would be great to have

I have implemented this manually in our FastAPI application running in ECS Fargate, but it is not incredibly reliable. Sometimes a trace id will get injected into the wrong log. Something out of the box and more robust would be a great feature. If I had time to take a crack at this I would, but sadly I don't have the time.


Add release checklist test: "Racket Tests"

Owned by Matthew Flatt. Command: racket -l tests/racket/test. Might overlap with some existing tests.
@samth Do you know more about the status of this?

After some testing, I ran into the issue described in the first item of #1 - file tests fail in all dockerized installations. Calling this issue blocked on racket/racket#1870.

Is that with 6.11 or with a snapshot? If the former, can you try with a
snapshot? I think this is an ipv6 problem that mflatt fixed.
On Nov 19, 2017 9:28 PM, "Jack Firth"<EMAIL_ADDRESS>wrote:
After some testing, I ran into the issue described in the first item of #1
https://github.com/samth/docker-racket-build/issues/1 - file tests fail
in all dockerized installations. Calling this issue blocked on
racket/racket#1870 https://github.com/racket/racket/issues/1870.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/samth/docker-racket-build/issues/31#issuecomment-345575321,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAO780_g1R7bFBbAz3hKAKV8NlNfLZ6Fks5s4OPZgaJpZM4Qi6SD
.

Yes, this is with the <IP_ADDRESS> snapshot installer. Command was docker-compose run racket-x86-test racket -e '(load (collection-file-path "file.rktl" "tests/racket"))' and the last few lines of output were:
(#<procedure:directory-exists?> #<path:./x/y>) ==> #t
(#<procedure:directory-exists?> #<path:./x/y>) ==> #f
(#<procedure:directory-exists?> #<path:./x/y>) ==> #t
(#<procedure:directory-exists?> #<path:./x/y/z>) ==> #t
(#<procedure:directory-exists?> #<path:/var/tmp/check-make-15111454771511145477044/nonesuch/>) ==> #f
(make-directory* "z")  =e=> "make-directory: cannot make directory\n  path: /var/tmp/check-make-15111454771511145477044/nonesuch/z\n  system error: No such file or directory; errno=2"
(for ((v (in-directory sub))) v)  =e=> (values #<void>) BUT EXPECTED ERROR
(in-directory (#<path:/var/tmp/in-dir-tmp-dir688/sub>)) ==> (#<path:/var/tmp/in-dir-tmp-dir688/sub>)
(#<procedure:exn?> #(struct:exn:fail:filesystem:errno "a" #<continuation-mark-set> (10 . posix))) ==> #t
(exn:fail:filesystem:errno "a" (current-continuation-marks) 10)  =e=> "exn:fail:filesystem:errno: contract violation\n  expected: (cons/c exact-integer? (or/c 'posix 'windows 'gai))\n  given: 10"
(exn:fail:filesystem:errno "a" (current-continuation-marks) (quote (10 posix)))  =e=> "exn:fail:filesystem:errno: contract violation\n  expected: (cons/c exact-integer? (or/c 'posix 'windows 'gai))\n  given: '(10 posix)"
(exn:fail:filesystem:errno "a" (current-continuation-marks) (quote (10)))  =e=> "exn:fail:filesystem:errno: contract violation\n  expected: (cons/c exact-integer? (or/c 'posix 'windows 'gai))\n  given: '(10)"
(exn:fail:filesystem:errno "a" (current-continuation-marks) (quote #(10)))  =e=> "exn:fail:filesystem:errno: contract violation\n  expected: (cons/c exact-integer? (or/c 'posix 'windows 'gai))\n  given: '#(10)"
expected an error

It looks like these tests create directories in /tmp. I think this might require some Docker setup to specify that containers are allowed to make temporary files.

Yes, I'm confident that they do that, so allowing it would be good.
On Nov 19, 2017 9:41 PM, "Jack Firth"<EMAIL_ADDRESS>wrote:

It looks like these tests create directories in /tmp. I think this might
require some Docker setup to specify that containers are allowed to make
temporary files.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/samth/docker-racket-build/issues/31#issuecomment-345576832,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAO78_OSctQJjSD19mpPFksK-6fzq1ivks5s4ObrgaJpZM4Qi6SD
.

Do you know what other filesystem mutations they perform? Wondering if there's other directories that need to be configured.

I don't know. Probably even @mflatt would have to try to see.
On Nov 19, 2017 9:47 PM, "Jack Firth"<EMAIL_ADDRESS>wrote:

Do you know what other filesystem mutations they perform? Wondering if
there's other directories that need to be configured.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/samth/docker-racket-build/issues/31#issuecomment-345577444,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAO780JguXeaE0pXRnU3YS07Qnc653O4ks5s4OhIgaJpZM4Qi6SD
.

".gitignore" files will list some other things, including "foreign-test.so" and some package directories that are constructed by the the pkg tests.


Username/Password Authentication

According to this page there is no way to login with username/password
It's nice to add
The main reason for this request is that usernames are usually shorter than emails and easier to type specially in mobile devices so it will provide a better User Experience.

Added in f53bf2d394cc1c449ae5c3d2328991ba41e83ba5 and will be part of the next release.

Hi is possible to register account via Username and Password only?

@tapmyads It's best to ask general questions on the forum. Yes, you can authenticate users just by email/password. Have a look at the documentation: https://heroiclabs.com/docs/authentication/#email


Question about PCGrad algorithm

Assuming there are three tasks, according to PCGrad algorithm flow, it seems that there is no guarantee that the two gradients will not conflict with each other. Is anyone can explain it?

I have the same confusion. Can you explain it? @tianheyu927


Address high overall complexity of addon/components/sl-grid-table-header.js

https://codeclimate.com/github/softlayer/sl-ember-components/issues/categories/complexity

Closed by https://github.com/softlayer/sl-ember-components/pull/344


Exgoneous features in Automodels

Description
Hello! I am trying to use Automodels to automatically tune the parameters. However, I found the document confusing because I do not know how to specify the exogenous features in Automodels. I tried to specify in config as follows, but I have no idea whether I did it right. I also wonder what will happen if I add exogenous features in the config. Will the model use all the features, or, like tuning other parameters, selectively incorporating some features? I am looking forward to responses and I think a more detailed tutorial on how to combine Automodels and exogenous will be really helpful! Thanks!
config_nhits = {
"input_size": tune.choice([6, 62, 63]),              # Length of input window
"start_padding_enabled": True,
"n_blocks": 5*[1],                                              # Length of input window
"mlp_units": 5 * [[64, 64]],                                  # Length of input window
"n_pool_kernel_size": tune.choice([5*[1], 5*[2], 5*[4],
[8, 4, 2, 1, 1]]),            # MaxPooling Kernel size
"n_freq_downsample": tune.choice([[8, 4, 2, 1, 1],
[1, 1, 1, 1, 1]]),            # Interpolation expressivity ratios
"learning_rate": tune.loguniform(1e-4, 1e-2),                   # Initial Learning rate
"scaler_type": tune.choice([None]),                             # Scaler type
"max_steps": tune.choice([1000]),                               # Max number of training iterations
"batch_size": tune.choice([1, 4, 10]),                          # Number of series in batch
"windows_batch_size": tune.choice([128, 256, 512]),             # Number of windows in batch
"random_seed": tune.randint(1, 20),                             # Random seed
"futr_exog_list":futr_exog_list
}
Link
No response

I tried this using hist_exog_list:
nhits_config = {
       "max_steps": 100,                                                         # Number of SGD steps
       "input_size": 24,                                                         # Size of input window
       "learning_rate": tune.loguniform(1e-5, 1e-1),                             # Initial Learning rate
       "n_pool_kernel_size": tune.choice([[2, 2, 2], [16, 8, 1]]),               # MaxPool's Kernelsize
       "n_freq_downsample": tune.choice([[168, 24, 1], [24, 12, 1], [1, 1, 1]]), # Interpolation expressivity ratios
       "val_check_steps": 50,                                                    # Compute validation every 50 steps
       "random_seed": tune.randint(1, 10),                                       # Random seed
       "hist_exog_list": ['feat_1', 'feat_2', 'feat_3', 'feat_4', 'feat_5', 'feat_6']
    }

    model = AutoNHITS(h=21,
                  config=nhits_config,
                  search_alg=HyperOptSearch(),
                  backend='ray',
                  num_samples=3)

nf = NeuralForecast(models=[model], freq='D')
nf.fit(df=df_train, val_size=21)

where feat_x are the names of the historical exogen features. I keep getting this error:
set(temporal_cols.tolist()) & set(self.hist_exog_list + self.futr_exog_list)
TypeError: can only concatenate tuple (not "list") to tuple

I could get this to work by also passing "futr_exog_list": [] to nhits_config.

That's a bug with the HyperOptSearch, which was fixed in #851 but hasn't made it into a release. If you can install from github it should work.

I got the simular problem when using TFT models, and get error
"set(temporal_cols.tolist()) & set(self.hist_exog_list + self.futr_exog_list)
TypeError: can only concatenate tuple (not "list") to tuple"

and I fixed it by have modify the code in _base_model.py as below:
```
def _get_temporal_exogenous_cols(self, temporal_cols):
self.hist_exog_list = list(self.hist_exog_list) # this is added
self.futr_exog_list = list(self.futr_exog_list) # this is added
return list(
set(temporal_cols.tolist()) & set(self.hist_exog_list + self.futr_exog_list)


Not able to edit textbox within a draggable item: Only in IE

In IE (tried in IE 11),
Not able to type anything in textbox if the textbox is inside draggable item
Try this url in IE 11:
http://marceljuenemann.github.io/angular-drag-and-drop-lists/demo/#/types

this is a duplicate of #127

What gummdy said, I'll have to take a look at #127


software-properties-common package is missing on Ubuntu pre-req

This is missing on minimal installs and is required for manual step 4 to add the repo - https://docs.platform9.com/support/neutron-prerequisites-ubuntu-linuxkvm-overlays-vxlangre-vlans/
Validate if this is needed or if Ansible handles it on it's own without the package. Update support doc to include this.

Added to pull request for support dock, still need to verify ansible.


OSM Entities are not multiselectable.

We need to enable the shift modifier key to be able to select multiple OSM entities. Without this functionality, we can't use the join operation, or edit multiple tags.

Fixed in commit a7d8cb3e9.


Add test for fs.promises.rename() to test for renaming an existing directory

I noticed that a test has been added for promises.rename() to test for renaming an existing file.
I would like to create a test for renaming an existing directory using promises, and add it to the test file

Go for it @bblarney.


KMS vault provider

What this PR does / why we need it: Implements encryption provider based on Vault based KMS as described in proposal: PR:888
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #49817
Special notes for your reviewer:
Release note:encryption provider based on Vault based KMS

@vineet-garg can you rebase oracle:for/upstream/master/vault_provider against upstream to reduce the file changes.

@vineet-garg rebased

@kksriram we are good to merge. vineet-garg/kms-vault-provider is exactly two commits ahead of oracle:for/upstream/master/vault_provider
oracle/https://github.com/oracle/kubernetes/compare/for/upstream/master/vault_provider...vineet-garg:kms-vault-provider

Something seems off with the current PR. If you rebased the target branch with upstream master, then that means all these changes will also show up in the upstream PR. Most of the commits I see in this PR are from upstream k8s itself.

@jhorwit2 both the source branch vineet-garg:kms-vault-provider and the target branch oracle:for/upstream/master/vault_provider are rebased with kubernetes:master
The diff between the branch is also good as seen here
https://github.com/oracle/kubernetes/compare/for/upstream/master/vault_provider...vineet-garg:kms-vault-provider
I don't know why the PR shows all the commit. Note: target branch was rebased AFTER pull request was raised. But overall it is anything more than a git-hub UI issue?

The branch seems to show up extra commits. Closing this pull request and opening a new one


ci: move install of semantic release packages into release workflow

:tada: This PR is included in version 2.0.6 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Parse HTML table

When I have multiple strings, I want to group them by similarity.
For example:
<table>
  <tr> <th> Key </th> <th> Value </th> </tr>
  <tr> <td> Width </td> 2 <td> </tr>
  <tr> <td> Height </td> 3 <td> </tr>
</table>

Leads to:
Key, Value
Width, 2
Height, 3

Such data format will be much more convenient to display, to visualize.

It's an epic story, for now. Will take more than a week.
Making a subissue:

Closing this issue since CSV is not suitable for random HTML, as mentioned here