Use lock instead of queue for LineCache synchronization (speculative)

This replaces the dispatch queue with a lock. The resulting code is perhaps easier to reason about and is slightly faster (though this is unlikely to impact user experience) at the cost of being less idiomatic. I did this mostly as an exercise.
@raphlinus if you prefer this then let's go with it, otherwise let's not.

I'm torn on this; it is indeed less idiomatic, and the performance impact should be unmeasurably small. It's also very likely that a future version of Swift will have actual concurrency primitives and whatever we do should be migrated to that.
That said, I'm considering this approach because I'd like the render method in the textplane branch to be able to lock the line cache for mutable access, so it can store TextPlane objects in it. The easiest thing to do is to explicitly lock and unlock, which then becomes a correctness requirement for the client to respect. Another thing I'm considering is having an object analogous to MutexGuard in Rust, that holds the mutex and unlocks it on deinit. Both of these approaches work better by decoupling the lock from being able to run a block.
Long story short, I'll probably merge this, then do my mutable-access changes on top of it, but I'll wait til then to decide for sure.

@raphlinus there's some good discussion about idiomatic locks/queues in swift at Friday Q&A that might be worth looking at. Agree that this will have to be revisted once swift has a coherent concurrency story, but that looks like it's a ways away yet.

Merging this, as we discussed on IRC. I'll update #97 on top of this.


Added youtube scraper

Added the youtube scrapper please check @nikhil25803
closes issue number #208

@nikhil25803 please review it

kya karna h ser ;( @nikhil25803

Hey @Abhinavcode13 | Any update?

close it 😭

Hey @nikhil25803 can I try it?

Go ahead @Abhinavcode13

K thanks

@nikhil25803 do I need to create a new issue for YouTube scraper?

No @Abhinavcode13, create a PR referencing this issue only.


View source for a package, powered by attestations

What's the problem this feature will solve?
I'd like to be able to "view source" for a package before I download it, taking advantage of the new attestations feature.
Describe the solution you'd like
Right now I can do this but it's a bunch of clicks. I can start here: https://pypi.org/project/llm-mistral/#llm_mistral-0.8-py3-none-any.whl - where I see this:

If I click that link through to Sigstore I get this: https://search.sigstore.dev/?logIndex=149649835

I can then construct this URL on GitHub using that information:
https://github.com/simonw/llm-mistral/tree/f590da389e96cfea6980d340ee524622677dc0c3
And that gives me the ability to browse the exact source code I'll get when I use pip install ... to get that wheel.

... hah, it turns out I requested this exact same feature six years ago!

#5118

I'd like to be able to "view source" for a package before I download it, taking advantage of the new attestations feature.

Seems like you want a shortcut to the upstream repository at the commit where the file was published, not what quite what was requested in #5118 (inspect package contents of what has been published to PyPI).

I can then construct this URL on GitHub using that information:

This was discussed in https://github.com/pypi/warehouse/pull/17072#discussion_r1842267952 and is included as a task in https://github.com/pypi/warehouse/issues/17001, so I think this should probably be considered a duplicate of that issue.

Closing as a duplicate of https://github.com/pypi/warehouse/issues/17001.


Update Metro Saint Louis static feed [SOURCES]

Hello again!
I noticed an issue with the feed for Saint Louis - it looks like the old URL is returning old static data. I went to their website and copied the URL, it looks like these two (nearly identical) links return different data.
From what I can tell from the realtime data, the feed that I added contains all the necessary details.
Please let me know if I can update any ids, or if I missed any steps.
Thanks~

Hi @djmeier-wisc ! Thanks for this great contribution. Could you clarify where in the old feed link it's returning stale static data? When I opened the two calendar.txt files and compared them, they looked the exact same.
As well, the static reference of the realtime feeds for Metro St. Louis should be updated to point to the new URL.

Hi again,
I apologize, these two URLs work the same, I accidentally compared the diff between the wrong version of files on my end.


Pass name to wizard

As a router I should pass my name to the wizard if present.
Wizard assigns a new session key in the format hmpo-wizard={name}
If name is missing, it increments an integer

@JoeChapman @easternbloc @daniel-ac-martin @danielepolencic quick PR


After changing the themes wrong font is loaded?

Can you give me a hint what i am missing ?

Interesting. It seems the terminal doesn't support ANSI characters, I might have to check that on a Windows machine itself. I used to develop this on ConEmu initially where everything worked, but it seems that's not necessarily true everywhere. I'll see what needs to be done here. Can you provide some information on your current setup (terminal/os/..)?

Yeah sure. here is my current setup:
Windows 10 Enterprise
Version 1909
Windows Terminal
Version: 1.2.2381.0
PowerShell 7.0.3
I m using Windows Terminal which starts powershell which loads your Module (go-my-posh)

I can reproduce this. But the fix is annoyingly hard. It comes down to ANSI color codes not working out of the box, and I need to enable that from an application POV. Stay tuned.

Alright, keep up the good work!

Found the issue, will push a new version!

@Cruik you will also need Meslo LGM NF to have the icons which are set in the theme.

Almost there, the colors now render correctly but the prompt function is complaining on something.

Getting closer, found why the rendering of the colors was broken but that effectively ruins the characters...

Fix that too, but I don't like the fix for now. I'm going to have a clear look in the morning and push a working build at that time.

New version should be out ASAP. Can you confirm this now works on your machine as well?

getting the same error as you with the promptfunction
88 the handle is invalid

Ah yes. I forgot something obvious. That jssue comes from a dependency where I did a fix, but then obviously I have to fork it and adjust 🤦🏻♂

@Cruik I just published 0.4.1 with the fix, on my machine when removing all other versions and a fresh install, it works.

with the new version it works now on my machine.
The only character which is not displaying correctly is the arrow in the next line or am i missing there a font ?

i also noticed another missing character
the line above is the displayed line with go-my-posh
the line down under is from a terminal with oh-my-posh

Which font is that? I develop everything with MesloLGM NF. I'll update the README accordingly. You can tweak those settings easily by adjusting (or copy pasting the theme JSON, adjusting the icons and setting that file location as the theme. I really need to create that guide next.

i used the wront, blame on me...
i used Cascadia Code PL, with the MesloLGMNF it displays fine!
Thanks for your work and your help!

Thank YOU for trying this out and the donation! 🙏🏻


Sections of the Settings app are disabled after running the script

After running the script, I'm seeing the following message in several places in the Settings app:

Some settings are hidden or managed by your organization

I've tracked a few instances down:
DisableAdvertisingID : Settings > Privacy > General
DisableTailoredExperiences : Settings > Privacy > Diagnostics & feedback
DisableFeedback : Settings > Privacy > Diagnostics & feedback
DisableTelemetry : Settings > Privacy > Diagnostics & feedback
DisableLockScreen : Settings > Personalization > Lock screen
This is on the Spring Creators Update, build 1803
I'm not sure if this is a known thing, but I don't see any warnings or information that this will happen and it's not immediately obvious why I can't change some of my settings when encountering this for the first time.

Duplicate of #49. Also the FAQ mentions GPO being used and says with bold letters If you're not sure what the script does, do not attempt to run it! and you clearly were not sure. :)
But OK, I'll add the information to the FAQ stating that setting things via GPO (as some of the tweaks do to ensure the setting is correctly applied for all users and not overriden by updates) directly result in this message.


Using signals (tracked) in on_cleanup callback causes warnings/errors

Describe the bug
In some cases (I could only reproduce the issue within a resource & transition), when using on_cleanup and trying to access a signal with .get() or calling it as a function, a warning is shown in the console about incorrect usage of the signal.
The solution is to use .get_untracked(), though there are a few issues with it currently:

The warning in the console doesn't point to the right place in the file.
I couldn't replicate this in this repo, but in my real project it was simply pointing to the line that the signal was defined in which led me down a rabbit hole of confusion I only solved days later when trying to reproduce the issue in a new repo.

It would be nice if Leptos could understand that we're in a cleanup context and not show any errors for this.

I'm not sure if this actually causes any errors in the app and the if the warning can be safely ignored or not.
If this is intentional, perhaps the on_cleanup docs should mention that .get_untracked() should be used for signals. However, it can cause a bad developer experience, in cases where you have a helper function which uses tracked methods, and you want to reuse it for  your on_cleanup callback.
Leptos Dependencies
Please copy and paste the Leptos dependencies and features from your Cargo.toml.
For example:
leptos = { version = "0.5.0-alpha2", features = ["csr"] }

To Reproduce
Steps to reproduce the behavior:

Clone https://github.com/tqwewe/leptos-cleanup-issue
Run trunk serve --open
Observe the warning in the browser console after the 1 second delay

Expected behavior
on_cleanup should be okay with using tracked function calls for signals.

I also get this error spammed in my real project when I switch from <For> to .into_iter().map().collect_view(), but I can't reproduce it in the small example I made :/

Fair enough, easy fix.
Re: the second issue— The only way I can see this happening is some kind of nested on_cleanup situation. Looking at the .borrow_mut()s here it's hard for me to picture. If you can reproduce it I'd be very happy to look at it and you can open a separate issue.


Cannot build latest tag 0.5.0

This fixes if we want to release 0.5.1
(FYI the error is also on the other tagged version but the 0.1.0)
diff --git a/Cargo.toml b/Cargo.toml
index 47b2b6f..d9b0d66 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -31,6 +31,7 @@ use-rand = ["rand", "secp256k1/rand"]

 [dependencies]
 secp256k1 = "0.20.0"
+secp256k1-sys = "=0.4.1"
 secp256k1-zkp-sys = { version = "0.5.0", default-features = false, path = "./secp256k1-zkp-sys" }
 rand = { version = "0.6", default-features = false, optional = true }
 serde = { version = "1.0", default-features = false, optional = true }

I think we should just drop our explicit Hash impl rather than pinning secp-sys.

yeah right, sorry, what maybe what is needed is a point release (0.5.1) which is tag 0.5.0 + https://github.com/ElementsProject/rust-secp256k1-zkp/commit/3db533c38ff8fc393719daf329ae9ebb44f019d0
Or a 0.6.0 release with current master
The pinning secp-sys is an hack I am using in a downstream lib

I'm a bit confused what you mean by "a 0.6.0 release with current master" ... AFAICT such a release has been out for a month.
I can backport a fix though for 0.5.1.

Ah, I understand, rust-secp-zkp*-sys* is not at 0.6.0. Oops.

No, it is. @RCasatta are you able to bump to 0.6.0 or would you like me to create a 0.5.1?

Sorry, I wrongly assumed 0.6.0 wasn't released because I didn't see a tag.

Sorry, it looks like I forgot to push the tag (it was there locally, which is why I couldn't figure out the problem).
I've pushed it, things should be good now.

All good! Thanks


”PODU ILOAIEI” is listed in the drop-down menu

Description:
"PODU ILOAIEI" is listed in the drop-down menu alongside its corresponding county and commune, according to the law.
Precondition:
The website is up an running.

Step 1
Type "PODU ILOAIEI" in the search bar.

Expected results
The location is listed in the drop-down menu as "Oraș PODU ILOAIEI, IAȘI".


Safe way to use crossbeam-epoch?

I'm currently writing up a 2D renderer using wgpu and it makes heavy use of Arc and Mutex at the moment, which is fine.
However, just to get a proof of concept working, I had to use transmute to avoid a problem with lifetimes:
    // Self here is a Mutex, which is in practice always locked behind a Arc
    fn draw(&self, render_pass: &mut wgpu::RenderPass) {
        let internal = self.lock();

        if let Some(ref bitmap) = internal.bitmap {
            ShaderManager::sprite().bind(render_pass);

            render_pass.set_bind_group(0, unsafe { std::mem::transmute(bitmap.bind_group()) }, &[]);

            render_pass.draw_indexed(0..9, 0, 0..1);
        }
    }

The issue here is that bitmap (and bitmap.bind_group) is tied to the lifetime of a MutexGaurd and wgpu::RenderPass wants it to live for as long as it does.
Having done some testing it's fine, but there is a possibility of the Arc that contains the Mutex being dropped leading to a use after free.
crossbeam-epoch looks like it'd solve that issue by preventing the need for a transmute by keeping the Mutex/Bitmap from being deallocated until they are done being used. (the thread being unpinned.)
My only issue is that crossbeam-epoch doesn't seem to have a safe API- and on top of that it's very unclear based on the documentation how to properly use it.

use crossbeam::epoch::{Atomic, Guard, Shared};
use std::sync::Arc;

struct Renderer {
    bitmap: Atomic<Bitmap>,
}

impl Renderer {
    fn draw(&self, render_pass: &mut wgpu::RenderPass) {
        let guard = &crossbeam::epoch::pin();
        if let Some(bitmap) = unsafe { self.bitmap.load(Ordering::SeqCst, guard).as_ref() } {
            ShaderManager::sprite().bind(render_pass);

            // Note: wgpu::BindGroup can be accessed safely here because bitmap is protected
            // by the epoch guard. However, you'll need to ensure that the BindGroup itself
            // isn't reallocated during this operation.
            render_pass.set_bind_group(0, bitmap.bind_group(), &[]);

            render_pass.draw_indexed(0..9, 0, 0..1);
        }
    }
}

// Bitmap structure would look like:
struct Bitmap {
    bind_group: Arc<wgpu::BindGroup>,
    // Other fields...
}


Initial Implementation of dateDisabled attribute.

Initia Implementation of dateDisabled attribute.

@lmudhaliyar Please fix the linting issues. You can see more information in the travis logs

@lmudhaliyar using your code works perfectly to disable dates if you change your iteration functions calls from this.dateDisabled[i] to this.dateDisabled[i].date

closing for inactivity but will take in count when merging new datepicker version


Add label selector for secrets

Changes

Needed for https://github.com/knative-sandbox/net-istio/pull/920, as suggested here: https://github.com/knative/pkg/pull/2516#pullrequestreview-968466191
Need to merge this first.

/kind enhancement

/assign AngeloDanducci

/assign @nak3

The ordering should not change but will rename the key.

@dprotaso my bad fixed the typo

there were two typos - in the literal and the identifier
CertifcateUIDLabelKey => CertificateUIDLabelKey

My bad thanks for the patience.

@dprotaso ready thanks for the review.

/lgtm
/approve


Langchain Support

Does VLLM currently support Langchain integration if yes it would be great if that could be added to the documentation

Not sure I see what it would mean for vllm to support langchain. However, vllm is supported in langchain (so, the other way around): here's the implementation

I tried that implementation, but I found it much cleaner to just use OpenAI compliant mode in h2ogPT:
non-langchain: https://github.com/h2oai/h2ogpt/blob/main/src/gen.py#L1906C10-L1946
langchain: https://github.com/h2oai/h2ogpt/blob/main/src/gpt_langchain.py#L672-L756

Not sure I see what it would mean for vllm to support langchain. However, vllm is supported in langchain (the other way around): here's the implementation

Yeah this was exactly what I was looking for thanks

I tried that implementation, but I found it much cleaner to just use OpenAI compliant mode of vLLM in h2oGPT:
non-langchain: https://github.com/h2oai/h2ogpt/blob/main/src/gen.py#L1906C10-L1946 langchain: https://github.com/h2oai/h2ogpt/blob/main/src/gpt_langchain.py#L672-L756

I need that for Llama 2 model will it work with that as well?

Closing as LangChain now supports OpenAI compatible servers.


Spacy 2.3.0/3.x support

Hi,
my company is currently doing some lightweight text processing using spacy, it is a really great library for NLP tasks :-) .
We would like to integrate it as a standalone service in our application, using your dockerized application seems to be the right solution for us.
Do you have a time estimate when spacy 2.3.0 (or spacy 3.x) will be available as a docker image?
Best
Alexander

Hi Alexander,
Thanks for your interest in the project! I have planned a rewrite for quite a while now, but unfortunately, work always gets in the way :(
If things go well, I plan on getting it done this December.
Best,
Johannes

Hi @jgontrum,
Just saw the release of spacy v3.0 would love to see an update here if you can find the time. I appreciate the tool you have built!
Thanks,
Tyler Storm


Modify getCandidateIndex for hybrid scan

What changes were proposed in this pull request?

lazy val allSourceFileInfos: Set[FileInfo]

lazy val because this source file list of an index referred several times when applying Rules.
Set instead of Seq because

comparison of 2 Set[FileInfo] is the only use case of allSourceFileInfos now.
performance issue

isHybridScanCandidate()

get the current file list of the given relation
check if there's any common files with index.allSourceFileInfos

TODO: plan signature comparison #158
TODO: number of common files(or size) threshold #159

Why are the changes needed?

The current signature design is not appropriate for hybrid scan.
For delete support, we need to figure out the list of deleted source files and check the other source files still have the same metadata when index build time or not.
Does this PR introduce any user-facing change?

No
How was this patch tested?

Unit test

@apoorvedave1 @pirz Could you review this PR? Thanks!

Merged to master. @apoorvedave1 / @pirz Feel free to leave any comments if I missed something. Also, please take a look at https://github.com/microsoft/hyperspace/pull/153#discussion_r488208115. I think we need to follow up on it.

Thanks @sezruby! Can you create a follow-up item for https://github.com/microsoft/hyperspace/pull/153#discussion_r488208115 (and put in the necessary documentation) if it does not already exist?


Remove stale line for bixby in rubocop.yml

closing in favor of https://github.com/pulibrary/bibdata/pull/2569


nixpkgs: pin to a specific nixpkgs commit

Contents of ~/.nix-defexpr/default.nix
import (builtins.fetchTarball {
  # Get latest rev from https://github.com/NixOS/nixpkgs-channels/commits/nixos-unstable
  url = "https://github.com/NixOS/nixpkgs-channels/archive/fda46a645c962a7ae01680a0a0e290a6f0b5de1b.tar.gz";
  sha256 = "0zf76q5pcxz7qn9hqh3x783qvjiip6zsq2iph55q4wg9kdyhx3zz";
}) {}

this is done by the commit https://github.com/kalbasit/system/commit/d05c4367d5e932aa0e3e3c16b29c474ad4992a6a#diff-6a21b6995a068148bbb65c8f949b3fb2


Remove self reference imports from schema

Some DM Schemas are using import the python file which the schema is describing. This is incorrect and can cause DM errors.
dns_records.py.schema:
imports:
  - path: dns_records.py

#559


Update README.md

Existing Sample Changes
Description
Fixed many typos and broken links in the Readme.md.
Fixes Issue#
External Dependencies
None
Type of change
Please delete options that are not relevant. Add a 'X' to the one that is applicable.

[ x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Implement fixes for ONSAM Jiras

How Has This Been Tested?
Manually in the git IDE

No change can be made to the master branch, changing target branch to the development branch.

Your branch now needs to be updated to match the development branch (git merge development)

@bjodom Is this different from #1699? I merged that one

Closing this for now since it may be a duplicate for #1699


Flash messages should be displayed longer

Expected behavior
One should have a chance to read the flash message without a problem. We should double the time it displays. The time should be a configuration variable.
Actual behavior
It gets displayed and hides away super fast.

It's doubled... though considering the value is set in the CSS, I would say that making it a config option is more effort than it's worth. You can just change the number in main.css. For future reference, that is (currently) line 364, the animation tag that belongs to .message p. The value that you want to change is <num>s forwards  replacing <num> with the duration in seconds. It is currently 6.


resolution attribute missing in terrain.aspect()

What is the resolution attribute in e.g. terrain.slope() needed for? From what I understood, it refers to the pixel cell size (e.g., 10 meters).
However, resolution is missing in terrain.aspect() and defaults to 1.0. Why is it not possible / necessary to specify this for the  aspect as well, since this is calculated based on the slope?

Indeed this is unclear in the docstring, the resolution argument is optional and only there in case you want to pass an array (and not a DEM/Raster object).
I clarified this behaviour in the documentation in a recent PR not yet released, which also allows to call terrain functions directly from the DEM dem.slope(): https://github.com/GlacioHack/xdem/pull/478 (to avoid needing having the choice of that argument in the first place, it is removed from the new docstring)
I'll also clarify the old docstrings in terrain.py!

And for your point on having resolution in aspect(): This is normal, the orientation of the slope does not depend on the resolution of the grid (except if it is not an equal grid dX=dY, but this is not supported anyway).
Only the steepness of the slope changes with different grid sizes, hence the argument existing in slope().


Please complete the following information:

w10
chrome
fvtt 8.8
swade 19.5

Duplicate #82


Fatal error with singularity build (permission denied)

Hi, I am trying to create a singularity image with
singularity build /my_images/fmriprep-20.2.1.simg docker://nipreps/fmriprep:20.2.1
but I get
INFO:    Starting build...
FATAL:   While performing build: conveyor failed to get: error getting username and password: error reading JSON file "/home/giulia/.docker/config.json": open /home/giulia/.docker/config.json: permission denied

I am using singularity version 3.6.3. Any suggestions? Thank you for your help!

This looks to be a permissions issue. The file /home/giulia/.docker/config.json has the wrong permissions and/or the wrong ownership set. I would check this file to make sure the permissions and ownership are correctly set. If they are not set correctly, then make them correct. A similar question was asked here and an answer was provided.
Also when you are building, make sure the output container path exists on your machine. If the path /my_images does not exist on your machine, the build will fail.

Thank you very much, changing the permissions solved the problem.


[Feature Request] Allow custom ports in UPSTREAM_DNS

Didn't realize till now, but the port number doesn't work, not sure if I should open another issue about this, but from what I can tell the lancache-dns docker doesn't allow custom ports on the Upstream DNS servers.
Originally posted by @Deanosim in https://github.com/lancachenet/lancache-dns/issues/84#issuecomment-510187558

I've had a look at this but it appears that there are some limitations that whilst bind supports nonstandard ports for upstream resolv.conf does not allow a port directive at which point the git pulls would fail even if we found a way to strip the non compliant port :(
@Deanosim Can you provide some context why you were trying to use a nonstandard port?

I believe the intent was to allow the use of a special proxy server (such as one that does encryption). Although I agree it would be useful to hear the original reason for the request.

I actually can't remember why I was trying to do that, I know I no longer use the lancache-dns container and have just added the cache-domains into pi-hole because I was already using that on my network and it was easier to just insert the rules into the existing pi-hole containers.
I probably ran into the same problems trying to get nonstandard ports to work and just went another route. Feel free to close this if you want.

~I actually can't remember why I was trying to do that~, I know I no longer use the lancache-dns container and have just added the cache-domains into pi-hole because I was already using that on my network and it was easier to just insert the rules into the existing pi-hole containers.
I probably ran into the same problems trying to get nonstandard ports to work and just went another route. Feel free to close this if you want.
Update: I worked out what I wanted it for, the cloudflare encrypted dns container I am using uses a nonstandard port for some odd reason and I was having problems modifying the container to use port 53, I'm pretty sure that's part of the reason I just inserted the rules into pi-hole (because it allows for nonstandard upstream ports on upstream dns servers like the cloudflared container I'm using.

Do you have any more detailed steps for doing this? I'm trying to do exactly the same thing (Pi-hole -> Lancache -> Cloudfared) and am hitting the same problem, i.e. the lancache-dns docker container doesn't allow me to set a non-standard port for UPSTREAM_DNS. I guess I could run the Cloudfared container on yet another VM and bind port 53 on the VM to port 5053 in the container, but that just eats resources. I already have Pi-hole and Lancache on separate VMs so a 3rd VM would be rather annoying for something that can surely be done with only 1 or 2.

My issue is that resolv.conf doesn't support custom supports so there is no way to bootstrap the container using the custom_dns specified.
If I've missed something and you can work out how to do it in resolv.conf then we can have a look at it?

I just stopped using lancache-dns and use the scripts from https://github.com/uklans/cache-domains/tree/master/scripts to create the .conf files for dnsmasq and then just put them in the dnsmasq.d folder on the pihole container, problem solved and everything now works. all traffic goes to pi-hole and them any traffic that can be cached goes to lancache-monothic which I just left using the standard upstream dns of <IP_ADDRESS> and all other traffic goes from pi-hole to either being blocked or passed to cloudflared.
It's all be running perfectly for months.

@Deanosim I think thats probably the best option. OOI, did you manage to configure any client devices to talk to the cloudflare dns container without the interim PiHole acting on port 53? I can't find any documentation for the system resolvers in either windows or linux which would allow you to do this

@VibroAxe Umm no I didn't, I assume it'd be possible with docker by setting the port on that docker sets as 5053:53, I don't think I ever tried that with cloudflared that way, cloudflared can be run on port 53 and that's the default option according to the documention so with the docker container it's probably pretty easy to fork it and just change the port in the config file from 5053 to 53.

I just stopped using lancache-dns and use the scripts from https://github.com/uklans/cache-domains/tree/master/scripts to create the .conf files for dnsmasq and then just put them in the dnsmasq.d folder on the pihole container, problem solved and everything now works. all traffic goes to pi-hole and them any traffic that can be cached goes to lancache-monothic which I just left using the standard upstream dns of <IP_ADDRESS> and all other traffic goes from pi-hole to either being blocked or passed to cloudflared.
It's all been running perfectly for months.

Thanks for the tip, I'll give that a go. The only annoying thing I can see about this approach is the need to manually update the CDNs every so often from the cache-domains repo but I guess that can be scripted.

So I think I have the above approach working (LANCache is caching as expected, DNSSEC/ESNI tests all passing, PiHole blocking ads), but I have one remaining issue. Previously, I set DISABLE_WSUS=true in my lancache-dns container because I have a WSUS server already and don't need double caching. Now that I'm not using lancache-dns at all, I need a new way to disable this. My cache-domains config.json looks like this:
{
        "ips": {
                "generic":      "<IP_ADDRESS>"
        },
        "cache_domains": {
                "default":      "generic"
        }
}

I assume I can disable WSUS caching by remove the "default" cache domain and explicitly listing every domain I want to cache in this file (e.g. Steam, Blizzard)...but is there an easier way that allows me to keep the "default" cache domain?

This seems to have gotten really far of topic.
The request seems simple to me: Allow use of DNS servers that are on a port other than 53.
Sounds like a good idea to me. We don't currently support it.

@astrolox as far as I can tell from googling and the above, non standard ports aren't supported by resolv.conf which means the container wouldn't be able to pre seed using the system resolver.
Giving separate env commands for the system resolver and the internal bind resolver feels like this is more likely to cause extreme confusion. Anyone capable of running non standard port DNS is most likely running their own resolver at this point (as deano proved above)
Anyone else got thoughts on this @Lepidopterist @mohero

@VibroAxe Understood.
I also agree that this is probably only a power user feature. Although DNS over HTTPS is becoming a lot more widely discussed/adopted now.
So the conclusion is that we'd have to switch away from using the system resolver to support this request.  Some thoughts ...
We could use the recursive forwarding feature in bind, I've checked and it does support custom ports. However I'm not sure what headaches that would cause, and it would leave us with two different resolution paths - although at that point perhaps we point resolv.conf back on to our bind instance.
We could we mark this as won't fix and/or document that we only support upstream servers on port 53.
We could just leave this open and see if anyone else comments with a +1

Hmm, technically at the point we preseed the config files we don't have bind up and running to replace the resolver. But I guess that could be a resolvable problem.
I reckon we document that we don't support it for the moment but leave this open incase it garners more support to warrant the effort

I would argue that anyone running lancache is already a power user, and this situation will only get more common as DoH continues to become widespread. It's the same story as ipv6: it's the new standard, and will replace the old one (at the end of time apparently) so support should be completed before then. Obviously not a pressing issue but definitely not something that should be wontfix.

I just stopped using lancache-dns and use the scripts from https://github.com/uklans/cache-domains/tree/master/scripts to create the .conf files for dnsmasq and then just put them in the dnsmasq.d folder on the pihole container, problem solved and everything now works. all traffic goes to pi-hole and them any traffic that can be cached goes to lancache-monothic which I just left using the standard upstream dns of <IP_ADDRESS> and all other traffic goes from pi-hole to either being blocked or passed to cloudflared. It's all been running perfectly for months.

Hi @Deanosim I am trying to replicate your setup on a single machine. I was able to set up pihole on a docker container and copy the uklans' cache domains. I had a clarifying question, when you said that "any traffic that can be cached goes to lancache-monolithic" are you setting piholes upstream to be lancahce-monolithic's port 443?
Thanks in advance!

The "wontfix" is kinda insulting ngl and I can only agree with sugoidogo (not pinging on purpose).
LanCache as is, is meant for power users, 100%, otherwise there would be an actual GUI.
The Lack of IPv6, DoH, DoT (ignoring QUIC, DNSCrypt, Anonymized DNS and ODoH) is just sad to see.
What worries me more is the attitude, rather than non-existing features.
I'm the last one to pressure, as long as one's aware of the issues their project has, it's fine, and it's FOSS after all.
But straight up saying "lol no, never gonna happen" is, in my personal opinion, a little foolish...

@WilliDieEnte
Honestly, I take offence to your use of words insulting and foolish. Not only do I not understand that point, I think it's quite unnecessary to use such language. I've certainly never wanted to insult anyone, and I've certainly never said "never gonna happen".
As for talking about attitude, well ... I'd also like to point that that getting my back up and annoying me is not a good way to get my help or convince me to write software for free. In fact comments like this are why a lot of developers stop bothering to share (open source) projects which they're working on.
But hey, it's try to keep it civil.

As explained above this issue relates to a feature which the underlying software does not support.
This is not a simple config change. It's implement new functionality territory.
I don't believe many people want or need it, but I've left this issue open so that those who do can let me know. In the five years this has been open, only seven people have expressed interest. Out of over five million downloads, that's a very small number.
I think the reason for this is that the power users who want this feature are quite capable of figuring it out on their own, so they don't ask us for it.
I marked the issue as wontfix, not because it will never happen, but because we do not plan or intend to fix it. Addressing this would require replacing key software in the stack with something untested and unproven, just to introduce a feature that almost nobody needs or wants. This doesn't seem like a good use of my time.
Additionally, this isn't something I need. If it were, I would create it and share it with you — which is how this whole project got started!.
For clarity, if someone else were to come along and want to take on this work, I wouldn't refuse their help. That would be absurd.
So what should happen next ...
If you want this functionality ...

you could +1 above (like I asked) and wait
you could ask nicely for us to make it for you
you could work it out for yourself
you could start a conversation (either here, or on our discord), and see if other people would help you work it out

If you do make it yourself, please submit a Pull Request.
However, if you just wish to complain be impolite, please go somewhere other than our bug tracker.


passive event handler

Hello,
can you update your lib to prevent the following verbose message in edge browser?
coloris.min.js:6 [Violation]Added non-passive event listener to a scroll-blocking 'touchstart' event. Consider marking event handler as 'passive' to make the page more responsive. See https://www.chromestatus.com/feature/5745543795965952
I'm not deep enough into the topic, but I was able to eliminate the message with the following change:
e.addEventListener(t, l)
becomes:
e.addEventListener(t, l, { passive: true})

I'm unable to reproduce this on the latest version of Microsoft Edge with the latest version of Coloris. What versions were you testing?
In any case, some non-passive touch events are necessary to make the color picker work on mobile devices.

Hello. I got the message at Edge Version 112.0.1722.64

Again, I am unable to reproduce this warning on Edge version 112.0.1722.68 with the latest version of Coloris. Could you describe the steps to reproduce the issue?

Any update on this?

Could you put a link to the page where this warning occurs?

I'm closing this for inactivity.

fwiw, just wanted to post this here.
I also read your comment here and on another issue, saying that scroll blocking is necessary, so not posting to complain but to show the warning does come up in the examples site. 🙌

fwiw, just wanted to post this here. I also read your comment here and on another issue, saying that scroll blocking is necessary, so not posting to complain but to show the warning does come up in the examples site. 🙌

Thank you for reporting this.
This is proving hard to solve as I'm still unable to reproduce this on several machines. Could you provide your operating system and browser version? Also is there a specific set of conditions that trigger this warning or does it always happen for you?

That helps a lot. Thank you so much. I will investigate this further.


fix streaming synapse regression

Bug
Streaming Synapse is broken since https://github.com/opentensor/bittensor/commit/22b77d7c23b1d4f8bd86114777277a9857453464 that got released in 7.2.0
Description of the Change
Exempt Streaming Synapse from being immediately attempted to be converted into JSON response effectively returing the original behavior
Alternate Designs
Reverting the original commit that fixed HTTP error status codes. IMO that would be step backwards therefore I advise against it.
One of the reasons for this regression is that there was not enough test coverage and that commit introduced additional tests, but the Streaming use case was not covered.
Possible Drawbacks
No that I know of.
Verification Process
Added tests for axon serving streaming synapse.
Release Notes

Fixed StreamingSynapse regression introduced in bittensor 7.2.0

@mjurbanski-reef thank you for this. We'll get streaming added to our internal test setup as well.

Looks good overall. Just let me do a little more testing. Can you update the branch with the base please?

Implementation note:
This implementation does not set headers from Synapse value on the streaming response.
After this was noticed, I was asked not to implement it. IMO it probably would be better to do so for backwards compatibility at very least, but in terms of usefullness it was deemed non-critical and returning Synapse tends to have more adverse effects (i.e. can be often used for cheating) than positive ones.
Discord thread: https://discord.com/channels/1120750674595024897/1120799375703162950/1265413339391983748

Fixed streaming response headers not being set as they were in the pre 7.2 ; covered that change in unit tests.


Tradfri rgb scenes

Home Assistant release with the issue:

Last working Home Assistant release (if known):
N/A
Operating environment (Hass.io/Docker/Windows/etc.):

Hass.io
Component/platform:

Tradfri rgb lights
Description of problem:
When configuring scenes with tradfri rgb lights, if a transition is added, the lights will only change their colours, but not their brightness, launching the scene again will set the lights to the configured brightness. When using the developer tool States, the light does change its brightness and colour with a transition
Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):

Traceback (if applicable):

Additional information:

I've faced the same issue with deCONZ gateway, so the problem definitely not in tradfri gateway

Can you confirm it works with the service tool as suggested by @Sviests ?

I've made some more testing: service tool doesn't work either:
if I call light.turn_on with change of brightness and color with transition it changes only color.
Transition of brightness only works fine, as well as changing color and brightness without transition.
But the problem isn't in bulbs, i've tried to make the same transition (color and brightness) directly from the bridge (deCONZ) and it works!
So I'll use it as workaround, setup transitions at the bridge as scenes and expose them to home assistant.

Also there is another anoying behaviour with light service and tradfri bulbs:
When you turning on the light setting new brightness and color without transition, it turns on with previous settings of the color and brighntess, and after a split of second changes it to a new ones.
if I do the same thing from the brigde the light use new settings right afger turning on.

@d-litvinov if you can get to the bottom of how it needs to work I'd be happy to fix the issue. I don't have any bulbs myself unfortunately

It seems it is a limitation with the call for brightness and color in one shot.  Have you tried this workaround:
Setting Color and Brightness of Tradfri Bulbs

The issue is stil present in the latest version of Home Assistant.


Small problems in running the testing framework

(Continues from https://github.com/snabbdom/snabbdom/pull/273#issuecomment-299168776 with @staltz)
In short: I ran the tests in making a PR and encountered some small problems:

The tests aren't performed on all browsers present on my machine
Every failing test has a double output (maybe every test is performed two times?)
The failing tests are difficult to identify due to compiled line number (example: browserified.js:3985:5)
Most importantly, the code is not automatically recompiled and browserified before every test run in watch mode! apparently only the bundle is watched.

I'd like to volunteer in smoothing out these, to make future contributions even easier, if the
@snabbdom maintainers agree.
In addition I propose to leverage a free CI server to further automate and check PRs, which could lead to faster merging cycle 😉

Snabbdom now uses Karma to run the tests and we have CI thanks to the work done by @jvanbruegge.
I think that fixes most of the issues mentioned here.


MINOR: clean up some replication code

Centralize leader and ISR changes in generateLeaderAndIsrUpdates.
Consolidate handleNodeDeactivated and handleNodeActivated into this
function.
Rename BrokersToIsrs#noLeaderIterator to BrokersToIsrs#partitionsWithNoLeader.
Create BrokersToIsrs#partitionsLedByBroker, BrokersToIsrs#partitionsWithBrokerInIsr
In ReplicationControlManagerTest, createTestTopic should be a member
function of ReplicationControlTestContext.  It should invoke
ReplicationControlTestContext#replay so that records are applied to all
parts of the test context.

@junrao : BTW, when do you think we should change away from a working leader to the preferred leader?
I guess when auto leader balancing is enabled and we're doing a periodic check is one such time (we haven't implemented this yet, but will soon).
Another time is when we manually trigger an election via an electLeaders RPC (we already implement this one).
Hmm... I wonder if there are any other scenarios.


Clarify IMFMediaBuffer::Lock() and add alternative

Clarify the behavior of IMFMediaBuffer::Lock() regarding memory allocations, and points the reader to better alternatives when the buffer is a 2D buffer supporting either of the IMF2DBuffer and IMF2DBuffer2 interfaces, in order to reduce the chances of the implementation having to internally allocate some memory.

@djee-ms : Thanks for your contribution! The author(s) have been notified to review your proposed change.

See original discussion on Twitter : https://twitter.com/BruceDawson0xB/status/1250561002019549184

Hello. Thanks for the helpful feedback on the documentation. I consulted the developer about this issue and he proposed slightly different language than what you provided. The text has been updated to the following.:
"This method may internally allocate some memory, so if the buffer supports the IMF2DBuffer interface, you should use the IMF2DBuffer::Lock2D method to lock the buffer instead. For 2-D buffers, the Lock2DSize method can be more efficient than the Lock method, depending on the MF2DBuffer_LockFlags value you specify. Calling Lock2DSize with MF2DBuffer_LockFlags_Read won’t incur a copy back when the buffer is unlocked and calling it with MF2DBuffer_LockFlags_Write won’t incur a copy from the internal buffer. Calling Lock2DSize with LockFlags_ReadWrite behaves the same as Lock and Lock2D and will incur a both copy from and copy back when unlocked. The general guidance for best performance is to avoid using IMFMediaBuffer and IMF2DBuffer whenever possible and instead use IMF2DBuffer2 with the minimum required lock flags. Note that if the buffer is locked using Lock2D, the Lock method might return MF_E_INVALIDREQUEST."


Is it a specification that completed jobs cannot be acquired by "listAsyncjobs"?

ISSUE TYPE

Other

COMPONENT NAME

API（listAsyncjobs）

CLOUDSTACK VERSION

CloudStack <IP_ADDRESS>

SUMMARY

I have a question about “listAsyncjobs”.

Is it a CloudStack specification that completed jobs cannot be acquired with the listAsyncjobs command?
　・If startdate is specified, is “listAsyncjobs” returning asynchronous jobs remaining after the specified time?
　・Is it correct to have “removed is NULL” in the SQL condition?

SELECT async_job_view.id, async_job_view.uuid, async_job_view.account_id, async_job_view.account_uuid, async_job_view.account_name,
 async_job_view.account_type, async_job_view.domain_id, async_job_view.domain_uuid, async_job_view.domain_name, async_job_view.domain_path, async_job_view.user_id, async_job_view.
user_uuid, async_job_view.job_cmd, async_job_view.job_status, async_job_view.job_process_status, async_job_view.job_result_code, async_job_view.job_result, async_job_view.created,
 async_job_view.removed, async_job_view.instance_type, async_job_view.instance_id, async_job_view.instance_uuid FROM async_job_view WHERE async_job_view.account_id=2 AND async_job
_view.account_type != 5  AND async_job_view.created >= '2021-03-11 01:00:00'  AND async_job_view.removed IS NULL  ORDER BY async_job_view.id ASC  LIMIT 0, 500

Is there a way to get a completed job?

Yes, we don't return resources/objects that are marked with a removed date in the DB (this is usually for all list APIs). There's no way to get completed jobs with this API, however, you can use queryAsyncJobResult get the result of a completed job if you know the job ID.
Pl use the users mailing list to ask questions: http://cloudstack.apache.org/mailing-lists.html
Thanks.


3 OPTICAL_FLOW_RAD topics in QGC

If I run the aero-optical-flow app I get 3 OPTICAL_FLOW_RAD in QGC. One has no data at all, one runs at a low frequency and one seems good. Not sure how the autopilot handles this...

As this MAVlink message do not have a target system id it is broadcast, so the M100 is aero-optical-flow sending the messages and QGC and PX4 is receiving it, this is the one at a good frequency, the M1 is PX4 broadcasting the the received optical flow data at 1Hz(grep for 'configure_stream("OPTICAL_FLOW_RAD", 1.0f);')
About the duplicated M100, I'm not sure but after changing the component id(e24ab2a28834339debb754c91fb2c701d16afc08) in aero-optical-flow, now it only have topic with M100.


Add Coiled account to notebook startup

When a new user arrives, there default account will be their personal Coiled account. This PR makes sure the notebook is started within the element84-demo-workspace account.
cc @jkeifer @matthewhanson

Noting that I tried the current main branch instructions with my Coiled account (element84-demo-workspace is not the default and thing errored). With the changes here, things worked as expected.


PR for debugging

Please ignore this PR. Its purpose is to serve for debugging #292, while saving the headache of creating an image on my machine.

@coruscating Did you run stestr run with or without specifying a test or a file?

@yaelbh I ran only directly with the github UI, the full Windows tests each time.

test.quantum_volume.test_qv.TestQuantumVolume.test_qv_sigma_decreasing
----------------------------------------------------------------------

Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):

      File "D:\a\qiskit-experiments\qiskit-experiments\test\quantum_volume\test_qv.py", line 109, in test_qv_sigma_decreasing
    result_data1 = expdata1.analysis_results(0)

      File "D:\a\qiskit-experiments\qiskit-experiments\qiskit_experiments\database_service\db_experiment_data.py", line 639, in analysis_results
    f"Analysis result {index} not found. " f"Errors: {self.errors()}"

    qiskit_experiments.database_service.exceptions.DbExperimentEntryNotFound: 'Analysis result 0 not found. Errors: Post processing for job b8726bb3-3edd-44bb-b24c-d57d475675db failed: \nTraceback (most recent call last):\n  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\database_service\\db_experiment_data.py", line 829, in block_for_results\n    fut.result(timeout)\n  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\concurrent\\futures\\_base.py", line 435, in result\n    return self.__get_result()\n  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\concurrent\\futures\\_base.py", line 384, in __get_result\n    raise self._exception\n  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\concurrent\\futures\\thread.py", line 57, in run\n    result = self.fn(*self.args, **self.kwargs)\n  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\database_service\\db_experiment_data.py", line 299, in _wait_for_job\n    job_done_callback(self, **kwargs)\n  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\framework\\base_experiment.py", line 192, in run_analysis\n    analysis.run(experiment_data, **analysis_options)\n  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\framework\\base_analysis.py", line 89, in run\n    results, figures = self._run_analysis(experiment_data, **analysis_options)\n  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\library\\quantum_volume\\qv_analysis.py", line 75, in _run_analysis\n    ax = self._format_plot(hop_result, ax=ax)\n  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\matplotlib.py", line 33, in wrapped\n    pyplot.switch_backend("Agg")\n  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\.tox\\py\\lib\\site-packages\\matplotlib\\pyplot.py", line 233, in switch_backend\n    close("all")\n  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\.tox\\py\\lib\\site-packages\\matplotlib\\pyplot.py", line 924, in close\n    _pylab_helpers.Gcf.destroy_all()\n  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\.tox\\py\\lib\\site-packages\\matplotlib\\_pylab_helpers.py", line 86, in destroy_all\n    manager.destroy()\n  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\.tox\\py\\lib\\site-packages\\matplotlib\\backends\\_backend_tk.py", line 482, in destroy\n    self.window.after_idle(self.window.after, 0, delayed_destroy)\n  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\tkinter\\__init__.py", line 764, in after_idle\n    return self.after(\'idle\', func, *args)\n  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\tkinter\\__init__.py", line 756, in after\n    name = self._register(callit)\n  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\tkinter\\__init__.py", line 1372, in _register\n    self.tk.createcommand(name, f)\nRuntimeError: main thread is not in main loop\n'

Replacing \n by new lines:
qiskit_experiments.database_service.exceptions.DbExperimentEntryNotFound: 'Analysis result 0 not found. Errors: Post processing for job b8726bb3-3edd-44bb-b24c-d57d475675db failed:
Traceback (most recent call last):
  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\database_service\\db_experiment_data.py", line 829, in block_for_results
    fut.result(timeout)
  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\concurrent\\futures\\_base.py", line 435, in result
    return self.__get_result()
  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\concurrent\\futures\\_base.py", line 384, in __get_result
    raise self._exception
  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\concurrent\\futures\\thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\database_service\\db_experiment_data.py", line 299, in _wait_for_job
    job_done_callback(self, **kwargs)
 File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\framework\\base_experiment.py", line 192, in run_analysis
    analysis.run(experiment_data, **analysis_options)
  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\framework\\base_analysis.py", line 89, in run
    results, figures = self._run_analysis(experiment_data, **analysis_options)
  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\library\\quantum_volume\\qv_analysis.py", line 75, in _run_analysis
    ax = self._format_plot(hop_result, ax=ax)
  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\qiskit_experiments\\matplotlib.py", line 33, in wrapped
    pyplot.switch_backend("Agg")
  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\.tox\\py\\lib\\site-packages\\matplotlib\\pyplot.py", line 233, in switch_backend
    close("all")
  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\.tox\\py\\lib\\site-packages\\matplotlib\\pyplot.py", line 924, in close
    _pylab_helpers.Gcf.destroy_all()
  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\.tox\\py\\lib\\site-packages\\matplotlib\\_pylab_helpers.py", line 86, in destroy_all
    manager.destroy()
  File "D:\\a\\qiskit-experiments\\qiskit-experiments\\.tox\\py\\lib\\site-packages\\matplotlib\\backends\\_backend_tk.py", line 482, in destroy
    self.window.after_idle(self.window.after, 0, delayed_destroy)
  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\tkinter\\__init__.py", line 764, in after_idle
    return self.after(\'idle\', func, *args)
  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\tkinter\\__init__.py", line 756, in after
    name = self._register(callit)
  File "C:\\hostedtoolcache\\windows\\Python\\3.7.9\\x64\\lib\\tkinter\\__init__.py", line 1372, in _register
    self.tk.createcommand(name, f)
RuntimeError: main thread is not in main loop

To summarize: GUI backends don't run in child threads. This is why we switch to Agg. But, when switching to Agg, we close the existing windows of the current backend tk, and this is not allowed in child threads either.
Assuming that the above explanation is correct, here are a few questions:

Why is it happening only with stestr run, and not with stestr run -- <test name> ? With or without stestr, we're always in a child thread. So what's special in stestr ?
Can the same scenario happen to users who don't run stestr ? If yes, then we have to have tests that restore this scenario. If no, then we have to reconsider our usage of stestr.
Will it help to just use Agg (matplotlib.use('Agg')) instead of calling switch_backend ?
Will it help to move the requires_matplotlib decorator to before we create the thread child?

An additional question: what causes the difference between Windows and Linux.

(I guess that it's another backend in Linux)

Is switch_backend still experimental? If yes then we should probably switch to use and reimporting pyplot. In addition, switch_backend closes all the windows (this is where our code fails), and it doesn't sound like something that we want.
Can it be that the windows that get closed belong to another test? If yes, then when do we open tk windows, if we switch to agg all the time? Also if yes, then we'd certainly see the failure also with pytest instead of stestr.


"istioctl get all" should not fail if run against a server without all CRDs

Resolves issue https://github.com/istio/istio/issues/6422
If a user is lacking a CRD (for example, if their istioctl is newer than their server, or if one of the deprecated types we support is finally removed) istioctl get all should keep going on getting a failure listing the type.
For the basic types istioctl should list the failures.  For deprecated and new/experimental types get all should suppress the output of failures, as those types are not needed.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: esnible
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:

istioctl/OWNERS [esnible]

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

/lgtm

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: esnible, liamawhite
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:

istioctl/OWNERS [esnible,liamawhite]

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

@esnible: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/e2e-dashboard.sh
0056baf64b6e2ba475bc7d6002bce8c8d53b2c51
link
/test e2e-dashboard

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


fix imputation check bug

Question 4 of the Imputaition Methods and Resources lesson had a bug. Joshua explains the correct solution in the video. Fixed  the test  file and the solution notebook.

Thank you for reporting the bug. This has been fixed with this PR.


Change the time format for seconds from ceil to floor

Short description of changes:
In the Angular Player example, when the time was suppose to hit a new minute and display 01:00 or 02:00 it would display 00:00 for one second before displaying 01:01 or 02:01. By changing the format function it now displays each minute properly and the length is the actual file length.

Coverage increased (+0.1%) to 69.931% when pulling d264d1db12cde4cc0ddf5f64adb89547d31469e7 on galexynye:AudioTimingFix into 926a995139eb34e790e5a0d19c41933842daf98b on katspaugh:master.

thanks!

:)


Add PeerFinder Logic backoff unit test

This checks that the fixed connect logic backs off correctly, to prevent excessive outbound attempts to dead or full peers.

:+1:

Wait, are we moving back to naming files _test.cpp again?  I thought we were moving to .test.cpp?

@rec We talked about this. Because we have headers and shared .cpp files that contain unit test code, and because we want to have the lines in those files count towards totals, the only requirement for unit test files is that they reside in a directory called tests/

Merged as 890bf3cce1352b703be0f10ea4d40a8c7440afed


[spaceship] Explicitly allow to continue 2FA in non-interactive mode

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context
Resolves: https://github.com/fastlane/fastlane/issues/18094
Description
Add an opportunity to explicitly allow running 2FA in non-interactive mode.
Updated documentation https://github.com/fastlane/docs/pull/1019
Testing Steps
run in non-interactive mode
$ export SPACESHIP_ALLOW_NON_INTERACTIVE_2FA='true'
$ bundle exec fastlane spaceauth

I think it is better to have it the other way around: i.e. to have SPACESHIP_ALLOW_ONLY_INTERACTIVE_2FA so that the check is
ENV["SPACESHIP_ALLOW_ONLY_INTERACTIVE_2FA"] == "true" && ENV["FASTLANE_IS_INTERACTIVE"] == "false"

In this way, the exisiting behaviour is preserved so it is not a breaking change anymore.

Agree, apparently there's a lot of people relying on this, so making the change non-breaking in this PR and updating the docs accordingly.

Especial

Could someone please review the @kohtenko PR , Azure CIs are currently blocked by this error

Hi @joshdholtz ! Do you have an ETA for that version? 👼

@juanmalm Sometime this afternoon! There were a few other things I wanted to throw in this version 😇

@joshdholtz how is this different from SPACESHIP_SKIP_2FA_UPGRADE ? we already set SPACESHIP_SKIP_2FA_UPGRADE, do we also need to set these new flags?

@iliao58 You shouldn't need to! This is for some special cases when running fastlane's fastlane spaceauth in a non-interactive mode (like a CI or shelled through another tool).
So you shouldn't need it unless you know you need it 😇 (I think 🤷♂ )


A type to represent a valid HeaderValue and String

A HeaderValue may not always be a valid UTF-8 String, and so there is a to_str(&self) -> Result<&str, ToStrError> method that validates the bytes first. To create a String, one could instead do String::from_utf8(value.as_bytes()), but once you have that String, you'll need to re-validate it to turn it back into a HeaderValue.
It would be useful to have a type that represents being both a valid HeaderValue and a valid String at the same time. This type would have a free as_str() method, since it's already been validated, and conversely a free into_value() method (again, because it's already validated).

Naming is hard, but to keep it simple, it could just be HeaderValueString...

As I work on typed headers, a few types are most useful as strings (such as UserAgent). It'd be useful to allow UserAgent::as_str() for free, while still being to able to encode its inner value as a HeaderValue for free.
Other types, while having more specific semantics, still essentially need just a string underneath (like Authorization, Cookie, Server, Referer, and likely others).

At what point would the UTF-8 check happen?

I'd expect the UTF-8 check to happen when parsing to a typed version, so if it weren't valid UTF-8, the typed version would not parse.
// essentially `struct UserAgent(HeaderValueString)`
let ua = req.headers().typed_get::<UserAgent>();
println!("user-agent: {}", ua.as_str());

Naming is hard, but to keep it simple, it could just be HeaderValueString...

Another possibility would be Utf8HeaderValue or HeaderValueUtf8. Would make it a little easier to guess what it's about IMHO.

Another option would be for you to use the String type from the string crate. It would be a private dependency and would not require adding a new type.
You would do String.

Indeed, for now, I've implemented a HeaderValueString externally, it just requires some unsafe blocks. They could be removed if the type were part of http, but it may not be worth it. I'll continue on externally for now.

SafeHeaderString or HeaderSafeString ?


Battle mechs

About the PR

Draft for mechs specialized in battle, will make pretty later
Todo
Rough summary, might be added too later on (? == Not sure if planned yet)

[ ] MECH TURNING BC I GUESS THATS A THING, IDK IVE NEVER USED A MECH IN SS13 :despair:

[ ] Switch fire mode action

[ ] Ammo counter?

[ ] Reload action?

[ ] Mech guns , LMGS, SMGS etc.

[ ] Mech lasers

[ ] Marauder

[ ] Thrusters
[ ] Smoke grenade
[ ] Punching?

[ ] Mech magazine holder

[ ] Seraph

[ ] Dark gygax?

[ ] Mauler?

[ ] Ear candy ("All systems nominal")

Media

Below is an EXAMPLE of how a weapon may be installed/used within a mech.
the weapon demonstrated is a copy paste of the base SMG prototype for debug purposes, the mech may or may not actually be equipped with an SMG in the future
https://github.com/space-wizards/space-station-14/assets/100388962/ad1c0366-ed5d-44b8-8245-f71fe1e7886c

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl:

add: Added fun!
remove: Removed fun!
tweak: Changed fun!
fix: Fixed fun!

ion rifle dear god

durand t3 research :trollface:

finally, titanfall 2 in spessgame

Looks pretty sick! If you need any help with code support ping me on discord ;)

I was working on combat mechs too, but didn't get the weapons on mechs to work, how'd you do it?

Closing this due to inactivity, just comment if you are still working on it and I will gladly re-open


Need to put common headers into common folder, for selectional deploy/build

We don't want both backend header being deploy simutaneously, and macro guard is not a good idea for header.
include/
     |- cytnx/
          |- cytnx.hpp
          |- ....
     |- backend/
     |- torch_backend/

Selectional deploy can be done in cmake, depending on backend options to include either include/backend/ or include/torch_backend


Replace  446 in ru constants translate

Repair wrong translation 446.humanize in locale :ru
>>  Humanize.configure {|config| config.default_locale = :ru}
=> :ru
>> 446.humanize
=> "шесть"
>>

Thank you for your PR <3

Just released this in humanize 2.4.3.


GO:2000708   myosin filament organization involved in cytokinetic actomyosin contractile ring assembly

Please provide as much information as you can:

GO term ID and Label

GO:2000708
myosin filament organization involved in cytokinetic actomyosin contractile ring assembly

Reason for deprecation

This term has no annotations and  although myosin filaments are part of assembly it seems strange to have a separate process for this (myosin filaments don't seem to be independently organised by assembly, the parent is sufficient)

"Replace by" term (ID and label)
If all annotations can safely be moved to that term

"Consider" term(s) (ID and label)
Suggestions for reannotation

Are there annotations to this term?

How many EXP:

Are there mappings and cross references to this term? (InterPro, Keywords; check QuickGO cross-references section)

Is this term in a subset? (check the AmiGO page for that term)

Any other information

How about if I merge into
GO:0000915 actomyosin contractile ring assembly?
Thanks, Pascale

There seems to be a lot of redundancy in this branch:

Yep I agree about the redundancy. I will suggest removal/ merges when I see them, especially unused. Some are really MF placeholders.  Some are subtly different, but I don't think we need them all.


pub(crate) breaking rustfmt parsing

pub(crate) fn bar(id: usize) -> () {}

is turned into the (invalid) program
pub(crate) fn bar(crate) fn bar(
                  id: usize)
                  -> () {
}

Something I have found working on this so far: the arg_str created at items.rs:1552 is
crate) fn bar(
                  id: usize

even though the result string already has pub(crate), so it seems to me that the bug is in the creation of that argument string (i.e., items.rs:1703).

I suspect the problem is something like:

we want to find comments between arguments
for the first argument, we are looking for comments between ( and id:
in this case there is a ( in pub(crate) which we are not expecting, before the ( in bar(

So the fix is to look for the pub(...) case, and when searching for comments, search only the span starting at the end of pub(...), rather than at the start of the function signature.

@alobb hi, did you get any further with this? Did the above comment make sense?

This is fixed in 0.8.1 (a718376).


Swift 3 version

Migrate pod to swift 3

Do we really want to add Pods in example to the repository?

We agreed here, that the Pods project is not needed and should be added to .gitignore. Also @TFTmilan, could you rename the pull request to something sane. Like Swift 3 version? Thanks!

@kafejo are you ok with current state? Should we merge?

Nope. Still pending changes that @mkj-is pointed out.

@TFTmilan could you please check it?

@TFTmilan Can you please merge? The issues I pointed out are not so critical and just a fine-tuning and we are not using this pod for location management anymore.
(And I see this pull request all the time when I go to the list of pull request where I am mentioned. 💣)


Which Billion-Scale Database is the best for Face Recognition Query?

Suggested Changes
Hello,
I've reviewed the examples provided for the Billion-Scale Fast Vector Similarity Search using the 5 databases you've tested. Could you please clarify which database is recommended based on your findings? Additionally, it would be helpful to have detailed metrics on both speed and accuracy for each database.
From the materials available, including your videos, I've gathered the following performance metrics:

Facebook Faiss: 0.07031798862731934 seconds
Spotify Annoy: 0.0010027885437011719 seconds
Elasticsearch: (data not available)
NMSLIB: 0.0003199577331542969 seconds
Redis: (data not available)

Could you provide a speed and accuracy comparison between these databases? It would greatly assist in making an informed decision.
Thank you!
Additional Info
No response

Closing this cos those are external studies independent from deepface repo.


[Helper] form_open() not insert csrf field

PHP Version
8.2
CodeIgniter4 Version
4.3.7
CodeIgniter4 Installation Method
Composer (using codeigniter4/appstarter)
Which operating systems have you tested for this bug?
Linux
Which server did you use?
cli-server (PHP built-in webserver)
Database
No response
What happened?
See https://forum.codeigniter.com/showthread.php?tid=88247&pid=411790#pid411790
If in app/Config/Filters.php "csrf" have empty array "except" CSRF field not write in HTML.
If "except" filled - all work.
Steps to Reproduce
Set "csrf" => ["except" => []] , insert form_open() in template and see source code. csrf field not installed
Expected Output
Insert token if except empty array
Anything else?
No response

What's wrong with it?
What do you mean by ["except" => []]?

Because it happened by accident. I'm commenting out the values in except and not the whole array.

This may be difficult to imagine, but ['except' => []] or ['except' => ''] means "except all".
Do you think the behavior is not good for security?
form_open() is no problem. It just checks if CSRF filter is applied or not.

Do you think the behavior is not good for security?

Perhaps. I turned off the protection on the whole project like that)
I left home, I'll look at the console in a few days.
In my opinion, it is better to delete empty values except. When it [] or " it should mean "apply filter to all without exceptions"

I certainly don't know why it is behaving that way, but perhaps it has been that way from the beginning.
Maybe it is a dangerous behavior that developers do not expect.
It may be better to fix it as a bug.

Ah, I got why that way. It must be a bug in except.

Great. Just try to understand the phrase "Apply filter X to all routes, but exclude all routes".


Search and Replace seems failing

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.75.1
OS Version: Windows 11

Steps to Reproduce:

I try to search/replace a text, its a control name in reactive form angular component
text is camel case, vs code doesn't doit
i want to replace controls['orderflavours'] with controls['orderFlavours']

/gifPlease

Thanks for reporting this issue! Unfortunately, it's hard for us to understand what issue you're seeing. Please help us out by providing a screen recording showing exactly what isn't working as expected. While we can work with most standard formats, .gif files are preferred as they are displayed inline on GitHub. You may find https://gifcap.dev helpful as a browser-based gif recording tool.
If the issue depends on keyboard input, you can help us by enabling screencast mode for the recording (Developer: Toggle Screencast Mode in the command palette). Lastly, please attach this file via the GitHub web interface as emailed responses will strip files out from the issue.
Happy coding!

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


Add examples

As discussed in #56, in this PR:

Subdir boards/osflow was created, in order to share sources between configurations using the open source tools.

UPduino_v3_ghdl-yosys-nextpnr was moved to boards/osflow/UPduino_v3.
filesets.mk, PnR_Bit.mk, synthesis.mk and tools.mk were created/split from the UPduino_v3 Makefiles.
Subdir boards/osflow/devices/ice40 was created.

rtl/top_templates was renamed to rtl/templates and subdirs processor and system were created.

Existing templates were moved to one of those subdirs and renamed accordingly (both filename and entity name).
The existing UPduino_v3 'top' was split into a BoardTop and a ProcessorTop. The latter, named Small, was added to rtl/templates/processor.

An examples directory was created.

The BoardTop corresponding to the UPduino Small Processor example was added.
A Makefile was added, which allows building any design for any board, as long as the corresponding BoardTop file exists, and the corresponding board support subdir is available in boards/osflow.

A new 'Minimal' ProcessorTop was added to rtl/templates/processor, and the corresponding BoardTop for UPduino_v3 was added to examples.

I'm not sure about how to handle documentation. See the last commit in this PR.

The README from the UPduino_v3_ghdl-yosys-nextpnr subdir was moved to boards/osflow.
The README in rtl/templates was updated.
A README was added to examples.

I moved part of the content from the first README to the other two. I think we want to have the "How To Run" section in examples, because that's the entrypoint (where the users need to execute make in order to get a bitstream). However, the details about the device (the platform-specific IMEM and DMEM used in ICE40 designs) might not belong in the examples. Overall, maybe it's worth having most of this content in the User Guide?

[x] The generics exposed in the Minimal and Small processor templates might be too few. Hiding the generics corresponding to the disabled peripherals is ok, but maybe the CPU extensions and others should always be available.
[ ] The  neorv32_UPduino_v3_SmallProcessor.bit bitstream should be equivalent to the previous demo contributed by @tmeissner. I did not change any feature (on purpose). I'd be glad if someone with an UPduino v3 could try it. Bitstreams are generated in CI (see below).
[ ] I guess that the neorv32_UPduino_v3_MinimalProcessor.bit does not work. As per the discussion in #56, it might be too minimal. Note that I would like it to support one GPIO and 3 PWM by default, so that it can be used for blinky tests on boards with either a single LED or an RGB LED. neorv32_UPduino_v3_MinimalProcessor.bit should also work.
[ ] The docs and READMEs need to be updated, according to all these enhancements.

First of all: great work! :+1:

rtl/top_templates was renamed to rtl/templates and subdirs processor and system were created.

I am still looking through your changes... So maybe this question will resolve. Anyway, where is the actual difference between system and processor?

The existing UPduino_v3 'top' was split into a BoardTop and a ProcessorTop. The latter, named Small, was added to rtl/templates/processor.

I struggle with descriptions like "small configuration" because they are very relative in terms of the actual use case. In contrast, i think the description "minimal configuration" is fine because you know what you'll get :wink:

An examples directory was created.

Maybe we should remove boards and examples as root directories and put everything into a new folder implementation?
examples could be misleading and I think files related to an actual FPGA board setup should be somewhere together 🤔

I'm not sure about how to handle documentation. See the last commit in this PR.

Don' worry too much about that :smile: You already did a great job. :+1:
By the way... Isn't it possible to include "all VHDL files" from rtl/core at once instead of including each single file in boards/osflow/filesets.mk?

I am still looking through your changes... So maybe this question will resolve. Anyway, where is the actual difference between system and processor?

processor is just an instance of neorv32_top plus some routing/type conversion, without any other logic. Conversely, system is neorv32_top plus some other logic, such as the Wishbone to AXI-Lite bridge.

I struggle with descriptions like "small configuration" because they are very relative in terms of the actual use case. In contrast, i think the description "minimal configuration" is fine because you know what you'll get 😉

Agree. First, I named them FancyName and AnotherFancyName. Then, I changed to Minimal and Small, respectively. I also thought about using "Torsten" or "Meissner" instead of "Small", since he created that "setup". As you see, I'm awful at naming things 😭. Can you please decide better names? I believe they can be absolutely personal/made-up names. It is very difficult to describe all the details in a name, apart from "Minimal" and "Full".

Maybe we should remove boards and examples as root directories and put everything into a new folder implementation?
examples could be misleading and I think files related to an actual FPGA board setup should be somewhere together 🤔

I'm not sure about implementation being the best name, but I agree with putting boards and examples in the same subdir, and I cannot think about any better name. Hence, I'll move them into implementation.

By the way... Isn't it possible to include "all VHDL files" from rtl/core at once instead of including each single file in boards/osflow/filesets.mk?

It should. I did not try. I used ghdl -i and ghdl -m for simulation but not for synthesis. So, I tried to not do too many changes/experiments in here. That is an enhancement that we can "easily" try after we've done the most of these changes. At now, I'm concerned with "loading" the bitstreams. The current make BOARD=boardname designame works for generating the bitstream, but then I need to call dfu-util manually. I need to fix that (enhance examples/Makefile).
BTW, I can confirm that the Small example works on the Fomu by connecting gpio_o(0) to one of the RGB drivers. That is, the bootloader works. Now I need to adapt Minimal so that I get the same result. Then, I will update this PR.

processor is just an instance of neorv32_top plus some routing/type conversion, without any other logic. Conversely, system is neorv32_top plus some other logic, such as the Wishbone to AXI-Lite bridge.

Tanks for clearing that. I like that approach 👍

Agree. First, I named them FancyName and AnotherFancyName. Then, I changed to Minimal and Small, respectively. I also thought about using "Torsten" or "Meissner" instead of "Small", since he created that "setup". As you see, I'm awful at naming things 😭. Can you please decide better names? I believe they can be absolutely personal/made-up names. It is very difficult to describe all the details in a name, apart from "Minimal" and "Full".

I feel you. I'm even worse giving things a name... Since we had this talk about "application-specific" setup (https://github.com/stnolting/neorv32/discussions/42#discussioncomment-817246) I thought about creating some exemplary templates (now that would be in rtl/processor for application-specific configurations: a tiny one for low-area, a full-scale one and several configs in between and giving them some made-up names (I had Janeway, Sisco, and Riker 😆 ). But I dropped that.
Anyway, the actual is not really important as long as it does not "imply something". So go for it and just take any. :wink:

I'm not sure about implementation being the best name, but I agree with putting boards and examples in the same subdir, and I cannot think about any better name. Hence, I'll move them into implementation.

How about example_setups or just setups? 🤔

It should. I did not try. I used ghdl -i and ghdl -m for simulation but not for synthesis. So, I tried to not do too many changes/experiments in here. That is an enhancement that we can "easily" try after we've done the most of these changes.

It's not urgent at all. Your are right, let's focus on the important things.

BTW, I can confirm that the Small example works on the Fomu by connecting gpio_o(0) to one of the RGB drivers. That is, the bootloader works. Now I need to adapt Minimal so that I get the same result. Then, I will update this PR.

Good to hear! 🚀
I'm looking forward to this. 👍

I think this might be good to merge now.

Created subdir setups and I moved boards and examples there.
Renamed ProcessorTop Minimal to MinimalBoot, and Small to UP5KDemo.
Exposed the generics and ports in MinimalBoot and  UP5KDemo corresponding to the CPU or to the features/peripherals enabled by default.
It's now possible to either build the bitstream only, or also program the board: make BOARD=boardname TASK=load UP5KDemo. A load target is required in the corresponding setups/boards/osflow/boardname/Makefile. That's not the case with UPduino_v3. @stnolting, @tmeissner, how do you program that board?

I tried this workflow with Fomu (#56) and I can confirm that the following do work:
make BOARD=Fomu MinimalBoot UP5KDemo
make BOARD=Fomu TASK=load MinimalBoot
make BOARD=Fomu TASK=load UP5KDemo
make BOARD=Fomu TASK='clean load' MinimalBoot
make BOARD=Fomu TASK='clean load' UP5KDemo

Note that README's/docs should be updated accordingly. @stnolting, will you take care of that?

I thought about creating some exemplary templates (now that would be in rtl/processor for application-specific configurations: a tiny one for low-area, a full-scale one and several configs in between and giving them some made-up names (I had Janeway, Sisco, and Riker 😆 ). But I dropped that.

I think Janeway, Sisco, and Riker, or any other is perfectly acceptable :wink:

BTW, I can confirm that the Small example works on the Fomu by connecting gpio_o(0) to one of the RGB drivers. That is, the bootloader works. Now I need to adapt Minimal so that I get the same result. Then, I will update this PR.

Good to hear! 🚀
I'm looking forward to this. 👍

Since the Fomu has an external 48MHz clock, I still want to enhance those BoardTop files (#56). However, I think that this PR (related to UPduino_v3 examples only) is ready to merge. That will allow us to work on enhacements separatedly:

Docs.
Adding a load target to UPduino_v3.
Running demo_pwm on Fomu, without a bootloader.

I think this might be good to merge now.
[...]
I tried this workflow with Fomu (#56) and I can confirm that the following do work:

Awesome!! 🚀

Note that README's/docs should be updated accordingly. @stnolting, will you take care of that?

Yes of course.


fix ckpt file name in scheduler_functions

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

fix ckpt name


[GUI] Invalid template name: the text was not translated

The text was not translated into Portuguese.
Steps to reproduce the problem:

Click "Novo Modelo"
Fill in template name with invalid data
Click "Salvar"

Affected Version: 58.2-20190321

Test OK.

Tested on Version: 62.3-20190603


generated method signatures can be misleading for overloaded java methods

The signature for Bridge().get_core().set_roi looks like this (string, int, int1, int2, int3=None)
When it really should look more like (string=None, int, int1, int2, int3), however this wouldn't be allowed by Python. The method still works as expected for both overloads, it is just the signature that can be incorrect.

Any suggestions?

I think this could be resolved with some changes to how we transmit the java overrides for a class. For now I think it's fine to leave it as is, just wanted to put this up for future reference.
Would it be possible to transmit method argument names in addition to argument types?

It is possible, but unless the Jars were built in debug mode, the arg names just come out as arg0, arg1, arg2, etc. The micromanager jars dont appear to be built in debug mode

Closing since there doesnt appear to be anything that can be done about this


[BUG] Documentation links broken

Describe the bug
Any documentation link is broken
To Reproduce
Steps to reproduce the behavior:

Open the configuration
Click on any documentation link
See error

Expected behavior
Documentation should open
Screenshots

Foundry Information

Foundry Version: [e.g. 0.10.290]
Game System: [e.g. DSA5/TDE5]
Simple Calendar Version: [eg 2.1.80]
Simple Calendar Configuration: [none]

Browser (please complete the following information):

Chrome

Additional context
Add any other context about the problem here.

That version of Simple Calendar looks like it is quite old (v1.3.75)
The documentation was moved from GitHub to its own site a while ago.
Due to an update bug when on version 1.3.75 or earlier. Follow these steps to get the latest version:

Uninstall Simple Calendar: In the module management section of FoundryVTT uninstall the module. This is a safe procedure as no data (notes, configuration settings) is deleted when uninstalling.
Reinstall Simple Calendar: In the module management section of FoundryVTT reinstall the module, the new version of Simple Calendar should be 2+.
 Once that has finished all your information will be available, the module will work, and you are ready to use the calendar!

Got it, that fixed the issue.

This link is still wrong

I will check that one out. It should link to this page https://simplecalendar.info/pages/calendar-configuration/index/display-options.html#datetime-formatting
Simple calendar also has themes that you can set to have it match your system better if you wish.


IPv4/single: some minor comments after the MISRA changes

Description

FreeRTOS_DNS.c

Use xReturn and not uxReturn when the variable is signed.
Call memset() to clear the contents of a struct.
I have seen applications crash on such a statement:
-    struct xDNSBuffer xReceiveBuffer = { 0 };
+    struct xDNSBuffer xReceiveBuffer;
+    memset( xReceiveBuffer, 0, sizeof( xReceiveBuffer ) );

because the compile can be mistaken about the alignment.

FreeRTOS_DNS_Networking.c

Check the return value of FreeRTOS_recvfrom() before assigning it to an unsigned variable:
-    pxReceiveBuffer->uxPayloadLength = FreeRTOS_recvfrom( xDNSSocket, ... );
-    pxReceiveBuffer->uxPayloadSize = pxReceiveBuffer->uxPayloadLength;
+    lResult = FreeRTOS_recvfrom( xDNSSocket, ... );
+    if( lResult > 0 )
+    {
+        pxReceiveBuffer->uxPayloadLength = ( size_t ) lResult;
+        pxReceiveBuffer->uxPayloadSize = pxReceiveBuffer->uxPayloadLength;
+    }

The result of FreeRTOS_recvfrom() must be tested because a negative value indicates an error.

FreeRTOS_IP_Utils.c

As I commented here, cast a BaseType_t variable to int when using snprintf():
-( void ) snprintf( pcBuffer, uxLength, "Errno %d", xErrnum );
+( void ) snprintf( pcBuffer, uxLength, "Errno %d", ( int ) xErrnum );

FreeRTOS_IP.h

Let ipFR_TCP_VERSION_NUMBER depend on the other 3 version macros:
-    #define ipFR_TCP_VERSION_NUMBER    "V2.3.999"
     #define ipFR_TCP_VERSION_MAJOR     2
     #define ipFR_TCP_VERSION_MINOR     3
     /* Development builds are always version 999. */
     #define ipFR_TCP_VERSION_BUILD     999
+    #define __VERSION( v1, v2, v3 )    "V" # v1 "." # v2 "." # v3
+    #define _VERSION( v1, v2, v3 )     __VERSION( v1, v2, v3 )
+
+    /* ipFR_TCP_VERSION_NUMBER makes a string like "V2.3.999". */
+    #define ipFR_TCP_VERSION_NUMBER \
+        _VERSION( ipFR_TCP_VERSION_MAJOR, ipFR_TCP_VERSION_MINOR, ipFR_TCP_VERSION_BUILD )

but I think that Aniruddha has a more elegant solution.
I compare today's mainline with the release on 7th of June. Beside a few minor things I think it is all good. Thanks.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

The logic added in DNS_ReadReply is not needed. Removed that part and update the branch.


Broken controls since "Tried to fix ANGLES in GOTO" build

Cannot select anything with the mouse.
Movement doesn't follow camera direction
A and D buttons move the camera down and up respectively instead of left and right.

@GusTheForkliftOperator, yes WASD can't works if camera "roll" value changed. I just lock ROLL camera value now.
Fixed in latest build https://github.com/UnrealKaraulov/newbspguy/releases/tag/NightBuild_2023.12.10_12-13 ?

@UnrealKaraulov Yes, controls work normally now. Axes on new brush entities are fixed too.


Some sites may note have search, and therefore, no search URL. I've a…

…ccounted for that with this commit.

Thanks Tim! I added you as a collaborator. Do you have an account on PyPi? I can add you there, too.

I'm FlipperPA over there as well. Thanks a bunch, Alex! Funny that I was thinking that this would be a neat thing for Wagtail, Google'd, and surprise surprise, you'd already done it!

Awesome! Thanks for contributing. I also added you as an owner on PyPi so feel free to push updates as you please.

Thanks, I've pushed update 1.1.5 (MANIFEST.in needed an update as well, to include README.md).

Awesome! Thanks!


Security Vulnerability in MetaGPT

Hi, I would like to report a security vulnerability. I sent an email to the address specified in the security policy but did not get any answers for a month. Can you please enable GitHub's Private Vulnerability Reporting to send the details to?
/cc @geekan @better629 @garylin2099 @orange-crow

@pwntester Thanks for your reminder. I'm very sorry, I was busy with other things recently and forgot to reply to the email. I have just replied to your email, please check.


packet blaster / pcap replay support repetat

enable blaster / pcap replay to cycle  repeat XXX number of times via command line arg

need independant pcap`s replay port A / port B replay each time

added included in replay gui update


User input not displayed in the cell

Feature: Notebook Editor, Interactive Window, Python Editor cells

Description
I'm wondering if I can see my input in the cells just like Im using the original Jupyter.
When opening Jupyter in a browser the input dialogue is integrated in the cell like this:

but in VSCode it is always in a new dialogue above:

then my input will not be shown in the cell:

unlike in a browser:

I think it would be better if the input box is integrated in the cell itself. Cuz that'll seem much more concise.
Is it that there actually exists some ways to realize the effects I intend to ?
Or could you make it better as I'm hoping it to be?
Microsoft Data Science for VS Code Engineering Team: @rchiodo, @IanMatthewHuff, @DavidKutu, @DonJayamanne, @greazer

Thanks for the feedback @chriszzzzzz. We'll discuss this on our next triage.

Thanks for the feedback! However, we don't have plans on adding this functionality at this time.


Fix HTTP proxy not discovering port 80 containers

For whatever reason, navy was not auto-discovering that my container published port 80 as it should. It was because serviceHasPort80 was only checking for port 80 explicitly, but it was returned as 80/tcp for me. I've extended the check to account for this use case, as well as if someone uses the long format to publish a port in their compose file (80:80). Maybe the return value changed in a newer docker version, but it always appears to append the protocol for me.

docker version 17.06.0-ce, build 02c1d87
docker-compose version 1.14.0, build c7bdf9e
node v7.10.0

This was reproducible using the demo compose file, e.g.
version: "2"
services:
  web:
    image: navycloud/hello-world
    ports:
      - "80"

And I'm happy to write a test for this, but I'm not entirely sure what it should test. Is this string coming straight from Docker?

Hi
Firstly thanks for the contribution!
That string should be coming straight from the output of docker-compose config - version 1.12 of docker-compose expanded the port syntax to automatically append /tcp or /udp. I think this change should cover all the bases.
We need to bump all the default versions in our travis spec as we're still defaulting to test against docker-compose 1.10.

I believe our integration tests will cover this once we've corrected the docker-compose versions.


The power toys run funcion desactivates randomly

Microsoft PowerToys version
0.67.1
Installation method
Microsoft Store
Running as admin
Yes
Area(s) with issue?
PowerToys Run
Steps to reproduce
When I power on my pc and I open the program
✔ Expected Behavior
I expect that the funtcion doesn´t desactivate alone
❌ Actual Behavior
The funcion desactivates alone
Other Software
No

/bugreport


Update fonts and added italic variants using google-webfonts-helper

Added italic fonts and used google webfonts helper to configure fonts
Look at the "mobile first" string in the examples below:
Before:

After:

@astagi I restored the license files

thank you @mfortini


⚠ BCR Bot has degraded performance

In 33e3137, BCR Bot (https://bcr.alternativasinteligentes.com/BCRApi/web/chatbot) experienced degraded performance:

HTTP code: 200
Response time: 1838 ms

Resolved: BCR Bot performance has improved in 517b7b6.


lwsnprintf() fails to write a null terminator to a buffer that is has not printed to

In the process of exploring #9, I have actually discovered another edge case which needs addressing. If the precision is zero, lwsnprintf() does not print a null terminator. I do not believe this is compliant behavior, assuming that the output buffer provided to the function has size greater than zero. The MSFT function does print the null terminator.
Take the example:
printf_run(NULL, "%.*s", 0, "Text string 123")

With the current test code, this passes.
Format: "%.*s"
Params: "i, "Text string 123""
Result VSprintf: ""
Length VSprintf: 0
Result LwPRINTF: ""
Length LwPRINTF: 0
Test result: Pass

However, if the buffers used are initialized to 0xFF rather than to zero as proposed below, lwsnprintf() will fail because of this.
/* Temporary strings array */
char b1[255] = { 0 }, b2[255] = { 0 };
int l1, l2;

memset(b1, 0xFFFFFFFF, sizeof(b1)-1);
memset(b2, 0xFFFFFFFF, sizeof(b2)-1);

Format: "%.3s"
Params: """"
Result VSprintf: ""
Length VSprintf: 0
Result LwPRINTF: ""
Length LwPRINTF: 0
Test result: Fail

https://github.com/MaJerle/lwprintf/commit/64eab376b30cde28cd8c372cc1837b8003679e25
Does it fix it for you too?

That fix seems to work.


feat(cheatcodes): add ability to set seed for vm.randomUint() and other cheatcodes that use randomness

Component
Forge
Describe the feature you would like
I would like to be able to set the seed via cheatcode instead of using rand::thread_rng() generator.
https://github.com/foundry-rs/foundry/blob/0b73b426d3aeb1563eeab4d5f2f8134d1c3902e3/crates/cheatcodes/src/utils.rs#L57-L65
Additional context
No response

Happy to tackle this issue!

Thanks @leovct! Just to align on the scope, I think we want to take the existing seed argument that used by the fuzzer and use the same seed here. So when the seed it set, it applies to both fuzzer and vm.random* cheats. This keeps the UX simpler, as I don't see a reason to separate out the two seeds.
What do you think @grandizzy? Also is there anything we'll need to account for here with the fuzz persistence to make sure seeds are factored in? I think it saves off the concrete values, so I don't think we need to account for anything, but just want to confirm

Also cc'ing @zerosnacks to confirm we want this feature / ensure there isn't a reason we left it out

Thanks @leovct! Just to align on the scope, I think we want to take the existing seed argument that used by the fuzzer and use the same seed here. So when the seed it set, it applies to both fuzzer and vm.random* cheats. This keeps the UX simpler, as I don't see a reason to separate out the two seeds.

Yep, agree, would be nicer to be consistent with the global seed set (if any).

What do you think @grandizzy? Also is there anything we'll need to account for here with the fuzz persistence to make sure seeds are factored in? I think it saves off the concrete values, so I don't think we need to account for anything, but just want to confirm

Correct, the persisted failure contains calldata for failing test, so replay doesn't depend on the seed used.

Also cc'ing @zerosnacks to confirm we want this feature / ensure there isn't a reason we left it out

Agreed, make sense for this to be consistent with the global seed
It is probably best that these functions that use randomness take a seed are new cheatcodes (additive), not replacing the existing cheatcodes

@leovct scratch that, per comment of @mds1, we should modify the existing cheatcodes to simply use the global seed if set, not a new cheatcode.

I've considered this feature in tests. For example, there is a cryptographic library in Rust and I want to port it to Solidity. In this case, it is quite convenient to set the seed via cheat code and you will have the same randomness on different platforms.

I think we could introduce a new forge inline config like default.fuzz.seed?
contract MyTest is Test {

    /// forge-config: default.fuzz.seed = 0xa1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2
    function test_SimpleTest() public {
        x = vm.randomUint()
    }

Nice, I didn't know about that


Bug: Missing colab flag

on some of the stats calls, the colab flag is missing. This makes it difficult to understand how many of the users are actually in colab or just plain docker.

this is most likely an error in https://github.com/ploomber/core but let's keep it here since we're unsure

I ran sk-eval locally after setting a new env variable "COLAB_GPU" to pass this check (from ploomber-core)
def is_colab():
    """Returns: True for Google Colab env"""
    return "COLAB_GPU" in os.environ

It created the following log:
        "metadata": {
            "action": "feature_importances",
            "feature": "plot",
            "args": {
                "top_n": null,
                "feature_names": null,
                "orientation": "horizontal",
                "ax": null
            },
            "colab": true
        },

Is it possible that this flag has not been invoked yet?

It's possible, I've played with the COLAB_GPU flag on the notebook, perhaps this is a better way of checking it:
try:
  import google.colab
  print("In colab")
except:
  print("No colab")

I checkd on colab and the COLAB_GPU flag does not appear. I remember seeing that Colab changed the environments recently so probably the environment variable went away. I think we should go with @idomic's suggestion

please update ploomber-core @yafimvo

added a PR to core
link