Favorites Wishlist UI

We created a barebones UX - Anthony review and give your thoughts.
https://wiki.hybris.com/display/spar/Feature%3A+Wish+List

Wish List on Catalog Page:
https://me3xoy.axshare.com/#id=uibxcx&p=t_wish_list_in_catalog&g=1
Wish List on PDP:
https://me3xoy.axshare.com/#id=0sr8vk&p=t_pdp_w_wish_list&g=1
Wish List:
https://me3xoy.axshare.com/#id=qx1ev9&p=t_wish_list&g=1
Wish List Confirmation Added to Cart:
https://me3xoy.axshare.com/#id=m1qbgy&p=t_added_to_cart_from_wish_list_no_x_sell&g=1
Recommend a configuration to either remove or persist the item in the Wish List if it is added to the Cart. A favorites tool would persist, but a classic wish list would remove it upon Cart add.
Also: What about: shareability?

thanksAnthony!
sharability for future
updates done, moving to done


 causes selector to fail

Consider the following program:
package main

import (
	"fmt"
	"strings"

	"github.com/PuerkitoBio/goquery"
)

const data = `<noscript><a href="http://example.org">click this link</a></noscript>`

func main() {
	d, err := goquery.NewDocumentFromReader(strings.NewReader(data))
	if err != nil {
		fmt.Println(err)
		return
	}
	a, ok := d.Find("noscript a").Attr("href")
	fmt.Printf("URL: '%s', %t\n", a, ok)
}

The expected output is:
URL: 'http://example.org', true

But instead the output is:
URL: '', false

Changing noscript to div in both the document and selector causes the expected output, so the problem seems to affect only <noscript> elements.

After further investigation, the problem appeared to originate in Cascadia:
package main

import (
	"fmt"
	"strings"

	"github.com/andybalholm/cascadia"
	"golang.org/x/net/html"
)

const data = `<noscript><a href="http://example.org">click</a></noscript>`

func main() {
	n, err := html.Parse(strings.NewReader(data))
	if err != nil {
		fmt.Println(err)
		return
	}
	s, err := cascadia.Compile("noscript a")
	if err != nil {
		fmt.Println(err)
	}
	fmt.Println(len(s.MatchAll(n)))
}

Before I could file a bug there, however, I came across this: https://github.com/andybalholm/cascadia/issues/14

"The net/html parser parses the document as if javascript were enabled. Because of that, the contents of noscript elements are just a single text node, not parsed HTML elements."

Now it looks like the bug exists in the golang.org/x/net/html package. Indeed, there is an open bug there for this very problem: https://github.com/golang/go/issues/16318
Sadly, it hasn't been fixed yet. :cry:

Hello Nathan,
Thanks for looking into this. Makes sense that this is at the html parser level, would be nice if it provided the option to set javascript on or off for parsing. I'll keep the issue open until some decision is made in the parser.
Martin

just noticed the same issue :)

For those looking for a workaround, re-parsing the content of the noscript tag seems to do the trick.
s.Find("noscript").SetHtml(s.Find("noscript").Text())

@machinae cool thanks i will try it :)

s in my example is any *goquery.Selection. Just add that line after loading the document
func main() {
	d, err := goquery.NewDocumentFromReader(strings.NewReader(data))
	if err != nil {
		fmt.Println(err)
		return
	}
        d.Find("noscript").SetHtml(d.Find("noscript").Text())
	a, ok := d.Find("noscript a").Attr("href")
	fmt.Printf("URL: '%s', %t\n", a, ok)
}

@machinae wouldn't this set the contents of the first noscript as the text of all noscript tags combined? I would think getting the instance of the tag would be safer? (not tested)
d.Find("noscript").Each(func(i int, s *goquery.Selection) {
    s.ReplaceWithHtml(s.Text())
})

(I don't use goquery so the above is just a guess)

I resolved it with code below:
root := doc.Selection
root.Find(`noscript`).Each(func(i int, selection *goquery.Selection) {
	selection.SetHtml(selection.Text())
})

Looks like there was a partial fix in the referenced issue, i.e. ParseOptionEnableScripting(bool) which would support disabling script emulation mode. From the last issue comment it only work when noscript is inside the head though.


Source API

Is your feature request related to a problem? Please describe.
As part of the custom sources milestone (see for motivation), we need an app that exposes a common interface for all custom source connectors.
Describe the solution you'd like
A Kafka streaming component that exposes the following functionality:

[ ] Manage source token permissions
[x] Create sources
[x] Ingest messages and metadata
[x] Create channels
[ ] React to outbound messages

Additional context
All interactions with this app need to be authenticated so that you can run custom source apps from outside the cluster, too. For this purpose "creating a source" means:

Provision a JWT that encodes the source identifier and does not expire so that the source app can use it as an API key for interactions
Create the necessary webhook (to be done by the source app)

@chrismatix - Thank you for the detailed and super qualified response! Just briefly in return:
2. Removing / updating a Source?

Great!

3. Creating a Channel

Thank you & understood! I like your compromise sources.channels.create. Also fully understood your argument about auth and I think it makes sense and is pretty clever.

The argument that we use camelCase in URI schemes six times starting since April is inconsistent with us using snake-case in all other places in the API e.g. request bodies, etc.

Furthermore using camelCase is violating the standard definitions for URI schemes according to RFC 3986 Section 3.1: https://datatracker.ietf.org/doc/html/rfc3986 - According to RFC3986, URLs are “case sensitive” (except for the scheme and the host). In practice, though, a sensitive case may create dysfunctions with APIs e.g. hosted on a Windows system. Therefore, it is generally recommended to use the spinal-case in URIs with hyphens (which is highlighted by RFC3986), this case is used by Google, PayPal, and other big companies.

4. Make "Creating a Channel" optional
Okay, then let's carve this out for the time being and let's create a separate ticket ay you suggested.
5. Ingesting messaging data

In other places *_at timestamps are represented as ISO8601, which is less portable for clients than a unix timestamp. So there's a consistency trade-off:
Option A: Call it sent_at, but it's a different data type/format
Option B: Call it sent_at_millis in one place and sent_at in another

Understood, thank you for explaining the difference here, I just think the naming is a bit confusing to people if we mix ISO8601 for xxx_at and unix timestamps for xxx_at_millis.
As we are talking about timestamps here, could we simply use timestamp as the name of the property? Compare with Facebook Message Event Payload: https://developers.facebook.com/docs/messenger-platform/reference/webhook-events/messages/
In the context of ingestion what would be actually great is if we could support both types here, as some sources like facebook send Unix timestamps and others RFC3339 UTC such as google (https://developers.google.com/business-communications/business-messages/reference/rest/v1/Message).
So could we support both options via the Source API in parallel removing the requirement to convert the timestamps to the other formats? So one of send_at (ISO8601) and timestamp (UNIX timestamp) needs to be defined. Or to expensive?

@steffh cool, we're narrowing it down 🎉

The argument that we use camelCase in URI schemes six times starting since April is inconsistent with us using snake-case in all other places in the API e.g. request bodies, etc.. Furthermore using camelCase is violating the standard definitions for URI schemes according to RFC 3986 Section 3.1: https://datatracker.ietf.org/doc/html/rfc3986 - According to RFC3986, URLs are “case sensitive” (except for the scheme and the host). In practice, though, a sensitive case may create dysfunctions with APIs e.g. hosted on a Windows system. Therefore, it is generally recommended to use the spinal-case in URIs with hyphens (which is highlighted by RFC3986), this case is used by Google, PayPal, and other big companies.

It's not in violation of 3.1, because it does not relate to the scheme. But I'm fine with the convention argument so I will also create a ticket for changing the other URLs to hyphenation.

So could we support both options via the Source API in parallel removing the requirement to convert the timestamps to the other formats? So one of send_at (ISO8601) and timestamp (UNIX timestamp) needs to be defined. Or too expensive?

I'd prefer to call it send_at then (to keep it consistent with the existing data model) and make it work with both ISO8601 and a unix timestamp. For now, I will go for those two formats, since RFC3986 is a bit out there.

@chrismatix - Perfect!

@chrismatix - Just a question: What was the rationale to rename POST /sources.ingest in the draft version to POST /sources.webhook?
I think "ingest" was more descriptive than "webhook" and less confusing - as we already use "webhooks" as a destination to consume data (https://airy.co/docs/core/api/webhook).
Maybe I also still lack some insight into the runtime you wanted to create which I assume would also have an external "/sourcename/webhook" route, then remap that data and call the POST /sources.ingest route from within the runtime.

@steffh Great question! When I tried assuming the role of an outside developer ingest started to look cryptic to me, because (Data) ingestion is a very abstract term that can denote many ways of getting data into a system. Whereas webhook is an exact description of what this endpoint is.
So in this case I prefer clarity > disambiguation.
But we can add the following line to the docs to make it extra clear to users:
Note: This webhook is for data inbound to the Airy system. To register an outbound webhook have a look at the Webhook API (link).

Curious to hear what you think.


extrapad v1

Ready to submit your project? Nice job! Hopefully you've read the submission guidelines. If not, make sure to read them first.
If you're unsure about the format, make sure to check out the Orpheuspad example and follow the format there.
If this PR isn't a submission, that's okay too! If there's anything about this PR template that seems confusing, let me know in #hackpad on the slack!
this is a test; instructions given by my school workshop are unclear; it most likely shouldnt reflect final product yet
nvm supposed to edit this in a few jiffies

Hey! Your Gerber seems a little messed up, could you fix this?

Plot your file as gerbers again with these exact settings, zip the files up and replace the gerbers.zip

Hey! Your Gerber seems a little messed up, could you fix this?

Updated gerbers, I went through a midway design change and forgot to do so

I approve
My pr: https://github.com/hackclub/hackpad/pull/80


[QUESTION] - Published plugin based on Eightshift?

Hi there,
Are there realised WordPress plugins based on Eightshift? It could be of great help for newbies like me.

Take a look at infinum/eightshift-forms. It's not on wp.org plugins afaik, but probably the best Eightshift-based plugin you can find publicly.


Standardise or document Ingress path expressions across implementations

Path expressions in the Ingress are provider specific - so a path expression (say /foo/) that works in one provider does not work the same in another.
For example:
path: /foo/
Seems to result in different behaviour on GKE vs.  the nginx controller.
If it is not realistic to standardise paths, the providers should document the interpretation of the path expression ( example: does /foo/ match  /foo/bar?)

If you can point out the exact difference and expected behavior, we might be able to get the nginx controller to do what we want. It's obviously a lot harder to change the cloud lb formatting rules.

Are AWS and GCE the same?
If so - I'd suggest that is the behaviour we want.

What is "this"? we need to handle this on a case by case basis, we don't have bw to figure out every part of the spec each of these implement differently :)

I have no experience with AWS - so I can not help here
I appreciate the bandwidth issue, and don't have any expectations of a quick fix here :-)
For now, I would suggest aligning nginx with "whatever GKE does"
If I get more time I will look at the differences between the two. For now, I just added  foo/ and foo/*, and that seems to work on both

Hmm, IIUC in this case nginx is actually more lenient and accepts both foo/ and foo/* to do the same thing (i.e proxy to /foo/bar or whatever, haven't tried it yet)? If so, we should try to get "foo/" to match exactly "foo/"
@aledbf

@bprashanth the current behavior in the nginx controller is to not use exact match. Please check this example from the nginx docs (configuration B).
If we can build a table with multiple examples and the expected outcome I think is possible to modify the configuration in nginx without much effort

To further clarify:
For the nginx controller, an ingress path: /foo gets translated to nginx.conf location /foo { }
This is a "prefix" match. That is, it will match /foo, /foo/bar, /foo/bar/xx, ..
On GCE, I believe two path rules need to be setup to handle this case:
/foo
/foo/*
I can't recollect if the GCE ingress controller does this or not (may get time to test later this week). If not- setting up those two rules would seem to make the implementations align.
I believe I previously had a trailing / on my path:
path: /foo/
Which caused some of my prior confusion.

Update:  GCE ingress controller does not add a wildcard to a path expression.
To get the same behaviour as Nginx, you need two path expressions in the ingress definition:
path: /foo
path: /foo/*
Which is equivalent to:
path: /foo
on Nginx.
This is unfortunate that the same ingress definition can not be used on both controllers.

yeah so /foo is exactly foo and if you want anything more, you need foo/*. I think this conflicts with the nginx defaults as pointed out in https://github.com/kubernetes/contrib/issues/885#issuecomment-216401642

I've been wondering the opposite: how to have an exact match for a path with the nginx controller.  Any idea?

My use case is that I have a web application pod with 3 containers:

/static should go to the frontend (nginx static files) container
/ should go to the landing page container
everything else should go to the backend container

The problem is that for 2 I need to match exactly the path /, but not backend-y things like /login, while for 3 I need to match "every thing else", which has been / up until now.
I would love to have GCE-style ingress path rules in the contrib nginx controller.

This issue was moved to kubernetes/ingress#555


Mini-RFC: Make .. a pattern syntactically

Make .. a pattern rather than a syntactic fragment of some other patterns.
Follow up to https://github.com/rust-lang/rfcs/pull/2359.
Edit: Rendered

@rfcbot merge
See https://github.com/rust-lang/rfcs/pull/2359#issuecomment-500030549 for rationale.

N.B. I have checked Aaron's box as they are on leave.

🎉 Huzzah! This RFC has been merged! 🎉
Tracking issue: https://github.com/rust-lang/rust/issues/62254


Grammatical Error

Probably should be "provisioning" instead of "provision"

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

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

Verified the update; merging.
@rburrs - Thank you for making this fix.


Remove simplejson and deprecate encoding options

Remove simplejson. Remove UTF encoding guessing, which the built-in module handles now. Simplify htmlsafe_dumps to use str.translate instead of multiple str.replace.
Issue deprecation warning if encoding is passed to dumps, dump, loads, or load. This was deprecated in the built-in module back in 3.1. The only valid encodings for JSON are UTF-8 (with/without BOM), UTF-16 (BE/LE), and UTF-32 (BE/LE). json.loads accepts bytes and json.loads accepts binary files in these encodings without any special handling on our part. dumps can be encoded after calling, and dump can be passed a binary file wrapped with io.TextIOWrapper.
Rewrite docs for consistency.
Fix imports and references of Markup to be from MarkupSafe instead of Flask or Jinja.

See the individual commits for easier diffs.
closes #3555

@davidism I see we are no-longer importing json from itsdangerous library. When is the fix for removal of simplejson planned to be released as flask import is failing because of the simplejson raising an error.


go.mod / Dockerfile: Modernize deps

Update go dependencies and the base image used for Docker

/ok-to-test

Thank you for your first contribution 😊


Include the asrockrack bios kernel module

Description
This change updates the alpine image to build and include the asrdev.ko kernel module,
which enables the Asrockrack BIOS utility BIOSControl to set/get BIOS configuration.
Why is this needed
To export and import BIOS configuration on the Asrockrack hardware.
How Has This Been Tested?
By building the Alpine docker image

@joelrebel looks like you added the .gitattributes path correctly, but the binary zip file wasn't checked in.
Also, while this otherwise looks like what is needed to add the kernel module, would it also make sense to add the userspace binary as well (I assume there is one) in another commit? In order to test this, I'd like to have something that will invoke the kernel module code.

Thanks, updated commit pushed with the .zip added into git LFS

Hey @joelrebel, looks like this needs a conflict resolved for .gitattributes.

Closing this, as I created an alternate PR and cherry-picked these commits for it, PR 294 (which has been merged to main).


Introduce ability to config run_plugin_first on plugin level

Describe the feature
Currently run_plugin_first is a global config that run all plugins before swc's internal transformation.
I'd like to have this feature on plugin level.
Currently, I'm building a plugin that transform typescript enum into something else, and it needs to inject some annotation comment.
Because it's taking the typescript enum as input, it must run before swc's ts transform.
However, the comment I injected are then stripped by swc.
Babel plugin or link to the feature description
No response
Additional context
No response

Not sure if it's easily doable. First, swc runtime need to configure itself's plugin excution order before load plugin. When we load plugin / its config and half of the plugin already ran.. then what to do?
Also this means plugin can interfere other plugins. If other plugin want to those excution in specific order, what plugin wins? And if transformed results by prior plugin conflicts to others, what'll happen?

Comments are not stripped if you apply plugin first, and your description does not match the title.


Remove project list menu

Make sure that this is removed from the menu bar as it is no longer needed (main page is redirecting to that).

https://github.com/learning-layers/timeliner-client/commit/014b8ff97fa66dd76eab49c4fc3d9b95e05dcec1


⚠ Bofrost.be has degraded performance

In 1df730b, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1809 ms

Resolved: Bofrost.be performance has improved in 18167d7 after 6 minutes.


chore(main): release 1.19.0

:robot: I have created a release beep boop
1.19.0 (2024-05-15)
Features

🚀 Add page search function (6dd8244)
🚀 Update dependencies to support ESM (9f1696f)

Bug Fixes

🐛 Resolving build failures (8460945)
🐛 Tips unavailable (603e4e9)

Performance Improvements

♻ FindInPage API (fcf8269)
♻ Optimize dark mode (2f2e1cf)
♻ Search interaction (a195b7e)
♻ Search variable name (7c55e50)
🐛 Global search error (091d503)
🚀 优化页面查找工具性能 (8587977)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/viarotel-org/escrcpy/releases/tag/v1.19.0 :sunflower:


QFE Identity playback

made a small mistake in the authoring of the tests yml file that runs the tests with multiple params combination unnecessarily
Pull Request Checklist
Please leverage this checklist as a reminder to address commonly occurring feedback when submitting a pull request to make sure your PR can be reviewed quickly:
See the detailed list in the contributing guide.

[ ] C++ Guidelines
[ ] Doxygen docs
[ ] Unit tests
[ ] No unwanted commits/changes
[ ] Descriptive title/description

[ ] PR is single purpose
[ ] Related issue listed

[ ] Comments in source
[ ] No typos
[ ] Update changelog
[ ] Not work-in-progress
[ ] External references or docs updated
[ ] Self review of PR done
[ ] Any breaking changes?

What's QFE?

What's QFE?

In Windows, QFE means "Quick Fix Engineering" (I think) - it's the phrase used to describe a hotfix that needs to be pushed to customers, usually as a part of the normal monthly release process.


Showing up- and download information, doesn't work (on Fritz!box 5490)

Current Behavior
When in the dasboard page, the "bandbreite" graph doesn't show any values. Also "Download" and "Upload" always shows 0.00 MBit/s (see image)
The docker log shows a lot of these errors:
[03.11.2024, 15:41:16] [ERROR] ==> query networkMonitor.getStats in 2766ms
❌ tRPC failed on networkMonitor.getStats: Cannot read properties of undefined (reading 'sync_groups')
This behaviour is there regardless if a stress the bandwidth to the fullest (1000mb/s up & down) or have normal Internet use.
Expected Behavior
I would expect the "Bandbreite" graph to be normally filled and the "Download" and "Upload" to have the expected value.
Steps to Reproduce the Problem

Installed and started the Fritz-UI docker-container with al the default values.
I created an extra user on in the Fritz!Box that has all authorization.
I log in with the username/password of that user
Select the "Dashboard" page in the UI

Environment

Version: V1.1.1
Platform: Docker on Synology
Node.js Version: V20.9.0

BTW: I love this project!
Very nice interface and I also was fed up with the very slow GUI of the Fritz!box

Hi @carel,
Thanks for reporting this. I haven’t actively worked on this project in a while, but I’ll take a look at it this week.


Failing in Chrome Version 53.0.2785.116 m

Neither the demo page, or my own (otherwise working) instance seems to work in Google Chrome, at least Version 53.0.2785.116 m.
No obvious errors in the developer console either.

I can't seem to reproduce your issue. Tested on Chrome 53.0.2785.116 (64-bit) and Chrome Canary 55.0.2865.0 (64-bit), both are working without a hitch.
What do you mean by "not working"?

I see what you're seeing on one computer, but on the one I happened to be on at the time I'm still seeing it not working. And by that, I mean I'm getting class="paver--fallback" and not of the panning functionality.

I'm sorry, but without any further information it is next to impossible to debug. How does the markup in the non-functional version look like? Is the markup being replaced, or is it not?

The markup is being replaced, and is in the fallback state. I'll reinstall this Google Chrome, and try on other machine to attempt to replicate the failure. If I can, I'll refile the bug.

Dell Inspiron 5558 (Touch Support with 10 touch points)
Windows 10 Home 64-bit
Google Chrome 53.0.2785.116 m
Mozilla Firefox 48.0.2
On this machine Firefox functions fully with Paver. On Google Chrome however, it enters fallback mode.
With setup and Google Chrome, document.createEvent('TouchEvent') executes successfully. So global.features.isTouch = true; while `

That is quite peculiar. I am unable to reproduce your issue on Chrome, but that's on OS X. I'll see if I can grab a Windows machine to try it on.

I'd like to highlight, just in case, that my particular machine is touchscreen laptop.

If that's the case, sounds like something is off with the determination of the device supports touch events. I'll try to see if that's something that I can debug and fix.

Let me know anything I can do to assist.


Remote key rewards

hello i run a bungee server and want to know if theres away to link them so i can give key awards as a award for winning the mini games

Currently no there isn't but I did think about a similar situation and was thinking of adding away to give offline players keys which would be a perfect solution for you. I am going to add something like this for the next release. In the mean time I can only suggest making a custom plugin to push rewards to a SQL database using a web api then having a custom plugin check when a player connects.

End of Life Statement
Please read the following statement: EOL_STATEMENT.md


Fix: Fixed InvalidOperationException in FileProperty.RetrieveAndInitializePropertiesAsync

Resolved / Related Issues
To prevent extra work, all changes to the Files codebase must link to an approved issue marked as Ready to build. Please insert the issue number following the hashtag with the issue number that this Pull Request resolves.

Closes #15660

Steps used to test these changes
Stability is a top priority for Files and all changes are required to go through testing before being merged into the repo. Please include a list of steps that you used to test this PR.

Opened Files ...
...

Thank you! These bugs have high impact so the fixes go a long way.


help setting up for home assistant.

hello,
this is a really interesting project. I was wondering if it can be integrated to home assistant. I do have an esp32 wemos d1 mini. does this board works?
im really green will need help with hardware and software setup. idk id mosquitto broker will work and i have never used before.
any help will be mos appreciated
thanks
M.

There is some info in the wiki
The ESP32 should work.
I use mosquitto running on a Raspberry Pi4, you can use tools like mqtt.fx or mqttExplorer to see the messages being published etc.

I have read the wiki but cant find anything on how to connect the esp32 to the midnite classic.
is it there a schematic or diagram on how to do this?
thanks
M.

The Classic need to be connected to a network using Ethernet and the esp32 needs WiFi. You need an Access Point with that allows your Classic to communicate with the esp32.


Problem EigenCAM for YOLO5

Hi there!
Hello everyone!
I am trying to use grad-cam with Yolov5.
I've done some experimenting and if I run the notebook using the default code found at https://jacobgil.github.io/pytorch-gradcam-book/EigenCAM for YOLO5.html everything works.
The problem comes when I try to load a yolov5 custum model and with custom weights, basically if I run these 2 instructions:
cam = EigenCAM(model, target_layers, use_cuda=False)
grayscale_cam = cam(tensor)[0, :, :]
the python interpreter tells me
AttributeError: 'tuple' object has no attribute 'cpu'
Someone can help me?

I got the same problem. Have you fix this ?

I also encountered this problem. Do you find a solution or alternative?

I have found a solution to this problem. We have to modify the pytorch_grad_cam original scripts.


Chocolatey had an error on fv-az838-323 (with user runneradmin)

Description
Windows runner had been working fine until half day ago - choco fails to install packages in the below action log
https://github.com/fangq/mmc/actions/runs/8217659261/job/22473602280
the error message is
  choco install octave.portable --version=8.3.0
  choco install upx
  choco install mingw --version=8.1.0
  echo 'C:\ProgramData\chocolatey\lib\octave.portable\tools\octave\mingw64\bin' >> $GITHUB_PATH
  echo 'C:\ProgramData\Chocolatey\lib\mingw\tools\install\mingw64\bin\' >> $GITHUB_PATH
  echo 'MW_MINGW64_LOC=/c/ProgramData/Chocolatey/lib/mingw/tools/install/mingw64/' >> $GITHUB_ENV
  shell: C:\Program Files\Git\bin\bash.EXE --noprofile --norc -e -o pipefail {0}
Chocolatey v2.2.2
Installing the following packages:
octave.portable
By installing, you accept licenses for the packages.
Invalid credentials specified.
Please provide credentials for: https://community.chocolatey.org/api/v2/
User name: Password: Chocolatey had an error on fv-az8[3](https://github.com/fangq/mmc/actions/runs/8217659261/job/22473602280#step:6:3)[8](https://github.com/fangq/mmc/actions/runs/8217659261/job/22473602280#step:6:8)-323 (with user runneradmin):
System.InvalidOperationException: Cannot read keys when either application does not have a console or when console input has been redirected from a file. Try Console.Read.
   at System.Console.ReadKey(Boolean intercept)
   at chocolatey.infrastructure.commandline.ReadKeyTimeout.ConsoleReadKey()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

the last successful build was 9 hours ago
https://github.com/fangq/mmc/actions/runs/8216028448/job/22470141369
choco version is v2.2.2 in both the good and bad builds
Platforms affected

[ ] Azure DevOps
[ ] GitHub Actions - Standard Runners
[ ] GitHub Actions - Larger Runners

Runner images affected

[ ] Ubuntu 20.04
[ ] Ubuntu 22.04
[ ] macOS 11
[ ] macOS 12
[ ] macOS 13
[ ] macOS 13 Arm64
[ ] macOS 14
[ ] macOS 14 Arm64
[X] Windows Server 2019
[ ] Windows Server 2022

Image version and build link
https://github.com/fangq/mmc/actions/runs/8217659261/job/22473602280
Is it regression?
https://github.com/fangq/mmc/actions/runs/8216028448/job/22470141369
Expected behavior
choco install complete successfully
Actual behavior
choco fails to install package octave
Repro steps
run choco install octave.portable --version=8.3.0 in a windows runner

Can confirm: https://github.com/reactos/reactos/actions/runs/8222402434/job/22483856476

Duplicate of https://github.com/actions/runner-images/issues/9476


[blog] Allow to support card preview

By card preview, I mean https://cards-dev.twitter.com/validator or https://developers.facebook.com/tools/debug/

Deployed, it works


DCOS-51826: In Service Create/Edit form, add asterisk to container image when docker is selected

Add asterisk for container image when docker is selected.
Closes https://jira.mesosphere.com/browse/DCOS-51826
Testing

In Services tab, edit or create a single-container service.
In the first tab, click "More Settings" and select Docker as Container Runtime.
Verify that a red asterisk is shown next to "Container Image".
Verify that the asterisk disappears when UCR is selected as Container Runtime.

Trade-offs
None.
Dependencies
None.
Screenshots
Before

After

Can't reproduce test failures locally.
Implemented @brandonc 's helpful suggestion.

Failing test appears to be flaky.

:tada: This PR is included in version 2.85.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


feat: add ability to get paths

I need to upload pictures. However, the mCurrentPhotoUri created by FileProvider is for intent to start camera. We can't get file path from mCurrentPhotoUri, according to http://stackoverflow.com/a/39962512/4739220.
I added obtainPathResult to get path directly from capture, as well as resolving paths from album uri.

@eprendre
After I merged this PR, IDE found an error in file_paths_public.xml which is:

Value must not be empty.
Line: 20

Would you please fix it?

Oops, there's no error in my IDE. You can change back to path="Pictures.

@eprendre
Why do you change it to a empty value at first? Is the Pictures value not working on some specific occasions?

Soz, it's just my guess. I should not commit this file.

@eprendre
It's all right. Though Android Studio complains about it, the project still compiles successfully. I'll fix it with the sample update PR.


Bitmaptext: Add methods of GetBounds

This PR (delete as applicable)

Adds a new feature

Describe the changes below:
Add methods of GetBounds into Bitmaptext game object.

I'm in two minds about this. While it makes sense for Static Bitmap Text, it will return incorrect results for Dynamic Bitmap Text (which extends Static, so will gain this component as well)

@photonstorm You are right. There is no easy way to get bounds of all characters in Dynamic-Bitmaptext game object.

How about return null for all GetBounds method in Dynamic-Bitmaptext game object?
Or just leave it for user, user could add ComputedSize and GetBounds methods manually.

The problem is that we won't be able to override the documentation that is generated for Dynamic BitmapText to make it known that null is what's being returned :(

PR closed, since I don't have good solution either. :(

Here is the sample code of injecting getBounds method manually.
const Components = Phaser.GameObjects.Components;
Phaser.Class.mixin(
    Phaser.GameObjects.BitmapText,
    [
        Components.ComputedSize,
        Components.GetBounds
    ]
);


Bad Request for table with more than 100 coordinates

Hi Guys,
Is there a limit for the amount of coordinates in one request? The table function works fine for 100 coordinates (100x100 =10.000 ) If want to request the distances for 101 coordinates I have the following error:
time_matrix = osrm.table(list_coordinates, coords_dest=coords_destinations,  output='dataframe')
File "C:\Users\RSale\Anaconda3\lib\site-packages\osrm\core.py", line 348, in table
rep = urlopen(req)
File "C:\Users\RSale\Anaconda3\lib\urllib\request.py", line 223, in urlopen
return opener.open(url, data, timeout)
File "C:\Users\RSale\Anaconda3\lib\urllib\request.py", line 532, in open
response = meth(req, response)
File "C:\Users\RSale\Anaconda3\lib\urllib\request.py", line 642, in http_response
'http', request, response, code, msg, hdrs)
File "C:\Users\RSale\Anaconda3\lib\urllib\request.py", line 570, in error
return self._call_chain(*args)
File "C:\Users\RSale\Anaconda3\lib\urllib\request.py", line 504, in _call_chain
result = func(*args)
File "C:\Users\RSale\Anaconda3\lib\urllib\request.py", line 650, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
HTTPError: Bad Request
So, I think there is some limit of requests? Can I change that limit somewhere? OSRM for c++ does not have this limit.

Hello @RamySalem1993,
The error is likely to come from the underlying OSRM server as 100 is the default value for the table requests.
Please update that number and retry.

Thanks for your quick response @zifeo ! Where can I find this file, since I use OSRM with python. As far as I know this file is not on my computer, since it is a C++ file.

@RamySalem1993, what OSRM url you use? Using the demo server is only for testing/demo and the option are limited. Consider running it with docker and you will be able to customize the launching flag --max-table-size.

I'm using the following url:
osrm.RequestConfig.host = "router.project-osrm.org"
Is this URL a demo server?  So, your are saying that the only way to work this good is with docker? @zifeo
If it is only good with docker I don't understand why it is implemented on Python...

@RamySalem1993 Please have a look on https://github.com/Project-OSRM/osrm-backend/wiki/Demo-server. AFAIK there is no free and open server to use, you have to host you own.

Sorry for all my questions, but it looks like you are familiar with OSRM. I thought that OSRM was a open source (and free) route machine which provides distances and durations between coordinates, while using the real road network. But you imply that this is a demo and the original one is not free and I have to host my own. What do you mean with host my own? Since I read a lot in the "OSRM c++ github" and there I see people talking about updating values (distances etc.) and requesting matrices of 10000x10000. I have never read about paying for this service. So, at the moment I don't understand the service of OSRM, is it free or do you have to pay for it? And what do you recommend to use OSRM in the best and fastest way?

@RamySalem1993 open source != free runtime, it means that the code source is publicly available but it does not guarantee that the resources needed for running this system are also offered. It should be easy to run it on your computer, for instance here and here.

Thanks @zifeo. So, using this --> osrm.RequestConfig.host = "router.project-osrm.org" <-- in Python is a demo. And it is better to use ubuntu or docker instead (to have the best features)?

@RamySalem1993 yes.


Added ps --pod option

Signed-off-by: haircommander<EMAIL_ADDRESS>

LGTM. Only comment: Should we display nothing for containers with no pod, or maybe  similar to images with no tags?

@mheon I think blank is conforms most with the rest of ps: ports for example is just blank.

Alright, SGTM

@rh-atomic-bot r+


Render a "simple" recipe into a program runnable on ADC infra

Render "simple" recipe representations into a parsl program that we can execute on ADC's k8s.

Combination of https://github.com/QGreenland-Net/ogdc-recipes/pull/2 and https://github.com/QGreenland-Net/ogdc-runner/pull/6


[Skeleton][material-ui] Add new props to the Skeleton component

Description
Added new props to the Skeleton component. The props added are

shape: determines the shape of the skeleton, whether circular, rectangular or rounded.
size: set the adaptation of the skeleton component.

Also deprecated variant in favor of the two new props.
Closes https://github.com/mui/material-ui/issues/38190

[x] I have followed (at least) the PR section of the contributing guide

This code was written and reviewed by GitStart Community. Growing great engineers, one PR at a time.

@DiegoAndai this PR is ready for review

@gitstart the code looks ready to me 🎉
Can you update the Skeleton documentation page? It should reflect that users should use size and shape instead of variant:

Replace the Variants sections with separate Size and Shape sections
Replace any use of variant in the examples, as well as the explanations related to it, with the size or shape props

We also need to merge the master branch into this branch to remove the merge conflict 😊

@DiegoAndai your feedback has been implemented, thanks for the review.

@DiegoAndai your feedback has been implemented.

In terms of behavior, I think it would be great to update the docs to still encourage the use of the variant.
This seems to be the same case as in https://mui.com/material-ui/react-alert/ with the severity = color + icon. In the large majority of the cases, the variant should be enough but here might be cases where developers want to unbundle the prop variant = shape + size.
Personally, it would be more intuitive for me to use the sx prop over the shape prop, but I can also understand why some people would use it.


[POP] Make lite pull consumer support POP mode to consume

FEATURE REQUEST

Please describe the feature you are requesting.

Support pop mode for DefaultLitePullConsumer.

Provide any additional detail on your proposed use case for this feature.

Currently, POP mode is only supported in Push consumer. However, in the push consumption mode, users can only passively accept messages to consume, and cannot actively control the speed of consumption (the function of limited flow is not very flexible).
As we thought, pull consumer can achieve this purpose very well. However, in some business scenarios, there may be thousands of instances in the consumer group (which will automatically expand and shrink with traffic). If the client-side rebalance mode is still used, it will lead to unbalanced consumption traffic and frequent rebalance. So it is necessary to make pull consumption to support POP mode.
Possible code looks like this:

public static void main(String[] args) throws Exception {
      DefaultLitePullConsumer litePullConsumer = new DefaultLitePullConsumer("lite_pull_consumer_test");
      litePullConsumer.setConsumeFromWhere(ConsumeFromWhere.CONSUME_FROM_FIRST_OFFSET);
      litePullConsumer.subscribe("pop-topic", "*");  //POP consumption only takes effect in subscription mode
      litePullConsumer.setNamesrvAddr("localhost:9876");
      litePullConsumer.setClientRebalance(false);
      litePullConsumer.start();
      try {
          while (running) {
              List<MessageExt> messageExts = litePullConsumer.poll();
              for (MessageExt messageExt : messageExts) {
                  System.out.printf("%s=%s\n", messageExts.size(), messageExts);
                  litePullConsumer.ack(messageExt);
//                litePullConsumer.changePopInvisibleTime(messageExt);   //retry
              }
          }
      } finally {
          litePullConsumer.shutdown();
      }
}

Indicate the importance of this issue to you (blocker, must-have, should-have, nice-to-have). Are you currently using any workarounds to address this issue?

should-have

Hi, There is no need to do that, lite pull is widely used in the streaming scenario while POP is unsuitable.
For your needs, I think the new SimpleConsumer API is more suitable and could better leverage the POP ability. Please refer to here for more information.

Hi, There is no need to do that, lite pull is widely used in the streaming scenario while POP is unsuitable.
For your needs, I think the new SimpleConsumer API is more suitable and could better leverage the POP ability. Please refer to here for more information.

@zhouxinyu  Got it. But it seems that it can only be used after 5.0. Looking forward to the 5.0 version.

Hi, There is no need to do that, lite pull is widely used in the streaming scenario while POP is unsuitable.
For your needs, I think the new SimpleConsumer API is more suitable and could better leverage the POP ability. Please refer to here for more information.

In our case, the user has 500 machines and needs to explicitly call the receive interface for logic processing.
Can SimpleConsumer achieve this effect, similar to pop ？

Partly Yes, SimpleConsumer will receive messages from a proxy, usually, it's an LB, then the proxy will pop messages from the 500 machines in a round-robin manner. It's obvious that the clients don't need to send requests to all backend servers but should improve concurrency to reduce false empty response. In the future, the proxy could long-polling from all the backend machines to reduce client pressure.

BTW, do you use the POP technology in your production environment? If yes, any feedback?

BTW, do you use the POP technology in your production environment? If yes, any feedback?

@zhouxinyu Yes, we are already using the POP consumption function, and through some optimizations (flexible delay messages instead of level delay), it has shown a good use effect. But there is currently such a scenario that the pull consumer needs to support the POP mode.


Migrate to JavaPackager

We currently use Launch4j and Appbundler to package OpenRefine for Windows and Mac.
Appbundler is no longer supported by Oracle and they recommend JavaPackager instead. JavaPackager handles a lot of distribution formats and is also integrated with Maven via this plugin:
https://github.com/fvarrui/JavaPackager
We should consider migrating to that.

JavaPackager is now incubating in OpenJDK 14 via JEP 343.

Interesting… I didn't realize JavaPackager had only been available in Java 8 too. Citing the specs for jpackager, the OpenJDK equivalent:

There will be no support for cross compilation. For example, in order to create Windows packages one must run the tool on Windows. The packaging tool will depend upon platform-specific tools.

That does not sound great to me! I really like it that I can generate Windows packaging from Linux in the current setup :-/

Yeah, Mark also gives some good comments if you look into the JEP 343 issue on the mailing list it seems there still is quite a bit of work to do on it as well.

Actually jpackage and JavaPackager seem to be two distinct, unrelated things, as far as I can tell.


Environment variables

Hi,
I'm trying to CMAKE the skeleton example but I'm not sure what some variables are referring to. Can you clarify what NuiTrack_DIR, NuiTrack_MIDDLEWARE_LIBRARY, and NuiTrack_NUITRACK_LIBRARY should be directing to?

Thank you for your work!

They are written in FindNuiTrack.cmake. Please read it.


Modernization Refactor (and bug fix)

Hey! This is such a great plugin and I wanted to give a bit of a code refresh while also improving the API slightly by allowing specific buffers to be provided for the indentation detection. So there are a few goals of this PR:

Being able to provide specific buffer numbers as context. The functions operate on the "current buffer" which works ~99% of the time but every once in a while a buffer may be opened in the background of the current buffer which can cause the detection to not happen. This adds the ability to provide a number as the context to set to a specific buffer even if it isn't the current. I also improved the auto commands to use this new feature and pass the context from the autocommand itself which resolves these cases where buffers are opened in the background!

Use the more modern Lua APIs for the code. This removes all of the vimscript strings that were in the original codebase (for setting the user commands and autocmds). These have been around for a while and it is safe to adopt these. This makes things slightly faster (but we are juggling milliseconds). This also moves away from a couple APIs that are being deprecated in upcoming Neovim releases. Specifically vim.api.nvim_buf_set_option and replaces it with the simpler table notation

Utilize the Lua Language Server annotations to document the API and make it easier to maintain down the line. This improves the type safety a bit and also provides LSP integration to the user if they use it. Now if the user does require("guess-indent").setup({ }) they will get auto completion within the table passed to the setup function!

[!NOTE]
Also important to note, I made sure that this was implemented as non-breaking as possible. The current approach is non-breaking for the user facing command :GuessIndent but is breaking for the require("guess-indent").set_from_buffer arguments. From the docs it doesn't seem to be promoted for users to use this function so this seems like a pretty good approach

Definitely the main goal of the PR was to add the buffer number specification and improve the autocommands/user commands, but thought that maybe a bit of a refactor could help future-proof the plugin a bit as Neovim continues to grow and evolve without increasing burden on the plugin maintainer. Let me know if you have any comments or concerns! Thanks again for this great plugin, it continues to work perfectly!

Thank you! Overall, these changes look great. However, I'm not entirely sure if the arguments of the set_from_buffer function get handled properly. With your current implementation, calling :GuessIndent with a buffer number (or any kind of argument for that matter), it always gets treated as if it were called by an auto_cmd, meaning that all user output get's supressed. Previously this was only the case when calling :GuessIndent auto_cmd.
Do you think this the right behaviour? If a user goes out of their way to specify which buffer they want to be affected, I feel like they would probably also want to get feedback on what / if indentation got detected.

Thanks for this feedback! Yeah I thought about this as well. The main driving factor was to keep away from breaking changes to the API. The only way to avoid this would be to change the API to be better suited to being able to provide a buffer number. What do you think? Should I look at modifying the API in a way to better fit the ability to pass in the buffer number as well as specify the "auto_cmd" part?

Ok, I have been noodling about this quite a bit and I think I have come up with a good interface for the :GuessIndent command that satisfies all of the needs. The user can supply several arguments to control the indentation detection. They can specify: a specific buffer number, "context" (or "auto_cmd" for legacy support) to respect the buffer's context, and "silent" to silence the notification. Here are some examples to clarify:
:GuessIndent                   -- current buffer, no context, show notification
:GuessIndent context           -- current buffer, respect context, show notification
:GuessIndent auto_cmd          -- same as above, left in for legacy support
:GuessIndent context silent    -- current buffer, respect context, no notification
:GuessIndent silent            -- current buffer, no context, no notification
:GuessIndent 10                -- buffer 10, no context, show notification
:GuessIndent 10 context silent -- buffer 10, respect context, no notification

Based on the implementation, the arguments can be supplied in any order and only the first number is used as a buffer number.
Hopefully this deep dive and testing out different APIs is found to be useful! I really love this plugin and the approach it takes on detecting indentation and love the opportunity to help with the development 🤗

I have been running into a bug where after I open a file, any other file opened with :e throws an error (yet still opens):

This branch fixed my problem, please take a look @NMAC427 :)

@NMAC427 Hey! Hope all is well, just wanted to check in and see if you have gotten any time to take a look at this PR now that it's been cleaned up. Thanks so much!

No worries at all! Thanks so much for the consideration!


Why 130MB Initial Bucket on windows ?

Just curios why tiedot need to create initial 130MB file for _uid & data on windows. That is 260MB wasted without a inserting any documents.

I have 11 collections, 256Mb for each with no data at all! Some collections will only hold a few entries. This is a major blow to my project.
Any Thoughts?

@agozie sorry - the size of collection files depends on the number of CPUs on the system:
https://github.com/HouzuoGuo/tiedot/blob/master/db/db.go#L50
I intended for the initial size of collection to depend on GOMAXPROCS, so the line must have been a mistake.
The collection file size could be reduced to 64MB by replacing runtime.NumCPU()) into 1.

How will reducing runtime.NumCPU() to one affect performance? Thanks alot.

Reduce it to one should retain approx.30% in your scenario. Run benchmark ./tiedot -mode=bench to be sure.


Add C API bindings

I was also going to add Go bindings but I have no idea how to do that right now (correctly). Will probably have to come later once I figure out how we're going to do it in the Workers API.

I'll fix these Actions later (disabled again for now).


feat: add file coffee using pyomo

Hi,
As the idea in #9 . I updated code of using pyomo instead of gurobi
I would like to cc @BeibinLi to review my code

I am pretty sure the file coffee_pyomo.py work well. However, I do not have to much experiment on file optiguide, so the change I made maybe make some bug or conflict, still need someone contribute to the file optiguide to surely work well.

Awesome changes! 1 quick question before I test these new changes: in the optiguide.py, can we check (or ask the user) which backend they would like to use? For instance, we can have a parameter "backend" for OptiGuide agent, and then which solver software would be used?

I thinks that's a valuable feature, I will add them

@pphuc25  @alfredoihernandez  Please see my latest changes.

that's seem good, LGTM @BeibinLi

@pphuc25  and @alfredoihernandez
I made significant changes to the source code, and also added a Jupyter notebook (thanks to @alfredoihernandez).
Because of the urgency, I will merge the code soon. If you find other potential bugs or issues, feel free to raise an issue or create new PR.
Thanks for working on Pyomo!


make Navigate actions wait until the load has finished

Just like in the old v0.1 chromedp version.

This was fixed in 5641ebbffced776b8cdf0d6d31ff9408527d5037, but I forgot to link the issue.


updates

fix voip headers
add CallAutomationClient.Source to AnsweredByIdentifier

API change check
APIView has identified API level changes in this PR and created following API reviews.
Azure.Communication.CallAutomation


feat(acir)!: BlackBoxFunc::VerifyProof

Related issue(s)
Resolves #198
Description
Add VerifyProof variant to BlackBoxFunc enum
Summary of changes
This will be used by backends looking to integrate recursion. As per the issue discussion, this requires enabling the OutputSize of FuncDefinition's to be Variable. I left the InputSize and OutputSize enums distinct for now and left a comment under what scenarios OutputSize can be Variable. The OutputSize is NOT dependent upon the user inputs (like the input size to sha256 for example), but rather dependent upon the proving system that is integrating with ACVM. This distinction is important as this change to variable output size does imply support for dynamic circuits.
I will make an issue to consider how we can best differentiate whether the variable OutputSize can be dependent upon a gadget's input. It might need to be in this PR though where we have a function in the ProofSystemCompiler similar to black_box_function_supported that can output a BlackBoxFunc's proof system dependent OutputSize. Opening this PR as part of the discussion.
Dependency additions / changes
(If applicable.)
Test additions / changes
(If applicable.)
Checklist

[ ] I have tested the changes locally.
[ ] I have formatted the changes with Prettier and/or cargo fmt with default settings.
[ ] I have linked this PR to the issue(s) that it resolves.
[ ] I have reviewed the changes on GitHub, line by line.
[ ] I have ensured all changes are covered in the description.

Additional context
(If applicable.)

Converting to draft for now as this is not ready

Closing in favor of #291. There were many breaking changes and it was simpler to cherry-pick against the new PR removing manual serialization that uses serde


subfolders missing from Crashplan

Not sure if this has been answered or not, but thought I try asking here. I am currently running a Fedora 30 system. When I first installed the docker container, I had it setup as such:
docker run -d \     --name=crashplan-pro \ 	--restart=always \     -p 5800:5800 \     -v /opt/crashplan-pro:/config:rw \     -v /:/storage:ro \ 	-e GROUP_ID=1000 -e USER_ID=1000  \ 	-e TZ=America/Los_Angeles \ 	-e KEEP_APP_RUNNING=1 \ 	-e SECURE_CONNECTION=1 \ 	-e CRASHPLAN_SRV_MAX_MEM=2048M \ 	jlesage/crashplan-pro
Initially, this worked well; I was able to select the folders that I wanted to backup, and after about 8 days, everything was backed up -- or so I thought. Recently, I added more files to my system, and assumed that since they were

Under the same subfolders
Had the same permissions as the other files

Everything would be backed up. However, I noticed everyday that it would "say" that things had been backed up, but the amount would ALWAYS be 0 bytes. So I decided to investigate further. I clicked on "Manage Files" and browsed to one of the folders that should be getting backed up. When I click on that folder, everything under it was missing -- showing as empty. I double checked to make sure the files were indeed still there. I then issued the following:
docker exec -it crashplan-pro sh
Then made my way to /storage. From the container itself, I could ALSO see that all files that should be seen WERE being seen -- nothing was missing. But in the CrashPlan application, the folders had that little icon (a circle with a squiggly line denoting that the file was missing).
At this point, I am kind of at a loss for what the issue is. I went so far as to delete the container, delete the configuration folder, and start from the scratch. Yet, the CrashPlan application STILL shows these folders as missing. Any idea what may be going on? Thanks in advance.

This looks like a permission issue.  Are you sure that the problematic folders/files have the proper permissions?
Also, are you required to map the entire host's root folder?

This looks like a permission issue. Are you sure that the problematic folders/files have the proper permissions?
Also, are you required to map the entire host's root folder?

Permissions are correct. However, I did notice something strange after posting my question. I went back into the GUI, and notice /storage folder. When I click into it, then I saw all the sub folders displaying correctly. Here’s the thing though: that /storage folder didn’t show up in my initial backup. Regardless, I went ahead and selected the items that should be backed up, and thankfully CrashPlan was smart enough to not make me re-upload the already backed up items.
Not really sure what happened, just glad it’s working. Thank you again for the support; I definitely appreciate it.

Great, glad that it's now working for you.


Fix ShouldHitEntity for certain entitites

Actually fix aimbot/triggerbot from not shooting through Medic's MvM shield, as well as allow targeting through teammates as Sniper.

Bless you


Simplify configuration

Simplify the configuration needed for each system.

RestAPI instrumentation key: Currently only supports dotnet secret storage.

Need to sleep on if we need it as part of the MVP. One instrumentation key two places is an acceptable pain for now.

Now there is a bit more than one instrumentation key in to places and the configuration is staring to become a bit messy as keys are just added with features and we need a strategy here.


Map 6: Extended campus

This one should use a MapTiles / MapBox background and linked to that episode of the lesson.
it will make this one look pretty different from the other 2 Zooms

Julien will look for potential improvements


Install: auto-detect incompatible bpfConnectTimeLoadBalancing Calico config

Extend our validation to include this check here: https://github.com/istio/istio/blob/f3f58a59322279ea2e7c0801fda00524b2175cf0/operator/pkg/apis/validation/validation.go#L89

Hi, I'm a new contributor, I can pick this up if no one is working on it. Seems straightforward enough.

@keithfz hello! Thank you for your willingness to contribute; that would be great 😁 please let us know if you need any assistance. We usually hang out in the #contributors channel in the istio slack

Opened a WIP here: https://github.com/istio/istio/pull/54176
Let me know if this is the correct scenario we wanted to cover and if there are any things around go style and what not. Still a novice so feedback is appreciated. :smile:

fixed by https://github.com/istio/istio/pull/54176 I think. Thanks!!


Add unit tests and end-to-end tests

The not-so-recent audit of the wallet mentioned there are no tests in this codebase? Is this still the case?
See https://leastauthority.com/blog/audit-of-clorio-wallet-mina-ledger-js-for-mina-foundation/

Hi @langfield , that's correct. There are no unit tests in place at the current time. They are still planned, but they have not been developed yet in favour of user functionalities.
Feel free to get in touch if you want to contribute to do so


Fix Travis-ci build

Build (currently) requires SDL2, which does not appear to be available in the Travis CI infrastructure.
It is allowed, but only available in the backports registry (which is not available).
Possible solutions:

Add backports to the package source whitelist on travis-ci
Refactor so utility can be compiled without SDL2 (probably a better option)

Refactored SDL to separate module, disabled for Travis CI.


yaml notification editor partly offscreen on mobile

When opening the yaml editor in the notifications the textbox and more are partly offscreen and can't be dragged in screen of zoomed out either.
Check screenshot below:

While the UI editor seems fine:

The YAML editor is not intended for mobile devices.
It is a component managed by HA, so I cannot solve this.


⚠ Bofrost.hr has degraded performance

In e1b97c8, Bofrost.hr (https://www.bofrost.hr) experienced degraded performance:

HTTP code: 200
Response time: 12022 ms

Resolved: Bofrost.hr performance has improved in 96cade8 after 8 minutes.


Adding anomaly detection dashboard plugin to manifest 1.2.0

Signed-off-by: Amit Galitzky<EMAIL_ADDRESS>Description

Added Anomaly Detection Dashboard plugin to manifest 1.2.0

Issues Resolved
part of https://github.com/opensearch-project/anomaly-detection-dashboards-plugin/issues/97
Check List

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

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

Codecov Report

Merging #895 (b189ec1) into main (bc043ac) will decrease coverage by 0.21%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #895      +/-   ##
==========================================
- Coverage   91.58%   91.36%   -0.22%
==========================================
  Files          87       87
  Lines        2294     2294
==========================================
- Hits         2101     2096       -5
- Misses        193      198       +5

Impacted Files
Coverage Δ

src/system/temporary_directory.py
82.75% <0.00%> (-13.80%)
:arrow_down:

src/system/os.py
92.30% <0.00%> (-7.70%)
:arrow_down:

Continue to review full report at Codecov.

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

It's my bad, I merged in an update that git is conflicting due to a newline character. Can you rebase otherwise I can rebase for you.

No problem, I just rebased


fix a zedagent devinfo watchdog due to timer channal hang

Signed-off-by: Naiming Shen<EMAIL_ADDRESS>
seen this watchdog in case of northbound traffic is blocked by firewall, the zedagent task of NI Status modify (thus NI info upload), and device info periodically upload fail and stop and start the defer timer.
seen the NI Status modify task repeated gets triggered to run and stopTimer() and startTimer() called, and also at the same time the deviceInfo doing the stopTimer() and startTimer(), before the timer itself in zedagent got the chance to run.
even make the timer channel buffer size to 10, sometimes hit the watchdog
this patch is to first increase the buffer size, then remove the stopTimer() from the removing the deferred items, even if there is no item let it run just once and it will set the stopTimer() inside the handleDefer; make the startTimer() not do anything if the timer has already been triggered and has not been served yet.

Ok. This patch does prevent lockup by only allow timer to be fired once. but your suggestion is simpler, will change to that.

updated the PR description and added more comments on the multiple timer triggering.


Cleanup build

@devoncarew

lgtm

Merged https://github.com/dart-atom/dartlang/commit/25994a005e6f80aa620597edb6f050f203f2b573


[pulsar-client]Add getNumPartitions method into PartitionedProducerImpl

Motivation
PartitionedProducerImpl should public the number partitions of its topic. Although we can get the number partitions of a topic by calling the pulsar client's RPC, this will consume one RPC request which is time consuming.

A topic partitions may change. calling the pulsar client's RPC is necessary if you need to know the latest number partitions of the topic in real time.
PartitionedProducerImpl can always know the latest number partitions of its topic because of TopicsPartitionChangedListener.

Therefore, Producer can get the latest number partitions of a topic in its topicMetadata cache. It can reduce RPC request and improve performance when you want to know the number partitions of a topic by PartitionedProducerImpl.
This was indeed used when I designed and implemented MQ on Pulsar, which improved the performance of Proxy and increased throughput.
Modifications
public a getNumPartitions API in PartitionedProducerImpl
Verifying this change

[x]  Make sure that the change passes the CI checks.

This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes

Dependencies (does it add or upgrade a dependency): (no)
The public API: (yes)
The schema: (no)
The default values of configurations: (no)
The wire protocol: (no)
The rest endpoints: (no)
The admin cli options: (no)
Anything that affects deployment: (no)

Documentation
Check the box below and label this PR (if you have committer privilege).
Need to update docs?

[x]  doc
(The function has its own java doc.)
Enhancement

@HQebupt this PR should be labelled with doc since it updates Java docs.

@HQebupt this PR should be labelled with doc since it updates Java docs.

Thanks for kind reminder.

@HQebupt this PR should be labelled with doc since it updates Java docs.

Thanks for kind reminder. @Anonymitaet

/pulsarbot run-failure-checks


add raspberry pi compute module 4 variants

add raspberry pi compute module 4 variants a03140, b03140, c03140, d03140
https://github.com/raspberrypi/documentation/blob/develop/documentation/asciidoc/computers/raspberry-pi/revision-codes.adoc

Closed with 1085

Ah no, sorry i though the PR did add support. reopening


Store some key containers IDs as grains

Store some key containers IDs as grains, and use those grains for doing things like 'docker restart'

I'd be worried these get out of sync, the grains get refreshed periodically, and we want to always have the ID available when we need to restart etc. If they get out of sync, orchestration will fail, and a re-run will often NOT restart the container - as the "onchanges" etc won't trigger the states again on the second run.

I'd be worried these get out of sync, the grains get refreshed periodically, and we want to always have the ID available when we need to restart etc. If they get out of sync, orchestration will fail, and a re-run will often NOT restart the container - as the "onchanges" etc won't trigger the states again on the second run.

@kiall Containers IDs do not change on a docker restart, so I think the only case when a container could change the ID is after a crash, where the container would be restarted with a different ID. In that case the state could fail if the grain is not up-to-date. However, I think we are forcing a grain update as the first step in the orchestration, so the problem could arise only if the container crashes in between the orchestration beginning and the point when the container must be restarted/killed/whatever.  I think that is rather unlikely, but we could add a retry just to be sure...

Can you provide some context regarding this @inercia?

@ereslibre I'm just trying to reduce the amount of bash-in-Salt we have, something that makes our code fragile in my view...

@ereslibre I'm just trying to reduce the amount of bash-in-Salt we have, something that makes our code fragile in my view...

I'm a totally +1 there, but I meant context regarding the caching/invalidation of this grains.

As said quickly during our standup, I'm agree we have to remove the usage of bash inside of our salt states. I think we have to use the docker module of salt however.

If we want to move away from bash in salt in this way; we cannot simply move to dockerng salt module as we are moving towards using crio instead of docker for cri.
There is no crio salt module.
My suggestion here would be to start our own salt module for podman; calling the podman API:
https://github.com/containers/libpod/blob/master/API.md
That would then be able to do checks/operations against both docker or crio setups.
Realistically this PR should just be closed at this point as these changes won't be integrated. Closing.


[feat] Teach the LLM to Speak in Haiku

:)
Changing prompt to rhyme,
LLM now speaks in haiku,
Poetry through code.

/evaluate

Beautiful, now you just need a is-haiku-evaluator!
For your reference, here are my slides:
https://speakerdeck.com/pamelafox/github-universe-evaluating-rag-apps-in-github-actions
And the main repo this was based on:
https://github.com/pamelafox/rag-postgres-openai-python/
with evaluation guide here:
https://github.com/Azure-Samples/rag-postgres-openai-python/blob/main/docs/evaluation.md
To evaluate on Azure,
Azure AI Eval SDK docs are here:
https://learn.microsoft.com/en-us/azure/ai-studio/how-to/develop/evaluate-sdk
And if you're interested in the Azure AI CI/CD private preview, sign up here:
https://aka.ms/genAI-CI-CD-private-preview


Add fix to tag real unsquare buildings as unsquare

We want buildings to have nice square corners in OSM—unless they're not square in the real world. iD should offer a fix like "Tag as accurate" that will add a tag like unsquare=yes to indicate a building is known to be truly irregular. This will prevent iD and other tools from continuing to falsely flag the issue in the future.

Other false validation issues are already tagged similarly in OSM, such as with noexit=yes and noname=yes.

Although noname=yes is common, it is not that common that it can serve as an argument in favour of introducing unsquare=yes. In difference to noexit=yes, unsquare=yes and noname=yes only serve as a workaround for quality assurance tools. noexit=yes also conveys information for map users: There road ends here.
Some people prefer to tag as complete as possible and add oneway=no, cycleway=no, lit=no etc. to any way. However, such a practice is not base on a broad consensus and if you dig deep enough in the history of user blocks in OSM, you might find blocks set due to an excessive use of negative binary tags.
I think that iD does not need this tag and should only validate buildings if they have been added or modified in the current session. If doing so, they will be reported once which does not bother that much.
Adding such a tag is not a simple change as it might seem to be and I ask you to discuss it with the broader community on the Tagging mailing list.

I agree that this needs to be proposed to the broader community and discussed before encouraging people to add such a tag.

I did this! I ended up using nosquare for the tag to align it with noname and noexit. Mappers can now fully resolve all unsquare way issues. If you manually square the feature later, then the tag is automatically removed.

@pnorman said:

I agree that this needs to be proposed to the broader community and discussed before encouraging people to add such a tag.

iD development isn't driven by the tagging mailing list nor tagging proposals. Our goal is to help hundreds of thousands of mappers around the world easily create accurate, unambiguous data. Sometimes (very rarely) this may entail making up new tags, but all tags are made up anyway so I don't see an issue here.

@quincylvania Your behaviour is not commendable.

May I kindly suggest that you consider what this feature does to an average town older than 300 years. Right angles are seriously overrated.

@lonvia Good point! We think we've struck an okay balance to reduce false positives. iD won't flag buildings connected to other buildings nor buildings with lots of points. Buildings with additional tags cannot be fixed without review. In fact, I loaded that area with preview iD and only saw about a dozen unsquare building warnings.

The key nosquare makes no sense.  Now it, no name, and others are logical English, but nosquare implies that the building doesn't have a square somewhere to the many mappers unfamiliar with the tag.  Could you use notsquare instead?

@BjornRasmussen I changed it to nonsquare, which is an actual English word and should be more friendly. Thanks!

For reference, this topic is now discussed on the Talk mailing list. https://lists.openstreetmap.org/pipermail/talk/2019-May/082506.html

Interesting proposals out there: https://lists.openstreetmap.org/pipermail/talk/2019-May/082522.html
it can participate with other solutions like better training to assure that Newbies understand what Building tracing really mean and give then some feedback, like for example saying before save "You have 10 over 12 buildings that are unsquarred.  If you dont know how to make rectangular buildings, you should ask for help before you continue.  Do you want to send data anyway ?"

I encourage everyone interested in the unsquare buildings validation to try it out for themselves on our live preview site before jumping to conclusions about how it works.
As with all our validation rules, we put a lot of thought into making unsquare issues contextually relevant and easy to resolve with accuracy.
By default, you only see issues with your own edits. This means new mappers aren't prompted to square random buildings, just their own additions. If you want to be a power-validator—awesome!—you can switch to validating all loaded data in the Issues pane.

If you don't want to use nonsquare=yes, or you're not sure if a building is actually square or not, you can select the new "Ignore this issue" option instead. This silences the particular warning for your current session, but it won't convey any information to other mappers.

And if you don't find unsquare warnings helpful at all, then you can simply turn them off.

"Warning" as a category for non-squared buildings along with a yellow exclamation mark seems a bit strong for the average user. Moving this check to "Information", along with some blue Information icon would probably be more appropriate.

you can select the new "Ignore this issue" option instead. This silences the particular warning for your current session, but it won't convey any information to other mappers.

I see one major drawback of this approach: as you don't have a dedicated backend service to store "false positive" user decisions (unlike "real" QA tools, like osmose), the warning will resurface the next time you map in that area. Ignoring is really only feasible for a one off mapping event, otherwise this tends to be quite annoying.
I tried this in some rural area in France where imported official cadastre data prevails. Yet, most of the buildings were "to be squared" candidates, making the "power-validator" mode kind of pointless. Adding an extra tag to all those buildings to silence iD seems kind of weird.

Moving this check to "Information", along with some blue Information icon would probably be more appropriate

Having another level of validation is something I've been thinking of suggesting also.
It could be used for things that aren't guaranteed to always be wrong (such as these nonsquare buildings or the email/website format validation I've had a play around with) - as such never being included in the "fix all" operation.

I realize this is not a vote but I'd like to register my profound disagreement with editor writers unilaterally inventing new tags they feel are a good idea. Nobody in OSM is so brilliant that they should have that kind of power. Not without discussing it first, like we expect of any import or mechanical edit for precisely the reason that what seems like a good idea to the inventor could turn out not so good after a few more people have looked at it from different angles.


Extended test for full beam search export

Since I wasn't running on a devserver, I substituted in a directory containing local copies of some checkpoint files for check_dir. I substituted the original path back in before pushing.
Note we found a bug in handling of shapes with vocab reduction, which is fixed here: https://github.com/pytorch/pytorch/pull/7303
pytorch:caffe2 comparison passes with the given tolerances, same as the other tests

@jamesr66a, could you send this one internally.


Need to manually set thickness property when importing gltf scene

Bevy version
0.12.1
What you did

Create new principled BSDF material in Blender
Set transmission close to 1
Set IOR to something other than 1 to get some refraction going
Export gltf
Load the scene in Bevy using the following code:

commands.spawn(SceneBundle {
        scene: asset_server.load("scene.glb#Scene0"),
        ..default()
    });

What went wrong
No refraction is seen when the scene is loaded in the Bevy app. Need to manually set the thickness property of the StandardMaterial to achieve a similar look to the Eevee renderer in Blender. The StandardMaterial documentation does not seem to include how to approach this exactly. But ideally it would work out of the box.

Additional information
Let me know if a reproducer would help, wanted to post first in case I just missed some export setting in Blender.

A reproducer would be great. Once you have something small working; can you check if the property is correctly set in the gltF file? There's a chance this bug is on the Blender end, not the Bevy one.

We had some discussion about the issue here.
IMO we should ignore Blender for now and try to figure out the following:
How does one create a solid glass material in Bevy?
For example, if you have a Suzanne made of solid glass, you'd set the IOR to 1.5, but what do you set thickness to? Shouldn't it not be necessary?
Once that is clear it should be easy to create a workaround and/or see if it's a Blender issue.

Thickness in gltf is defined in an extension: KHR_materials_volume
https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Khronos/KHR_materials_volume/README.md
This is loaded by Bevy if it's available.
So you need to setup Blender to export materials with this extension. It can do it (https://github.com/KhronosGroup/glTF-Blender-IO/pull/1646) but I don't know Blender enough to know how to set it there.

Yeah just to be clear, when I ask "How does one create a solid glass material in Bevy?" I'm talking about a Bevy material, nothing gltf related

Quick googling for the Blender export settings days:

Blender 3.3 allows you to add a glTF Material Output node, which includes values for occlusion, thickness, and specular – all the data needed for outputting volumes into a glTF file. When importing a glTF file, this node and associated values are automatically added and set.

If you are creating an object from scratch and wish to output to glTF, you can enable the glTF Output Node in preferences: Preferences > Add-ons > Import-Export: glTF 2.0 format > Shader Editor Add-On

Once enabled, the glTF Material Output Node will appear in the menu under Output Nodes.


The docs link seemed removed

It seemed the docs/learn link had been removed, it would be great if we could add it back
In the docs page, there's more helpful info
fo example, we could get the Derived types info and link to the github source and maybe some useful examples

Should be fixed with d1bdbdfbab68a0b1fb5c7a63bd2d6416b503e30f.


Correctly select the schema/args of a task, without refreshing the page

This came up live during the call a little ago. When I moved from one WorkflowTask to another one, apparently something (schema? args?) was not updated.
To check.

Closed with https://github.com/fractal-analytics-platform/fractal-web/commit/ffcdd53b987a63b9940feff5b939e0f8dceaff5d?


CSVs should be RFC4180 Compliant

This was reported ages ago (at least Dec 1st, if not earlier)
The CSV files that the LCB accepts are not compliant with RFC4180
-- so this means, no quoted fields and no embedded commas in field values (and likely a host of other bugs)
https://datatracker.ietf.org/doc/html/rfc4180
Also, for notes: https://datatracker.ietf.org/doc/html/rfc7111

Adding onto this; previously many files were submitted using UNIX style line endings.  Just recently that switched and now their system REQUIRES a CRLF (Windows) style line-ending.

We have looked at your files and found that all your line endings are not Microsoft Windows .CSV line endings (CRLF). When files are originated on a Unix based system, or the file is generated programmatically, the correct line endings may not have been specified correctly. Please save your files as a Windows .CSV file type, and resubmit your files.

The LCB will NOT fix this issue


Add Nellie illustration to home page on mobile

Need to add a Nellie illustration to the home page when the user is on a smaller screen. The main illustration disappears at a certain width as I intended but we should still have some sort of narwhal illustration.

With the addition of the "getting started with sonar" section on the homepage, I added a Nellie illustration that stays on the page in mobile view. Closing.


Scrollbars: disable auto-hiding

It'd be great if there was an option for disabling auto-hiding for scrollbars, this way they could be made to look exactly like native scrollbars (customizing those as well), greatly improving the look and feel of third-party apps that embed Monaco (providing a good workaround for https://github.com/microsoft/monaco-editor/issues/1334 too).
This currently can't be achieved with CSS alone, as there's no way to detect with CSS alone if there's actually a need for the scrollbars or not, and showing useless scrollbars on an editor that can't scroll won't provide a great experience for users.

Oh wait there's already an option for this:
scrollbar: {
      vertical: 'visible',
      horizontal: 'visible'
}


fix #409 update javadoc and dependency

Ⅰ. Describe what this PR did
update javadoc and dependency
Ⅱ. Does this pull request fix one issue?
fix #409 update javadoc and dependency
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews

Codecov Report

Merging #410 into develop will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             develop     #410   +/-   ##
==========================================
  Coverage      29.59%   29.59%
  Complexity       621      621
==========================================
  Files            175      175
  Lines           6947     6947
  Branches         844      844
==========================================
  Hits            2056     2056
  Misses          4676     4676
  Partials         215      215

Impacted Files
Coverage Δ
Complexity Δ

...car/discovery/loadbalance/AbstractLoadBalance.java
33.33% <ø> (ø)
2 <0> (ø)
:arrow_down:

...aba/fescar/discovery/registry/RegistryFactory.java
53.33% <ø> (ø)
2 <0> (ø)
:arrow_down:

...scar/discovery/loadbalance/LoadBalanceFactory.java
40% <ø> (ø)
1 <0> (ø)
:arrow_down:

...ar/discovery/registry/FileRegistryServiceImpl.java
56% <ø> (ø)
5 <0> (ø)
:arrow_down:

...r/discovery/loadbalance/RoundRobinLoadBalance.java
50% <ø> (ø)
1 <0> (ø)
:arrow_down:

...r/discovery/registry/NacosRegistryServiceImpl.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

Continue to review full report at Codecov.

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


Release v24: blobstore sha1 mistmatch

Trying to use the newest v24:
➜  Development git clone git@github.com:cloudfoundry-community/docker-boshrelease.git
Cloning into 'docker-boshrelease'...
remote: Counting objects: 1629, done.
remote: Compressing objects: 100% (20/20), done.
remote: Total 1629 (delta 4), reused 0 (delta 0), pack-reused 1608
Receiving objects: 100% (1629/1629), 474.99 KiB | 0 bytes/s, done.
Resolving deltas: 100% (835/835), done.
Checking connectivity... done.
➜  Development cd docker-boshrelease
➜  docker-boshrelease git:(master) bosh upload release releases/docker/docker-24.yml
Acting as user 'admin' on 'micro-google'
Downloading from blobstore (id=3f4eccc8-936f-468a-a8b9-1b42cb7af81d)...
Blobstore error: sha1 mismatch expected=0e0e0f6f2e735bf4003d007022a4e730b77ffba2 actual=4aef8d186d671cee9024a755d344cd4edd0d9ee2
➜  docker-boshrelease git:(master) bosh create release releases/docker/docker-24.yml --with-tarball
Recreating release from the manifest
Downloading from blobstore (id=dddaad4f-e888-4959-85aa-22466c194fd8)...
Blobstore error: sha1 mismatch expected=70336f7a629ea484182189692b6c6f9d3187cc6a actual=7b7223aa31946232eb7f5123795ec6d943de63fa

Only the blobs have been recreated. Packages & jobs also need to be recreated:
<EMAIL_ADDRESS>

blah it looks like i have to delete all the old releases, i'm gonna do that ok @frodenas ?

fixed it, recut v24 with correct blobs


clientv3: don't deadlock on Close with broken connection

Fixes #4679

lgtm. defer to @xiang90
Thanks!

LGTM

Really sorry to bother! How does the deadlock happens? It looks to me that Client.Close() will release the lock.


[WIP] Improve our handling of Graphviz errors

When pydot calls Graphviz and Graphviz returns a non-zero exit code (indicating an error), pydot currently reports the Graphviz stdout and stderr output and raises an exception.
This commit adds to that error report the 'raw' DOT string generated by pydot, as it was also sent to Graphviz as input.
Also, this commit separates the Graphviz stdout and stderr output more clearly.
These changes should help in troubleshooting Graphviz errors.
For some examples where this would have helped see: pydot/pydot#203 ("Problem with graph.write.png...AssertionError: 1")
Tested with Python 2.7 and 3.7. All tests pass (when run together with the test suite fix proposed in PR 211).

Hey! I just wanted to let you (and everyone interested) that this repo is not abandoned. I know that it was a long time without attention from my side, but I am going to look at all new issues/comments/PRs in a few days.

:D Great, good to know, I was starting to wonder already! Thanks for letting us know!

Just let me know if you want any changes, also in commit message, or if I need to rebase a branch or merge master, whatever you prefer.

I like the idea, the only issue I see is that even with smaller graphs it makes errors harder to read, not to mention bigger ones.
I would rather see it as an option (kind of a "debug" or "verbose" flag/option?) that user would have to explicitly use.

Sorry, now it's my turn to apologize for the delay. Life gets in the way sometimes. This will continue for at least a few more weeks, so let's try to take smaller steps.
I agree that printing long error messages is not desirable. In fact, I found that any printing of messages is not very desirable for a library and I had been considering getting rid of printing altogether and use exceptions instead. All the debug output can be attached to a custom exception as attributes.
A problem common to both a debug/verbose flag and adding the output as attributes of an exception, is that both methods depend on the main program (the program interacting the user) and all the modules in the middle to help communicate between pydot and the end user. If they do not cooperate (e.g. the debug/verbose flag is not passed on to pydot, or the additional attributes of the pydot exception are not extracted and shown to the user by the main program), it would actually have become much more difficult for the average end user to provide the debug output than when it was simply printed. I am afraid that in those cases, we would just have to ask those end users to discuss their issue with the developers of the main program first.
If you want to explore the use of exceptions more, I have some further questions for you, but maybe you can first let me know what you think about the above.

Wondering if this project is dead. No commits for 1+ year and no PRs merged for LONG time. Time to fork this thing? Current release has stopped functioning in Windows 10.

@ankostis You commented on commit 51d5dcdc in sytelus/pydotz (a pydot-fork). That commit is part of this PR pydot/pydot#218, which is still open here in pydot, but was already merged in pydotz. My replies with regard to pydotz are below your comment there. My replies with regard to pydot follow here:

Just to be clear, this PR is not adequate, according to our discussion in pydot#219.

Talking just about pydot, you are right that the outcomes of the current discussions on error handling in pydot/pydot#219 and pydot/pydot#171 will heavily influence this PR (pydot/pydot#218) as well. I raised the idea of using custom exceptions with debug output attached as attributes (similar to what is now discussed in PR 219 for another code segment) here in pydot#218 in November 2019 already. I am happy that you confirmed my feeling and all the input you gave me, but I really need some more time to digest that and read up on the subject a bit myself, before I can respond to some of it and make new proposals.

It better raise, specifically a new Exception that stores the stdout/stdin in ts *args and formats the message out of them
(instead of permanently grafting them into it).
Is m understandin correct?

I am still reading, watching, learning, thinking and trying, but it seems that the use of exceptions will indeed be the way forward. I don't know about stdin, but in this case at least stdout, stderr, the DOT-file, the called program, arguments and exit code need to be stored. Maybe I am still missing something.
With "formats the message out of them (instead of permanently grafting them into it)" you mean that all of those elements are stored as a separate attributes of the exception object and that they are only merged into a long string when that is requested, right?
By the way, if you want to move faster than me, feel free to start working on your own PR. I really don't mind. If I like it, I will even close this one. I would appreciate it if you would let me know then, to prevent that we both spend time on the same thing.
Finally, I want to copy in a part my comment of last week in #171 about an InvocationException still lying around in the current code. If we re-purpose it, it should probably be used for this PR #218, not #219:

By the way, there is still an unused class lying around in the pydot code: InvocationException, in disuse since commits 9b3c1a1 and bc639e7 of 2016 (v1.2.0). I think it was actually meant to do something similar as we are discussing here, so maybe its removal in 2016 may actually be considered somewhat of a regression. Maybe we can revive/revert it, extend it and even make it backward compatible with its earlier behavior again. OTOH, we might need to distinguish two separate classes, one for errors from calls to external programs (Graphviz dot, issue 218) and one from errors from calls to Python libraries (pyparsing), because they will carry different context data.

With "formats the message out of them (instead of permanently grafting them into it)" you mean that all of those elements are stored as a separate attributes of the exception object and that they are only merged into a long string when that is requested, right?

Exactly.

I am still reading, watching, learning, thinking and trying, but it seems that the use of exceptions will indeed be the way forward. I don't know about stdin, but in this case at least stdout, stderr, the DOT-file or DOT-string

These should be enough. Sometimes the cwd of the executed process is relevant - but it might not be useful here where always dot with a single file is executed.

By the way, if you want to move faster than me, feel free ...

Sorry, not much time available form me at the moment.
If i had it, i would re-use my code of class os.cmd i had linked a week ago.
Maybe it firs into InvocationException usecase.

Following the discussion in pydot/pydot#171, I have been working on better solutions for PRs pydot/pydot#218 and pydot/pydot#219. These solutions depend on dropping Python 2 support and having a logging facility. For this, I created PRs pydot/pydot#229 and pydot/pydot#231. Also, pydot/pydot#211 needs to be merged to make the Travis CI test results meaningful again.
I will now suspend my work until at least those 3 PRs (pydot/pydot#211, pydot/pydot#229, pydot/pydot#231) have been merged into the master branch. I remain available to rebase my PRs or advise about the order in which these and other PRs can best be merged.

Should be solved as part of pydot/pydot#218. That PR is currently closed, but I hope to reopen it in the future.


[Core] Add swap file from vim.

Coverage remained the same at 38.573% when pulling 25e08ed04ea90dc97409430de998b521214575aa on hobbestigrou:add_vim_swap_file into e79cf5141b3aa056fd50f332111165fec9cafcbf on django-extensions:master.


Add COPY support to IMPORT PGDUMP

PR: https://github.com/cockroachdb/cockroach/pull/27062
From release notes:

Added COPY support to IMPORT .. . PGDUMP. [#27062][#27062] {% comment %}doc{% endcomment %}

Dup of https://github.com/cockroachdb/docs/issues/3451.


Final

Codecov Report

Merging #223 (dc26374) into master (1288a00) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #223   +/-   ##
=========================================
  Coverage     72.30%   72.30%
  Complexity      580      580
=========================================
  Files            94       94
  Lines          1903     1903
  Branches        205      205
=========================================
  Hits           1376     1376
  Misses          449      449
  Partials         78       78

Continue to review full report at Codecov.

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


is it possible to use $PATH in the syntax files to highlight all binaries.

This would be really helpful for the sh, zsh and fish syntax files. Vim has something like this as well.

I think this is a lot of work and complexity added for not much gain, so for that reason I'm going to close this issue.