Enhancements to @group_by()

There are several enhancements needed to @group_by(), some of which depend on first addressing #8:

[ ] Implementing @ungroup()

[x] The ability to define new columns inside of a @group_by(), such as @group_by(avg_sbp = (sbp1 + sbp2) / 2).

This would be implemented by first parsing the expressions using parse_r() from #8, running transform() to create the new columns, and then running groupby().

[ ] Mimicking the ungrouping behavior of dplyr. In dplyr, the final layer of grouping is automatically removed after each summarize() operation but not after any other operation. I need to better understand how ungrouping works in DataFrames.jl and which operations remove the grouping versus which ones do not. If all operations remove grouping, then we could manually regroup using dplyr rules.

As of 2e3b5cbb93943b98fd98da58fb1721be7d0e7280, @group_by accepts tidy expressions as in the example above.

I need to better understand how ungrouping works in DataFrames.jl and which operations remove the grouping versus which ones do not.

There is an ungroup keyword argument that allows you to choose if you want to ungroup or not in every operation. By default it is true.

Awesome, that's very straightforward. I will incorporate this in the next version.
One note I'll leave here in case someone else decides to work on this issue is that summarize() should remove one "layer" of grouping if grouped by multiple columns, whereas other functions should leave the data grouped as-is.

I'll open a separate issue to add .by in the future. Since this is a relatively new feature, it's not in widespread use just yet. Otherwise, the items in this list are completed.


Re: TODO:  figure out what this magic is in nunchuck.rs

Greetings, you've put a lot of work in over the long weekend!
The "magic" is sort of a magic number you can find defined in the peripherals documentation.  Usually you have to find the chipset documentation to find out what these magic numbers are.  They are typically found en-masse under a "Hardware Register" section in their respective development documentation.
The init sequences themselves vary from chip to chip, often you will have to instruct the kernel to wait for the chipset to reset itself, the documentation will tell you all of this.  I do not know about the nunchuck as I only have worked with a different chipset but I'd guess init sequence 1 is the initial addressing to the wii's operating system setting up the file descriptor and what not, while init sequence 2 prepares the chipset for polling.
Sorry I am unable to help with syntax and semantics but that's the "magic" in a nutshell.  "Hardware Registers" should bring you to the proper wiki page.  If you'd like a chipsets registers implemented let me know it's the least I can do for the smbus FFI you've provided.

Thanks for the info.  I gathered roughly as much from the examples and documentation but didn't feel like digging deeply into the docs as things appeared to be working.
I'm going to move toward releasing a crate now that the API is starting to gel and be usable.  I'm hoping to put together a second example that let's me hit the SMBUS code (I have a little sensor network put together that should do the trick).  Then I will release add some docs and release 0.1.


Port build system to docker and add zig library -> python module for build tools

Alright so I like it, especially the fact you don't need to have erverythign installed anymore, however, some small changes pls:

a more detailed description in the Pipeline section of the README (or alternatively making the other stuff more imprecise too, but rn its inconsistent (same for the way its described btw. ill add guide lines for that somewhat soon, but u now got the choice of how the guidelines will look, so do whatever u want, as long as its consistent))
even if it barely adds to the time, no cleaning and executing in the build script itself, or at least not by default (i know that this is probably done so it always gets the same build time and so the user sees that it worked correctly, however, both of those arent time spent building, so id wanna have em not included. u can make it so theyre done some other way, but for the actual time spend building that will end up somewhere (havent decided where yet), they shouldnt count)

after all of that, i say ull become the first non-me contributer on any of my projects :3

I can change around the readme, thats fine!
Yeah, i did that to get consistent builds but i can remove it and just keep build.sh clean in it's place
This also makes me a contributor on a project that isn't mine :)


Home Page: Design it

Description
The home page is special. It unifies the site and makes it easy for people to quickly find what they are looking for. It won't look like most content or index pages.
Tasks

[ ] Create wire frame using a tool like Figma or Adobe Illustrator (this will be handed to our implementation team later who will actually create the CSS/HTML)
[ ] Share this wire frame here and get approval from the design team

@Asmit2952 - you can share your ideas here too!

Thank you @jaimergp. These are my design iterations for home page. Do let me know your thoughts everyone :)
Mobile View

Desktop View

Color Palette:
#43B02A
#DCF0EF
#F3FFF3
#2DB24A
#1EB59A


Sandbox shows an blank page in firefox

If you try to open the last version of KieSandox in Firefox, an empty page is shown. --> https://sandbox.kie.org/dev/#/

The root cause is an NPE
Uncaught TypeError: env is undefined
    Component IncompatibleBrowser.tsx:52

@tiagobento Code seems correct to me, is probably the root cause related to env = useEnv() still not being initialized at that time? Any hint?

Hi @tiagobento @yesamer , I was interested, if this issue is still reproducible and did some manual tests. Here are my findings.
Issue Still Exists
Once user tries to open sandbox.kie.org in Firefox, there is still the same error in the logs:
Uncaught (in promise) TypeError: env is undefined

It is a very strange, because it is related to code of the function component IncompatibleBrowser.Component:
const { env } = useEnv();

And similar short snippet is used in our codebase many times, for example in the AboutButton and that button works properly once I run sandbox on the Firefox see next section.
Firefox seems compatible
Currently for online-editor we do not list Firefox as compatible browser. However comparing:

online-editor compatibility mechanism
with serverless compatibility mechanism

I decided to try Firefox
So changed online-editor isCompatibleBrowser constant to:
const isCompatibleBrowser = Bowser.getParser(window.navigator.userAgent).satisfies({
  chrome: ">4",
  edge: ">=79",
  firefox: ">=38",
  safari: ">=16",
  mobile: {
    safari: ">=16",
  },
});

Then everything seems to be working:

creating assets
importing assets/folders
integrating sandbox with github account
DMN Runner and Extended Services

Solution
I tend to think we could mark Firefox as compatible for online-editor because after my manual test it seems to me as working. Or is there some reason to keep it incompatible? Maybe there is reason, I came to the project later, so asking, if there is reason, I am fine to keep it uncompatible.
However that still doesn't answer, why the useEnv() snippet causes error. I am not sure how to start "searching solution" for this effectively. General React documentation for custom hooks doesn't touch similar specic situations.

@jomarko Thank you for your brilliant analysis. I did some tests 1 year ago, and I came to the same results and conclusion. After a discussion with @tiagobento, I understood that the GWT layer works "by change", as the GWT layer is not effectively compilated to support Firefox. For that reason, we agreed to not support Firefox until we remove the GWT layer at all.
I'm quite sure nothing changed in the meantime, so I guess that decision is still valid.

About the possible solution, since 6-7 months ago, the following screen appeared when opening KIE Sandbox in Firefox:

I would just restore that panel and put Firefox in the supported browsers list just after we removed the GWT layer

So for later reference, we need to wait until https://github.com/apache/incubator-kie-issues/issues/445 is done. Right?

@jomarko Precisely. Until that moment, the scope of this ticket is to restore the above screen, investigating why  env = useEnv() doesn't work


Let user know their inputs are invalid

Is your feature request related to a problem? Please describe.
Sometimes when entering data you might enter it improperly, which causes the predictor to fail.
Describe the solution you'd like
A notification should be shown to the user if they enter data that the predictor cannot find
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
We can use a simple alert to let the user know that their inputs are incorrect.

This was implemented in #349


pull request for e2e test at 01/19/2017 00:15:15

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


Where does raven0 link gets its parentIndex?

I noticed in our setup the wireguard fails to set up properly sometimes. due to
 error syncing event gw-lambdalabs: fail to ensure wireguar link: error getting default link to: <IP_ADDRESS>, error get vxlan parent with index 0: invalid argument

So the problems is the parent index is 0;
code pointer: https://github.com/openyurtio/raven/blob/3197c5ddcc483f5b448a315076d94498f649ada8/pkg/networkengine/routedriver/vxlan/utils.go#L261-L266
But it seems when creating the vxlan link, the code doesn't actually specify a parentIndex here: https://github.com/openyurtio/raven/blob/3197c5ddcc483f5b448a315076d94498f649ada8/pkg/networkengine/routedriver/vxlan/vxlan.go#L264-L274
When searching the netlink repo, I don't see the parentIndex field set for vxlan links (not sure if it's https://github.com/vishvananda/netlink/blob/77df5d35f725f10c8ca5f5552c95782fd639b46c/link_linux.go#L2098)
Any thoughts? Thanks in advance

Also seems when there isn't such an error ("error get vxlan parent"...), seems the code path is not triggered and ParentIndex is 0 as well.

Also seems when there isn't such an error ("error get vxlan parent"...), seems the code path is not triggered and ParentIndex is 0 as well.

Why your default route is point to a vxlan interface？

ah... I think it's due to our customization, on our edge side, nodes can't talk to each other with their private ip directly; we have to rely on vxlan; that should be why
I think I should just customize it further and do not check parent index of the vxlan? seems it's just never set. Not sure if doing this for raven makes sense through; the other approach is to set parent index during vxlan creation

ah... I think it's due to our customization, on our edge side, nodes can't talk to each other with their private ip directly; we have to rely on vxlan; that should be why
I think I should just customize it further and do not check parent index of the vxlan? seems it's just never set. Not sure if doing this for raven also makes sense through; the other approach is to set parent index during vxlan creation

@suyuee I'm not sure if vxlan(raven0) over vxlan(your own vxlan interface) can be supported in raven or not, but the following check can be remove exactly.
 if vxLink, ok := link.(*netlink.Vxlan); ok {
 	link, err = netlinkutil.LinkByIndex(vxLink.ParentIndex)
 	if err != nil {
 		return nil, fmt.Errorf("error get vxlan parent: %v", err)
 	}
 }

can you open a pr to fix it ?

Thanks for the insights, will open a pr for it. (kinda busy recently, but will do once I get a chance)
Btw, we don't use vxlan over vxlan, but just using raven vxlan fwiw


Implement pylama isort extension.

Implements a Pylama linter extension.
A bit speculative but I've just discovered pylama and it'd be great to get isort support.

Looks great! Thanks for implementing this!
~Timothy


Fix: parameters in dict failed to be set

Background:
The script release_debian_packages.py is used to upload debian packages to bintray.
It accepts parameters:
--bintray-credential
--bintray-subject
--bintray-repo
--bintray-component
--bintray-distribution
--bintray-architecture
--debian-depth

But the 3 parameters bintray-component,  bintray-distribution, bintray-architecture  always use their default value.
Cause:
The 3 parameters are optional. So they are passed in a dictionay and use setattr to initial an instance of Bintray.
The method setattr only take effects on parameters which have setter.
Test:
http://rackhdci.lss.emc.com/job/BuildRelease/job/Release/job/Release
@panpan0000 @changev

:+1:

:+1:


XML output and error handling

The XML output from epubcheck is very constrained. The message elements contain only a plaintext message with the encountered error.
<message>
  OPF-003, WARN, [Item 'iTunesMetadata.plist' exists in the ePub,
  but is not declared in the OPF manifest.], 978XXXXXXXXXX.epub
</message>

Currently, automatic error handling is only possible by string analysis. It would be helpful to have attributes besides the error message which provide

error code
file (e.g. 'iTunesMetadata.plist', '978XXXXXXXXXX.epub')
error type (e.g. 'error', 'warning')
source path (optional)

The XML output could be read as follows:
<message code="OPF-003" type="warning" sourcepath="/package/manifest[1]">
 Item 'iTunesMetadata.plist' exists in the ePub,
  but is not declared in the OPF manifest.
</message>

Removing from the 4.0 milestone as it is not critical, a better XML output can be added in a later release.

Thank you. Currently we have a workaround.

Removing from the 4.0 milestone as it is not critical, a better XML output can be added in a later release.

Sure, it's not a critical issue, but changing a report schema is still a major change. Don't you think we should do this in 4.0 rather than in 4.0.2 or 4.1?
If we can agree on a better report schema and we know about your release schedule, @rdeltour, I can possibly take this issue.

XProcs Error Vocabulary could be an option:
I'm not very happy with this as the only obvious severity is "error", expressed by the tag name.
Sure, we could use the type attribute, but this doesn't feel right:

<c:error type="warning" href="...">...

Other suggestions?

Sure, it's not a critical issue, but changing a report schema is still a major change. Don't you think we should do this in 4.0 rather than in 4.0.2 or 4.1?
If we can agree on a better report schema and we know about your release schedule, @rdeltour, I can possibly take this issue.

It's precisely the problem: I do not have a strong suggestion, as I've personally never had a strong need for change (like @mkraetke I've used workarounds when needed).
If changing the report schema is deemed too big a change for a minor version update, we can still release this change as 4.1, 4.2 or whatever when it's ready.
I'm not saying that I object to include it in 4.0, it's just that I don't have much time to find the best candidate or contact possible users (via the mailing list) and run a quick survey, so for now I'd rather keep the status quo.
That said, if you have a suggestion and want to implement it and contact the list, go for it! In terms of timeline, the sooner the better. There are still some issues left in the 4.0 milestone, but they shouldn't take long now that the hard part has been done.

Schematron Validation Report Language (SVRL) might also provide a declarative markup for a epubcheck XML report. The location attribute can be used to store the file path and the XML sourcepath. Other report languages can be adressed with diagnostic-reference tags with corresponding @xml:lang attributes.

See issue #816 for further discussing a new XML output schema.


[BUG] Documentation: Add info on whats new for create/join.yaml for 1.0.3 vs. 1.1.0

Describe the bug
We have to adjust the existing create/join.yaml files when upgrading from 1.0.3 to 1.1.0 to have a working way for disaster recovery and cluster expansion.
So we need to know what got changed and what got added and we need examples for that.
To Reproduce
After upgrade to 1.1.0 reinstall a node with the existing yaml files / add a node with the existing yaml files.
Try to find out what got changed and what can be added, now.
Expected behavior
The whats new / upgrade guide needs to explain what to adjust / add in the create/join.yaml files.
-> please add also an example including all possible settings (especially registries.yaml with SSL certificate and authentication and rewrites)
Environment

Harvester ISO version: 1.0.3 -> 1.1.0

The whats new section should also cover the major change regarding VM network configuration - https://docs.harvesterhci.io/v1.1/networking/clusternetwork#custom-cluster-network


Speaker notes

First of all, amazing project (or a package?) which I used for my PhD proposal presentation.
I wanted to start a discussion around speaker notes and how to implement it and which features it should contain (happy to help out).
It seems natural that speaker-notes would be a named argument to slide and that there would be a global switch: #show: slides.with( /* ... */, notes: true ) which would print them out, likely underneath the slide (this would mean changing the aspect ratio etc).
Currently I have the notes on separate slides with custom theme variant which are turned off based on a state:
#let notes(body) = {
  locate(loc => {
    if notes-mode.at(loc) {
        slide(theme-variant: "notes", body)
    }
  })
}

Interesting idea and I'm glad this template was useful to you!
I think the usability of speaker notes depends a lot on the PDF viewer. I have personally never used such notes, so it would be interesting to see how people do that with PDF based presentations.

I used LaTeX Beamer to create PDF based presentations in the past.
Basically, there are two options:

Using the beamer option show notes on second screen, which doubles the pdf width and shows the LaTeX rendered notes on the right half. A presenting program like dspdfviewer can be used, which splits the slides again and has a presenter view.
Using pdfpc and their notes system. When you start a presentation in pdfpc, you can add Markdown styled notes to every pdf page, which are saved in a separate *.pdfpc file. Alternatively, there is latex-pdfpc, which is a LaTeX package which allows to specify these notes directly in the code.

I reckon, the first approach should be easier to accomplish in Typst, as I do not know how well the possiblity to manipulate the PDF document is or if it is possible to write a separate file.
I used the latter in my last presentations, which worked quite well.
My last presentation (my Bachelor's presentation) was the first I did in typst with your bristol template and I loved it! I added the speaker notes with pdfpc after creating the presentation slides, which worked but was a bit cumbersome. I would love the addition of "built-in" speaker notes!

For reference, I will link to https://github.com/typst/typst/issues/1746 here. That would be my preferred solution for this. And I didn't know pdfpc before, that's pretty cool!


use of BigInt is vulnerable to timing attacks

https://github.com/privacy-scaling-explorations/zk-kit/blob/c912111c134b6bbefe223bb61ba22f864036e9ba/packages/poseidon-cipher/src/poseidonCipher.ts#L19
implementation that uses the javascript BigInt is vulnerable to timing attacks (more info).
If constant-time operation is a requirement, this needs changes to use constant time modular math libraries.
Otherwise, dependent packages/applications should be made aware.

While waiting for a library, I think we can add a warning in the readme file for now.


true background geo location

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
yeah so when my coworker work with forground tasks in android it doesn't close the task and  sticky pop up  but i also
appreciate the fact that going to home opens the pop up and does the tracking but as soon as the task closes the pop up goes to nothing
Describe the solution you'd like
Atclear and concise description of what you want to happen.
the  way this package is written is callback in js but when the task is closed completely figuring out a url in config would be ideal  to what apps could do in current days and still send geo location untill user gets back to app to stop watcher
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
alter native solution for me was because of time restricted application i have to give the app to my coworker to setup android related  task for now and hope community
Additional context
Add any other context or screenshots about the feature request here.

I have tried to address this request in https://github.com/capacitor-community/background-geolocation/issues/19.

Thank you for your response but i have to say i couldnt get muoron up and
running and someone on stack overflow said that is not native for capacitor
and works best in cordova. Best regards shaian.
On Mon, Jan 10, 2022, 03:57 diachedelic @.***> wrote:

I have tried to address this request in #19
https://github.com/capacitor-community/background-geolocation/issues/19.
—
Reply to this email directly, view it on GitHub
https://github.com/capacitor-community/background-geolocation/issues/46#issuecomment-1008456601,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/APS5VL4MNWIKL2GKSMDZSQLUVIRVNANCNFSM5LMNS3YQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***
com>

I used to use mauron85's plugin in a Capacitor v2 app, so it was definitely possible at one time. Have you seen transistorsoft's paid Capacitor plugin? I have not used it but it looks fully featured. https://github.com/transistorsoft/capacitor-background-geolocation
If you still want to use this plugin, you can fork it and add any features you need. I would consider merging a pull request if you were successful. But I do not have time to implement this feature myself.


[OOBE]Experimentation General screen image is cropped

Microsoft PowerToys version
0.68.0-dev
Installation method
Dev build in Visual Studio
Running as admin
None
Area(s) with issue?
Settings
Steps to reproduce
Try out experimentation and verify the image for the new OOBE screen is cropped, as discussed in #22365 :

✔ Expected Behavior
No response
❌ Actual Behavior
No response
Other Software
No response

@niels9001 , is this something you might be able to help with? Thank you, in advance.

Center the image is an idea :)

Vertical center image i think is the fix versus having a new image

@jaimecbernardo fixed, right?

Closing it. Thank you ;)


hydro inflow unit conversion corrected

In hydro.py, line 103
nhours = (distances * (flowspeed * 3.6) + 0.5).astype(int)
should be
nhours = ((distances * 1000) / (flowspeed * 3600) + 0.5).astype(int)
or
nhours = (distances / (flowspeed * 3.6) + 0.5).astype(int)

@hailiangliu89 thanks! I was so free to add a release note.


Fix upload for large BytesIO

Describe your changes
Uploading a BytesIO over 4MiB results in a ValueError: I/O operation on closed file due to the stream being closed twice. Once when checking the file size and again when uploading. This PR make sure the stream is not closed when checking the file size. The PR also includes a test to reproduce the error.
Slack thread about the issue.
Changelog

Nice!

Hey, super thanks for the PR and especially for the new test! I am a little concerned that simply removing the context manager will cause other problems though — this code path is also used when uploading files from disk, and I think that this change risks leaving those file handles open. I need to look a little bit more closely though — It's definitely a little trick to follow the code here.

You a re right @mwaskom, good catch!
How do we proceed?
I don't mind updating the PR after bouncing a few ideas with you.
If you'd rather solve this within your team at Modal that's fine with me too.

The only approach I can think of to handle both

Ooops didn't mean to close/re-open 😅
What makes this tricky is that when for Path or str we are responsible for opening and closing the file, while for BytesIO we get an open file handle which we then close.
The only solution I can think of that doesn't involve copying the whole payload into memory (which would not be great when a user passes a large BinaryIO that is backed by a file on disk) would be to read the stream in one place instead of two. That means computing size and hash when only when file is uploaded instead of when the FileUploadSpec is created.
@mwaskom can you think of a better solution?

Thanks for the test @sveinnfannar, made an implementation in this PR https://github.com/modal-labs/modal-client/pull/1962 that seems to work

Great! Closing this then 👍


Reduce noise

I don't want to use var for now, as I want people which does not come from csharp to understand what is going on.


Use browser scenario ID when saving and scaling scenarios

"Save scenario", "Save scenario as", and "Scale scenario" now all use the scenario ID from the browser, rather than the ID of the latest scenario opened by the user (stored in the session, on the server).
This ensures that a user with multiple tabs open with different scenarios will save/scale the correct scenario.

@ChaelKruip I'm guessing you're busy; would you prefer me to assign this to someone else?

@ChaelKruip I'm guessing you're busy; would you prefer me to assign this to someone else?

Sorry, I just was not aware I was being assigned. I must have missed the notification 😬

@antw can you also cherry-pick this to PRO please?

cherry-pick this to PRO

Done!


Semantic Version oops

I called labeled everything v0.2 for the second milestone, but realized that is inconsistent with SemanticVersioning. So for now the docs are up at both aske.gtri.gatech.edu/v0.1 and aske.gtri.gatech.edu/v0.2. We will get the semver correct next time.

for reference: https://semver.org/.


Add ifThenElse constructor for HttpMiddleware

See #454

Cherry-picked the commits from this branch onto #485.

closing in favour of #485


Container constantly restart on version 1.14+

On versions 1.14+ the container always restarts. This doesn't happen on 1.13.2-rev-2.
cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

uname -a
Linux raspberrypi 5.10.0-10-arm64 #1 SMP Debian 5.10.84-1 (2021-12-08) aarch64 GNU/Linux

sudo docker info
[sudo] password for user:
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Docker Buildx (Docker Inc., v0.7.1-docker)

Server:
 Containers: 3
  Running: 3
  Paused: 0
  Stopped: 0
 Images: 12
 Server Version: 20.10.12
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 7b11cfaabd73bb80907dd23182b9347b4245eb5d
 runc version: v1.0.2-0-g52b36a2
 init version: de40ad0
 Security Options:
  apparmor
  seccomp
   Profile: default
  cgroupns
 Kernel Version: 5.10.0-10-arm64
 Operating System: Debian GNU/Linux 11 (bullseye)
 OSType: linux
 Architecture: aarch64
 CPUs: 4
 Total Memory: 906.5MiB
 Name: raspberrypi
 ID: ATF5:3DNG:2LYT:E6O7:CQQ6:MN2Y:3JFG:4PVB:3CSB:6FS2:36U7:3H47
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  <IP_ADDRESS>/8
 Live Restore Enabled: false

sudo docker pull --platform linux/arm/v7 klutchell/unbound:v1.14.0-r4
v1.14.0-r4: Pulling from klutchell/unbound
3d6f283fe4fa: Pull complete
Digest: sha256:642c667463ff2177c8f7954b7f3b805916b86b31da693b8c2ef39742dce0474f
Status: Downloaded newer image for klutchell/unbound:v1.14.0-r4
WARNING: image with reference klutchell/unbound was found but does not match the specified platform: wanted linux/arm/v7, actual: linux/arm64
docker.io/klutchell/unbound:v1.14.0-r4

sudo docker run --rm -it klutchell/unbound:v1.14.0-r4 -v -v
WARNING: The requested image's platform (linux/arm/v7) does not match the detected host platform (linux/arm64/v8) and no specific platform was requested
[1640531835] unbound[1:0] notice: Start of unbound 1.14.0.
[1640531835] unbound[1:0] debug: chdir to /etc/unbound
[1640531835] unbound[1:0] debug: drop user privileges, run as unbound
[1640531835] unbound[1:0] debug: switching log to stderr
[1640531835] unbound[1:0] debug: module config: "validator iterator"
[1640531835] unbound[1:0] notice: init module 0: validator
[1640531835] unbound[1:0] notice: init module 1: iterator
[1640531835] unbound[1:0] debug: target fetch policy for level 0 is 3
[1640531835] unbound[1:0] debug: target fetch policy for level 1 is 2
[1640531835] unbound[1:0] debug: target fetch policy for level 2 is 1
[1640531835] unbound[1:0] debug: target fetch policy for level 3 is 0
[1640531835] unbound[1:0] debug: target fetch policy for level 4 is 0
[1640531835] unbound[1:0] debug: Reading root hints from /etc/unbound/root.hints
[1640531835] unbound[1:0] info: DelegationPoint<.>: 13 names (0 missing), 26 addrs (0 result, 26 avail) parentNS
[1640531835] unbound[1:0] debug: cache memory msg=33040 rrset=33040 infra=3920 val=33200
[1640531835] unbound[1:0] info: start of service (unbound 1.14.0).
[1640531835] unbound[1:0] debug: validator[module 0] operate: extstate:module_state_initial event:module_event_new
[1640531835] unbound[1:0] info: validator operate: query . DNSKEY IN
[1640531835] unbound[1:0] debug: iterator[module 1] operate: extstate:module_state_initial event:module_event_pass
[1640531835] unbound[1:0] info: resolving . DNSKEY IN
[1640531835] unbound[1:0] info: priming . IN NS
[1640531835] unbound[1:0] debug: iterator[module 1] operate: extstate:module_state_initial event:module_event_pass
[1640531835] unbound[1:0] info: iterator operate: query . NS IN
[1640531835] unbound[1:0] info: processQueryTargets: . NS IN
[1640531835] unbound[1:0] info: sending query: . NS IN
[1640531835] unbound[1:0] debug: sending to target: <.> <IP_ADDRESS>#53
[1640531835] unbound[1:0] debug: iterator[module 1] operate: extstate:module_wait_reply event:module_event_reply
[1640531835] unbound[1:0] info: iterator operate: query . NS IN
[1640531835] unbound[1:0] info: response for . NS IN
[1640531835] unbound[1:0] info: reply from <.> <IP_ADDRESS>#53
[1640531835] unbound[1:0] info: query response was ANSWER
[1640531835] unbound[1:0] debug: validator[module 0] operate: extstate:module_state_initial event:module_event_moddone
[1640531835] unbound[1:0] info: validator operate: query . NS IN
[1640531835] unbound[1:0] info: priming successful for . NS IN
[1640531835] unbound[1:0] debug: iterator[module 1] operate: extstate:module_wait_subquery event:module_event_pass
[1640531835] unbound[1:0] info: iterator operate: query . DNSKEY IN
[1640531835] unbound[1:0] info: resolving (init part 2):  . DNSKEY IN
[1640531835] unbound[1:0] info: resolving (init part 3):  . DNSKEY IN
[1640531835] unbound[1:0] info: processQueryTargets: . DNSKEY IN
[1640531835] unbound[1:0] info: sending query: . DNSKEY IN
[1640531835] unbound[1:0] debug: sending to target: <.> <IP_ADDRESS>#53
[1640531835] unbound[1:0] debug: cache memory msg=33709 rrset=38532 infra=4394 val=33200
[1640531835] unbound[1:0] debug: iterator[module 1] operate: extstate:module_wait_reply event:module_event_reply
[1640531835] unbound[1:0] info: iterator operate: query . DNSKEY IN
[1640531835] unbound[1:0] info: response for . DNSKEY IN
[1640531835] unbound[1:0] info: reply from <.> <IP_ADDRESS>#53
[1640531835] unbound[1:0] info: query response was ANSWER
[1640531835] unbound[1:0] info: finishing processing for . DNSKEY IN
[1640531835] unbound[1:0] debug: validator[module 0] operate: extstate:module_wait_module event:module_event_moddone
[1640531835] unbound[1:0] info: validator operate: query . DNSKEY IN
[1640531835] unbound[1:0] info: prime trust anchor
[1640531835] unbound[1:0] info: generate keytag query _ta-4a5c-4f66. NULL IN
[1640531835] unbound[1:0] debug: validator[module 0] operate: extstate:module_state_initial event:module_event_pass
[1640531835] unbound[1:0] info: validator operate: query . DNSKEY IN
[1640531835] unbound[1:0] debug: iterator[module 1] operate: extstate:module_state_initial event:module_event_pass
[1640531835] unbound[1:0] info: resolving . DNSKEY IN
[1640531835] unbound[1:0] info: finishing processing for . DNSKEY IN
[1640531835] unbound[1:0] debug: validator[module 0] operate: extstate:module_wait_module event:module_event_moddone
[1640531835] unbound[1:0] info: validator operate: query . DNSKEY IN
[1640531835] unbound[1:0] info: validate keys with anchor(DS): sec_status_secure
[1640531835] unbound[1:0] info: Successfully primed trust anchor . DNSKEY IN
[1640531835] unbound[1:0] debug: validator[module 0] operate: extstate:module_state_initial event:module_event_pass
[1640531835] unbound[1:0] info: validator operate: query _ta-4a5c-4f66. NULL IN
[1640531835] unbound[1:0] debug: iterator[module 1] operate: extstate:module_state_initial event:module_event_pass
[1640531835] unbound[1:0] info: resolving _ta-4a5c-4f66. NULL IN
[1640531835] unbound[1:0] info: resolving (init part 2):  _ta-4a5c-4f66. NULL IN
[1640531835] unbound[1:0] info: resolving (init part 3):  _ta-4a5c-4f66. NULL IN
[1640531835] unbound[1:0] info: processQueryTargets: _ta-4a5c-4f66. NULL IN
[1640531835] unbound[1:0] info: sending query: _ta-4a5c-4f66. A IN
[1640531835] unbound[1:0] debug: sending to target: <.> <IP_ADDRESS>#53
[1640531835] unbound[1:0] debug: validator[module 0] operate: extstate:module_wait_subquery event:module_event_pass
[1640531835] unbound[1:0] info: validator operate: query . DNSKEY IN
[1640531835] unbound[1:0] info: validate(positive): sec_status_secure
[1640531835] unbound[1:0] info: validation success . DNSKEY IN
[1640531835] unbound[1:0] debug: cache memory msg=33858 rrset=39800 infra=4631 val=34480
[1640531835] unbound[1:0] debug: iterator[module 1] operate: extstate:module_wait_reply event:module_event_reply
[1640531835] unbound[1:0] info: iterator operate: query _ta-4a5c-4f66. NULL IN
[1640531835] unbound[1:0] info: response for _ta-4a5c-4f66. NULL IN
[1640531835] unbound[1:0] info: reply from <.> <IP_ADDRESS>#53
[1640531835] unbound[1:0] info: query response was NXDOMAIN ANSWER
[1640531835] unbound[1:0] info: finishing processing for _ta-4a5c-4f66. NULL IN
[1640531835] unbound[1:0] debug: validator[module 0] operate: extstate:module_wait_module event:module_event_moddone
[1640531835] unbound[1:0] info: validator operate: query _ta-4a5c-4f66. NULL IN
[1640531835] unbound[1:0] debug: cache memory msg=34041 rrset=40758 infra=4631 val=34480

version: "3"

networks:
  dns_net:
    driver: bridge
    ipam:
        config:
        - subnet: <IP_ADDRESS>/16

# More info at https://github.com/pi-hole/docker-pi-hole/ and https://docs.pi-hole.net/
services:
  pihole:
    container_name: pihole
    hostname: raspberrypi
    image: pihole/pihole:latest
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "67:67/udp"
      - "8080:80/tcp"
    environment:
      TZ: 'Europe/Paris'
      WEBPASSWORD: ''
    # Volumes store your data between container upgrades
    volumes:
      - './etc-pihole:/etc/pihole'
      - './etc-dnsmasq.d:/etc/dnsmasq.d'
    # Recommended but not required (DHCP needs NET_ADMIN)
    #   https://github.com/pi-hole/docker-pi-hole#note-on-capabilities
    cap_add:
      - NET_ADMIN
    networks:
      dns_net:
        ipv4_address: <IP_ADDRESS>
    dns: <IP_ADDRESS>
    restart: unless-stopped

  unbound:
    container_name: unbound
    hostname: unbound
    image: klutchell/unbound
    volumes:
    - /home/user/pihole/unbound:/etc/unbound
    ports:
    - "5335:5335/tcp"
    - "5335:5335/udp"
    networks:
      dns_net:
        ipv4_address: <IP_ADDRESS>
    restart: unless-stopped

server:
    # If no logfile is specified, syslog is used
    # logfile: "/var/log/unbound/unbound.log"
    verbosity: 5

    access-control: <IP_ADDRESS>/12 allow
    access-control: <IP_ADDRESS>/12 allow
    access-control: <IP_ADDRESS>/8 allow
    access-control: <IP_ADDRESS>/8 allow
    access-control: <IP_ADDRESS>/16 allow
    interface: <IP_ADDRESS>
    port: 5335
    do-ip4: yes
    do-udp: yes
    do-tcp: yes

    # May be set to yes if you have IPv6 connectivity
    do-ip6: no

    # You want to leave this to no unless you have *native* IPv6. With 6to4 and
    # Terredo tunnels your web browser should favor IPv4 for the same reasons
    prefer-ip6: no

    # Use this only when you downloaded the list of primary root servers!
    # If you use the default dns-root-data package, unbound will find it automatically
    #root-hints: "/var/lib/unbound/root.hints"

    # Trust glue only if it is within the server's authority
    harden-glue: yes

    # Require DNSSEC data for trust-anchored zones, if such data is absent, the zone becomes BOGUS
    harden-dnssec-stripped: yes

    # Don't use Capitalization randomization as it known to cause DNSSEC issues sometimes
    # see https://discourse.pi-hole.net/t/unbound-stubby-or-dnscrypt-proxy/9378 for further details
    use-caps-for-id: no

    # Reduce EDNS reassembly buffer size.
    # Suggested by the unbound man page to reduce fragmentation reassembly problems
    edns-buffer-size: 1472

    # Perform prefetching of close to expired message cache entries
    # This only applies to domains that have been frequently queried
    prefetch: yes

    # One thread should be sufficient, can be increased on beefy machines. In reality for most users running on small networks or on a single machine, it should be unnecessary to seek performance enhancement by increasing num-threads above 1.
    num-threads: 1

    # Ensure kernel buffer is large enough to not lose messages in traffic spikes
    so-rcvbuf: 1m

    # Ensure privacy of local IP ranges
    private-address: <IP_ADDRESS>/16
    private-address: <IP_ADDRESS>/16
    private-address: <IP_ADDRESS>/12
    private-address: <IP_ADDRESS>/8
    private-address: fd00::/8
    private-address: fe80::/10

I have switched it to 5 and I have the following log:
[1640533667] unbound[1:0] debug: creating tcp4 socket <IP_ADDRESS> 5335
[1640533667] unbound[1:0] debug: switching log to syslog
[1640533720] unbound[1:0] debug: creating udp4 socket <IP_ADDRESS> 5335
[1640533720] unbound[1:0] warning: so-rcvbuf 1048576 was not granted. Got 425984. To fix: start with root permissions(linux) or sysctl bigger net.core.rmem_max(linux) or kern.ipc.maxsockbuf(bsd) values.
[1640533720] unbound[1:0] debug: creating tcp4 socket <IP_ADDRESS> 5335
[1640533720] unbound[1:0] debug: switching log to syslog

I have put the root.hints in the unbound folder and unbound.conf has the pihole configuration in it. This works fine on 1-13-2-rev2 but just restarts on anything newer.

Thanks for opening a separate issue!
I think you can get rid of the so-rcvbuf warning by removing that line from your config or adding the net admin cap to your compose file. However, I'm not sure this is what's actually causing the restart and you probably had this warning before the upgrade.
cap_add:
  - NET_ADMIN

Can you run docker inspect on your container and provide the results? Or maybe just try disabling the healthcheck in your compose file in case we are seeing another situation with a stale healthcheck.
healthcheck:
  disable: true

Alternatively docker-compose down and docker-compose up might clear any stale state.

I just noticed that since you commented out the logfile, it's attempting to write to syslog that does not exist.
Try setting logfile: "" in your config as well. This might resolve the issue, or at least give us more logs,

Here is the inspect:
sudo docker inspect unbound
[
    {
        "Id": "852fe7a3fe60f75a0090752c71df42773b31d61ca8c4f735c9b795279edaf1a1",
        "Created": "2021-12-26T20:21:59.014131789Z",
        "Path": "unbound",
        "Args": [],
        "State": {
            "Status": "restarting",
            "Running": true,
            "Paused": false,
            "Restarting": true,
            "OOMKilled": false,
            "Dead": false,
            "Pid": 0,
            "ExitCode": 0,
            "Error": "",
            "StartedAt": "2021-12-26T20:22:30.384499678Z",
            "FinishedAt": "2021-12-26T20:22:30.500380553Z"
        },
        "Image": "sha256:e81b7915406b029e3c65167b1d0ab765b1ac315d7742efe22b8e1f66608bb599",
        "ResolvConfPath": "/var/lib/docker/containers/852fe7a3fe60f75a0090752c71df42773b31d61ca8c4f735c9b795279edaf1a1/resolv.conf",
        "HostnamePath": "/var/lib/docker/containers/852fe7a3fe60f75a0090752c71df42773b31d61ca8c4f735c9b795279edaf1a1/hostname",
        "HostsPath": "/var/lib/docker/containers/852fe7a3fe60f75a0090752c71df42773b31d61ca8c4f735c9b795279edaf1a1/hosts",
        "LogPath": "/var/lib/docker/containers/852fe7a3fe60f75a0090752c71df42773b31d61ca8c4f735c9b795279edaf1a1/852fe7a3fe60f75a0090752c71df42773b31d61ca8c4f735c9b795279edaf1a1-json.log",
        "Name": "/unbound",
        "RestartCount": 7,
        "Driver": "overlay2",
        "Platform": "linux",
        "MountLabel": "",
        "ProcessLabel": "",
        "AppArmorProfile": "docker-default",
        "ExecIDs": null,
        "HostConfig": {
            "Binds": [
                "/home/user/pihole/unbound:/etc/unbound:rw"
            ],
            "ContainerIDFile": "",
            "LogConfig": {
                "Type": "json-file",
                "Config": {}
            },
            "NetworkMode": "pihole_dns_net",
            "PortBindings": {
                "5335/tcp": [
                    {
                        "HostIp": "",
                        "HostPort": "5335"
                    }
                ],
                "5335/udp": [
                    {
                        "HostIp": "",
                        "HostPort": "5335"
                    }
                ]
            },
            "RestartPolicy": {
                "Name": "unless-stopped",
                "MaximumRetryCount": 0
            },
            "AutoRemove": false,
            "VolumeDriver": "",
            "VolumesFrom": [],
            "CapAdd": [
                "NET_ADMIN"
            ],
            "CapDrop": null,
            "CgroupnsMode": "private",
            "Dns": null,
            "DnsOptions": null,
            "DnsSearch": null,
            "ExtraHosts": null,
            "GroupAdd": null,
            "IpcMode": "private",
            "Cgroup": "",
            "Links": null,
            "OomScoreAdj": 0,
            "PidMode": "",
            "Privileged": false,
            "PublishAllPorts": false,
            "ReadonlyRootfs": false,
            "SecurityOpt": null,
            "UTSMode": "",
            "UsernsMode": "",
            "ShmSize": 67108864,
            "Runtime": "runc",
            "ConsoleSize": [
                0,
                0
            ],
            "Isolation": "",
            "CpuShares": 0,
            "Memory": 0,
            "NanoCpus": 0,
            "CgroupParent": "",
            "BlkioWeight": 0,
            "BlkioWeightDevice": null,
            "BlkioDeviceReadBps": null,
            "BlkioDeviceWriteBps": null,
            "BlkioDeviceReadIOps": null,
            "BlkioDeviceWriteIOps": null,
            "CpuPeriod": 0,
            "CpuQuota": 0,
            "CpuRealtimePeriod": 0,
            "CpuRealtimeRuntime": 0,
            "CpusetCpus": "",
            "CpusetMems": "",
            "Devices": null,
            "DeviceCgroupRules": null,
            "DeviceRequests": null,
            "KernelMemory": 0,
            "KernelMemoryTCP": 0,
            "MemoryReservation": 0,
            "MemorySwap": 0,
            "MemorySwappiness": null,
            "OomKillDisable": null,
            "PidsLimit": null,
            "Ulimits": null,
            "CpuCount": 0,
            "CpuPercent": 0,
            "IOMaximumIOps": 0,
            "IOMaximumBandwidth": 0,
            "MaskedPaths": [
                "/proc/asound",
                "/proc/acpi",
                "/proc/kcore",
                "/proc/keys",
                "/proc/latency_stats",
                "/proc/timer_list",
                "/proc/timer_stats",
                "/proc/sched_debug",
                "/proc/scsi",
                "/sys/firmware"
            ],
            "ReadonlyPaths": [
                "/proc/bus",
                "/proc/fs",
                "/proc/irq",
                "/proc/sys",
                "/proc/sysrq-trigger"
            ]
        },
        "GraphDriver": {
            "Data": {
                "LowerDir": "/var/lib/docker/overlay2/30236769c782cd21b02d917797f89c142b9ef8b29284843699f4f94f782edc23-init/diff:/var/lib/docker/overlay2/cf1b1a69802e2916cf599d7ed6ecc7b2fdc353088c40b2cc30cae6b3ed895dae/diff",
                "MergedDir": "/var/lib/docker/overlay2/30236769c782cd21b02d917797f89c142b9ef8b29284843699f4f94f782edc23/merged",
                "UpperDir": "/var/lib/docker/overlay2/30236769c782cd21b02d917797f89c142b9ef8b29284843699f4f94f782edc23/diff",
                "WorkDir": "/var/lib/docker/overlay2/30236769c782cd21b02d917797f89c142b9ef8b29284843699f4f94f782edc23/work"
            },
            "Name": "overlay2"
        },
        "Mounts": [
            {
                "Type": "bind",
                "Source": "/home/user/pihole/unbound",
                "Destination": "/etc/unbound",
                "Mode": "rw",
                "RW": true,
                "Propagation": "rprivate"
            }
        ],
        "Config": {
            "Hostname": "unbound",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "5335/tcp": {},
                "5335/udp": {}
            },
            "Tty": false,
            "OpenStdin": false,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
            ],
            "Cmd": null,
            "Healthcheck": {
                "Test": [
                    "NONE"
                ]
            },
            "Image": "klutchell/unbound:v1.14.0-r4",
            "Volumes": {
                "/etc/unbound": {}
            },
            "WorkingDir": "/",
            "Entrypoint": [
                "unbound"
            ],
            "OnBuild": null,
            "Labels": {
                "com.docker.compose.config-hash": "ebf0c3ee83d0fcfaf6493d7361e83079f26da26027847b931f230f4f2d8a3d5c",
                "com.docker.compose.container-number": "1",
                "com.docker.compose.oneoff": "False",
                "com.docker.compose.project": "pihole",
                "com.docker.compose.project.config_files": "docker-compose.yml",
                "com.docker.compose.project.working_dir": "/home/user/pihole",
                "com.docker.compose.service": "unbound",
                "com.docker.compose.version": "1.29.2",
                "org.opencontainers.image.created": "2021-12-16T16:49:59.109Z",
                "org.opencontainers.image.description": "minimal unbound container image based on buildroot",
                "org.opencontainers.image.licenses": "",
                "org.opencontainers.image.revision": "520e8093313ebebf442011a4469617d612ead90d",
                "org.opencontainers.image.source": "https://github.com/klutchell/unbound-docker",
                "org.opencontainers.image.title": "unbound-docker",
                "org.opencontainers.image.url": "https://github.com/klutchell/unbound-docker",
                "org.opencontainers.image.version": "v1.14.0-r4"
            }
        },
        "NetworkSettings": {
            "Bridge": "",
            "SandboxID": "139f643313d3ece4d3879e69ccbb1aa705de0a2c7551934b116865cedd5e8a14",
            "HairpinMode": false,
            "LinkLocalIPv6Address": "",
            "LinkLocalIPv6PrefixLen": 0,
            "Ports": {},
            "SandboxKey": "/var/run/docker/netns/139f643313d3",
            "SecondaryIPAddresses": null,
            "SecondaryIPv6Addresses": null,
            "EndpointID": "",
            "Gateway": "",
            "GlobalIPv6Address": "",
            "GlobalIPv6PrefixLen": 0,
            "IPAddress": "",
            "IPPrefixLen": 0,
            "IPv6Gateway": "",
            "MacAddress": "",
            "Networks": {
                "pihole_dns_net": {
                    "IPAMConfig": {
                        "IPv4Address": "<IP_ADDRESS>"
                    },
                    "Links": null,
                    "Aliases": [
                        "unbound",
                        "852fe7a3fe60"
                    ],
                    "NetworkID": "a0f6640d46e7b1b2ec667686d5f2046b7335d2715650b59ee2a96f85b3a90009",
                    "EndpointID": "",
                    "Gateway": "",
                    "IPAddress": "",
                    "IPPrefixLen": 0,
                    "IPv6Gateway": "",
                    "GlobalIPv6Address": "",
                    "GlobalIPv6PrefixLen": 0,
                    "MacAddress": "",
                    "DriverOpts": null
                }
            }
        }
    }
]

I put  "/etc/unbound/unbound.log" in the unbound.conf file but that didn't do anything. I didn't create a log file. Adding
cap_add:
  - NET_ADMIN

causes the error to disappear but it still restarts

If you actually set the logfile to an empty string, "", it will print to the docker logs and we can see what is going on.

Nope no luck all I have is:
[1640550967] unbound[1:0] debug: creating udp4 socket <IP_ADDRESS> 5335
[1640550967] unbound[1:0] debug: creating tcp4 socket <IP_ADDRESS> 5335

Nothing more.

I compared your configuration to the default one in this repo, just to see the differences as we've seen it work without your config mounted. Can you make sure these are set?
    # Enable or disable whether the unbound server forks into the background
    # as a daemon. Default is yes.
    do-daemonize: no

    # If given, after binding the port the user privileges are dropped.
    # Default is "unbound". If you give username: "" no user change is performed.
    username: "unbound"

    # No need to chroot as this container has been stripped of all other binaries.
    chroot: ""

    # If "" is given, logging goes to stderr, or nowhere once daemonized.
    logfile: ""

    # The process id is written to the file. Not required since we are running
    # in a container with one process.
    pidfile: ""

    # The verbosity number, level 0 means no verbosity, only errors.
    # Level 1 gives operational information.
    # Level 2 gives detailed operational information.
    # Level 3 gives query level information, output per query.
    # Level 4 gives algorithm level information.
    # Level 5 logs client identification for cache misses.
    # Default is level 1. The verbosity can also be increased from the commandline.
    verbosity: 5

I'm not sure why this config would break with the latest version, and work with the previous version, but hopefully with proper logging and startup settings we will get an idea of what's happening.
Also, not sure if this is the issue, but in your compose file you are not including the full image tag, image: klutchell/unbound, and above I see a warning that you have a local image by that name but it is for the wrong architecture.
Status: Downloaded newer image for klutchell/unbound:v1.14.0-r4
WARNING: image with reference klutchell/unbound was found but does not match the specified platform: wanted linux/arm/v7, actual: linux/arm64
docker.io/klutchell/unbound:v1.14.0-r4

So maybe try docker rmi klutchell/unbound before pulling the image again and specifying the full name in the compose file.

Yep adding those options to the unbound.conf file solved it! Thank you very much! I guess pihole needs to update their documentation then.

Glad it's working now!

Thank you very much! I guess pihole needs to update their documentation then.

If you mean these docs then I think they assume unbound is being installed on the host OS,  not in a container, so things like do-daemonize and 'username' and chroot would matter less.
I might need to update the documentation to suggest that if it's not working, try starting with the included example config instead of your own and go from there since some of the fields are important for running in a container.

To anyone passing by, this issue can be related to the config files ownership/permissions.
Big hammer? Setting those to the 'root' user 644 and unbound username: "" (no user change is performed) did the trick.


⚠ Bofrost.fr has degraded performance

In ae6ddee, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 2021 ms

Resolved: Bofrost.fr performance has improved in cb5e21b after 19 minutes.


refactor: Update typings to allow any react component

What:
Updated typings to allow for using functional components

Why:
Functional components are components too

How:
Replace most instances of React.ComponentClass with React.ComponentType

Checklist:

[ ] Documentation added/updated (N/A)
[x] Typescript definitions updated
[ ] Tests added and passing (N/A)
[x] Ready to be merged

Hello maintainers, what else do I need in order to get this merged?


Error when executing make command in Ubuntu 20.04

Hello,
I really liked the project with PHP support, could you help me please?
I am trying to run the make command in raylib-php, but the following errors are occurring that make it impossible to execute the project successfully, how can I revolve them?
PS: I'm running PHP 8.0.2
/var/www/html/raylib-php/raylib-texture.c:5394:66: error: ‘FILTER_TRILINEAR’ undeclared (first use in this function); did you mean ‘FILTER_BILINEAR’?
  594 | REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG ("FILTER_TRILINEAR", FILTER_TRILINEAR);

/var/www/html/raylib-php/raylib-texture.c:318:107: note: in definition of macro ‘REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG’
  318 | zend_declare_class_constant_long (php_raylib_texture_ce, const_name, sizeof (const_name) -1, (zend_long) value);

/var/www/html/raylib-php/raylib-texture.c 16:94:66: note: each undeclared identifier is reported only once for each function it appears in
  594 | REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG ("FILTER_TRILINEAR", FILTER_TRILINEAR);

/var/www/html/raylib-php/raylib-texture.c:318:107: note: in definition of macro ‘REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG’
  318 | zend_declare_class_constant_long (php_raylib_texture_ce, const_name, sizeof (const_name) -1, (zend_long)

/var/www/html/raylib-php/raylib-texture.c:5395:71: error: ‘FILTER_ANISOTROPIC_4X’ undeclared (first use in this function); did you mean ‘TEXTURE_FILTER_ANISOTROPIC_4X’?
  595 | REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG ("FILTER_ANISOTROPIC_4X", FILTER_ANISOTROPIC_4X);

/var/www/html/raylib-php/raylib-texture.c:318:107: note: in definition of macro ‘REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG’
  318 | zend_declare_class_constant_long (php_raylib_texture_ce, const_name, sizeof (const_name) -1, (zend_long)

/var/www/html/raylib-php/raylib-texture.c/1696:71: error: ‘FILTER_ANISOTROPIC_8X’ undeclared (first use in this function); did you mean ‘TEXTURE_FILTER_ANISOTROPIC_8X’?
  596 | REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG ("FILTER_ANISOTROPIC_8X", FILTER_ANISOTROPIC_8X);

/var/www/html/raylib-php/raylib-texture.c:318:107: note: in definition of macro ‘REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG’
  318 | zend_declare_class_constant_long (php_raylib_texture_ce, const_name, sizeof (const_name) -1, (zend_long)

/var/www/html/raylib-php/raylib-texture.c:5397:72: error: ‘FILTER_ANISOTROPIC_16X’ undeclared (first use in this function); did you mean ‘TEXTURE_FILTER_ANISOTROPIC_16X’?
  597 | REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG ("FILTER_ANISOTROPIC_16X",

/var/www/html/raylib-php/raylib-texture.c:318:107: note: in definition of macro ‘REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG’
  318 | zend_declare_class_constant_long (php_raylib_texture_ce, const_name, sizeof (const_name) -1, (zend_long)

/var/www/html/raylib-php/raylib-texture.c:600:61: error: ‘WRAP_REPEAT’ undeclared (first use in this function)
  600 | REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG ("WRAP_REPEAT", WRAP_REPEAT);

/var/www/html/raylib-php/raylib-texture.c:318:107: note: in definition of macro ‘REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG’
  318 | zend_declare_class_constant_long (php_raylib_texture_ce, const_name, sizeof (const_name) -1, (zend_long)

/var/www/html/raylib-php/raylib-texture.c:601:60: error: ‘WRAP_CLAMP’ undeclared (first use in this function)
  601 | REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG ("WRAP_CLAMP",

/var/www/html/raylib-php/raylib-texture.c:318:107: note: in definition of macro ‘REGISTER_RAYLIB_TEXTURE_CLASS_CONST_LONG’
  318

zend_declare_class_constant_long (php_raylib_texture_ce, const_name, sizeof (const_name) -1, (zend_long) value);

Thanks!!! Worked perfectly!!!!


How to remove records on update with real-time indexes

With a real-time index, I can provide a scope to filter out records I don't want indexed:

This allows eager loading of associations, or even filtering out specific values. However, keep in mind the default callbacks don’t use this scope, so a record that does not get included in this scope but is then altered will be added to your Sphinx data.

and

For real-time indices you can define a custom scope to preload associations or apply custom conditions:
scope { Article.includes(:comments) }

This scope only comes into play when populating all records at once, not when single records are created or updated.

So I need separate logic on update to filter out things I don't want indexed. Closest I can find is this info in callbacks...

If you wish to have your callbacks update Sphinx only in certain conditions, you can either define your own callback and then invoke TS if/when needed:
after_save :populate_to_sphinx

# ...

def populate_to_sphinx
  return unless indexing?

  ThinkingSphinx::RealTime::Callbacks::RealTimeCallbacks.new(
    :article
  ).after_save self
end

Or supply a block to the callback instantiation which returns an array of instances to process:
# if your model is app/models/article.rb:
ThinkingSphinx::Callbacks.append(self, :behaviours => [:real_time]) { |instance|
  instance.indexing? ? [instance] : []
}

However this is changing what records are updated in Sphinx and not what records are in Sphinx. Specifically, if a record previously had indexing? return true, but now after an update returns false, the logic provided just means that no update will be sent to Sphinx (and it will remain in Sphinx), not that the record will be removed in Sphinx.
How do I remove a record from Sphinx on an update with a callback? Or am I thinking about this wrong?

This seems related to #1216
You can also check the discussion under #1215
Please check #1258 and see if it resolves the issue for you.

As per @akostadinov's great work, this should now be covered by ThinkingSphinx::Processor.new(instance: self).sync - it'll update records if they're still within the scope, or otherwise delete them.

… and this is part of v5.6.0 which has just been released!


NameError: uninitialized constant Constraint

View details in Rollbar: https://rollbar.com/trystant/BOW/items/293/

NameError: uninitialized constant Constraint
  File "/Users/dariusgoore/development/blackops/config/routes.rb", line 30, in block in <top (required)>
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/actionpack-<IP_ADDRESS>/lib/action_dispatch/routing/route_set.rb", line 432, in instance_exec
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/actionpack-<IP_ADDRESS>/lib/action_dispatch/routing/route_set.rb", line 432, in eval_block
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/actionpack-<IP_ADDRESS>/lib/action_dispatch/routing/route_set.rb", line 410, in draw
  File "/Users/dariusgoore/development/blackops/config/routes.rb", line 1, in <top (required)>
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb", line 40, in block in load_paths
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb", line 40, in each
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb", line 40, in load_paths
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb", line 16, in reload!
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb", line 26, in block in updater
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/activesupport-<IP_ADDRESS>/lib/active_support/file_update_checker.rb", line 75, in call
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/activesupport-<IP_ADDRESS>/lib/active_support/file_update_checker.rb", line 75, in execute
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb", line 27, in updater
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application/routes_reloader.rb", line 7, in execute_if_updated
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application/finisher.rb", line 69, in block in <module:Finisher>
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb", line 30, in instance_exec
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb", line 30, in run
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb", line 55, in block in run_initializers
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/tsort.rb", line 226, in block in tsort_each
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/tsort.rb", line 348, in block (2 levels) in each_strongly_connected_component
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/tsort.rb", line 429, in each_strongly_connected_component_from
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/tsort.rb", line 347, in block in each_strongly_connected_component
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/tsort.rb", line 345, in each
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/tsort.rb", line 345, in call
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/tsort.rb", line 345, in each_strongly_connected_component
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/tsort.rb", line 224, in tsort_each
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/tsort.rb", line 203, in tsort_each
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/initializable.rb", line 54, in run_initializers
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application.rb", line 352, in initialize!
  File "/Users/dariusgoore/development/blackops/config/environment.rb", line 5, in <top (required)>
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application.rb", line 328, in require_environment!
  File "/Users/dariusgoore/development/blackops/.bundle/gems/ruby/2.2.0/gems/railties-<IP_ADDRESS>/lib/rails/application.rb", line 457, in block in run_tasks_blocks
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 240, in call
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 240, in block in execute
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 235, in each
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 235, in execute
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 179, in block in invoke_with_call_chain
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/monitor.rb", line 211, in mon_synchronize
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 172, in invoke_with_call_chain
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 201, in block in invoke_prerequisites
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 199, in each
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 199, in invoke_prerequisites
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 178, in block in invoke_with_call_chain
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/2.2.0/monitor.rb", line 211, in mon_synchronize
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 172, in invoke_with_call_chain
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/task.rb", line 165, in invoke
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/application.rb", line 150, in invoke_task
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/application.rb", line 106, in block (2 levels) in top_level
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/application.rb", line 106, in each
  File "/Users/dariusgoore/.rubies/ruby-2.2.1/lib/ruby/gems/2.2.0/gems/rake-10.5.0/lib/rake/application.rb", line 106, in block in top_level
  File "/Users/dariusgoore/.

It looks like the tutorial is missing a step in the routes.rb; the constraint often needs to be required explicitly, or loaded as part of the app.
Here is a tutorial which has more information on constraints.
Also, here is an article which discusses the downsides of constraints. It's worth reviewing and seeing whether a Devise + CanCan approach would be better than constraints.


Release v0.7.0

The scope of features and bugs that will be fixed in the minor v0.6.1 release
Usage of arkzkey

[ ] attempt a PoC with https://github.com/philsippl/circom-witness-rs instead of using the zkey. Benchmark and compare performance with the existing setup.

[ ] example: https://github.com/philsippl/semaphore-witness-example
[ ] rln-v2 circuits: https://github.com/Rate-Limiting-Nullifier/circom-rln

Poseidon
Poseidon Hash

[ ] Generate Poseidon round parameters and constants:

https://github.com/vacp2p/zerokit/issues/50
Only round parameters (easy) and secure MDS matrices verification algorithms (hard) missing
ensure that known answer tests match with the result of another implementation

rln-wasm

[ ] audit the current implementation to find performance pitfalls.
[ ] Bump dependencies of wasmer and benchmark against current implementation
[ ] TBD: results of the rln-wasm audit

Docs

[ ] https://github.com/vacp2p/zerokit/issues/256

Using the arkzkey witness calculator in zerokit implicitly involves running the corresponding WASM code. This circumstance suggests the possibility of more performant witness computation. Two alternative Circom witness calculators, which does not rely on WASM, were proposed recently:
circom-witness-rs
circom-witnesscalc
Thus, in order to improve the performance of the witness calculation process of zerokit in reasonable amount of time, these two alternatives have been studied in terms of expected performance and convenience for integration into zerokit. The study methods were static code analysis and review of available documentation.
This comparative study has yielded the following results:

Both calculators rely only on Rust code for the witness computation phase, which uses the execution graph. No evidence of parallelization has been found. See https://github.com/philsippl/circom-witness-rs/blob/fed7d591a4a6adfde371d3dac3fde23d755bcd39/src/graph.rs#L124 and https://github.com/iden3/circom-witnesscalc/blob/5cb365b6e4d9052ecc69d4567fcf5bc061c20e94/src/graph.rs#L368
Both calculators use HashMaps with String keys to describe input values for the witness computation process and operate on the Fp<MontBackend<FrConfig, 4>, 4> variables to compute and store the witness data. The later data type is provided by Arkworks.
circom-witnesscalc has been created by iden3 (the creators of Circom) on the basis of circom-witness-rs "as a drop-in replacement for Circom's witness generator" and implements more execution graph operations. See the code references in the point 1.
circom-witness-rs "generates the c++ version of the witness generator through circom and links itself against it." circom-witnesscalc "can calculate the witness for any Circom circuit without ... embedding a C++ binary".
Studying the implementation of the execution graph computation is out of the scope of the work for sake of its time efficiency. However, taking into account the point 3, circom-witnesscalc can be reasonably expected to generate execution graphs providing the average witness computation performance, which is not worse than in the case of circom-witness-rs execution graphs.

The practical conclusion of the study is the advice to prefer circom-witnesscalc as the replacement for the arkzkey witness calculator in zerokit .


Add Tekton to activity bar

Fix: #151
Demo:

Codecov Report

Merging #162 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #162   +/-   ##
=======================================
  Coverage   75.73%   75.73%
=======================================
  Files          28       28
  Lines        1624     1624
  Branches      253      253
=======================================
  Hits         1230     1230
  Misses        394      394

Continue to review full report at Codecov.

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


add mandelbrot example from tsimd

I've got a Cmake for this.
should I add it so that it adds a new target for the default cmake "examples" or seperate in the examples dir?

I think a separate cmake in the example dir is the way to go.


glfs: disable the fencing when it is not support

According to the agreement before the fencing patch should be released since 7.6.6, but it seems not. And also in some other OS releases.
Signed-off-by: Xiubo Li<EMAIL_ADDRESS>

Looks ok to me. Let me know if you are waiting for any gluster team reviews or if it's ok for merging.

Looks ok to me. Let me know if you are waiting for any gluster team reviews or if it's ok for merging.

This is reported by @pkalever,  let's wait for his reviewing he is now busying for the vagrant stuff.
@pkalever
Could help test this please ?
Thanks

@lxbsz
Please fix:
[root@server1 tcmu-runner]# make
[ 28%] Built target tcmu
[ 34%] Built target consumer
[ 37%] Built target handler_file
[ 40%] Building C object CMakeFiles/handler_glfs.dir/glfs.c.o
/root/tcmu-runner/glfs.c: In function ‘glfs_async_cbk’:
/root/tcmu-runner/glfs.c:650:4: error: a label can only be part of a statement and a declaration is not a statement
    struct glfs_state *gfsp = tcmur_dev_get_private(dev);
    ^
make[2]: *** [CMakeFiles/handler_glfs.dir/glfs.c.o] Error 1
make[1]: *** [CMakeFiles/handler_glfs.dir/all] Error 2
make: *** [all] Error 2
[root@server1 tcmu-runner]#

Thanks!


haskell-modules/generic-builder.nix: Replace testTarget with testTargets

Description of changes
testTarget takes a space separated list of test suites to run. We introduce a new testTargets argument that instead takes a list, and add a backwards compatibility shim.
cc @sternenseemann  you mentioned you were interested in a change like this.
I've tested building a couple of packages and it seems to evaluate to the same thing.
Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[X] Fits CONTRIBUTING.md.

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

I like this change.
Is there a way to actually throw a warning if someone explicitly sets the old value?

Is there a way to actually throw a warning if someone explicitly sets the old value?

This sounds good. I'll make it emit a warning (using lib.warn) if a user tries to use the old setting.


Footer Makeover 💄✨

it's a bit hard to tell in figma but theres a top border on the footer now that acts as a separator


Web accessibility

In this milestone, we did the following:

Change the h2 tag to h1 as a first-level heading in the first section.
Add labels to contact form inputs
Change the background color of all buttons to increase the contrast between the text and the background-color
Change the alt text for GitHub icons

Checkpoints
1. Page titles

No issues were found here

2. Image text alternatives

Change alt text of github icon

https://github.com/edubew/winnie-s_portfolio/blob/864a5b042af4f36f3008ff423999452e767895a8/index.html#L113-L118

3. Text headings

Change first-level heading from h2 to h1 in the first section

https://github.com/edubew/winnie-s_portfolio/blob/864a5b042af4f36f3008ff423999452e767895a8/index.html#L43-L44

4. Color contrast

Change the background color of buttons to increase the contrast between text and the background color

https://github.com/edubew/winnie-s_portfolio/blob/864a5b042af4f36f3008ff423999452e767895a8/style.css#L289-L295

5. Resize

No issues were found here

6. Interaction

No issues were found here

7. Moving content

No issues were found here

8. Multimedia

No issues were found here

9. The basic structure of the page

No issues were found here

Try this:
button {
    background-color: #7D73FC;
    padding: 20px;
    color: #f5f5ff;
    border: none;
    font-family: Roboto, sans-serif;
    transition: 0.6s;
}


Event CursorMoved does not work.

Describe the bug
When enter a window with text cursor at (1, 1) from another window with text cursor at (1, 1), CursorMoved would not be triggered. It also appear when both of their cursor are at the ending of the content.
To Reproduce
Detailed steps to reproduce the behavior:

Run vim --clean or gvim --clean.
Use new or vnew to create several windows and type some words in them.
Make sure the text cursor at the beginning of each window.
Add auto command autocmd! CursorMoved * echom 'Moved to ' . winnr().
Use wincmd w or just use 'ctrl-w + w` to move cursor to other window.

Screenshots

Environment (please complete the following information):

Vim version:

OS: Ubuntu 18.04.5

It also appear with GVim8.2 on Windows 7.

Use any of these events:
BufLeave
WinLeave
WinEnter
BufEnter

There is nothing at :help CursorMoved which suggests that the event should be fired when focusing a different window.  The help says that it should be fired when the cursor is moved while in Normal mode or Visual mode.

Use any of these events:
BufLeave
WinLeave
WinEnter
BufEnter

There is nothing at :help CursorMoved which suggests that the event should be fired when focusing a different window. The help says that it should be fired when the cursor is moved while in Normal mode or Visual mode.

In my understanding, moving from one window to another window is also a moving, do you agree it? And in general, say, cursor is not at the beginning or ending of the content, "CursorMoved" would be triggered.

In my understanding, moving from one window to another window is also a moving, do you agree it?

Not necessarily, and what I think doesn't matter; I'm not a dev.  One could argue that it's anything listed at :help cursor-motions (from which :wincmd w is absent), and nothing else.  Others could argue that :help window-move-cursor should be included too.  In any case, as mentioned in the previous post, there are more accurate events to listen to if we want to execute arbitrary commands when focusing a different buffer/window.

If you consider the output of getcurpos(), if it doesn't change then CursorMoved probably should not trigger.
I see no good reason to change the current behavior, even when it may seem the cursor moved to another window, this was not really the intention of this event.


Dynamoose is taking table lock on startup for syncing index can this be avoided

using update: true on dynamoose.model
Eg. dynamoose.model("Test", schemas.testSchema, {update: true});
is taking a table lock on server up causing a downtime which i want to avoid on prod.
if i do update: false i get an error.
Error: indexes are not synchronized and update flag is set to false

can you try  drop the table and re-create it (not with code)  https://forums.aws.amazon.com/thread.jspa?threadID=224522

@deependrax Can we see your schema?

I think i resolved it by setting both create & update set to true in dymoose default
dynamoose.setDefaults({
create: false,
update: false
});
now i think i just need to make sure i handle migration gracefully.

@deependrax Glad you got it working!!

I think this can be related to #453. I haven't checked out new versions of the library in a long time, I'll do it some time soon and check if the problem is still there.


Update README.md to include expanded IDE compatibility matrix

Starting a PR to update the readme file with the newly supported IDEs.
Waiting on the final list from the Eng team.

We should move the 2017.1 or later notice to apply to all of the IDEs, not just CE and UE.

@parkjam4 just fyi, when you merge in the PR, the commit title will be equal to the title of the commit in this PR. You can update it to be more descriptive (like the update I made to the PR title) before merging using GitHub's squash/merge UI (after clicking the button).


Update filename patterns for npe2 builtins to match imageio formats

Description
This PR reverts #4575 in favour of updating the filename_patterns for napari builtins to match what we actually accept, which is all valid imageio formats + csv + npy. I've also updated the display name of our npe2 plugin to napari buitlins
Type of change

[ ] Bug-fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

References

How has this been tested?

[ ] example: the test suite for my feature covers cases x, y, and z
[ ] example: all tests pass with my change

Final checklist:

[ ] My PR is the minimum possible work for the desired functionality
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] If I included new strings, I have used trans. to make them localizable.
For more information see our translations guide.

I rebased to fix the conflicts, previous commit was 65b650065e76995a295236be3212172f0f41cd90


[Bug]: small documentation bug embed_batch_size

Bug Description
Yes: documentation claims default is 10
But: defaults to 100 in code
Version
github default branch
Steps to Reproduce
Open both urls
Relevant Logs/Tracbacks
No response

I think OpenAI is the exception here, because its batch API is very fast (you wouldn't want 100 batch size with a local embedding model for example, it'd eat all your GPU memory)


Set up a config template to manage my dotfiles across machines

This has to work cross platform and support work machines.

Implemented in #37


Added Custom Delay

Added a customDelay prop that allow you to be notified when the text is changed with some delay, very useful if you make an API call with each modification.

With this implementation it is not possible to update the text input through the defaultValue  prop. This will break the text update if one item is selected from the result suggestions.
By the way can't you just pass a function to the onChangeText prop and delay your desired functionality in your callback?
I will close this. Feel free to reopen or leave a comment if we need to implement the delay in the component.


[WIP] Performance Abstraction

Defines a performance abstraction that can be used by other performance approaches as well.

Current coverage is 50.88% (diff: 100%)

Merging #16 into master will decrease coverage by 0.44%

@@             master        #16   diff @@
==========================================
  Files            64         64
  Lines          1124       1124
  Methods           0          0
  Messages          0          0
  Branches         96         96
==========================================
- Hits            577        572     -5
- Misses          497        502     +5
  Partials         50         50

Powered by Codecov. Last update a4d96e6...83bb653


add robust utils header

PR Summary
As discussed over email.

PR Checklist

[x] Any changes to code are appropriately documented.
[x] Code is formatted.
[x] Install test passes.
[x] Docs build.
[ ] If preparing for a new release, update the version in cmake.

Thanks for the review, @BrendanKKrueger ! Feel free to push your changes to the same branch/MR. Or I can merge this and you can add yours in a separate MR. Up to you.


⚠ PrivateHD has degraded performance

In 942eefa, PrivateHD ($PHD) experienced degraded performance:

HTTP code: 200
Response time: 4864 ms

Resolved: PrivateHD performance has improved in 635ec30.


[Feature Request] Enable checksum/md5 headers when backing up to S3 with object lock

May be something that has been raised before but didn't managed to find anything.
When an S3 bucket has object lock enabled, the backup using rancher backup fails due to missing headers. (see error below).
Content-MD5 OR x-amz-checksum- HTTP header is required for Put Object requests with Object Lock parameters
Is this something that has been intentionally excluded?

I don't believe this has ever been tested. Are you able to create and specify a separate S3 bucket that doesn't have object-locking enabled on it?

I don't believe this has ever been tested. Are you able to create and specify a separate S3 bucket that doesn't have object-locking enabled on it?

Yep. It works perfectly if object lock is not enabled, but with it enabled, a checksum/md5 header is required.

I intend on making the code change here to enable this functionality

Is it possible to add support for different retention time and mode for each backup job?
In AWS you can configure a default retention time and mode however each put object request can have its own retention and mode which is not same as the default setting.
Also when doing a restore it would be nice to be able to specify version-id as well.

@mrlindblom That seems like a different set of features than this issue covers. Please open a new Feature Request with the additional features you would like to see. If they require this one be implemented first, then you can reference that in your request.

Is it possible to add support for different retention time and mode for each backup job?
In AWS you can configure a default retention time and mode however each put object request can have its own retention and mode which is not same as the default setting.
Also when doing a restore it would be nice to be able to specify version-id as well.
Use case for Object lock support is to protect backup from tampering. For example during a ransomware attack the bad guys is often trying to destroy or delete the backups. Object lock would prevent this.

Agree, i'll fix two new issue. One for retention and one support of the version-id


Round CPU display numbers in resource allocation list

Brings it down to one digit after decimal, rather than 2.
Ref https://github.com/2i2c-org/infrastructure/issues/3584

Thanks @consideRatio


Update footer link to Accessibility

The Accessibility Statement needs to be available from all pages on
the site. Will also replace the old page with a redirect in other
work.

https://trello.com/c/d1dGtXFd


Improvement - shift and page: dobule click page to enter context menu

Hi. To access the load/save Manu you have to press at the same time shift + menu.
Could be possible to allow also to press shift and THEN menu with 1 or 2 sec max time between the two key press?
Of course this can be applied to other menu pages that needs two key to access a page as:
Menu+t1
Menu+t2
Menu+t3
Etc
My module is vertical and with all the cable connected sometime is hard to press those little buttons at the same time.
I hope that makes sense.
Thanks

implementing page double click to enter context menu for 2 seconds. is it ok for you?

Thank you, really appreciated!

you welcome

I wonder, if you could implemented the double click feature to enter the other submenu for all the buttons also.
eg. double click T1 to enter Project Menu, double click T2 to enter Routing Menu, etc etc


What is the first app we register here used for?

The app that we create under: https://docs.microsoft.com/en-us/azure/active-directory-b2c/identity-provider-azure-ad-multi-tenant-custom?tabs=applications#register-an-application
What is it user for? It says we should create it in a specific AAD tenant, does this have to be done in the tenants that wish to login to our B2C, or is this just another app in our B2C tenant?

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

ID: 171f21f0-1c8c-42f9-dbb8-2da1ebc70892
Version Independent ID: fe1d0a08-231e-5094-2406-1b548cb1174e
Content: Set up sign-in for multi-tenant Azure AD by custom policies - Azure AD B2C
Content Source: articles/active-directory-b2c/identity-provider-azure-ad-multi-tenant-custom.md
Service: active-directory
Sub-service: b2c
GitHub Login: @msmimart
Microsoft Alias: mimart

@martinlarosa
Thanks for the feedback! We are currently investigating and will update you shortly.

The second application you create in your Azure AD B2C tenant to test your policy. I has nothing to do with the Azure AD federation.

Hi @yoelhor, I'm talking about the 1st app, not the second one. In here: https://docs.microsoft.com/en-us/azure/active-directory-b2c/identity-provider-azure-ad-multi-tenant-custom?tabs=applications#register-an-application

The first app is required for any external identity provider federation. The first part of the federation, is to register the Azure AD B2C tenant as a "client" in the external identity provider, such as Facebook, Google, and Azure AD. To register such an application you provide the Azure AD B2C redirect URI, that informs the IDP, where the external IDP token should return back to. After you registered the app in the external IDP, you get the app id and app secret, that later used by Azure Ad B2C policy.
For Azure AD multi tenant, you register the azure Ad B2C tenant in any Azure AD tenant (since it's a multi tenant app). This allow the Azure AD B2C call any Azure AD to sign-in a user.

And that can be done in an App in the B2C directory? Or does it have to be
directly in the organizational directory?
I even tried it using the same client app I'm using for my users to login
and it seems to work fine.
Martín La Rosa
El lun., 4 may. 2020 a las 10:31, Yoel Horvitz<EMAIL_ADDRESS>escribió:

The first app is required for any external identity provider federation.
The first part of the federation, is to register the Azure AD B2C tenant as
a "client" in the external identity provider, such as Facebook, Google, and
Azure AD. To register such an application you provide the Azure AD B2C
redirect URI, that informs the IDP, where the external IDP token should
return back to. After you registered the app in the external IDP, you get
the app id and app secret, that later used by Azure Ad B2C policy.
For Azure AD multi tenant, you register the azure Ad B2C tenant in any
Azure AD tenant (since it's a multi tenant app). This allow the Azure AD
B2C call any Azure AD to sign-in a user.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/MicrosoftDocs/azure-docs/issues/53906#issuecomment-623465354,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABVU3VPYWFNXJ4E2J4R3AJDRP27TPANCNFSM4MX2CECA
.

It can be done in any directory technically. But must be an app of type "Accounts in any organizational directory".

Closing due to inactivity.
#please-close


Is there a repo and bower install for the braintree-data library?

I see that bower install is available for braintree-web.

Not yet. We should do that. Thank you for bringing this up.

Thanks Jeff!  Do you have a timeframe on when it could happen?

Also with the data.js the setup documentation states:
BraintreeData.setup("yourMerchantId", 'yourFormDOMId', BraintreeData.environments.production);
But I am using angularJS and setting paymentMethodNonceRecieved.  It would be much better fit the BraintreeData.setup would return the data value or a callback function was created that returned the data so that I can use it in my scope how I see fit.  Instead of rendering a hidden field.

We do not plan to release the braintree-data library as a separate repo or module as of right now. However you can continue to use it as a supported feature of Braintree.

I'm thinking the same thing right now.

It would be much better fit the BraintreeData.setup would return the data value or a callback function was created that returned the data so that I can use it in my scope how I see fit. Instead of rendering a hidden field.

Thank you for the feedback - we currently don't support this and it's not planned at the moment but we will keep your feedback in mind for future versions!
Let me know if you have any other questions.

@tim-massey @trainerbill ... undocumented and obviously has no guarantees of being supported in the future, but running BraintreeData._getDeviceData() will return the device data in JSON-string format

@rturumella Can this feature be added to the roadmap?  You are requiring BTData info on paypal payments, but the only way to get that data is to use a JS library that appends it to a form?  Now I have to do a setTimeout and wait for hopefully enough time for your JS to do its work and then query the form for an input that you append.  This is definitely not a good practice.  I mean the functionality exists to get the information and create the input, how hard would it be to create a function to return the data instead of injecting an input field?
@liefl That is great for demos and such but I would be hesitant to use that in a production system. _ is usually private methods so I am not even sure how this is exposed globally.

@tim-massey @liefl @trainerbill We have added a formless braintree-data setup to our roadmap and will keep you updated on our progress here.

Nice!  thanks for the heads up.  Looking forward to this functionality.

Last question.  Will the next release have a github repo with semver and a bower package?

@trainerbill At the moment, that is not in our plans.

@lilaconlee any update on the formless braintree-data setup?

@charlieridley we have a new integration for braintree-data in our latest release. The official docs will be out in the next day or so. I would keep an eye on #80 as that is where we will be making updates.


⚠ Bofrost.at has degraded performance

In d480d65, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1887 ms

Resolved: Bofrost.at performance has improved in 782ac0a after 8 minutes.


Fix failing CI

by replacing the current way to invoke Markup in jinja > 3.0.1
https://jinja.palletsprojects.com/en/3.1.x/changes/?highlight=markup#version-3-0-1

Nice! Thanks!


Auto Reload Nginx Configuration

When we create a symbolic link in /etc/nginx/sites-enabled
Then shell script auto detect any new file is created in /etc/nginx/sites-enabled
Then call nginx  -t to check nginx configuration test
If nginx configuration test is passed
Then reload nginx using the following commands
service nginx  reload
This following script is just a demo needed proper logging.
#!/bin/bash
dpkg --list | grep inotify-tools &> /dev/null
if [ $? -eq 0 ]
then
        echo "Inotify Tools Already Installed"
else
        echo "Installing Inotify Tools..."
        apt-get -y install inotify-tools
fi
while true
do
        inotifywait --exclude .swp -e create -e modify -e delete -e move  /etc/nginx/sites-enabled
        nginx -t
        if [ $? -eq 0 ]
        then
                echo "Reloading Nginx Configuration"
                service nginx reload
        fi
done

Update: This is no longer relevant in EE v4.


Fixed several missing links in docs.

Links in the api docs are nice. I noticed that there were several places where structs / functions and other things were referenced in the docs, but weren't linked. I added the links where possible / logical.

@Wcubed can you resolve these conflicts?


[SSoC 2.0] Whatsapp Clone Frontend project

Describe the project
Title - Whatsapp clone
Tech using - HTML, CSS and JS
I would like to clone the whatsapp website.
Adding Responsiveness for the small devices and large devices.
Issue Type:

[x] New Project

@TusharKesarwani @harshit-paneri @zugzwang03 please assign this project to me

Please assign me this issue. I really want to do this. Can I contribute to it too?
@Avdhesh-Varshney , please.

please assign me this issue. I would love to contribute to this. Please can I contribute too? @TusharKesarwani

please assign me this issue. I would love to contribute to this. Please can I contribute too? @TusharKesarwani

This is wrong. Please create your own issue. I'm working on it.


Add main entry to package.json

According to npm document here, when the main entry file is not index.js at the root directory, it has to be specified using "main".
In this case, main entry is dist/index.js, so it's better to update it.

This is not necessary. As the same document states:

The "exports" provides a modern alternative to "main" allowing multiple entry points to be defined, conditional entry resolution support between environments, and preventing any other entry points besides those defined in "exports".


Add exhentai source

Source name
ExHentai
Source link
Exhentai.org
Source language
Multi
Other details
18+
Acknowledgements

[X] I have checked that the extension does not already exist by searching the extension listing and verified it does not appear there.
[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a meaningful title with the source name.
[ ] I have admitted that I am a clown by having checked this box, as I have not read these acknowledgements.
[X] I will fill out all of the requested information in this form.

Just use TachiyomiSY


Reassemble array following traverse()

Is there an easy way to unflatten an array after it's been flattened by a call to Sequence::traverse()?

I couldn't find anything, so I wrote it myself. I made https://github.com/revinate/sequence/pull/10 to share my solution. What do you think?

I think this issue can be closed now. It was addressed in PR #10