Deactivating clearDatabase API in DsprotectionController class

problem: this is public API accessible via HTTP requests, i.e. not secure (attackers accessing this endpoint could delete the entire double-spending database).

The named method was actually never used.
Removed it.


Uncaught TypeError: Cannot read property 'getControl' of undefined

Issue Id: 79757e58-4103-eec2-81b2-2a104676f023Versions - 1.9.0Stack TypeError: Cannot read property 'getControl' of undefined/vs/workbench/parts/markers/browser/markersTreeController.ts#L128:85 (getControl)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L1524:0 (onComplete)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L1180:0 (call)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L901:0 (_notify)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L1068:0 (enter)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L1031:0 (_run)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L736:0 (_chainedError)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L1436:0 (onError)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L747:0 (then)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L1068:0 (enter)vs/workbench/electron-browser/vs/base/common/winjs.base.raw.js#L1052:0 (_run)

@bpasero looks like, here /vs/workbench/parts/markers/browser/markersTreeController.ts#L128:85 (getControl), this.editorService.openEditor is returning a promise of null. Not sure why editor service is returning null.. During which cases it returns null?

@sandy081 when the editor part is not able to open an input that was given to it. I would think this could be that bug you fixed about clicking on an untitled resource?

Hmm that bug was in typescript.. Typescript extension was registering markers for untitled resources with wrong URIs.
So there could be a possibility that editor service returning null. Then it makes sense to keep a null check.


Cannot find the latest release

Greetings and first, thank you for sharing RIB.
I see on site it says "Last Updated January 22, 2014" but I cannot find such updates?
Can you share where one ole man could find them:)
Thank you!

Sad:( Such a shame for a fine project like RIB to die...
Heck, would use as is if one could one edit the code when viewing "Code".


Opacity channel for transparency

Modified pr #36 to use a separate parameter for opacity - instead of alpha channel
Only tested in 3ds Max for now.
Here's a material with yarn size 0.3 (and transparency between the yarns):

Will this need a new PTN file version?

No, that should not be necessary, the PTN format will handle the added
parameters without changing anything :)
On Fri, 27 Mar 2020 at 15:24, Peter<EMAIL_ADDRESS>wrote:

Will this need a new PTN file version?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Thunderloom/ThunderLoom/pull/37#issuecomment-605028704,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAL6WNEFYBVK2F6GYOOYCLTRJSZKHANCNFSM4LVBH7CA
.


Update README.md

this is what works for me on 16.04.1 LTS

Thanks for the request.  python3-pip is the right one to use, so i'm going to close this but updated it to the right one in master.


Outdated Alpine tutorial

Hi.
This section of readme https://github.com/LukeMathWalker/cargo-chef#running-the-binary-in-alpine is outdated.
Now cargo-chef has alpine support.
FROM lukemathwalker/cargo-chef:latest-rust-1.70.0-alpine3.18 as chef
WORKDIR app

FROM chef AS planner
COPY . .
RUN cargo chef prepare --recipe-path recipe.json

FROM chef AS builder
COPY --from=planner /app/recipe.json recipe.json
RUN cargo chef cook --release --recipe-path recipe.json
COPY . .
RUN cargo build --release

FROM scratch
COPY --from=builder /app/target/release/hello /
CMD ["./hello"]

Should I make a PR?

If I remember correctly, the issue is that you often need to have a variety of C libraries available in your build container if you want to build for the musl target, which is were mustrust does a better job than our own "vanilla" base image.

Ooh, I see.
Unfortunately, my simple Axum REST API project works fine with lukemathwalker/cargo-chef:latest-rust-1.70.0-alpine3.18.
Thanks.


setCreationIds (and therefore things like .getInfo) Errors uncleanly on files with no creationIDs set

Even with useCreationIds: false,
Can we make it cleaner by either

A) not running if useCreationIds is false
B) catch the error nicely
C) Is it at all possible to just names in case of useCreationIds: false? (I'm looking at my getTextIds helper and that is what I did there.
-- added debug here

  async getCreationIds(): Promise<SlideInfo[]> {
    const archive = this.archive;
    const relationships = await XmlHelper.getTargetsByRelationshipType(
      archive,
      this.path,
      this.relType,
    );

    const creationIds: SlideInfo[] = [];
    for (const slideRel of relationships) {
      try {
        const slideXml = await XmlHelper.getXmlFromArchive(
          archive,
          'ppt/' + slideRel.file,
        );

        if (!slideXml) {
          console.warn(`slideXml is undefined for file ${slideRel.file}`);
          continue;
        }

        const creationIdItem = slideXml.getElementsByTagName('p14:creationId').item(0);

        if (!creationIdItem) {
          console.warn(`No 'p14:creationId' tag found in ${slideRel.file}`);
          continue;
        }

        const creationIdSlide = creationIdItem.getAttribute('val');

        if (!creationIdSlide) {
          console.warn(`Attribute 'val' is undefined in ${slideRel.file}`);
          continue;
        }

        const elementIds = this.elementCreationIds(slideXml, archive);
        const slideInfo = await this.getSlideInfo(
          slideXml,
          archive,
          slideRel.file,
        );

        creationIds.push({
          id: Number(creationIdSlide),
          number: this.parseSlideRelFile(slideRel.file),
          elements: elementIds,
          info: slideInfo,
        });
      } catch (err) {
        console.error(`An error occurred while processing ${slideRel.file}:`, err);
      }
    }

    return creationIds.sort((slideA, slideB) =>
      slideA.number < slideB.number ? -1 : 1
    );
  }

Old error
 TypeError: Cannot read properties of undefined (reading 'getAttribute')

New error
 console.warn
      No 'p14:creationId' tag found in slides/slide1.xml

      47 |
      48 |         if (!creationIdItem) {
    > 49 |           console.warn(`No 'p14:creationId' tag found in ${slideRel.file}`);
         |                   ^
      50 |           continue;
      51 |         }
      52 |

Repro steps. -- chuck in a getInfo or setCreationIds into the get-all-text-elements test file

Hi @MP70 ! Thanks a lot for the efforts so far! I need to go deeper into this next week. Have a nice weekend! We'll proceed on Monday :wave:


Fix/node7

Cool 👍

Looks like Node7 is printing stack traces at Error creation. It needed a few arrangements to work. YHTTPError will also need an upgrade.
Beware that this breaks up Node 4 retro compatibility.

I seen, this will need a major bump.
Node 4 will be in maintenance in 2 months and this version will let me upgrade to node7 !

You do not have to wait that moment since users of Node 4 version will just have to avoid using the new major version. I need a Node7 compatible version to fix my builds on this target.

I look to make it work with older node 6 release and merge it after.
Travis use 6.9.5 also for the node 6 build :/

Yes, i think it is expected, you have to manually specify which lower node version you want to be compatible with.
In my case, i always support at least the last Node LTS version only: https://github.com/nfroidure/siso/blob/master/.travis.yml#L7-L8
Note that it doesn't impeach anyone to install it on older NodeJS version but they may face issues.


Fix map diving validation

Fixes Or Enhances
Attempt to fix map dive validation #789
Make sure that you've checked the boxes below before you submit PR:

[x] Tests exist or have been written that cover this particular change.

@go-playground/validator-maintainers

Coverage remained the same at 75.956% when pulling 3ca20fd4de6bd767727aed6e1da7e9ac395865fb on echovl:master into 76b917f43204d9b281b57d3a2c37ab1d56b165fa on go-playground:master.


Allow multiple jsons/json lines

It'd be handy to be able to e.g. prettify a file containing multiple json strings, such as what you get from the Twitter streaming API or a json lines formatted file.

This now exists in the ST3 release.

NIce! Many thanks!

Going to leave this open till ST4 version has it

Any chance this is on the roadmap for the ST4 version as well?

Any chance this is on the roadmap for the ST4 version as well?

Will be pushing a PR that contains this feature today


Part of the statistics is not working

Good afternoon Unam. As version 1.7.1 came out, I immediately updated the web panel. Enough time has already passed, but some of the statistics still do not work. I will attach a screenshot, it shows two columns do not work at all - Error And Idle.
Idle - I do not use, But there are enough miners with errors, but they are not displayed.

Well yeah if you don't use Idle then it won't show, but the Error one should work. Could you post a screenshot of a miner having the "Error" status?


Add IntegerNullable and BooleanNullable to API Reference

Realized that IntegerNullable and BooleanNullable are missing from the api reference. We should add them in

This should be a pretty easy issue to fix so moved it into our current sprint.


Basic html

In this part of the project I have added :

the overall styling of the pages.

hello Moise I think you did a good job with the design but would recommend lowering both the height and weight of the images in the cards so they don't look pixelated 👍


Docker Hub rate limiting impact on istio-proxy image pulls

https://www.docker.com/blog/what-you-need-to-know-about-upcoming-docker-hub-rate-limiting/
"anonymous users are limited to 100 container pulls per six hours"
k get pod sleep-8f795f47d-pmm7v -n httpbin -o yaml shows:
    image: docker.io/istio/proxyv2:1.7.3
    imagePullPolicy: Always
    name: istio-proxy
...
    image: docker.io/istio/proxyv2:1.7.3
    imagePullPolicy: Always
    name: istio-init

Does this mean it's possible to hit this limit?
[ ] Docs
[ X] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Extensions and Telemetry
[ ] Security
[ X] Test and Release
[ ] User Experience
[ ] Developer Infrastructure
Expected behavior
Steps to reproduce the bug
Version (include the output of istioctl version --remote and kubectl version --short and helm version if you used Helm)
client version: 1.7.0
control plane version: 1.7.3
data plane version: 1.7.3 (4 proxies)
How was Istio installed?
istioctl install
Environment where bug was observed (cloud vendor, OS, etc)
IKS
cc: @sdake

Does this mean it's possible to hit this limit?

Certainly. We are tracking this in https://github.com/istio/istio/issues/28031. tl;dr we are mirroring to gcr.io/istio-release and open to mirror to any other registries the community demands/will setup and support

To fix in 1.7, changing the image registry in a patch release seems scary as access to other registries might be blocked. Can the problem be alleviated by removing imagePullPolicy: Always ?

We have no plans to change the default image, users are free to customize it as easily as --set hub=foo. I wouldn't recommend any serious users use dockerhub in production anyways (for Istio or anything), so hopefully users are already using their own registries.
I am not sure if imagePullPolicy: Always impacts it or not. It depends how dockerhub counts things. "Always" does not actually download all the bits afaik, but will pull the manifest

I do believe imagePullPolicy: Always will have a impact in that the manifest pull does count. Since we have a tag, and don't reuse the tag on pushes, a change here shouldn't have a negative impact on the user and would help with the rate limiting.


Add support for entire deployment using K8s control plane with GitOps

It would be a nice feature add to have the full deployment utilizing CAPZ plus Azure Service Operator (for parts which are missing from CAPZ) and then everything using GitOps.  Great to see some GitOps in the setup!

That seems like that would be a pretty cool addition indeed.  Probably not in the general purpose AKS baseline though, as that's probably two steps further than we have in scope for our learners here.  If you'd like to reach out to me on Teams David, we could talk about what it would take to build an Azure Architecture Center contribution that tells this story and includes an implementation for users to experience it.  I'm going to close this as "won't do" (specifically for this repo), but I want to continue the convo.  HMU on teams, and we can brainstorm this.


Code Dict usage added

Code Dict usage added

There is need to add comments to make the code easy to understand by novice

Comments have been added


Remove hjsonpointer

It is a deps of hjsonchema and does not need to be pinned to a specific version.

Thanks!


On testing html5 example I got this error.

Hi @rainyt
Do you know the possible reason to have the error?
I am pretty new in haxe world :) and trying to use it once per year in summer time when I have a bit more time to be honest. And today I was following one of the PR where you posted your project and decided to give a try.
I would really appreciate if you see the possible error on building the project and give me some advice how to resolve it.
Thank you!
Haxe: 4.2.2
Heaps: git
/heaps/git/hxsl/Macros.hx:214: lines 214-219 : Too many arguments
/heaps/git/hxsl/Macros.hx:220: characters 16-30 : You can't iterate on a Dynamic value, please specify Iterator or Iterable
/heaps/git/hxsl/Macros.hx:243: characters 6-23 : { type : haxe.macro.ComplexType, name : String, meta : Array<Unknown<0>>, isFinal : Null<Bool>, expr : { pos : hxsl.Position, expr : haxe.macro.Exp... has extra field meta
/heaps/git/hxsl/Macros.hx:243: characters 6-23 : ... For function argument 'vars'
/heaps/git/hxsl/Macros.hx:316: lines 316-322 : Object requires field ret
/heaps/git/hxsl/Macros.hx:316: lines 316-322 : ... For function argument 'f'
/heaps/git/hxsl/Macros.hx:328: lines 328-334 : Object requires field ret
/heaps/git/hxsl/Macros.hx:328: lines 328-334 : ... For function argument 'f'
/heaps/git/hxsl/Macros.hx:341: characters 21-24 : { type : haxe.macro.ComplexType, name : String, meta : Array<Unknown<0>>, isFinal : Null<Bool>, expr : { pos : haxe.macro.Position, expr : haxe.mac... has extra field meta
/heaps/git/hxsl/Macros.hx:341: characters 21-24 : ... For function argument 'vars'
/heaps/git/h3d/pass/Default.hx:3: characters 1-8 : Build failure

Hi, I haven't encountered this problem, but you can try to change the haxe to version 4.2.5, If it still cannot be solved, you can provide samples to me.

Hi, it's fix: https://github.com/rainyt/zyheaps/commit/961d9262545318509a751a6920c4d05175156666

But your problem may be hxsl. What I fixed is res.

Hi @rainyt . Everything works great. it was my problem. I had hase 4.2.5 and old std folder that I set to use but actually it should not be there. Cleaned up everything properly.
thank you!


Rework file structure

Possibility to create cheat as module, and add them to the main instance with that has a refresh event loop. Memory helper looking good. Need to improve the way to add cheat, repetition of passing args like pid, game adress, game handle to init modules


Scrollwheel Not Working on IE 11

When implementing a standard vertical slider with the following code (this was using the default 03-vertical demo HTML code), the mouse wheel scrolling doesn't work properly in IE11:
var swiper = new Swiper('.swiper-container', {         pagination: '.swiper-pagination',         paginationClickable: true,         direction: 'vertical',         keyboardControl: true,         mousewheelControl: true     });
The keyboard keys work (up and down), and I can drag the swiper between slides OK, but when trying to scroll with the mouse wheel nothing happens. Further, if I use the keyboard arrows to scroll down a couple of slides, then try and use the mouse wheel, it starts scrolling the slides, but only in the reverse direction (back towards slide 1) no matter which way you scroll the mouse wheel (up or down). Once you scroll back to slide 1, the mouse scroll wheel stops working again. I also verified this same behavior with the 03-vertical demo.

the same problem, anyone have a solution?

Guys, it was fixed here https://github.com/nolimits4web/Swiper/commit/42c7b14568d29ed828c726a747aef9d574701857
You can grab dev version with this fix

I built the dev version and it fixes this problem, thanks!

Issue is closed because of outdated/irrelevant/not actual/needed more information/inactivity.
If this issue is still actual and reproducible for latest version of Swiper, please create new issue and fill the issue template correctly:

Clearly describe the issue including steps to reproduce when it is a bug.
Make sure you fill in the earliest version that you know has the issue.
Provide live link or JSFiddle/Codepen or website with issue


Facebook "reel" support

Checklist

[X] I'm reporting a new site support request
[X] I've verified that I'm running yt-dlp version 2022.05.18 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that none of provided URLs violate any copyrights or contain any DRM to the best of my knowledge
[X] I've searched the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[X] I've read about sharing account credentials and am willing to share it if required

Region
No response
Example URLs
https://www.facebook.com/reel/1195289147628387
https://www.facebook.com/reel/522098049695565
https://www.facebook.com/reel/422980049829939
https://www.facebook.com/reel/790250902360374
https://www.facebook.com/reel/1056059878651934
Description
Looks like Facebook has a new video option, as the URL indicates "reel".
yt-dlp can't handle it - "Unsupported URL" :(
nb, identifying information and login credentials have been replaced with "xxx" in the verbose log.
Verbose log
[debug] Command-line config: ['-vU', '--ignore-config', '--add-header', 'cookie:sb=xxx; datr=xxx; c_user=xxx; m_pixel_ratio=1; usida=xxx; wd=1278x800; x-referer=xxx; xs=xxx; fr=xxx; presence=xxx', 'https://www.facebook.com/reel/1195289147628387']
[debug] Encodings: locale UTF-8, fs utf-8, pref UTF-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version 2022.05.18 [b14d52355] (zip)
[debug] Plugins: ['Youtube_AgeGateBypassIE']
[debug] Python version 3.8.10 (CPython 64bit) - Linux-5.4.0-113-generic-x86_64-with-glibc2.29
[debug] Checking exe version: ffprobe -bsfs
[debug] Checking exe version: ffmpeg -bsfs
[debug] exe versions: ffmpeg 4.2.7, ffprobe 4.2.7, phantomjs 2.1.1, rtmpdump 2.4
[debug] Optional libraries: certifi-2019.11.28, mutagen-1.45.1, pycrypto-2.6.1, pyxattr-0.6.1, secretstorage-2.3.1, sqlite3-2.6.0
[debug] Proxy map: {}
Latest version: 2022.05.18, Current version: 2022.05.18
yt-dlp is up to date (2022.05.18)
[debug] [generic] Extracting URL: https://www.facebook.com/reel/1195289147628387
[generic]<PHONE_NUMBER>628387: Requesting header
WARNING: [generic] Falling back on generic information extractor.
[generic]<PHONE_NUMBER>628387: Downloading webpage
[generic]<PHONE_NUMBER>628387: Extracting information
[debug] Looking for video embeds
ERROR: Unsupported URL: https://www.facebook.com/reel/1195289147628387
Traceback (most recent call last):
  File "/home/atom/bin/yt-dlp/yt_dlp/YoutubeDL.py", line 1395, in wrapper
    return func(self, *args, **kwargs)
  File "/home/atom/bin/yt-dlp/yt_dlp/YoutubeDL.py", line 1465, in __extract_info
    ie_result = ie.extract(url)
  File "/home/atom/bin/yt-dlp/yt_dlp/extractor/common.py", line 642, in extract
    ie_result = self._real_extract(url)
  File "/home/atom/bin/yt-dlp/yt_dlp/extractor/generic.py", line 4031, in _real_extract
    raise UnsupportedError(url)
yt_dlp.utils.UnsupportedError: Unsupported URL: https://www.facebook.com/reel/1195289147628387

From this page - https://www.facebook.com/reel/443200603990817 - I can browse to this reel - https://www.facebook.com/reel/1105738683694651
nb, the URL in the address bar does not change as I browse reels.
In the html, there's two "permalink_url" elements. One of them is formatted like this:
"https:\/\/www.facebook.com\/HomeDesign24h\/videos\/3046081548977829\/"
After removing the backslashes, that works fine with yt-dlp to get the desired video.
The other "permalink_url" is formatted like this:
"permalink_url":"https:\/\/www.facebook.com\/\u0025EF\u0025BF\u0025BD\/videos\/443200603990817\/"
After converting the \u parts to utf8 and removing the backslashes, that looks like this:
https://www.facebook.com/◯▿▽/videos/443200603990817
And that brings me to the video that corresponds to the URL in the address-bar, ie the "original" reel I clicked on, not the video being viewed.
The "permalink_url" that I want is on a line that starts with:

The "permalink_url" that I don't want is on a line that starts with:

Any news about this issue?

Any news about this issue?
This issue appear to be duplicated of:
https://github.com/yt-dlp/yt-dlp/issues/4112#issuecomment-1159726856

I see these properties hold urls in json/js on page source are downloadable.
playable_url
playable_url_quality_hd

Obviously, we will need a cookie file for this to work.

Obviously, we will need a cookie file for this to work.

Not necessarily.
All of the "reels" I've seen are "public", and don't require any cookies to view.
For videos that do require login/cookies, something this works fine:
--add-header 'cookie: sb=xxxx; datr=xxxx; c_user=xxxx; m_pixel_ratio=xxxx; x-referer=xxxx; usida=xxxx; wd=xxxx; presence=xxxx; xs=xxxx; fr=xxxx'

for me, I'm using this trike to convert  the URL of a real video to a simple Facebook URL, that is supported by youtube-dl and yt-dlp
so, for example:
https://www.facebook.com/reel/386515896914789
==>
https://m.facebook.com/story.php?story_fbid=386515896914789&id=100013560072595&_rdr

download the page of the version fb mobile

because the desktop version does not contain the user id in `index.html
/sbin/curl --cookie m.facebook.com/reel/386515896914789 cookies.txt   -L --output index.html

get user-id

user=$(cat index.html | grep -Eo 'story_id=S%3A_I[0-9]*' | sort| uniq | sed 's#^story_id.......##')

final URL is:

video_id=$(echo  https://www.facebook.com/reel/386515896914789 | grep -Eo '[0-9]{14,16}')
url="https://m.facebook.com/story.php?story_fbid=${video_id}&id=${user}&_rdr"

All of the "reels" I've seen are "public", and don't require any cookies to view.

@atom-smasher All examples given by OP asks me for login. If you have example that doesn't need login, pls provide it

Most likely you're asked for it because FB thinks your IP address suspicious
FB (and IG as well) excessively blocks any user/IP address by any small suspicion

All of the "reels" I've seen are "public", and don't require any cookies to view.

@atom-smasher All examples given by OP asks me for login. If you have example that doesn't need login, pls provide it

You're correct. Those "pages" require a login, but once the video URL is scraped from those pages, a login is not required to dl the video file.

From this page - https://www.facebook.com/reel/443200603990817 - I can browse to this reel - https://www.facebook.com/reel/1105738683694651
nb, the URL in the address bar does not change as I browse reels.
In the html, there's two "permalink_url" elements. One of them is formatted like this: "https:\/\/www.facebook.com\/HomeDesign24h\/videos\/3046081548977829\/"
After removing the backslashes, that works fine with yt-dlp to get the desired video.
The other "permalink_url" is formatted like this: "permalink_url":"https:\/\/www.facebook.com\/\u0025EF\u0025BF\u0025BD\/videos\/443200603990817\/"
After converting the \u parts to utf8 and removing the backslashes, that looks like this: https://www.facebook.com/◯▿▽/videos/443200603990817
And that brings me to the video that corresponds to the URL in the address-bar, ie the "original" reel I clicked on, not the video being viewed.
The "permalink_url" that I want is on a line that starts with:

The "permalink_url" that I don't want is on a line that starts with:

SIMPLE SOLUTION

example taken from this post:
https://www.facebook.com/reel/386515896914789
~
replace www => mbasic
https://mbasic.facebook.com/reel/386515896914789
Done, that's it, right click: Save Video...


No existing entities in root & show entity description in dropdown

can you change the base branch to dev?

Ok, I changed the base, shall I merge?


Lack of examples and DOCs.

Love your library and this is one of the best I've ever seen. yet This needs some documentation to get started. At least provide examples for the shown images in the read me.

After playing around a bit I found out that the sample is there in the example code, yet styling and other features are lack in the doc. I'll try to raise a PR for docs in the rm file. Thanks

After playing around a bit I found out that the sample is there in the example code, yet styling and other features are lack in the doc. I'll try to raise a PR for docs in the rm file. Thanks

@charitha95 Thanks. I will welcome your PR

@charitha95 Thanks. I will welcome your PR


bugfix: Issue #34

TypeError: Cannot read properties of null (reading 'isSelfCloseTag')
Fix and test

Any chance we can bump this? Ran into the exact same issue, would love to be able to update.

Would love to see this acknowledged by the repo owner


Load Balancing

Hello! I have been using this docker for a while now. It is truly great. There could be two native integrations that should be relatively straightforward. NGINX supports load balancing to servers natively via round robin, health, etc. Right now, if I want to do load balancing, I have to forward traffic to a bare NGINX docker. Is there a way to add native GUI support for load balancing within NginxProxyManager?
Simple Nginx config for load balancing:
upstream {
server hostname:port;
server url;
}
server {
listen 80;
server_name <url to be balanced>;

location / {
    proxy_pass http://<name>;
}

}

This is already planned for version  #156 . A release is not known yet as i know

I was looking into opening this issue glad someone did already. Not having load balancing options calls for installing load balancer behind it. Which kinda beats the purpose of using nginx proxy manager altogether. We need load balancing options for sure.

Hi, any news about load balancing feature?

waiting on release date for load balancing

Not enabling the load balancer misses the mark which results in letting this proxy look immature compared to its competitors. Would love to see this as well.

This would make NPM perfect (ok almost)  But I sure am missing this feature.

To share my discovery and what I did instead: If you use pfSense on your network for a good solid firewall, you have a HAProxy module available. It's a reverse proxy with load balancer. Having a solid firewall VM is recommend and pfSense is really a free enterprise solution that does its job very well. No need to use nginx for load balancing.

To share my discovery and what I did instead: If you use pfSense on your network for a good solid firewall, you have a HAProxy module available for download. It's a reverse proxy with load balancer and it's fully integrated into pfSense, so you don't have to deal with the HAProxy configuration files, since the module uses the GUI of pfSense to integrate it properly.
Having a solid firewall VM is recommend and pfSense is really a free enterprise solution that does its job very well. No need to use nginx for load balancing unless you want to split firewall from load balancer.

the big difference here is that haproxy cannot load-balance UDP!

Same problem like @ne0YT has explained, HA-Proxy in a higher version is able to load UDP, but not the version of PF-Sense FW. Therefore in NPM it would be a very good placement too to have alternatives. Especially when it comes to Syslog UDP loadbalancing. DNS UDP can be done quite smoother with PowerDNS for shure.

But is there a real load balancing? It looks like there's only NAT mode on haproxy for UDP.
so really adding this already available feature to the GUI would just be very nice

as there is no healthcheck on free nginx it doesnt make to much sense to have load balancing

This is completely incorrect. NGINX free version can tell when a forward host is offline and not send traffic to it. If set multiple hosts in an upstream configuration, NGINX (The free version) will only send traffic to the hosts that are online.

I avoid putting unnecessary tasks on a router. It already has a task of routing/filtering millions of packets per second as the router, firewall and DNS. Tacking on a reverse proxy is too much IMO. In addition, running the reverse proxy where your dockers are means you can route via hostname and not IP addresses.

This is not the right way of thinking. Yes there is a finite list PPS that a router can handle, however, Since PFSense is purpose built (for many things in fact). If you run PFsense on a system that is resilient enough, you should not have to worry about limitations. If being used in a production enterprise environment I would look into setting up multiple PFsense boxes in HA mode to lighten the load across the board.

Hi Guys, I know there is another way to achieve load balancing,
First you need to create a custom directory under the data/nginx directory corresponding to the server where you deploy npm, and then create a file named http.conf in the custom directory , the content of the file is upstream your_server { server ...  It seems like you cracked it but I am missing something as it does not work for me

@tomitrescak The custom configuration needs to be in the data/nginx/custom directory. If not, you need to create one, and then create a http.conf file in this directory. According to the information you provide, the file content should be upstream backend {
server backend1.example.com;
server backend2.example.com;
check interval=5000 rise=2 fall=3 timeout=2000;
}, and finally go back to your npm web background interface, select the corresponding proxy host, and then add location / { in the corresponding advanced option
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}

@alex14dark adding this to my custom config leads to "Internal Error" in NPM:
location / {
      proxy_pass http://jobiq;
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
}

Moreover there is a big fat warnign on the custom config page:
** Please note, that any add_header or set_header directives added here will not be used by nginx. You will have to add a custom location '/' and add the header in the custom config there.**

I add this as a separate post as I managed to SOLVE this thanks to @alex14dark and ChatGPT :)
In data/nginx/custom you set up your upstream, avoid the server directive (more info at https://nginxproxymanager.com/advanced-config/#custom-nginx-configurations)
upstream jobiq {
    server server1.com;
    server <IP_ADDRESS>:3020 backup; # or whatever is your config
}

In the "custom configuration" of your proxy add the following:
location / {
      proxy_pass http://backend;
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
}

MORE INFO for noobs like myself
If you are redirecting to another server such as server1.com in the configuration above, make sure you configure the endpoint only as HTTP in the NPM, and do not request any HTTPS configuration. Maybe someone smarter can explain why, I do not know. All I know is that if the redirected endpoint was configured with HTTPS I was getting a "too many redirects" error. Maybe this is a huge security hole, please let me know if that is so.

@tomitrescak Glad to be able to help you!

@tomitrescak does the access list still work while using your custom configuration?

This is the Solution for me in this point:
https://silicon.blog/2023/05/17/how-to-load-balance-your-servers-using-nginx-proxy-manager-and-cloudflare/

Thanks! This is awesome
From: leuedaniel @.>
Reply-To: NginxProxyManager/nginx-proxy-manager @.>
Date: Friday, January 19, 2024 at 2:51 PM
To: NginxProxyManager/nginx-proxy-manager @.>
Cc: Austin Leath @.>, Comment @.***>
Subject: Re: [NginxProxyManager/nginx-proxy-manager] Load Balancing (Issue #1963)
This is the Solution for me in this point:
https://silicon.blog/2023/05/17/how-to-load-balance-your-servers-using-nginx-proxy-manager-and-cloudflare/
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>

This is the Solution for me in this point: https://silicon.blog/2023/05/17/how-to-load-balance-your-servers-using-nginx-proxy-manager-and-cloudflare/

This looks promising, however I am interested in UDP load balancing and I suppose this method won't work for this use case, right?

Is this still the best workaround? I have 5 servers that server the same traffic and i would like to map them to a single URL using nxing proxy manager

Instead of waiting NPM support load balancing, I customize an image based on https://github.com/caprover/nginx-reverse-proxy, so you just connect your domain to this service
This is an example to use the image customized: heatmob/nginx-reverse-proxy
version: '3.8'

services:
  test1:
    image: strm/helloworld-http
  test2:
    image: strm/helloworld-http
  test3:
    image: strm/helloworld-http

  app:
    image: heatmob/nginx-reverse-proxy
    environment:
      UPSTREAM_HTTP_ADDRESS: 'server test1 weight=1;server test2 weight=2;server test3 weight=3;'
      CLIENT_MAX_BODY_SIZE: 256M

Instead of wait NPM to support load balancing, I customize an image based on https://github.com/caprover/nginx-reverse-proxy, so you just connect your domain to this service
This is an example to use the image customized: https://hub.docker.com/r/heatmob/nginx-reverse-proxy
version: '3.8'

services:
  test1:
    image: strm/helloworld-http
  test2:
    image: strm/helloworld-http
  test3:
    image: strm/helloworld-http
  load-balancer:
    image: heatmob/nginx-reverse-proxy
    environment:
      UPSTREAM_HTTP_ADDRESS: 'server test1 weight=1;server test2 weight=2;server test3 weight=3;'
      CLIENT_MAX_BODY_SIZE: 256M

Hello everyone, it's working for me.
1.

2.

upstream apimeserverpool{
ip_hash;
     server <IP_ADDRESS>:8888 max_fails=3 fail_timeout=60s;
     server <IP_ADDRESS>:8888 max_fails=3 fail_timeout=60s;
     keepalive 64;
}

server {
 listen 80;
 listen [::]:80;

 listen 443 ssl http2;
 listen [::]:443 ssl http2;

ssl on;
ssl_stapling on;
ssl_stapling_verify on;
 server_name apimeserver.com;

 # Custom SSL
 ssl_certificate /data/custom_ssl/npm-3/fullchain.pem;
 ssl_certificate_key /data/custom_ssl/npm-3/privkey.pem;

 # Asset Caching
 include conf.d/include/assets.conf;

HSTS (ngx_http_headers_module is required) (63072000 seconds = 2 years)
add_header Strict-Transport-Security $hsts_header always;
Force SSL
include conf.d/include/force-ssl.conf;

access_log /data/logs/proxy-host-esb_access.log proxy;
error_log /data/logs/proxy-host-esb_error.log warn;
location / {

HSTS (ngx_http_headers_module is required) (63072000 seconds = 2 years)
add_header Strict-Transport-Security $hsts_header always;
  proxy_pass http://apimeserverpool;
  proxy_set_header Host $host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header X-Forwarded-Proto $scheme;
}

}

This is the Solution for me in this point: https://silicon.blog/2023/05/17/how-to-load-balance-your-servers-using-nginx-proxy-manager-and-cloudflare/

Not an expert here... but, it looks like the modification of the conf files in the container as instructed here should be mounted as external files in the docker startup? Also, I think this will break other non-load balanced sites that I setup? Or at least I will manually have to add the header config to each one, because we comment out all the headers in the local proxy.conf?

Anyone get those steps to work recently? It seems like wherever I try to call "upstream" from I get errors like this, "_warning   nginx: [emerg] "upstream" directive is not allowed here in..."_


PR: Add the ability to copy a figure from the plot widget

Description of Changes

[x] Wrote at least one-line docstrings (for any new functions)
[ ] Added unit test(s) covering the changes (if testable)
[x] Included a screenshot (if affecting the UI)

add copy figure button to toolbar of FigureBrowser
add context menu for copy figure to FigureCanvas
add shortcut (Ctrl +C) for copy figure to FigureBrowser

(the blinking figure is slow in gif but fast in real)
Issue(s) Resolved

Fixes #8468
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct: ok97465

How can I figure out the cause of the travis CI Build failed?

@ok97465 As for the test failures, I'm not sure; your branch looks up to date with the latest master as of the time of @ccordoba12 's comment and it doesn't look related, but I can't be certain.

@CAM-Gerlach Thank you for your feedback.
I don't know english well. So I use google translator.
If there is rude setence, I am sorry.

I don't know english well. So I use google translator.

Well, either you or Google Translate is doing a very good job :+1:

@CAM-Gerlach Please review the last commit.

@CAM-Gerlach I tested shortcut in (pyqt 5.6, qt 5.6 python 3.6.5 qtpy 1.5.2 windows 7) and (pyqt 5.9.2 qt 5.9.7 qtpy 1.4.1 python 3.6.5 linux manjaro-<IP_ADDRESS>). But the shortcut works in my platform. Could you tell me your platform?

Could you tell me your platform?

PyQt 5.9.2, Qt 5.9.6, Python 3.6.7, QtPy 1.5.1 Windows 8.1

Could you try again after changing shortcut another?

Already done:

I tried changing it in the preferences to something else and back, but it still doesn't work.

However, after I deleted the branch, re-pulled, and tried with a clean prefs file, copying with Ctrl-C does work now. It also works on my Fedora 28 VM, so I think that's not a problem then, You should be good to go now from me, though @ccordoba12 will also want to look at it.
Thanks!

@CAM-Gerlach
Thank you for your review. I learned a lot from your review. I wanted to help your team, but I think I've bothered you. Next time, I'll submit a better code from the beginning.

I wanted to help your team, but I think I've bothered you.

Not at all, not at all; you've been a big help! I choose to do these reviews after all since I like giving detailed feedback. In fact, I often worry I'm too critical of new contributors, such that there won't be a "next time" for them. Your code was quite good to begin with, requiring much less alternation than new contributors; aside from some minor comments that were mainly just related to specific project standards rather than code quality very little needed to be changed. I'm sure next time it will be even better, but that's because there's always a first time for everything and it already was very good.
Again, thanks so much!

@ok97465, please rebase again in top of the latest master. The failing test should pass now.


Update API specification

Description
API specification document is outdated. Update it to match the latest working of the library.
Link to the current API specification https://github.com/iotaledger/wallet.rs/blob/dev/specs/wallet-ENGINEERING-SPEC-0000.md
TODO:

Update interfaces to match the latest including all parameters;
Add new methods exposed by the library that are not included in the specification;
Update the events section. Add events that are supported by the library and remove the unnecessary ones;
Update the storage specification to match the latest;
Update the account syncing section;
Update the polling section;
Add a section for automatic funds / outputs consolidation;
Add a section for legacy to chrysalis migration.

Instead of making these changes directly to the current specification, create a new document with a bumped version.

Probably postpone this, as ideally the API specification should be integrated into the source code and generated by rustdoc, rather than maintaining an extra document.

Probably postpone this, as ideally the API specification should be integrated into the source code and generated by rustdoc, rather than maintaining an extra document.

You are right and we had a similar discussion about this before. However, as there is no spec to match the current state of the wallet lib, we decided to still do it. Here is a PR for it.
But after this, as you said, the spec should be integrated into the source code and should be automatically generated.


e2e test failed with AdmissionWebhook

What steps did you take and what happened:
sonobuoy gen --e2e-repo-config custom-repos.yaml \
  --sonobuoy-image $PRIVATE_REG/sonobuoy:v0.17.2 \
  --kube-conformance-image $PRIVATE_REG/conformance:v1.17.3 > modified-manifest.yaml

sonobuoy run --mode=certified-conformance -f modified-manifest.yaml

e2e test failed
[root@centos02 bin]# sonobuoy results $results
Plugin: e2e
Status: failed
Total: 4843
Passed: 256
Failed: 22
Skipped: 4565

Failed tests:
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should be able to deny pod and configmap creation [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should mutate custom resource with different stored version [Conformance]
[sig-api-machinery] CustomResourcePublishOpenAPI [Privileged:ClusterAdmin] works for multiple CRDs of same group but different versions [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] listing mutating webhooks should work [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] patching/updating a mutating webhook should work [Conformance]
[sig-api-machinery] CustomResourcePublishOpenAPI [Privileged:ClusterAdmin] works for CRD preserving unknown fields in an embedded object [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should mutate custom resource with pruning [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should deny crd creation [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should be able to deny custom resource creation, update and deletion [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should not be able to mutate or prevent deletion of webhook configuration objects [Conformance]
[sig-api-machinery] CustomResourceConversionWebhook [Privileged:ClusterAdmin] should be able to convert a non homogeneous list of CRs [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should mutate pod and apply defaults after mutation [Conformance]
[sig-api-machinery] CustomResourceConversionWebhook [Privileged:ClusterAdmin] should be able to convert from CR v1 to CR v2 [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should unconditionally reject operations on fail closed webhook [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should mutate configmap [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should mutate custom resource [Conformance]
[sig-api-machinery] Aggregator Should be able to support the 1.10 Sample API Server using the current Aggregator [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should honor timeout [Conformance]
[sig-api-machinery] CustomResourcePublishOpenAPI [Privileged:ClusterAdmin] removes definition from spec when one version gets changed to not be served [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] should be able to deny attaching pod [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] patching/updating a validating webhook should work [Conformance]
[sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] listing validating webhooks should work [Conformance]

Plugin: systemd-logs
Status: passed
Total: 5
Passed: 5
Failed: 0
Skipped: 0

What did you expect to happen:
e2e test success

Sonobuoy version: v0.17.2
Kubernetes version: (use kubectl version):

# kubectl version --short
Client Version: v1.17.3
Server Version: v1.17.3

Kubernetes installer & version:
kubeadm v1.17.3

Cloud provider or hardware configuration:
MEM:4G
DISK:150G

OS (e.g. from /etc/os-release):

[root@centos02 bin]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

Sonobuoy tarball (which contains * below)
202003031143_sonobuoy_3062d767-82f6-4d8f-9f77-f2527f70eb4c.tar.gz

i don't know what mean it is with the error, how can i resolve it ,thanks?

So those failure logs that start with {"msg":"FAILED [sig-api-machinery] AdmissionWebhook... are just formatted output to help report the progress that the test failed (the raw logs aren't very easy for machines to process as the tests run).
To diagnose the failure the first thing you should do is just check the e2e.log file around your failures.
The webhooks keep failing with:
FAIL: waiting for webhook configuration to be ready

I'd check the kube-system logs to see if you can see the reason for the webhooks never come up.. If nothing stands out right away; often my next step is (if possible) try to manually execute the steps like the test does (e.g. create a webhook that does xyz and see the result). This way you can effectively step individually through the API calls and see how the server responds.

why it's v1.17.3-beat?
Summarizing 22 Failures:

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should be able to deny pod and configmap creation [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:911

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should mutate custom resource with different stored version [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:1865

[Fail] [sig-api-machinery] CustomResourcePublishOpenAPI [Privileged:ClusterAdmin] [It] works for multiple CRDs of same group but different versions [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/crd_publish_openapi.go:314

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] listing mutating webhooks should work [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:682

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] patching/updating a mutating webhook should work [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:528

[Fail] [sig-api-machinery] CustomResourcePublishOpenAPI [Privileged:ClusterAdmin] [It] works for CRD preserving unknown fields in an embedded object [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/crd_publish_openapi.go:225

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should mutate custom resource with pruning [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:1865

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should deny crd creation [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:2096

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should be able to deny custom resource creation, update and deletion [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:1788

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should not be able to mutate or prevent deletion of webhook configuration objects [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:1389

[Fail] [sig-api-machinery] CustomResourceConversionWebhook [Privileged:ClusterAdmin] [It] should be able to convert a non homogeneous list of CRs [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/crd_conversion_webhook.go:493

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should mutate pod and apply defaults after mutation [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:1055

[Fail] [sig-api-machinery] CustomResourceConversionWebhook [Privileged:ClusterAdmin] [It] should be able to convert from CR v1 to CR v2 [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/crd_conversion_webhook.go:493

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should unconditionally reject operations on fail closed webhook [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:1303

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should mutate configmap [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:990

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should mutate custom resource [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:1865

[Fail] [sig-api-machinery] Aggregator [It] Should be able to support the 1.10 Sample API Server using the current Aggregator [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/aggregator.go:391

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should honor timeout [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:2225

[Fail] [sig-api-machinery] CustomResourcePublishOpenAPI [Privileged:ClusterAdmin] [It] removes definition from spec when one version gets changed to not be served [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/crd_publish_openapi.go:463

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] should be able to deny attaching pod [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:963

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] patching/updating a validating webhook should work [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:432

[Fail] [sig-api-machinery] AdmissionWebhook [Privileged:ClusterAdmin] [It] listing validating webhooks should work [Conformance]
/workspace/anago-v1.17.3-beta.0.40+c94b9acd4b784f/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/apimachinery/webhook.go:608

Ran 278 of 4843 Specs in 6948.793 seconds
FAIL! -- 256 Passed | 22 Failed | 0 Pending | 4565 Skipped
--- FAIL: TestE2E (6949.04s)
FAIL

Ginkgo ran 1 suite in 1h55m52.579565999s
Test Suite Failed
2020/03/03 13:39:39 Saving results at /tmp/results
2020/03/03 13:39:40 running command: exit status 1
+ ret=1
+ exit 1

how  e2e test  request webhook?
is that v1.17.x have change the way?
https://kubernetes.io/docs/setup/release/notes/#api-machinery
https://github.com/kubernetes/kubernetes/pull/80883
When registering with a 1.17+ API server, MutatingWebhookConfiguration and ValidatingWebhookConfiguration objects can now request that only v1 AdmissionReview requests be sent to them. Previously, webhooks were required to support receiving v1beta1 AdmissionReview requests as well for compatibility with API servers <= 1.15.
When registering with a 1.17+ API server, a CustomResourceDefinition conversion webhook can now request that only v1 ConversionReview requests be sent to them. Previously, conversion webhooks were required to support receiving v1beta1 ConversionReview requests as well for compatibility with API servers <= 1.15. (#82707, @liggitt)

here some error
 Failed to watch *v1.Namespace: unknown (get namespaces)\nE0304 04:29:18.607742
          \      1 reflector.go:322] k8s.io/sample-apiserver/vendor/k8s.io/client-go/informers/factory.go:87:
          Failed to watch *v1beta1.MutatingWebhookConfiguration: unknown (get mutatingwebhookconfigurations.admissionregistration.k8s.io)\nE0304
          04:29:18.613987       1 reflector.go:322] k8s.io/sample-apiserver/vendor/k8s.io/client-go/informers/factory.go:87:
          Failed to watch *v1beta1.ValidatingWebhookConfiguration: unknown (get validatingwebhookconfigurations.admissionregistration.k8s.io)\nE0304
          04:29:19.591559       1 reflector.go:322] k8s.io/sample-apiserver/vendor/k8s.io/client-go/informers/factory.go:87:
          Failed to watch *v1.Namespace: unknown (get namespaces)\nE0304 04:29:19.642852
          \      1 reflector.go:322] k8s.io/sample-apiserver/vendor/k8s.io/client-go/informers/factory.go:87:
          Failed to watch *v1beta1.MutatingWebhookConfiguration: unknown (get mutatingwebhookconfigurations.admissionregistration.k8s.io)\nE0304

Sorry, this goes beyond my expertise. You could ask in #sig-apimachinery in slack.
One question they would definitely ask would be how you set up your cluster. If set up manually rather than with some common tools then misconfiguration is often suspected.

why it's v1.17.3-beta?

Im guessing that is just a slightly confusing naming based on the build pipeline. I wouldn't worry strongly about that. Also I can see from your tarball it is using the image <IP_ADDRESS>/sonobuoy/conformance:v1.17.3 so I would just double check that you grabbed the correct version of the image. Beyond that I wouldn't worry.

change network plugin from flannel to calico, the test passed!


[68000] Trap instruction order bug

Decompiler has a bug related to order of instructions if trap instruction used.

Decompiler shows me the following:

As you can see here, order of instructions is wrong.

This may not just be the 68000. I saw something similar in arm yesterday.

Seems, that happens, because trap instruction is not an instruction.:)
Here, I tried to change instruction flow via Modify instruction flow...:

from 68000.sinc: line 1685
:trap "#"^op03	is opbig=0x4e & op67=1 & op45=0 & op03	  { vector:1 = op03; __m68k_trap(vector); }
trap is just a "string output line", which is not altering/using any prior lines, thus might be seen has having no positional dependency. Would be interesting to know if that a bug in the decompiler allow pcodeop's to be rearranged, or something missing from the constructor of the instruction.


Overridden github URL not honored for subpackages

$ govendor fetch golang.org/x/crypto/...::github.com/charles-dyfis-net/crypto@external-signing
goError: Failed to fetch package "golang.org/x/crypto/openpgp": No label found for specified version "external-signing" from golang.org/x/crypto/openpgp::golang.org/x/crypto/openpgp@external-signing

Note the ::golang.org/x/crypto/openpgp@external-signing, whereas the user-specified URL was github.com/charles-dyfis-net/crypto.

Acknowledged. I'm a little bit busy, but I plan to address this very soon.

Thank you. In the interim, I've worked around this by fixing up my vendor.json by hand.


Payload Functions: Formalise ability to drop messages in Encoder

Unlike uplink, we don't have a separate validator function for downlink to drop invalid messages.
Simply by trying out I found that only if I return an empty array ([]) the message will indeed be dropped.
I'd suggest we:

Expand the behaviour to drop on any falsy return value (e.g. null and false)
Formalise and document this, with false as most verbose example.

I've created https://github.com/TheThingsIndustries/dashboard/issues/77 for 2)

Or maybe just throwing/returning an error? Will work for both uplink and downlink.

@htdvisser then there wouldn't be a way anymore to tell the difference between some kind of runtime error (pass the wrong stuff to some JS API e.g.) and the decision to drop the message would there?
I also think we should keep the required knowledge on JS minimal.

The behaviour would be the same for both cases: stop processing.
The problem with a falsey value is that 0 is a falsey value, while I might want to switch the LED on my Arduino off.

But when I'm testing the payload function I want to know if it was dropped or an error occurred.
The encoder needs to return an array to be valid so if you want to send 0 you need to return [0] which is not falsy

The data comes from the application domain. Let's assume it's correctness. I don't really see a use case when an application wants to publish a message and that the network decides it's invalid based on business logic that is not present in the application.
The reason why there is a validator for uplink is that you might want to filter out measurement outliers from further processing. You can do this in the application as well, in which case you don't use the validator.
I'd rather drop the validator from uplink, than introduce a validator for downlink.

I'd rather drop the validator from uplink

For uplinks one can authorize others to access the MQTT data. So, I think it's nice to have a generic validator that works for all who are authorized to use the MQTT data.
For downlinks, I assume one can NOT authorize others to send downlinks? If true, then please just discard or delete the rest of this very comment.
However, if one can authorize others for downlinks†:

The data comes from the application domain. Let's assume it's correctness.

If coming from a (trusted) third party, then I guess "assume its correctness" might be false. So then a documented mechanism to drop downlinks will indeed be nice.
†) I hope not, as that could even yield multiple downlinks for one uplink... Chaos.

For the record, the reason there is an optional payload function for conversion and validation, separate for decode is:

Interchangeability with other ways to decode, e.g. Google Protocol Buffers while keeping conversion and validation in place
Use generic decoding mechanism and use the converter to rename fields

The reason why there is no converter and validator for downlink is because I want us to support zero calculations and checks on the node to save power. By using payload functions, we allow developets to do this in one place, before making the data available to one or more integrations. It's optional and doesn't apply to applications.

If we don't formalise, then shouldn't we error if the encoder doesn't return what we want it to return?

Yes, like we should if payload function errors. I'll open a new issue for this.


Update README to include install/confirm info

Add install as a package instructions
Add install using CDN instructions
Add confirmation instructions

Appreciate the contribution, but installation instructions are already provided here. Closing so as not to duplicate.


Minimize the Heights I - POTD | 23-Nov-2024

Minimize the Heights I
Link
Difficulty: Medium
Given a positive integer k and an array arr[] denoting heights of towers, you have to modify the height of each tower either by increasing or decreasing them by k only once.
Find out what could be the possible minimum difference of the height of shortest and longest towers after you have modified each tower.
Note: A slight modification of the problem can be found here.
Examples:
Input: k = 2, arr[] = [1, 5, 8, 10]
Output: 5
Explanation: The array can be modified as [3, 3, 6, 8]. The difference between the largest and the smallest is 8 - 3 = 5.
Input: k = 3, arr[] = [3, 9, 12, 16, 20]
Output: 11
Explanation: The array can be modified as [6, 12, 9, 13, 17]. The difference between the largest and the smallest is 17 - 6 = 11.

Constraints

1 ≤ k ≤ 104
1 ≤ number of towers ≤ 105
0 ≤ arr[i] ≤ 105

Solved
class Solution:
    def getMinDiff(self,k, arr):
        # code here
        arr.sort()
        n=len(arr)
        ans=arr[n-1]-arr[0]
        for i in range(n):
            mi=min(arr[0]+k,arr[i]-k)
            mx=max(arr[i-1]+k,arr[n-1]-k)
            ans=min(ans,mx-mi)
        return ans


Add technique Ensemble Learning

Add the technique Ensemble Learning.
Adds an additional technique related to #215

@lzehl I updated the capitalization.

@skoehnen I've updated the capitalization now and made some small changes to the definition. Please double check and let me know if I can merge


Are there any plans for a consul based Lock implementation?

Since there is already a spring-cloud-consul project and due to its similarity to etcd i am just curious if there are any plans for a spring-cloud-cluster-consul project?

Answer to myself, check PRs: #17


RNGADBannerView does not exist?

After Build , Run. I have 'RNGADBannerView does not exist' Error.
Anybody know way to fix the error?
Log is.

Invariant Violation: Native component for "RNGADBannerView" does not exist
This error is located at:
in RNGADBannerView (at RNAdMobBanner.js:51)
in AdMobBanner (at App.js:38)
in RCTView (at View.js:78)
in View (at App.js:33)
in App (at renderApplication.js:35)
in RCTView (at View.js:78)
in View (at AppContainer.js:102)
in RCTView (at View.js:78)
in View (at AppContainer.js:122)
in AppContainer (at renderApplication.js:34)
getViewConfig
requireNativeComponent.js:112:6
get$1
ReactNativeRenderer-dev.js:13525:17
createInstance
ReactNativeRenderer-dev.js:13688:27
completeWork
ReactNativeRenderer-dev.js:10152:14
completeUnitOfWork
ReactNativeRenderer-dev.js:12209:10
performUnitOfWork
ReactNativeRenderer-dev.js:12372:32
workLoop
ReactNativeRenderer-dev.js:12384:43
renderRoot
ReactNativeRenderer-dev.js:12427:17
performWorkOnRoot
ReactNativeRenderer-dev.js:13034:34
performWork
ReactNativeRenderer-dev.js:12951:26
performSyncWork
ReactNativeRenderer-dev.js:12913:16
requestWork
ReactNativeRenderer-dev.js:12799:6
scheduleWorkImpl
ReactNativeRenderer-dev.js:12666:24
scheduleWork
ReactNativeRenderer-dev.js:12622:28
scheduleRootUpdate
ReactNativeRenderer-dev.js:13324:17
_updateContainerAtExpirationTime
ReactNativeRenderer-dev.js:13360:6
updateContainer
ReactNativeRenderer-dev.js:13385:8
render
ReactNativeRenderer-dev.js:14119:35
renderApplication
renderApplication.js:58:21
run
AppRegistry.js:104:10
runApplication
AppRegistry.js:196:26
__callFunction
MessageQueue.js:353:47

MessageQueue.js:118:26
__guardSafe
MessageQueue.js:316:6
callFunctionReturnFlushedQueue
MessageQueue.js:117:17

@soorix same for me, how to resolve this?

@soorix how to resolve this. ? Please answer me. Thanks.

I had the same problem. Once you installed you need to link the library. it is explained here. https://facebook.github.io/react-native/docs/linking-libraries-ios.html#content

I also face the same problem. I share a link, it might be helpful.
Pls Refer this link:
https://react-native-solutions.blogspot.com/2018/07/how-to-create-react-native-app-with.html


Support bedrock upgrade

Description

Type of change

[ ] Docs change / dependency upgrade
[x] Configuration / tooling changes
[x] Refactoring
[ ] 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 change)
[ ] Requires changes in customer code

High-level change(s) description - from the user's perspective

Related Issue(s)
Fixes
Related pull request(s)

@LayneHaber I merged the hotfix into prod and merged prod back into main. Closing this one. Reopen if still required.


boinc: 8.0.1 -> 8.0.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://repology.org/project/boinc/versions.
meta.description for boinc is: Free software for distributed and grid computing
meta.homepage for boinc is: https://boinc.berkeley.edu/
Updates performed

Version update

To inspect upstream changes
Impact
Checks done

built on NixOS
The tests defined in passthru.tests, if any, passed
found 8.0.2 with grep in /nix/store/linjmfspajjy60mmqvrjgjfqjbv3np5j-boinc-8.0.2
found 8.0.2 in filename of file in /nix/store/linjmfspajjy60mmqvrjgjfqjbv3np5j-boinc-8.0.2

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

3 total rebuild path(s)

3 package rebuild(s)

First fifty rebuilds by attrpath

boinc
boinc-headless

Instructions to test this update (click to expand)

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

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

Or:
nix build github:r-ryantm/nixpkgs/264eb2fdd0f7bf46cd074d80e745feea0da48a5e#boinc

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

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

2 packages built:

boinc
boinc-headless

Maintainer pings
cc @Luflosi for testing.

Result of nixpkgs-review pr 314491 run on x86_64-linux 1

2 packages built:

boinc
boinc-headless


CYP-4911 - updated pullrequest builder for Jenkins 2.7.2

merged upstream fork into this fork of GHPRB.   This resolved issues with talking with GitHub and Jenkins 2.7.2 and was built on my laptop and manually installed.   This needs to merge to master.

merged into master - and copied built .hpi file to s3://sequoia-install/jenkins/ and renamed the existing one to ghprb.hpi.20160824 for history.


Pluralize "Package" in the warning message for packages not in AUR

Case 1: single package
command: $ ./pacaur -S google-chrome | head -n1
expected:
:: Package google-chrome not found in repositories, trying AUR...
actual:
:: Package(s) google-chrome not found in repositories, trying AUR...
Case 2: multiple packages
command: $ ./pacaur -S google-chrome gimp-plugin-registry | head -n1
expected:
:: Packages google-chrome gimp-plugin-registry not found in repositories, trying AUR...
actual:
:: Package(s) google-chrome gimp-plugin-registry not found in repositories, trying AUR...

Hmm, I'm noticing that this change may break translations. Keep that in mind before you merge.

Yes it indeed does. I usually avoid to change translatable strings for minor reasons, but I'll have a look at the next major release (4.7 or 5.0, whichever comes first).

Done in a9d1df9270f5a1ac79a2b2a46cbf0cd5cc5ea68b.


Error using Vision kit on a clean raspbian setup

Hello,
I am trying to run one of the samples of the AIY vision kit on a clean setup of raspbian.
I was able to install the python library and install all other dependencies.
However, when I try to run an image classification demo, I get the following error:
FileNotFoundError: [Errno 2] No such file or directoy: '/dev/vision_spicomm'
So I expect I am missing some service / driver installation, but where do I get it from?
Thanks,
Max

@maxritter We are going to release new image with clear instructions how to setup on clean Raspbian. Regarding your error: you need to install appropriate kernel drivers for the VisionKit. You can get the list of installed AIY debian packages by running dpkg -l | grep -i aiy.

So I am running into the same issue. In the meantime until the new instruction set comes down, can you point us to where we could obtain the /dev/vision_spicomm files? They weren't present on the included sd card after following the instructions here.

@dmitriykovalev I see. I appreciate the quick response! Maybe I'll go back through the build install process and see if it corrects itself.

@nicknauert HACKING.md file has been updated and you can get this file at https://github.com/google/aiyprojects-raspbian/blob/aiyprojects/HACKING.md
This should be helpful in installing AIY packages on clean Raspbian.

@maxritter Please check new instructions! Closing this one for now.

@dmitriykovalev @LuwkasLima I think you should possibly reopen this. It seems to me the underlying problem is that aiy-dkms doesn't have proper triggers set in its deb file to force it to reinstall when the kernel is upgraded.  I suspect @LuwkasLima encountered the same thing I just encountered when I did an "apt-get dist-upgrade".  The raspbian folks updated the kernel, so a new kernel came down (yay) but it didn't rebuild and reinstall the aiy-dkms kernel modules.
@LuwkasLima the workaround I used was "apt-get --reinstall install aiy-dkms" to force it.

@geeksville You are right, there are issues with current debian packages, we are going to fix this in the next SD card release which should happen pretty soon.

@dmitriykovalev btw your kit is really cool.  I just spent an afternoon yesterday using it to make this twitterbot: hummingbot.  Photo here. It worked great and was super easy, if there is any interest I wouldn't mind doing a small writeup.
Keep rocking it!

@geeksville Thanks! Your project looks very cool! Would be nice if you can describe it at https://www.hackster.io/google/products/aiy-vision

@dmitriykovalev sure thing here you go: https://www.hackster.io/projects/1295f2.  I'm an ex-googler and if you ever do betas on new hw and want other demos I'd love to give it a shot. (sorry for spamming this issue btw ;-) ).

@geeksville You are right, there are issues with current debian packages, we are going to fix this in the next SD card release which should happen pretty soon.

@dmitriykovalev My daughter(12 years) is working hard on her Robot Guide Dog which has Aiy-Vision Bonnet. she is experiencing the exact same problem.
FileNotFoundError: [Errno 2] No such file or directoy: '/dev/vision_spicomm'
She searched online for solutions but no luck at all. Now she is wondering when the new SD Card release shall be available so she can continue to work on her project :) Thanks
Project Pages:
https://selinoid.wordpress.com/2018/10/11/english-coderdojo-coolest-projects-2018-1/
https://www.raspberrypi.org/blog/coolest-projects-international-2018/

@geeksville Thanks for sharing your project on Hackster! Unfortunately for now all new hw testing is internal. Please take a look at https://aiyprojects.withgoogle.com/edge-tpu/ by the way :)

@RootAculus New SD card release is already available https://github.com/google/aiyprojects-raspbian/releases/tag/v20181116  If you are trying to set everything up on the original Raspbian image, please try to follow steps in HACKING.md.
iC4U looks great!

We have updated our debian packages, please try to follow instructions in HACKING.md and /dev/vision_spicomm should be available after installing aiy-vision-dkms package.

I must not have done it in the right order, after following HACKING.md (upgrading from August 2018 SD card image release), I had to reinstall the package before /dev/vision_spicomm finally appeared.
sudo apt install --reinstall aiy-vision-dkms
sudo reboot

Thanks for the instructions!

@RootAculus New SD card release is already available https://github.com/google/aiyprojects-raspbian/releases/tag/v20181116 If you are trying to set everything up on the original Raspbian image, please try to follow steps in HACKING.md.
iC4U looks great!

@dmitriykovalev Thanks again...
She created a new SD Card with the latest released as you suggested.  This time she received an error message that suggests no camera connection.  She tried the camera(v 2.1) on Rpi 3B+ it worked, then she tried a different cable between bonnet and camera, this time camera is recognized but she received the following error message:
"No data recevied from sensor. Check all connections, "
picamera.exc.PiCameraRuntimeError: No data recevied from sensor. Check all connections, including the SUNNY chip on the camera board
We checked the connections including the one on the camera, everything seems OK.
Any recommendations?
Thanks!

@RootAculus Are you trying to run VisionBonnet connected to Pi 3B+ ?  There is an issue here, it doesn't work on 3B+ but it works on 3B if you can find an additional flex cable. Can you try to check that everything works on Pi Zero?

same error here. brand new pi vision kit out of the box, and I downloaded the version 181116 and flashed it on a sd-card from here https://github.com/google/aiyprojects-raspbian/releases
I don't manage to get any examples in the folder ~/AIY-projects-python/src/examples/vision up and running

same error here: FileNotFoundError: [Errno 2] No such file or directoy: '/dev/vision_spicomm'.
this is with a brand new pi vision kit out of the box, and I downloaded the version 181116 and flashed it on a sd-card from here https://github.com/google/aiyprojects-raspbian/releases
I don't manage to get any examples in the folder ~/AIY-projects-python/src/examples/vision up and running
for example: when i run

sudo python3 face_camera_trigger.py

i get this
FileNotFoundError: [Errno 2] No such file or directoy: '/dev/vision_spicomm'.

Same result here. I found that the problem occurs if on first startup I go through the configuration UI and accept the offer to update the software. If I boot from a fresh copy of this image (181116) and choose not to update the Raspbian software, then the AIY vision stuff works. It's the update that triggers the FileNotFoundError: [Errno 2] No such file or directoy: '/dev/vision_spicomm_'. error.

I am seeing the same as the above. Previously I was running on an older image without issue, I upgraded it to the latest today and now I suffer the same as the others.

FileNotFoundError: [Errno 2] No such file or directory: '/dev/vision_spicomm'

I have used a new image, and also followed HACKING.md. neither work

Having similar troubles here in July 2019, bummer! No joy at all.

Excitedly got my pi zero w up and running with AIY, all working great except when trying to use any of the demos or camera - I get the same error as everyone else here
FileNotFoundError: [Errno 2] No such file or directory: '/dev/vision_spicomm'
Any update on this?


Remote tunnel entry needs checkbox when tunnel is running

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

版本: 1.75.0 (system setup)
提交: e2816fe719a4026ffa1ee0189dc89bdfdbafb164
日期: 2023-02-01T15:23:45.584Z
Electron: 19.1.9
Chromium: 102.0.5005.194
Node.js: 16.14.2
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.25290
沙盒化: No
both are enabled

This feature request is now a candidate for our backlog. The community has 60 days to upvote the issue. If it receives 20 upvotes we will move it to our backlog. If not, we will close it. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

This feature request has not yet received the 20 community upvotes it takes to make to our backlog. 10 days to go. To learn more about how we handle feature requests, please see our documentation.
Happy Coding!

:slightly_frowning_face: In the last 60 days, this feature request has received less than 20 community upvotes and we closed it. Still a big Thank You to you for taking the time to create this issue! To learn more about how we handle feature requests, please see our documentation.
Happy Coding!


Use OverlayPreferenceStore to handle correct UI semantics

In the preference page, there are several buttons that configure how any
chances should be propagated to the underlying preference store. When
Cancel is clicked, no changes should be propagated. When Apply and Save
are both clicked, the changes should only be propagated once. We use the
predefined class OverlayPreferenceStore to handle these semantics. It
only writes back its key-value pairs when the users asks for it and
doesn't write back anything that has not changed.
The OverlayPreferenceStore is relatively inconvenient to use because
one has to specify which keys should be cached by it. It would be
better if it would cache and write back everything. Furthermore, there
is no automatic read on the underlying preference store when the key is
not specified. This makes the creation of such an overlay store
cumbersome. Nevertheless, it is still better than the hand-rolled
solution that was used before.
This fixes both the AutoEditsPreferencePage and the
SaveActionsPreferencePage.
Fixes #1002487

The EditorPreferencePage is using the same hand-rolled model, it would be good to move to this simpler way of doing things. Though, I am pretty sure even the OverlayStore is not needed.
Any reason why not using the FieldEditorPreferencePage in this cases? I think the code is simpler that way (have a look at DebuggerPreferencePage.

You are right, the OverlayPreferenceStore is not needed. Reading the values from the GUI elements is everything that is needed.

Actually, I no longer think we should go with the easy solution. The premature optimization that with the overlay store, no unnecessary writes happen to the real preference store is not important. But with the easy solution we limit ourselves to GUI elements that can store state for each preference. This doesn't work for example in the AutoEditsPreferencePage, where only one configuration text area exists, which is shared by all preferences. We would have to limit GUI design to our underlying possibilities. WDYT?

What kind of additional configuration are there for auto-edits?

Right now there is no further configuration. It would be needed once the multi line string auto edit is moved to the new API. People could configure there if for example print margins should be added. Right now it needs to be configured in the editor page. We can just leave it there for now (I don't have time to move the last auto edit strategies to the new API anyway), remove the configuration option and reintroduce it the moment when we really need it.

I let the code as is and just added the store.load() function. I didn't change EditorPreferencePage because it works for now. Moving to FieldEditorPreferencePage would require more time and wouldn't really improve the situation, therefore I also skipped that. I also didn't remove the configuration option for auto edits.

I can't try this right now, but if anyone confirms this works, I'm happy with the code :+1:

LGTM


[WFLY-18089]: Error creating a remote connector using ssl-context.

Adding missing separator between transport configurations.

Jira: https://issues.redhat.com/browse/WFLY-18089

If it's possible could this fix go also to branch 28.x so that it's included in the next release 28.0.2.Final?

@ehsavoie Can you please check, the test failures look related.

Hello @czakom I am sorry but we don't presently have any WildFly 28.0.2 release planned, the WildFly 26 release was exceptional having an additional maintenance release due to migrating to WildFly 27 being a bigger task.

@darranl should be fixed now.

Hello @darranl, without this fix I'm not able to use wildfly 28 for the master/slave messaging pattern regarding connection to remote broker. If it's even remotely possible that there will be a 28.0.2 Wildfly release then could this also go there? Thanks

Thanks @ehsavoie


Add list filters

It would be helpful if the backend lists supported filtering of their respective columns.

Implemented in 7f2d576


ScrollYOffset is always set to 0 when the page is refreshed

ScrollYOffset option seems to work if you navigate to a page already loaded, but if you refresh or navigate directly to an API page the offset gets set to 0.  So the sidebar will scroll under the navbar.
This affects the examples as well, so you can see what happens by directly navigating here and scrolling: https://redocusaurus.vercel.app/examples/using-single-yaml/

It seems that this is issues is related to this line: https://github.com/rohit-gohri/redocusaurus/blob/e81229325921eaa73d60f3914a14570721f583f7/packages/docusaurus-theme-redoc/src/utils/useSpec.ts#L28
It seems this is in place to prevent the warning that appears when using a selector on a direct page load:
scrollYOffset value is a selector to non-existing element. Using offset 0 by default

I don't know how to preserve the offset if you want to use a selector, but it would at least be nice to keep the value if you set it to something other than a selector.

I took a shot at creating a partial fix for this issue.  See the linked PR.  Basically just keeping the logic to disable this option when it is set to a selector.
With this change you could fix the examples by changing the redoc options here to use a number:
https://github.com/rohit-gohri/redocusaurus/blob/main/website/docusaurus.config.js#L50
Like this:
      options: { disableSearch: true, scrollYOffset: 60 },

I couldn't find a solution to actually allow selectors to load correctly, however.

Merging that fix for now to unblock you, will fix actual issue later

Released in v1.0.2

I faced the same issue and couldn't get a selector to work either e.g. .navbar.


Add Gitea Community Code of Conduct

The Gitea Community Code of Conduct.
Authored by lunny. Slightly modified from Go CoC

CC all TOCs:
@go-gitea/technical-oversight-committee
And we welcome suggestions from everyone.

Ping.
This is a PR that should be merged rather earlier than later.

Need more help from other English native speakers.

For comparison, here is the diff of the current document (at time of comment) to the Go CoC.

Diff
diff --git a/go.md b/gitea.md
index 435bcc7..ef4151c 100644
--- a/go.md
+++ b/gitea.md
@@ -1,20 +1,20 @@
-# Go Community Code of Conduct
+# Gitea Community Code of Conduct

 ## About

-Online communities include people from many different backgrounds.  The Gitea contributors are committed to providing a friendly, safe and welcoming environment for all, regardless of gender identity and expression, sexual orientation, disabilities, neurodiversity, physical appearance, body size, ethnicity, nationality, race, age, religion, or similar personal characteristics.

-The first goal of the Code of Conduct is to specify a baseline standard of behavior so that people with different social values and communication styles can talk about Go effectively, productively, and respectfully.
+The first goal of the Code of Conduct is to specify a baseline standard of behavior so that people with different social values and communication styles can talk about Gitea effectively, productively, and respectfully.

 The second goal is to provide a mechanism for resolving conflicts in the community when they arise.

-The third goal of the Code of Conduct is to make our community welcoming to people from different backgrounds. Diversity is critical to the project; for Go to be successful, it needs contributors and users from all backgrounds. (See [Go, Open Source, Community](https://blog.golang.org/open-source).)
+The third goal of the Code of Conduct is to make our community welcoming to people from different backgrounds. Diversity is critical to the project; for Gitea to be successful, it needs contributors and users from all backgrounds.

 We believe that healthy debate and disagreement are essential to a healthy project and community. However, it is never ok to be disrespectful. We value diverse opinions, but we value respectful behavior more.

-## Gopher values
+## Community values

-These are the values to which people in the Go community (“Gophers”) should aspire.
+These are the values to which people in the Gitea community should aspire.

 - **Be friendly and welcoming.**
 - **Be patient.**
@@ -36,7 +36,7 @@ These are the values to which people in the Go community (“Gophers”) should
 - **Be responsible.**
   - What you say and do matters. Take responsibility for your words and actions, including their consequences, whether intended or otherwise.

-People are complicated. You should expect to be misunderstood and to misunderstand others; when this inevitably occurs, resist the urge to be defensive or assign blame. Try not to take offense where no offense was intended. Give people the benefit of the doubt. Even if the intent was to provoke, do not rise to it. It is the responsibility of _all parties_ to de-escalate conflict when it arises.
+People are complicated. You should expect to be misunderstood and to misunderstand others; when this inevitably occurs, resist the urge to be defensive or assign blame. Try not to take offense where no offense was intended. Give people the benefit of the doubt. Even if the intent was to provoke, do not rise to it. It is the responsibility of all parties to de-escalate conflict when it arises.

 ## Code of Conduct

@@ -80,17 +80,18 @@ We do not believe that all conflict is bad; healthy debate and disagreement ofte

 If you see someone violating the code of conduct, you are encouraged to address the behavior directly with those involved. Many issues can be resolved quickly and easily, and this gives people more control over the outcome of their dispute. If you are unable to resolve the matter for any reason, or if the behavior is threatening or harassing, report it. We are dedicated to providing an environment where participants feel welcome and safe.

-Reports should be directed to the Go Project Stewards at<EMAIL_ADDRESS>It is the Project Stewards’ duty to receive and address reported violations of the code of conduct. They will then work with a committee consisting of representatives from the Open Source Programs Office and the Google Open Source Strategy team. If for any reason you are uncomfortable reaching out to the Project Stewards, please email the Google Open Source Programs Office at<EMAIL_ADDRESS>+Reports should be directed to the Gitea Project Stewards at<EMAIL_ADDRESS>It is the Project Stewards’ duty to receive and address reported violations of the code of conduct. They will then work with a committee consisting of representatives from the technical-oversight-committee.

 We will investigate every complaint, but you may not receive a direct response. We will use our discretion in determining when and how to follow up on reported incidents, which may range from not taking action to permanent expulsion from the project and project-sponsored spaces. We will notify the accused of the report and provide them an opportunity to discuss it before any action is taken. The identity of the reporter will be omitted from the details of the report supplied to the accused. In potentially harmful situations, such as ongoing harassment or threats to anyone’s safety, we may take action without notice.

 ### Attribution

-This Code of Conduct is adapted from the Contributor Covenant, version 1.4, available at [https://www.contributor-covenant.org/version/1/4/code-of-conduct.html](https://www.contributor-covenant.org/version/1/4/code-of-conduct.html)
+This Code of Conduct is adapted from the Contributor Covenant, version 1.4, available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html

 ## Summary

 - Treat everyone with respect and kindness.
 - Be thoughtful in how you communicate.
 - Don’t be destructive or inflammatory.
-- If you encounter an issue, please mail [conduct@golang.org](mailto:conduct@golang.org).
+- If you encounter an issue, please mail<EMAIL_ADDRESS>+

It's not much different aside from Go -> Gitea, which I think is fine considering the point is to work from a solid base.
One thing that may be important to note or act upon is the question of "what if someone has a problem with a TOC member?".
The wording is a bit vague regarding who conduct@ is composed of. Is it a new group?
In the Go CoC there is an alternative email given, however we don't exactly have the same form of governance. Perhaps we need wording that such reports can be made to any given TOC member, in case a report to coduct@ would also include someone within that group?

For comparison, here is the diff of the current document (at time of comment) to the Go CoC.
Diff
diff --git a/go.md b/gitea.md
index 435bcc7..ef4151c 100644
--- a/go.md
+++ b/gitea.md
@@ -1,20 +1,20 @@
-# Go Community Code of Conduct
+# Gitea Community Code of Conduct

 ## About

-Online communities include people from many different backgrounds.  The Gitea contributors are committed to providing a friendly, safe and welcoming environment for all, regardless of gender identity and expression, sexual orientation, disabilities, neurodiversity, physical appearance, body size, ethnicity, nationality, race, age, religion, or similar personal characteristics.

-The first goal of the Code of Conduct is to specify a baseline standard of behavior so that people with different social values and communication styles can talk about Go effectively, productively, and respectfully.
+The first goal of the Code of Conduct is to specify a baseline standard of behavior so that people with different social values and communication styles can talk about Gitea effectively, productively, and respectfully.

 The second goal is to provide a mechanism for resolving conflicts in the community when they arise.

-The third goal of the Code of Conduct is to make our community welcoming to people from different backgrounds. Diversity is critical to the project; for Go to be successful, it needs contributors and users from all backgrounds. (See [Go, Open Source, Community](https://blog.golang.org/open-source).)
+The third goal of the Code of Conduct is to make our community welcoming to people from different backgrounds. Diversity is critical to the project; for Gitea to be successful, it needs contributors and users from all backgrounds.

 We believe that healthy debate and disagreement are essential to a healthy project and community. However, it is never ok to be disrespectful. We value diverse opinions, but we value respectful behavior more.

-## Gopher values
+## Community values

-These are the values to which people in the Go community (“Gophers”) should aspire.
+These are the values to which people in the Gitea community should aspire.

 - **Be friendly and welcoming.**
 - **Be patient.**
@@ -36,7 +36,7 @@ These are the values to which people in the Go community (“Gophers”) should
 - **Be responsible.**
   - What you say and do matters. Take responsibility for your words and actions, including their consequences, whether intended or otherwise.

-People are complicated. You should expect to be misunderstood and to misunderstand others; when this inevitably occurs, resist the urge to be defensive or assign blame. Try not to take offense where no offense was intended. Give people the benefit of the doubt. Even if the intent was to provoke, do not rise to it. It is the responsibility of _all parties_ to de-escalate conflict when it arises.
+People are complicated. You should expect to be misunderstood and to misunderstand others; when this inevitably occurs, resist the urge to be defensive or assign blame. Try not to take offense where no offense was intended. Give people the benefit of the doubt. Even if the intent was to provoke, do not rise to it. It is the responsibility of all parties to de-escalate conflict when it arises.

 ## Code of Conduct

@@ -80,17 +80,18 @@ We do not believe that all conflict is bad; healthy debate and disagreement ofte

 If you see someone violating the code of conduct, you are encouraged to address the behavior directly with those involved. Many issues can be resolved quickly and easily, and this gives people more control over the outcome of their dispute. If you are unable to resolve the matter for any reason, or if the behavior is threatening or harassing, report it. We are dedicated to providing an environment where participants feel welcome and safe.

-Reports should be directed to the Go Project Stewards at<EMAIL_ADDRESS>It is the Project Stewards’ duty to receive and address reported violations of the code of conduct. They will then work with a committee consisting of representatives from the Open Source Programs Office and the Google Open Source Strategy team. If for any reason you are uncomfortable reaching out to the Project Stewards, please email the Google Open Source Programs Office at<EMAIL_ADDRESS>+Reports should be directed to the Gitea Project Stewards at<EMAIL_ADDRESS>It is the Project Stewards’ duty to receive and address reported violations of the code of conduct. They will then work with a committee consisting of representatives from the technical-oversight-committee.

 We will investigate every complaint, but you may not receive a direct response. We will use our discretion in determining when and how to follow up on reported incidents, which may range from not taking action to permanent expulsion from the project and project-sponsored spaces. We will notify the accused of the report and provide them an opportunity to discuss it before any action is taken. The identity of the reporter will be omitted from the details of the report supplied to the accused. In potentially harmful situations, such as ongoing harassment or threats to anyone’s safety, we may take action without notice.

 ### Attribution

-This Code of Conduct is adapted from the Contributor Covenant, version 1.4, available at [https://www.contributor-covenant.org/version/1/4/code-of-conduct.html](https://www.contributor-covenant.org/version/1/4/code-of-conduct.html)
+This Code of Conduct is adapted from the Contributor Covenant, version 1.4, available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html

 ## Summary

 - Treat everyone with respect and kindness.
 - Be thoughtful in how you communicate.
 - Don’t be destructive or inflammatory.
-- If you encounter an issue, please mail [conduct@golang.org](mailto:conduct@golang.org).
+- If you encounter an issue, please mail<EMAIL_ADDRESS>+

It's not much different aside from Go -> Gitea, which I think is fine considering the point is to work from a solid base.
One thing that may be important to note or act upon is the question of "what if someone has a problem with a TOC member?". The wording is a bit vague regarding who conduct@ is composed of. Is it a new group? In the Go CoC there is an alternative email given, however we don't exactly have the same form of governance. Perhaps we need wording that such reports can be made to any given TOC member, in case a report to coduct@ would also include someone within that group?

The email address is a mail list will be forwarded to all members of TOC. I think it's OK to send an email to it so that every TOC member will receive it.

Codecov Report

Merging #23188 (a41910d) into main (33e556e) will increase coverage by 0.15%.
The diff coverage is 50.32%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##             main   #23188      +/-   ##
==========================================
+ Coverage   47.44%   47.59%   +0.15%
==========================================
  Files        1140     1143       +3
  Lines      150804   151172     +368
==========================================
+ Hits        71549    71956     +407
+ Misses      70788    70710      -78
- Partials     8467     8506      +39

Impacted Files
Coverage Δ

models/actions/run.go
1.72% <0.00%> (+0.01%)
:arrow_up:

models/actions/run_list.go
0.00% <0.00%> (ø)

models/actions/status.go
22.85% <0.00%> (-1.39%)
:arrow_down:

models/auth/oauth2.go
60.52% <ø> (ø)

models/auth/twofactor.go
19.73% <ø> (ø)

models/db/engine.go
44.80% <ø> (ø)

models/issues/label.go
57.35% <0.00%> (+1.39%)
:arrow_up:

models/unittest/testdb.go
12.92% <0.00%> (ø)

modules/auth/password/hash/pbkdf2.go
69.69% <ø> (ø)

modules/avatar/hash.go
100.00% <ø> (ø)

... and 110 more

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


Add CPython classifier

CPython is "normal" Python

Coverage remained the same at 67.647% when pulling 6b61ddd6286f7c674eaf78008b08b81526ad50b8 on hugovk:patch-2 into 330a3ff2bacc986a770b81413ccb50128b8d53a6 on araile:develop.


style: convert to arrow function expression

Converting a few instances of traditional functions to ES6-style arrow functions. Performed the necessary safety checks to ensure behavior is preserved, e.g., that this is not used inside the function.

I signed the CLA.

About the CLA, Kale is an automated tool attached to my account. Its email is<EMAIL_ADDRESS>Is there a way to add it under my CLA?

Let's not land this. It doesn't change anything we're concerned about, but it will make us do one more hop when blaming certain lines of code.