About the experimental results

Hello，May I ask why the results of the comparison model PatchTST in this paper differ so much from those in the paper PatchTST?
Experimental results from iTransformer

Experimental results from PatchTST

Hello, thanks for your concen!
We carefully read through the forecasting settings of the PatchTST paper and its official repo. There's a lot of difference here:

Enlarged lookback window: PatchTST paper adopts tunable lookback length in {336, 512}, while ours adopts the unified length of 96, following the unified long-term forecasting protocol of TimesNet.
More epochs to train: PatchTST paper trains the PatchTST model with 100 epochs, while we train all models with 10 epochs.
Learning rate: PatchTST paper adapts a carefully designed learning rate strategy.

@WenWeiTHU
Thank you for your reply, but I still have some questions.
Question 1：
In Appendix E2 of the iTransformer paper, all experimental results are done following the setting of TimesNet. So I checked the link https://github.com/thuml/Time-Series-Library PatchTST code，I noticed that you don't use learnable additive position encoding in your Embed python file。
However, in the paper PatchTST, the Transformer Encoder section 3.1 mentions the use of learnable additive position encoding.
https://github.com/yuqinie98/PatchTST/blob/main/PatchTST_supervised/layers/PatchTST_layers.py The positional_encoding function in this file does the same。
I don't know why this has changed, can you tell me? Please point out if I'm wrong. Thank you very much.
Question 2：
Why should the epoch be turned down? What factors are taken into account?

Thanks very much for your rigorousness.
For Q1, it has more to do with these related issues of Time-Series-Library: https://github.com/thuml/Time-Series-Library/issues?q=patchtst.
For Q2. As for the training protocols. We do not cut down the epochs. Under the unified learning rate decay strategy of TimesNet. The models all come to convergence before 10 epoch under the provided benchmarks.

In fact, the training epochs for multivariate forecasting benchmarks have not been overly scaled up since PatchTST (Please refer to Informer, Autoformer). It can be unrealistic to elaboratively tune the learning strategies for each model, especially for models with channel indepence (CI) which is time-comsuming on benchmarks with numerous variables. We follow the unified training protocal just for the fair comparison and avoid overtuning, Please understand that we focus on the models design instead of the engineering of tuning.

@WenWeiTHU
Thank you very much for your detailed explanation, but I still haven't found a suitable explanation for Q1. I think your code ignores learnable additive position encoding. If I miss it, please let me know, thank you!


Add support to get safes by owner

Closes #162

Add getSafesByOwner function to transactionapi
Add SafeList entity
Add getSafeByOwner to safe repository

Coverage decreased (-0.4%) to 85.362% when pulling 23cefd7e50b25e894b487855141c9d5e6ff8b661 on owners_safe into eeefd1a049f5fa9820c99bed7f52cac4be778699 on main.


Format: Workspace dependency.

Need to clean the dependency to shift from :
async-trait.workspace = true
to
async-trait = { workspace = true }

can I take this?


Fix metrics error rps stats incorrect

HTTP Status code less than 400 means normal.
https://httpstatuses.com/
For: https://github.com/istio/istio/issues/24322
[X] Policies and Telemetry

@kebe7jun: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
e62f077d0b56fbb71dd3bb29b7f3440991880659
link
/test lint_istio

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

@douglas-reid do we need to change this in our grafana queries too?

Related issue: #24309

@mandarjog i don't believe so, but it couldn't hurt to recheck them all when we are working on improving/refactoring the dashboards. iirc, most of the queries on the dash distinguish between 5xx and 4xx responses directly.

@esnible can you approve ?

/cherrypick release-1.6

@kebe7jun: new pull request created: #24451

In response to this:

/cherrypick release-1.6

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


random set functions

adds srandmember, spop, and scard functions

Will merge now, and implement for simple* later. Thanks for the pull request!


daArnMont1

Assembly review request

ToLID: daArnMont1
Species: Arnica montana
Project: ERGA-BGE
Affiliation: Sanger

Hi all, sorry the bot shold not call Jo here. I will fix this. @tbrown91 I'm appointing you and I'll try to fix the script asap!

OK

Yes

Hi @DomAbsolon
Thanks for submitting the EAR and I don't envy you having to work with this sample. I don't know how much more time and money it would take to produce another Hi-C library. This one is really a challenge to work with., baybe we can get it into an ok shape for submission as is.
I have found the following areas of interest from my first look through. @andar27 please look through this as well soon so that Dom can get a thorough review of the assembly.
What do you think about cutting and flipping the first 1.3Mb of SUPER_4 and the last ~8.6 Mb of SUPER_7? I know there are no gaps here, but it would at least place the telomeres at the end and the Hi-C signal is not really that informative in either direction.
There are also some areas which look like haplotypic duplication to me:
Hapdup between SUPER_1-51.7Mb-52.7Mb and SUPER_19-23.8Mb-24.5Mb
SUPER_14 hapdup @ 36Mb
SUPER_19 remove some of these duplicate sequences around 17.7Mb? I'm not overly sure about this area. The coverage does drop to half in a number of these copies. Maybe just remove the contig from 17.687Mb-18.717Mb?
It looks like some of the smaller scaffolds are duplicates that could be removed to help with the genome-wide BUSCO scores - e.g. HAP1_SCAFFOLD_55, 56 & 61 (or 86, 93, 96, 145 & 229)

Hi Tom, new HiC has already been ordered so I think this could get pushed through and a new and improved version can be done as and when we get that data

Hi @DomAbsolon,
I went through the EAR and the contact map, I think you have done a really great job given the low-density of contacts for your map.
The reason being that due to the lack of signal it is quite difficult to determine with certainty the correct the assembly path. i think some additional HIC would help to resolve the regions of ambiguity.
Perhaps minimap2 alignments to other species in the genus would help sort some of this out ?
For SUPER_7 (telomere inversion) : this is as bit less certain but HIC seems to suggest leaving it that way !

Adama

Hi all, thanks for your comments. as we have ordered more HiC data generation we are inclined to pause operations on this assembly until that comes through. Under normal circumstances we wouldn't have pushed this out for release in the state it was in anyway, we tried to rush it through for the project deadline which was ultimately missed anyway so we feel better to wait now. I hope that is agreeable with you guys!

@erga-ear-bot CLEAR


Default app Ctrl+C doesn't kill workers

When I shutdown a socketcluster app the main process is still running but it appears the workers continue. I'd expect it to stop the workers along with the main process.

Please ignore, think I just had it running in the background...


refactor/rename: fails to move nested packages on Windows with error "invalid move destination ...  package or subpackage  already exists" (suspect backslash vs. forward slash issue)

1) What version of Go are you using (go version)?
go version go1.5.2 windows/amd64

Note: One of my colleagues first hit this same problem on 1.6.2.  I personally happen to be still be using go 1.5.2 and would prefer not to upgrade right now on my laptop, but I at least endeavored to get the latest gomvpkg (which is where I think the bug is) and still saw this problem. In other words, I don't think this is specific to my having a core of 1.5.2, and I think this problem is present in the latest versions.
2) What operating system and processor architecture are you using (go env)?
set GOARCH=amd64
set GOBIN=
set GOEXE=.exe
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=C:\temp\golang_bug_report\refactor\work
set GORACE=
set GOROOT=C:\Go
set GOTOOLDIR=C:\Go\pkg\tool\windows_amd64
set GO15VENDOREXPERIMENT=
set CC=gcc
set GOGCCFLAGS=-m64 -mthreads -fmessage-length=0
set CXX=g++
set CGO_ENABLED=1

3) What did you do?
Try to move a nested package on Windows using gomvpkg, such as:
%GOPATH%\bin\gomvpkg -from github.com/user/originalhello -to github.com/user/newhello

Details below, including (hopefully) exact steps to reproduce at the bottom.
4) What did you expect to see?
The package moved.
5) What did you see instead?
Failed to move package, with error:
gomvpkg: invalid move destination: github.com/user/newhello; package or subpackage github.com/user/originalhello already exists.
Details
When moving a nested package such as "github.com/user/originalhello", gomvpkg fails with error reporting that the original package already exists, such as:
gomvpkg: invalid move destination: github.com/user/newhello; package or subpackage github.com/user/originalhello already exists.
On Linux, moving the same nested packages seems to work.
I suspect that the code is getting confused about backslash vs. slash on Windows, which causes a strings.Replace to fail, which then causes the code to think that the destination is the same as the source, which then causes sanity checking to fail, which then causes a failure to move the package as well as an error stating the (incorrect) destination already exists.
(The primary problem is that the package move fails -- the fact that the error message is complaining that the original package exists is a little confusing, given that upon reading the error message one might think "Of course the original package exists, but why is that causing a failure??". But I think that's due to the later code I think appropriately being paranoid and I think appropriately detecting that the earlier code had come up with an incorrect destination).
Note: I am guessing that this particular failure is neither fixed by nor caused by #16384 ("refactor/rename: fix two bugs related to MS Windows' path separator") that was merged ~9 days ago. I could reproduce this particular failure both before the fix for #16384, as well as I seemed to still be able to reproduce this particular failure after updating to get the fix for #16384.
I'll confess I'm still relatively new to Go, so please take with a healthy dose of salt, but I'm guessing this is the problematic code:
https://github.com/golang/tools/blob/ed69e84b1518b5857a9f4e01d1f9cefdcc45246e/refactor/rename/mvpkg.go#L83
		// Ensure directories have a trailing separator.
		dest := strings.Replace(pkg,
			filepath.Join(from, ""),
			filepath.Join(to, ""),
			1)
		destinations[pkg] = filepath.ToSlash(dest)

If you set up a simple 'github.com/user/originalhello' package (detailed steps at end), and then do:
%GOPATH%\bin\gomvpkg -from github.com/user/originalhello -to github.com/user/newhello

Then, the corresponding values of the main variables in the snippet above will be:
              pkg:  "github.com/user/originalhello"
             from:  "github.com/user/originalhello"
               to:  "github.com/user/newhello"

And then strings.Replace will fail because from and to are first transformed to backslash on Windows by filepath.Join, with sample string values that are then passed into strings.Replace (substituting sample string values in here for illustration) would be:
  "github.com/user/originalhello" := strings.Replace("github.com/user/originalhello",
                                                     "github.com\\user\\originalhello",
                                                     "github.com\\user\\newhello",
                                                     1)

Note that the strings.Replace in this case is a no-op due to the mismatch between backslash vs. forward slash (that is, strings.Replace returns a string containing originalhello, rather than the expected newhello).
The net result is the destination ends up incorrectly being the same as the source:
       the destination for pkg:  "github.com/user/originalhello"
          is destinations[pkg]:  "github.com/user/originalhello"

Which I think then triggers this error in the later validation code that sees the incorrect destination of 'originalhello' already exist:
gomvpkg: invalid move destination: github.com/user/newhello; package or subpackage github.com/user/originalhello already exists.
Detailed steps to reproduce at the end, including a few fmt.Print's that I used to output (more or less) the more detailed explanatory text above.
Possible fix
I'm definitely not 100% sure of this, but I suspect one fix might be to change from 'filepath.Join' to be 'path.Join' given I think that pkg, from, and to are import paths (with forward slashes) at this point and not locations on disk (with back slashes).
diff --git a/refactor/rename/mvpkg.go b/refactor/rename/mvpkg.go
index cd416c5..e44b975 100644
--- a/refactor/rename/mvpkg.go
+++ b/refactor/rename/mvpkg.go
@@ -81,8 +81,8 @@ func Move(ctxt *build.Context, from, to, moveTmpl string) error {
                }
                // Ensure directories have a trailing separator.
                dest := strings.Replace(pkg,
-                       filepath.Join(from, ""),
-                       filepath.Join(to, ""),
+                       path.Join(from, ""),
+                       path.Join(to, ""),
                        1)
                destinations[pkg] = filepath.ToSlash(dest)
        }

That at least seemed to solve it for me, and "go test golang.org/x/tools/refactor/rename" still passes with that change (on Windows, anyway).
If that is the proper fix, then it might be the case that the subsequent "destinations[pkg] = filepath.ToSlash(dest)" might no longer be needed, but I did not look at that aspect carefully at all (nor did I try to test removing that filepath.ToSlash)
Or, if the appropriate fix is not changing filepath.Join to path.Join here, then I would guess the fix is otherwise to make the slash & backslash transformations consistent so that the strings.Replace succeeds.
Detailed steps to reproduce
Either follow these steps, or in theory pasting this into a Windows command prompt should work:
REM  Follow steps from "How to Write Go Code" to set up a workspace, except
REM  name your package 'originalhello' rather than 'hello':

mkdir C:\temp\golang_bug_report\refactor\work
set GOPATH=C:\temp\golang_bug_report\refactor\work
echo %GOPATH%
mkdir %GOPATH%\src\github.com\user

REM  Create a hello world in github.com/user/originalhello:
mkdir %GOPATH%\src\github.com\user\originalhello

REM  Create a file named hello.go in %GOPATH%\src\github.com\user\originalhello\hello.go, e.g.,:
notepad %GOPATH%\src\github.com\user\originalhello\hello.go

// ---------------------------
// sample file contents for hello.go:
// ---------------------------
package originalhello

import "fmt"

func main() {
	fmt.Printf("Hello, world.\n")
}

And then continue on:
REM  Confirm we can build this
go install github.com/user/originalhello

REM  Get gomvpkg
go get golang.org/x/tools/cmd/gomvpkg

REM  Run it! Try to rename .../originalhello to .../newhello, which incorrectly fails:

%GOPATH%\bin\gomvpkg -from github.com/user/originalhello -to github.com/user/newhello

For me these steps then cause following error:
gomvpkg: invalid move destination: github.com/user/newhello; package or subpackage github.com/user/originalhello already exists.
Sample fmt.Println to dump incorrect Windows behavior of gomvpkg
As mentioned above, here are the sample fmt.Print's that I used to try to illustrate the incorrect behavior when called on Windows with a nested package.  (Apologies in advance if this is confusing, but these fmt.Print's include some explanatory text that assume the presence of the bug and that the bug is being triggered via the detailed steps to reproduce above. In other words, these are the fmt.Print's I happen to use to generate the more detailed text for my explanation above in this bug write up, so sending these along as well in case helpful):
diff --git a/refactor/rename/mvpkg.go b/refactor/rename/mvpkg.go
index cd416c5..46c651a 100644
--- a/refactor/rename/mvpkg.go
+++ b/refactor/rename/mvpkg.go
@@ -83,10 +83,30 @@ func Move(ctxt *build.Context, from, to, moveTmpl string) error {
                dest := strings.Replace(pkg,
                        filepath.Join(from, ""),
                        filepath.Join(to, ""),
                        1)
                destinations[pkg] = filepath.ToSlash(dest)
+
+               fmt.Printf("\nWith these inputs:\n\n")
+               fmt.Printf("              pkg:  %q\n", pkg)
+               fmt.Printf("             from:  %q\n", from)
+               fmt.Printf("               to:  %q\n", to)
+
+               fmt.Printf("\nReplace will fail when 'to' and 'from' are transformed to backslash on Windows:\n\n")
+               fmt.Printf(`  %q := strings.Replace(%q,
+                                                    %q,
+                                                    %q,
+                                                    1)`,
+                       destinations[pkg],
+                       pkg,
+                       filepath.Join(from, ""),
+                       filepath.Join(to, ""))
+
+               fmt.Printf("\n\nNet result is destination ends up incorrectly being same as source:\n\n")
+               fmt.Printf("   destination for:  %q\n", pkg)
+               fmt.Printf("                is:  %q\n\n", destinations[pkg])
+
        }

A side note regarding the related existing comment:
//Ensure directories have a trailing separator

from here:
https://github.com/golang/tools/blob/ed69e84b1518b5857a9f4e01d1f9cefdcc45246e/refactor/rename/mvpkg.go#L83
		// Ensure directories have a trailing separator.
		dest := strings.Replace(pkg,
			filepath.Join(from, ""),
			filepath.Join(to, ""),
			1)
		destinations[pkg] = filepath.ToSlash(dest)

Either that comment is misleading, or I don't understand that comment (either option being relatively likely ;-)
The Ensure directories have a trailing separator comment seems to imply that filepath.Join(foo, "") would add a trailing separator but I'm not sure that's true. I think that would be true for strings.Join with final empty string being joined, but I'm not sure that filepath.Join(foo, "") would add a trailing separator.
I'm not 100% sure of those statements, but here's a quick example:
https://play.golang.org/p/QkQ0Y1Pvbn
	// Sample data. Note 2 empty strings (especially note that last element is empty string)
	s := []string{"foo", "", "bar", "baz", ""}

	// Compare strings.Join vs. filepath.Join vs. path.Jon
	fmt.Println("strings.Join:  ", strings.Join(s, ","))
	fmt.Println("filepath.Join: ", filepath.Join(s...))
	fmt.Println("path.Join:     ", path.Join(s...))

	// Output:
	// strings.Join:   foo,,bar,baz,
	// filepath.Join:  foo/bar/baz
	// path.Join:      foo/bar/baz

Note that that filepath.Join behavior is a little different from what seems to be the Python and Ruby behavior for a similar filepath join with an empty string, where they would include a final trailing separator if passed a final empty string (Python/Ruby examples at bottom), so perhaps the author of this Go code incorrectly expected filepath.Join to behave either  similar to how either Go behaves for strings.Join, and/or how other programming languages handle filepath join?
So perhaps the intent of that comment was something closer to the following (untested, sorry):
		// Normalize any trailing separators (via Clean) to ensure we
		// replace the substrings in pkg consistently.
		dest := strings.Replace(pkg,
			path.Clean(from),
			path.Clean(to),
			1)

Python filepath join example:
https://repl.it/CfZD
print 'python string join (input includes 2 empty strings):'
print ','.join(['foo', '', 'bar', 'baz', ''])

print '\npython os.path join (input includes 2 empty strings):'
print os.path.join('foo', '', 'bar', 'baz', '')

# Outputs
# python string join (input includes 2 empty strings):
# foo,,bar,baz,
#
# python os.path join (input includes 2 empty strings):
# foo/bar/baz/

Ruby filepath join example
(and sorry, I don't really know Ruby):
https://repl.it/CfZA
puts "ruby string join (input includes 2 empty strings):"
puts ["foo", "", "bar", "baz", ''].join(",")

puts "\nruby file join (input includes 2 empty strings):"
puts File.join("foo", "", "bar", "baz", "")

# Output:
# ruby string join (input includes 2 empty strings):
# foo,,bar,baz,
#
# ruby file join (input includes 2 empty strings):
# foo/bar/baz/

I also now see that #16384 recently added that filepath.ToSlash(dest) after the strings.Replace call.
I haven't gone through #16384 in detail to track down exactly why filepath.ToSlash(dest) was added there, but as I mentioned in my first comment above, that filepath.ToSlash(dest) might very be unnecessary after the suggested possible fix from my first comment above.  That said, it would likely require a review of the problem from #16384 to determine that, though.
Finally, sorry for the long report, but to more explicitly tie together my first comment and second comment above: if those guesses about original intent there are correct, the net would be:
diff --git a/refactor/rename/mvpkg.go b/refactor/rename/mvpkg.go
index cd416c5..26905ab 100644
--- a/refactor/rename/mvpkg.go
+++ b/refactor/rename/mvpkg.go
@@ -79,12 +79,13 @@ func Move(ctxt *build.Context, from, to, moveTmpl string) error {
                for r := range rev[pkg] {
                        affectedPackages[r] = true
                }
-               // Ensure directories have a trailing separator.
+               // Normalize any trailing separators (via Clean) to ensure we
+               // replace the substrings in pkg consistently.
                dest := strings.Replace(pkg,
-                       filepath.Join(from, ""),
-                       filepath.Join(to, ""),
+                       path.Clean(from),
+                       path.Clean(to),
                        1)
-               destinations[pkg] = filepath.ToSlash(dest)
+               destinations[pkg] = dest
        }

(Finally, sorry for the long report).

Thank you for problem report. I agree there is a problem in that code.
We even have test for it - TestMoves. The test is broken, but no one noticed because TestMoves is skipped on windows (by mistake). @alandonovan sent https://go-review.googlesource.com/#/c/24969 to enable the test, but then he discovered the test is broken.
I came to similar conclusion to yours. You can see my comment at the end of https://go-review.googlesource.com/#/c/24969
You can wait for Alan to get around to complete CL 24969. Or you can send alternative solution, if you like - it sounds like you have researched this area quite a bit. This https://golang.org/doc/contribute.html is how to contribute.
Alex

Ahh, I did not see that comment, but that would have saved me some time. ;-)
(Also, I am not very familiar with Gerrit, but I had thought that particular CL was merged already in what I was running, but as you say, looks like it hasn't been merged yet).
I suspect the original intent of that (confusing) filepath.Join(foo, "") was to avoid something like from in that stanza being something like a/b/ (trailing slash) but to being something like z/b (no trailing slash) and then transforming pkg from something like a/b/c to something like z/bc (lost the slash between b and c). Such as:
https://play.golang.org/p/gKPkO0JuUI
or in the opposite direction, which might end up with a double slash, or some other variation of that.
I don't know if that would happen in practice (e.g., maybe when switching levels?), but I was able to trigger a problem with a simple replace with something like a trailing slash on the command line:
%GOPATH%\bin\gomvpkg -from github.com/user/ -to github.com/new_top_level/newhello
which triggered similar error of:
gomvpkg: invalid move destination: github.com/new_top_level/newhello; package or subpackage github.com/user already exists.
But that same example on the command line with the path.Clean() seemed to work...
In any event, thanks for the comment, and I guess I'll see if there are further comments about original intent or otherwise desired approach here.

It looks like #16384 is closed in github, which is why I thought that associated CL was merged, but looking more carefully now I see that associated CL is still open.

I was curious if that seemingly incorrectly used filepath.Join(foo, "") was used elsewhere, so took a quick look last night and noticed a similar issue here in master in the method that computes subpackages:
https://github.com/golang/tools/blob/ed69e84b1518b5857a9f4e01d1f9cefdcc45246e/refactor/rename/mvpkg.go#L148
		if !strings.HasPrefix(pkg, path.Join(dir, "")) {
			return
		}

I think the expectation of the author here might have been that appending the empty string would cause a slash to be appended (similar to what might have been the incorrect expectation about the filepath.Join(from, "") earlier that had the // Ensure directories have a trailing separator comment).
In any event, it seems the logic here in is wrong, because packages with shared prefixes can incorrectly match here in this subpackages method.
For example, if you set up the following (and note the shared prefix between the first two):
github.com/user/old_something
github.com/user/old_something_else
github.com/user/new_something_else
And then try to move old_something to new_something, in theory that should work (and old_something_else should be left alone).
However, because old_something_else shares a prefix with old_something (where old_something is the user's requested 'from'), the code here in subpackages incorrectly thinks old_something_else is a sub-package of old_something, and incorrectly sets up the destinations map (that is, intending to move old_something_else when it shouldn't), and hence the code gets ready to (incorrectly) move old_something_else to new_something_else, which then collides with the pre-existing new_something_else, which reports an error
gomvpkg: invalid move destination: github.com/user/new_something; package or subpackage github.com/user/new_something_else already exists.
I think (but did not confirm) that would happen on Linux as well (that is, not specific to backslash vs. forward slash confusion on Windows).
That's one example I could see would fail and then tested it (and it did give incorrect error above), but I think  in theory a different example could also incorrectly update an "innocent bystander" package's contents based the "innocent bystander" package sharing a prefix with a package that is being moved (though some chance other defensive sanity checks would prevent it and/or the subsequent code might otherwise "get lucky"; I didn't try a different test).
Finally, I believe this is likely already 100% clear to anyone who worked on #16384, but to summarize the current state of #16384 (as of right now and when I looked at it a couple days ago):

Issue #16384 is marked closed as Git
Associated CL that is merged: https://go-review.googlesource.com/#/c/24943/
Associated CL that is not yet merged: https://go-review.googlesource.com/#/c/24969/

When I had looked at it before, I had incorrectly thought #16384 was 'done' and in master.  Alex above pointed out above that CL 24969 is still pending, which is the CL that re-enables the tests, so only part of the changes for #16384 are currently in master.

Like I said before, feel free to send a change. :-) If you can add new broken test (that gets fixed by your changes), no-one will be able to object.
Alex


add_signal_handler is strictly UNIX only.

https://github.com/mitmproxy/mitmproxy/blob/4e126c0fbaafffd23e1a80926de6a99c897f9af0/mitmproxy/tools/main.py#L124
According to the asyncio  documentation for Python 3.6 , add_signal_handler is supported for UNIX system only. I haven't experienced or tested this issue but it maybe a potential risk since mitmproxy supports multiple platforms.
If someone has a Windows OS and/or some knowledge about asyncio maybe you could verify this.

Although not the best solution , but the best workaround is to add a simple coroutine with call_later of 0.1. Somehow this works well in Windows and CTRL+C can terminate the loop.
https://stackoverflow.com/questions/24774980/why-cant-i-catch-sigint-when-asyncio-event-loop-is-running/24775107#24775107

Good catch! We need someone on Windows to actually test the behaviour here. The StackOverflow question you included refers to a patch implementing add_signal_handler for the Windows event loops from 3.5 years ago which (sigh) appears never to have been merged.
Step one is to catch the NotImplementedError around that call and ignore it.

I am on Windows and I pulled the commit from 2 days ago and since then, mitmdump and mitmweb weren't working anymore :

I thought it was because of some modifications I made so I didn't makean issue of that and I searched by myself without success.
But I just tested your solution of putting a try to catch the "NotImplementedError" :
try: loop.add_signal_handler(getattr(signal, signame), master.shutdown) except NotImplementedError as e: print("ERROR : Method not implemented in Windows.")
and then:

So the behaviour here is that mitmdump and mitmweb are not usable until the exception is catched.

@cortal Thanks for looking at this. Once the exception is caught, does mitmdump exit on ctrl-C?

Yes, mitmdump exits on CTRL-C. (I checked with tasklist)


Make migration work for sqlite

Our migration worked for QA and Production databases, but when running on SQLite dbs, threw the following error:
  Applying tuneme.0004_delete_polls_index_page...Traceback (most recent call last):
  File "./manage.py", line 11, in <module>
    execute_from_command_line(sys.argv)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
    utility.execute()
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/core/management/__init__.py", line 345, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/core/management/base.py", line 348, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/core/management/base.py", line 399, in execute
    output = self.handle(*args, **options)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 200, in handle
    executor.migrate(targets, plan, fake=fake, fake_initial=fake_initial)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/db/migrations/executor.py", line 92, in migrate
    self._migrate_all_forwards(plan, full_plan, fake=fake, fake_initial=fake_initial)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/db/migrations/executor.py", line 121, in _migrate_all_forwards
    state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/db/migrations/executor.py", line 198, in apply_migration
    state = migration.apply(state, schema_editor)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/db/migrations/migration.py", line 123, in apply
    operation.database_forwards(self.app_label, schema_editor, old_state, project_state)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/db/migrations/operations/special.py", line 102, in database_forwards
    self._run_sql(schema_editor, self.sql)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/db/migrations/operations/special.py", line 125, in _run_sql
    statements = schema_editor.connection.ops.prepare_sql_script(sqls)
  File "/Users/someuser/.virtualenvs/tuneme/lib/python2.7/site-packages/django/db/backends/base/operations.py", line 276, in prepare_sql_script
    "sqlparse is required if you don't split your SQL "
django.core.exceptions.ImproperlyConfigured: sqlparse is required if you don't split your SQL statements manually.
Raven is not configured (logging is disabled). Please see the documentation for more information.

Solution: only run the SQL commands when the DB is postgres.
Inspired by https://stackoverflow.com/questions/32384547/django-migration-runsql-conditional-on-database-type

👍 🍰


Can you make it able to extract lineart of images

The AI did a very good job at maintaining the sharpness of lines when upscaling. Can you make a separate AI that extract the lines out of an anime image?

It requires training data consisting of line art and color image pairs like https://esslab.jp/~ess/ja/data/davincidataset/ .
maybe related: https://esslab.jp/~ess/en/research/sketch_master/

https://github.com/lllyasviel/sketchKeras


Rotate 90° when opening？

When I open it with labelimg, the image will rotate by 90°. Why is this happening? How should I solve this problem?

When a picture is taken with some camera, it is recorded as a landscape direction picture and it is specified in the EXIF file of the picture that it was a portrait direction picture.
labelImg isn't handling the rotation needed through that EXIF file.
You have to rotate and save the pictures before using them in labelImg.
You can use
On Linux :
exiftran -ai *.jpeg
exiftran
On Windows:
JPEG Autorotate

Thank you very much!^_^

RectLabel is an offline image annotation tool for object detection and segmentation.
Although this is not an open source program, with RectLabel you can remove the EXIF orientation flags from images and convert images to the front orientation. If necessary, you can rotate the image right/left by 90 degrees.
https://rectlabel.com/help#remove_exif_orientation_flags


Themes, configurable image floats, quotation boxes, new stat blocks, and more!

I've been tinkering for a long while. In my spare time I've been doing things like porting the original Dragonlance adventure to 5e, porting the original Eberron adventure cycle, and attempting to put together a codex of all things Dark Sun for 5e, including an attempt at 'real' psionic rules for mental combat.  Along the way I've made numerous additions to the base classes, mostly to scratch at itches I had while working.  These have built up over quite a while, so there's a lot to look at here, but it's all been used successfully in my various passion projects.
Themes
There is now an eberron theme that will set some fonts and recto/verso background images to match the Eberron book stylings.  Top-level titles get some new fonts, and a couple of colors change.
You can now choose between three font sets.  The default uses the original font settings from the rpgtex implementation.  In addition, you can provide the option fonts=wotc or fonts=dmsguild. Use wotc to select the fonts that WotC uses in their published books (you'll have to pay for the fonts, and I can't speak to any trade dress issues that might arise).  I like using this because I'm vain and I mostly write these adventures for myself, for fun.  Yes, I'm a typography nerd, this is fun.  The dmsguild version uses the fonts specified by the DM's Guild materials.
I've included details on where to obtain each of these fonts.  The official DM's Guild fonts are all available for free download, the paid fonts can be found at either MyFonts or Adobe.
Images
I've added support for floatable images using tcolorbox, with \DndImage providing a plain image, and \DndCaptionedImage for an image with a corresponding caption, in the correct (themed) font.  You can provide options from tcolorbox to both of these to provide some fine-tuning or to have images extend out to the edges of the printed page, for example.
Stat Blocks
You can now create stat blocks for sentient items via \DndSentientItemAbilityScores.  Sentient items use Int, Wis, Cha, and Alignment.
Added psionic as an attack type, alongside weapon and spell.  I'm working on some Dark Sun ideas, and one approach I have defines psionic attacks.
Added support for vehicle stat blocks using the DndVehicle environment.  This functions the same way as for DndMonster, with appropriate no-bg variants.  There are corresponding commands for the various components of the stat block:

DndVehicleBasics
DndVehicleDetails
DndVehicleAbilityScores
DndVehicleSection
DndVehicleAction
DndVehicleSpeed
DndVehicleComponent
DndVehicleControl
DndVehicleMovement
DndVehicleWeapon
DndVehicleAttack

New Boxed Text Environments
You can add quotation boxes now with the DndQuotation and DndAside environments.  DndQuotation expects an attribution argument, and is intended for either book quotes or for notes from e.g. Tasha or Xanathar.  DndAside provides the same without an attribution.  Both render in the form of a small sticky note attached to the page, as close as I can get it to the ones in the official books.
Areas
Areas have been updated to allow for specifying ranges.  You can use \DndAreaRange to supply an area description for e.g. "Area 1.10–1.12".  Area references are now also updated to make it easier to reference areas outside the current set.  For instance, if you're in "F.3." and you want to build a reference back to "C.5", you can now do so directly.
\DndAreaRef now generates the C5 string, rather than a page number, since that's the more common usage.  To get a page number, there's a new \DndAreaPageRef command which takes on the original behavior.
Utilities
There are new \DndSkillCheck and \DndAbilityCheck macros that can be used to generate DC checks using localized strings from the locale file.  Ability checks render as e.g. "DC 12 Dexterity", while skill checks render as e.g. "DC 12 Strength (Athletics)".
There are macros wrapping these for ability saves (\DndStrSave, \DndConSave etc.).  There are also macros wrapping skills checks that provide the usual attribute name, though this can be overridden. You can use \DndAthletics{12} to get "DC 12 Strength (Athletics)", or \DndAthletics[\conname]{12} to get "DC 12 Constitution (Athletics)", for example.
In addition to these are a couple of macros for the things I consistently forget:

\DndPickLock{12} creates "DC 12 Dexterity" because I forget lock-picking is straight Dex.
`\DndThievesTools{12} creates "DC 12 Dexterity (Thieves' Tools)" for those cases where tool proficiency is helpful.

The eagle-eyed will note a dndmonsterlookup.sty in here as well, which is being superceded by a separate package.  The intent is for you to be able to say A \Boar\ approaches and receive "A \textbf{boar} (\textit{MM}, p. 319) approaches" in the output.  The separate package is better because it defines each source in an optional module, and provides a way to get plurals in place properly.  That's coming Real Soon Now™.

The CI appears to be broken. It's complaining that it can't update Debian packages.

The CI appears to be broken. It's complaining that it can't update Debian packages.

Yeah, it's fairly old and probably needs an update. I think it is failing to load an out of date LaTeX version for the build.

There is a lot of interesting stuff here. It will take a while to digest.

I got my monster reference package up, btw: https://github.com/AlanQuatermain/DND-5e-LaTeX-monsters

I think this should be broken into smaller pull requests.

Themes
Boxes
Utilities
Areas
Images
etc.

It feels like too much to adequately digest all at once. If you want, I can break it down over time and create separate PRs.


Require WP CLI only on dev

WP CLI is automatically loaded by WP when available.
It is not expected from this package to brings the whole CLI engine.
That being said, it brings classes and doc for dev, so keeping it for dev env.

@LeoColomb I'll have to do some testing with this. I recall there being a reason I was requiring WP-CLI but now I don't remember what that was.


[backport] Use version in external URL

Backport of #4317

Omitted changes to ptb.rst and word2vec.rst.

LGTM!


Security model

Current security model isn't perfect and deserves a rethink. Tests, Runs and Schemas have owner and access fields to record permissions, and then some form of tokens. Tables that are 'part of' one of these look up the root object permissions, sometimes chaining the lookup through several tables. Derived tables that combine e.g. tests and schemas require permissions on both root objects.
Problems:
A) While Schema is owned by one team, the URI is used globally. That means that if two teams want to use the same tool that produces data using that schema, the first one that registers it wins and can operate with that. The second team can get read-only access at best, or we have to create an artificial team that hosts everyone from both teams - this doesn't scale.
Bad solution: Multiple owners - people would step on each others' toes, prefix extractors etc.
Possible solution 1: Schemas would be used only for runs/tests with matching owner. URI would not be globally unique. Is it too limitng?
Possible solution 2: Similar to (1) but we would pick instance of schema in each Test.
B) Test and Run don't share permissions: In practice most likely all Runs will have the same permissions as the Test and having the permissions per-test is an unnecessary burden.
C) Run tokens: intended as the ability to show someone a run report with fine-grained access, simply via link URL. However for many queries we need to read the token as well - shall it automatically expose the Test (readonly?)? Or should that be two tokens, one for the Test and another for Run if the use-case requires that? Tracking what requires what is cumbersome. Should we put the token to a cookie and keep it for the rest of browsing session, too?

The solution for C would be unified tokens: instead of the Run/Test 'owning' the token we would have tokens as separate instances that would grant access to a list of other resources. Usually a run token would pack read access to a test + read access to single run. Other token could grant access to all runs for given test etc.

Processes that extract data from runs/datasets can respect the privacy of the data but always have read access to Schema/Labels. If we're using private resource we should check that either run.owner or test.owner matches to label.owner.


Body with margin and relative position causes offset placement of popper

CodePen demo
https://codepen.io/anon/pen/gzbaba
What is the expected behavior?
Popper is adjacent to target.
What went wrong?
Popper is offset from target.
Any other comments?
Originally reported as https://github.com/atomiks/tippyjs/issues/231#issuecomment-382605125.

I found a potential workaround to add another relatively positioned element container; see https://codepen.io/lofty/pen/OZXdmW

Thanks for the workaround. I've tried to adapt it to my use case (briefly: reusing one popper for many targets), but I can't quite get there. Everywhere I move it breaks positioning in a different way!

Here is my (gross) workaround: https://codepen.io/anon/pen/ZqKXxq.

🎉 cool, the new positioning algorithm is paying off.
I hope to be able to ship a stable release in the next 2 months if not sooner.


piglit_worker: use catchsegv to get crash logs/segfault dumps

When shader_runner crashes, we don't get any kind of log back right now - this means that crashes are difficult or impossible to accurate reproduce. We should probably use runspv's catchsegv function instead of subprocess_helper to get the log.

Fixed by #632.


Set up Release Azure Pipelines

/azp run

/azp run

/azp run

i need your review @BobbyESP

when you approve, you need to delete needs-review label and add approved label.
this applies all PRs. please keep in your mind.

ok. sorry, I will!


⚠ Jenkins Plugins Artifactory has degraded performance

In 4561b97, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1283 ms

Resolved: Jenkins Plugins Artifactory performance has improved in a10105b after 2 hours, 1 minute.


Training - Hands-on Labs & Activities

### Hands-on Labs & Activities:
- [x] Hands-on Labs Setup
- [ ] Module 1: Introduction to GitHub Actions
- [ ] Module 2: Syntax
- [ ] Module 3: Environments and Secrets
- [ ] Module 4: Workflow Templates
- [ ] Module 5: Custom actions
- [ ] Module 6: Self-hosted runners
- [ ] Module 7: CI/CD

update again


InputStream return value support for sourceCallback

So currently as I see I'm not able to provide data from classpath:..., I have to extract everything into some "real" folder for using with new File(...).

I think with the latest version it should solve your problem. If it doesn't, feel free to reopen this.


Update for latest FreeType2

For your consideration.
Makes --force-fallback-for=freetype2 work. Tested with default_library set to static and shared to ensure only the correct library is built.

Fixed separately to avoid conflicts.


fix download dir typo

@pierrickrouxel can you please CR?

Bug was introduced in #20

Oh I haven’t seen that !

Sorry about that... only tested incomplete dir 😔


Reply URL should be https://.icims.com/ (with asterisks)

Hi,
Re isue #50722, the Reply URL should be:
https://*.icims.com/*
With asterisks. I'm afraid in issue #50722 they got chewed up by autoformatting.

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

ID: c3e4dadc-b84d-feda-330b-14e258014b20
Version Independent ID: ac5b133b-99e9-7446-6127-f3b785ab0829
Content: Tutorial: Azure Active Directory integration with ICIMS
Content Source: articles/active-directory/saas-apps/icims-tutorial.md
Service: active-directory
Sub-service: saas-app-tutorial
GitHub Login: @jeevansd
Microsoft Alias: jeedes

@ChrisAtMAF, Thank you for pointing this out. Will update the document shortly.

@jeevansd, Can you please look into this as I am not able to update the doc.

@v-nagta Can you please update this doc and fix it?
CC: @chetansriv


PR Review: Update HttpUrlConnectionClientBuilder class

Two requests from Jonathan:

Remove build(HttpRequest request) method.
The class needs to be improved (currently it is missing a lot of functionality). Examples of existing builders are the JdkHttpClientBuilder and NettyAsyncHttpClientBuilder

File: HttpUrlConnectionClientBuilder
Lines: All
Comment from Jonathan:

Refer to the other HTTP client implementations for some ideas on what should be set in here, and add to your backlog.

After completing this issue, merge branch issue#35 to the main branch.
issue#35 saw the expansion of the HttpUrlConnectionClientProvider class however, the class calls the HttpUrlConnectionClientBuilder.proxy() method which is incomplete.


Deployment Manager: generate 2019 11 01

The package would be publish after review.
I wonder it is ok the do such fix.

@JimSuplizio Could you review it again?


✨ run work and registration as a single binary

Summary
This is start the registration/work together with registration-operator agent command
Related issue(s)
Fixes #

/assign @skeeey

/lgtm
/hold

/lgtm

/unhold


use my id

I have a question about this easy-db.
I have a json that I need to use in a simple database. the elements look like this:
{    "id": "<randomID>",    "url": "http://example.com/" },
so when I insert to easy-db I get a random Id around it. Is it possible to reuse my randomID instead? I can't figure out how to do it.

Hi SetiZ,
For this use-case is the callback in insert:
const randomId = await insert("collection1", id => ({ id, url: "http://example.com/" }));

Is it an answer to your question?

Thank you!
At first I started doing an insert and then update but that didn't work. Just doing update is enough.

You are welcome.


Recommendation for upgrading from DSE 4.7 to 5.0?

We're using this cookbook to manage our DSE Cassandra rings, which are currently running 4.7.  Has anyone tested trying a version upgrade directly via the cookbook by chaging the dse_version?  This doc supports the direct 4.7->5.0 upgrade path, but shows a lot of manual, per-node interim steps.

I personally haven't done these version upgrades, but in the past I used chef to install the new version of dse, but still followed the manual steps.  The most important piece is usually the upgradesstables, which from experience can take down a cluster if you run it everywhere at once :| I would say do them one at a time and make sure it works.

Ok, thanks for the input.  That's what I figured.  Our rings are small enough that manual is still a viable option, but for larger rings, that could be painful.


fix path issue [xxx.deps.json] does not exist on mac / linux

sample error message

The specified deps.json [/Users/../Documents/Projects/App/web-app/src/App.Web\bin\Debug\netcoreapp3.0/App.Web.deps.json] does not exist

Merged with ca4e75f6ddc43af5fca359c18ab293d6984e0035, thanks.


'=' sign is missing in load.json for /core-model-1-4:network-control-domain=cache/link={uuid}/link-port{localId}

Observing 401 unauthorized error for API:/core-model-1-4:network-control-domain=cache/link=533616788/link-port, since load.json doesn't have '=' sign.

test_1.1.4 Load.oson reflects = for link API


Updated with more upfront context about the sample

Hopefully it works this time!

@beauzeaux for some reason, it won't allow me to add you as a reviewer?


Improved the performance of RecallAtFixedPrecision for large batch sizes

What does this PR do?
Addresses #2041.

Before submitting

[x] Was this discussed/agreed via a Github issue? (no need for typos and docs improvements)
[x] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure to update the docs?
[ ] Did you write any new necessary tests?

PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.

Did you have fun?
Make sure you had fun coding 🙃

:books: Documentation preview :books:: https://torchmetrics--2042.org.readthedocs.build/en/2042/

@GlavitsBalazs nice, do you have a benchmark just to give an idea about the speedup? Also pls add entry in changelog

@GlavitsBalazs nice, do you have a benchmark just to give an idea about the speedup? Also pls add entry in changelog

Ok. I've added the changelog entry.
My issue submission contains some basic measurements illustrating the speedup. Please let me know if these aren't enough. I'll create more benchmarks if necessary.

@GlavitsBalazs nice, do you have a benchmark just to give an idea about the speedup? Also pls add entry in changelog

Ok. I've added the changelog entry.
My issue submission contains some basic measurements illustrating the speedup. Please let me know if these aren't enough. I'll create more benchmarks if necessary.

@GlavitsBalazs I think the tests you done are fine, I am reposting here for future reference:

Batch Size
Before PR
After PR

100
~9
~8

1000
~20
~9

2000
~30
~10

5000
~70
~14

10000
~124
~19

100000
~1200
~110

Closes #2041


jsonpb will omits enum which value is 0 in MarshalToString

What version of protobuf and what language are you using?
libprotoc 3.7.1
What did you do?
consider below probo message contain enum type
    enum FruitsType {
        APPLE = 0;
        BANANA = 1;
        ORANGE = 2;
    }

if inside the pb message, the FruitsType is 0, when I try MarshalToString, that field will be omits, but if that FruitsType is not 0, I can get the field in json payload.
What did you expect to see?
I want get the enum value no matter it is the default value 0 or others.
What did you see instead?
I can't get enum json field is the pb message set 0 to that enum field.
Make sure you include information that can help us debug (full error message, exception listing, stack trace, logs).
I can find in jsonpb.go, if the field is int and value is 0, it will skip the below code for handle enum.

Anything else we should know about your project / environment?
No.

I apologize. This is indeed a duplicate of #836. APPLE is the zero value for the FruitsType enum. The proto<->JSON specification dictates the marshaling behavior, which we abide by. If you want to explicitly marshal the zero value, then specify the EmitDefaults option.

@dsnet, thanks for clarifying, there is one concern. As EmitDefaults is a global flag, which I only want to emit enum. The second thing is I think Marshaler has a property EnumsAsInts, I think set EnumsAsInts to true, omits may make sense. But if EnumsAsInts is false, which means I treat this field like a string, so in any situation, I want to get this value from marshaling.

Unfortunately, what you're trying to do is not something that our marshaler is capable of emitting. The jsonpb package is intended to the be faithful implementation of the proto<->JSON specification, for which the C++ implementation is considered the canonical "reference" implementation.
The C++ implementation only has small set of options and we (the Go implementors of protobuf) have no intention of adding features that are beyond what C++ provides. The EmitDefaults option in Go is analogous to the always_print_primitive_fields option in C++. The other options that Go currently has are a historical mistake.

Thanks @dsnet for your explanation.


Broken redirect GH link

The View on Github link on the Docs redirects to a Not Found page, I can't find the file where it is setup to submit a PR about.

fixed!


[ui] hack bootswatch/cosmo theme to get better tabs for sql-lab (and other things)

updates the /caravel/theme page so we have quick reference for our ui styles
gets us decent looking tabs for sql-lab
removes the paper bootswatch theme
use consistent classes on welcome page for consistent styling
make search bar bigger on welcome page
part of the work for this issue: https://github.com/airbnb/caravel/issues/950

plz review @mistercrunch @bkyryliuk

Neat! I really appreciate the cleanup of unruly css I had patched up everywhere.
Looks like SQL Lab will only need a few adjustments.

I think I prefer the more subtle alerts we had before:

Another thought is that I used the Airbnb color scheme before for all the colors, which I'm not attached to particularly, but had the advantage of matching the visualizations colors (also based on Airbnb colors)

Also how do we make labels look less like buttons? Rounded?

good call on lightening up the alert background colors. i'll do that.
i think because we aren't using the other colored buttons, that the labels look like labels and not buttons, especially because of their size. if we are seeing confusion here, we can iterated in another PR.
i'm not too keen on keeping the airbnb color palette in caravel, but i could be convinced otherwise. let's merge this an iterated as needed.

nice work Alanna!  I really like this new theme.  Cleans things up quite a
bit :)
On Thu, Aug 18, 2016 at 9:04 AM, Maxime Beauchemin<EMAIL_ADDRESS>
wrote:

Neat! I really appreciate the cleanup of unruly css I had patched up
everywhere.
Looks like SQL Lab will only need a few adjustments.
[image: screen shot 2016-08-18 at 8 59 30 am]
https://cloud.githubusercontent.com/assets/487433/17780966/24fb5fca-6522-11e6-9dd3-e2caff2d5205.png
I think I prefer the more subtle alerts we had before:
[image: screen shot 2016-08-18 at 9 00 27 am]
https://cloud.githubusercontent.com/assets/487433/17780999/4924e308-6522-11e6-8cb8-ebf66d8cc2be.png
Another thought is that I used the Airbnb color scheme before for all the
colors, which I'm not attached to particularly, but had the advantage of
matching the visualizations colors (also based on Airbnb colors)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/airbnb/caravel/pull/975#issuecomment-240771694, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ARcz4SkkmXQoKgH2-JanN4k_q-ybaXLWks5qhIKIgaJpZM4JnFXA
.

--
Jeff Feng
Product Manager
m:<PHONE_NUMBER>
twitter: @jtfeng

update!

going to merge once tests pass.


insufficient funds when trying to claim fully vested balance

https://bitsharestalk.org/index.php?topic=13811.msg179945#msg179945

Too old.


[SPARK-28033][SQL] String concatenation should low priority than other operators

What changes were proposed in this pull request?
This pr make string concatenation('||') low priority than other operators to consistent with other databases, for example:
spark-sql> select 'four: ' || 2 + 2;
NULL
spark-sql> select 'zero: ' || 2 ^ 2;
Error in query: cannot resolve '(CAST(concat('zero: ', CAST(2 AS STRING)) AS DOUBLE) ^ 2)' due to data type mismatch: differing types in '(CAST(concat('zero: ', CAST(2 AS STRING)) AS DOUBLE) ^ 2)' (double and int).; line 1 pos 7;
'Project [unresolvedalias((cast(concat(zero: , cast(2 as string)) as double) ^ 2), None)]
+- OneRowRelation

PostgreSQL, Vertica, Hive and Teradata support this feature.
Oracle, Presto, SQL Server, DB2 and MySQL does not support it.
PostgreSQL:
postgres=# select substr(version(), 0, 16), 'four: ' || 2 + 2, 'zero: ' || 2 ^ 2;
     substr      | ?column? | ?column?
-----------------+----------+----------
 PostgreSQL 11.3 | four: 4  | zero: 4
(1 row)

Vertica:
dbadmin=> select version(), 'four: ' || 2 + 2, 'zero: ' || 2 ^ 2;
              version               | ?column? | ?column?
------------------------------------+----------+----------
 Vertica Analytic Database v9.1.1-0 | four: 4  | zero: 4
(1 row)

Hive:
hive> select version(), 'four: ' || 2 + 2, 'zero: ' || 2 ^ 2;
OK
3.1.1 rf4e0529634b6231a0072295da48af466cf2f10b7	four: 4	zero: 0
Time taken: 14.368 seconds, Fetched: 1 row(s)

Teradata:

Oracle throws ORA-01722: invalid number.
Presto throws Unexpected parameters (varchar(6), integer) for function concat.
SQL Server throws Incorrect syntax near '|'
DB2 throws Invalid character found in a character string argument of the function "DECFLOAT"
MySQL returns unexpected result:
mysql> select version(), 'four: ' || 2 + 2, 'zero: ' || 2 ^ 2;
+-----------+-------------------+-------------------+
| version() | 'four: ' || 2 + 2 | 'zero: ' || 2 ^ 2 |
+-----------+-------------------+-------------------+
| 5.7.26    |                 1 |                 0 |
+-----------+-------------------+-------------------+

How was this patch tested?
unit tests

Test build #106462 has started for PR 24859 at commit ee98aeb.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/11705/
Test PASSed.

Test build #106462 has finished for PR 24859 at commit ee98aeb.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/106462/
Test PASSed.

I think this makes sense, but since this is a breaking change, shall we add a note in the migration guide?

Thank you @dongjoon-hyun I add Vertica, Teradata, Oracle, Presto, SQL Server, DB2 and MySQL.

Thank you for updating, @wangyum .

@mgaido91 @dongjoon-hyun  Should we update the migration guide? I think this is a bug fix, not a behavior change.

I do think so, it is a behavior change. Despite the previous behavior was wrong, this may change users' results so we should notify them about the change, in order to let them check their queries using this operator. It would be pretty bad for a user to realize that the query has a behavior change and there is no documentation at all about what changed...

I think we are following Oracle when adding the concatenation.
https://docs.oracle.com/cd/E11882_01/server.112/e41084/operators001.htm#SQLRF51153
Could you check whether it is true in Oracle?

We need to document our own operator precedence. Welcome the contribution!

It seems that it works only when the other side is a number string or a space:
SQL> select banner from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 12c Standard Edition Release <IP_ADDRESS>.0 - 64bit Production
PL/SQL Release <IP_ADDRESS>.0 - Production
CORE	<IP_ADDRESS>.0	Production
TNS for Linux: Version <IP_ADDRESS>.0 - Production
NLSRTL Version <IP_ADDRESS>.0 - Production

SQL> select '4' || 2 + 2 from dual;

  '4'||2+2
----------
	44

SQL> select '44' || 2 + 2 from dual;

 '44'||2+2
----------
       444

SQL> select '' || 2 + 2 from dual;

   ''||2+2
----------
	 4

SQL> select '4a' || 2 + 2 from dual;
select '4a' || 2 + 2 from dual
             *
ERROR at line 1:
ORA-01722: invalid number

SQL> select ':' || 2 + 2 from dual;
select ':' || 2 + 2 from dual
            *
ERROR at line 1:
ORA-01722: invalid number

SQL> select 'four: ' || 2 + 2 from dual;
select 'four: ' || 2 + 2 from dual
                 *
ERROR at line 1:
ORA-01722: invalid number

Test build #106800 has started for PR 24859 at commit b4af3df.

Build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/12018/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/testing-k8s-prb-make-spark-distribution-unified/12019/
Test PASSed.

Test build #106801 has started for PR 24859 at commit ef1bafc.

Test build #106800 has finished for PR 24859 at commit b4af3df.

This patch passes all tests.
This patch does not merge cleanly.
This patch adds no public classes.

Build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/106800/
Test PASSed.

Test build #106801 has finished for PR 24859 at commit ef1bafc.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/106801/
Test PASSed.

It is hard to say which precedence orders [Oracle or PostgreSQL] are better. Your example only shows our auto type casting has inconsistent behaviors.


Support EXPIREMEMBER command

Search before asking

[X] I had searched in the issues and found no similar issues.

Motivation
KeyDB implements a command to expire a set's member.
See https://docs.keydb.dev/docs/commands/#expiremember
Solution
Implement the command.
Are you willing to submit a PR?

[ ] I'm willing to submit a PR!

Just noticed, that redis did implement a similar command (finally) HEXPIRE: https://redis.io/docs/latest/commands/hexpire/

Thank you for your report!
If you mean hash field expiration, you can refer to https://github.com/apache/kvrocks/issues/2269 for it's status in Kvrocks.
It's not yet implemented but in our plan.

Yes, that is exactly what I had in mind.  Sorry for not finding the ticket.


Adding typescript definition file

Adding the typescript definition file to the package. Based on this
discussion: https://github.com/wbuchwalter/ng-redux/issues/32.

I'm trying to confirm this, but I thought at the recent AngularConnect conference there was a typescript talk saying that newer versions of TS will automatically look in npm packages for d.ts files. Including this file in the package would let typescript automatically find the definition file.

Actually, this may not work using the /// <reference=... link because the redux definition file isn't in the npm package for redux. That path was based on using DefinitelyTyped, so might need to include the Redux types directly.

Sorry, this just isn't right so I'm gonna re-submit with the proper changes. Sorry for any confusion this creates.


Slack integration

~~https://github.com/rauchg/slackin~~ permanent Slack share link should be sufficient

We can add a splash page for users to provide their Slack username, then use this endpoint to invite them to the plantit channel in our workspace.

This will be easy if we move back to Dagster: https://docs.dagster.io/_apidocs/libraries/dagster-slack


Implement back substitution for gaussian elimination

back substitution is currently missing and is needed to get the unknowns.

Done


Allow user to set debounce delay for atomic option

For me (on an i3 laptop with good old 5400rpm hard drive), atomic only works with a delay of 500ms. I've added a way to configure it by setting atomic to a number rather than true.

docs please.

https://github.com/paulmillr/chokidar/pull/443


Overhaul Job Poster Status and status transitions

Resolves #2189.
This does quite a lot.
Its based on this graph https://whimsical.com/VxJf9aJveb3gY7y2Jopep7
Notes:

Theres now a job_poster_statuses table describing all possible states, and a job_poster_status_transitions table, which records rules about which transitions are possible and by which users.
These tables also contain localized text for display.
Localized text is for statuses is editable in admin portal, and the transitions are fully editable.
Changing job status is done through its own endpoints. There is an api endpoint, and endpoints for form requests on the hr and manager portals. job_poster_status_transitions is used to validated each transition.
Every time job status changes, the transition is recorded in job_poster_transition_histories table. This is accomplished via an event listener.
Buttons have been added along the side of the Job Summary page that trigger currently-legal transitions. They're disabled if the user doesn't have the right permission. We may want to add more description of what they do or why they're disabled.
Client-side code gets all the possible JobPosterStatuses with redux & an api request, and compares them to job.job_poster_status_id to get localized names/descriptions of the statuses. Unfortunately, local constants are still used to check for certain statuses (ie draft, or completed). This allows for the possibility of frontend/backend de-synchronization, but I'm not sure how to avoid this.
Admins can change the job status through the admin portal, or by manually navigating to a Job Summary page on the HR or Manager portal.

And I think the other thing we talked about was returning the key/name for the Job Status through the API so the frontend could use them with the Typescript enums for statuses.

Is it safe for Admins to have access to create/edit/delete Job Status Transitions? Seems like there's a lot of risk of breaking Job Posters with having all of these fields available.

The code should be able to handle whatever transitions we have here, but there's definitely the risk of breaking the business logic we've settled on. Its a compromise: do we make it easy to change the business logic whenever we want, or do we make it hard to change it accidentally?
I can disable the critical fields for now. Leaving it easy to change later if we want.

Is it safe for Admins to have access to create/edit/delete Job Status Transitions? Seems like there's a lot of risk of breaking Job Posters with having all of these fields available.

The code should be able to handle whatever transitions we have here, but there's definitely the risk of breaking the business logic we've settled on. Its a compromise: do we make it easy to change the business logic whenever we want, or do we make it hard to change it accidentally?
I can disable the critical fields for now. Leaving it easy to change later if we want.

I think disabling for now makes sense. If we have a need for it in the future we can expose the functionality (with the appropriate warnings :P)


Using slugs as IDs, relationships -> links attribute

Hi there,
I'm just starting to play around with JR.  I'm using slugs as primary keys for a few models in my API (and have set primary_key :slug in my serializer.
The issue seems to be that JR is outputting the integer ID in the relationships/links section. E.g.:
 "relationships"=>
    {"locations"=>
      {:links=>{:self=>"/cities/toronto/relationships/locations", :related=>"/cities/toronto/locations"},
       :data=>
        [{:type=>"locations", :id=>"15"},
         {:type=>"locations", :id=>"14"},
         {:type=>"locations", :id=>"7"},
         {:type=>"locations", :id=>"4"},
         {:type=>"locations", :id=>"10"},
         {:type=>"locations", :id=>"1"},
         {:type=>"locations", :id=>"9"},
         {:type=>"locations", :id=>"12"},
         {:type=>"locations", :id=>"11"},
         {:type=>"locations", :id=>"17"},
         {:type=>"locations", :id=>"8"},

I would have expected slugs here.  Help would be appreciated!

The JSON API format now specifies that we return identifiers as id. The primary_key :slug in a resource class (not the serializer) tells the resource that internally the id field should pull from the model field slug.
If that doesn't answer your question please post an example with the resources and models and let us know what you are trying to do.

Thanks for the quick reply. Doesn't quite answer my question :)
What I'd like to do is for all public facing information (i.e. every single response from my API) to show ID's for specific models as slugs, not as ID's. Said differently, location ID = 15 should never be seen. It should always show ID = 'toronto'.  Both in responses from the SHOW action of the model, and in all links.
class City < ActiveRecord::Base
  has_many :locations
end

class Location < ActiveRecord::Base
  belongs_to :city
end

class CityResource < JSONAPI::Resource
  primary_key :slug
  attributes :country, :latitude, :longitude, :name, :state_province

  has_many :locations

  # Allow UUIDs or slugs as IDs
  def self.verify_key(key, context = nil)
    key && String(key)
  end
end

class LocationResource < JSONAPI::Resource
  primary_key :slug
  attributes :address, :description, :email, :name

  has_one :city

  # Allow UUIDs or slugs as IDs
  def self.verify_key(key, context = nil)
    key && String(key)
  end
end

I want this to always show ID's like toronto calgary , not integer IDs.
In the example I pasted above, you can see that the relationships information is coming back with integer IDs, despite the fact that I set primary_key :slug in the resource. I've also tried doing
attributes :id, #.......
def id
  @model.slug
end

But this doesn't work either.
Hopefully this is a bit more clear.

This works for me exactly the way you describe - set primary_key and override verify_key.
I'm still on a pre 0.4.0 version though so maybe it's a regression?

@brandonparsons It looks like you are doing it correctly. Which version are you using?

@slaskis @lgebhardt I am using 0.4.2 - should I try going back a few versions?

@slaskis @lgebhardt I must be doing something wrong? I've tried back to 0.3.3 and I'm still getting the behaviour with IDs.

I am using 0.4.2 and have the same issue.

It's strange because there are even tests for this:
https://github.com/cerebris/jsonapi-resources/blob/4e46ed00606440f7136b041a6ead4c8353bc4a4b/test/controllers/controller_test.rb#L1534
https://github.com/cerebris/jsonapi-resources/blob/master/test/fixtures/active_record.rb#L660

@brandonparsons I suspect the difference is the tests assume that the code is the actual primary identifier on the model. The primary_key is being set on the model with self.primary_key = :code. It sounds like on your slug example the id is still the primary key, but you wish for the resources to hide this and use slug. Is this correct?
There should be no reason to go to an earlier version. I only asked because there were a few changes related to the primary key since the earliest versions of JR.

@lgebhardt Yep - that is correct. Internally, I'm not using the slug as a primary key (I'm actually using UUID's), but I want the resources to completely hide this fact. To the outside world, the slugs should appear to be the ID.

@brandonparsons With the current architecture of JR completely hiding the actual primary key isn't possible. We can mask it when retrieving the locations, but the relationships are still using the id. To display those using the slug a translation from id to slug would be needed. When creating a new relationship the reverse translation would be needed. Unless I'm missing something, I see this adding a lot of overhead to the code, with multiple extra queries in some cases. For example a CreateHasManyAssociationOperation could result in a huge number unless a bulk lookup method was also implemented. It is certainly possible, but it won't be a trivial code change.
Since I don't know your reasoning for this architecture this may be off-base, but why not simply use the slug for the internal primary key? It seems you need to generate a unique string for each location, so the uuid becomes superfluous.

@lgebhardt Thanks for the detailed reply. I certainly don't want to add a pile of work for you guys!
In general, I prefer to leave my database primary keys as integer IDs or UUIDs, and not do anything special (i.e. use slugs as primary keys). That being said, I want my ember application to use the slugs as IDs, as that is how it generates routes that are displayed to the user.  To accomplish this, I had been treating UUIDs/PK's as an internal concern (exposing it for models where I don't care about the URLs), but for routes that need humanized URLs returning slugs as the IDs from my API so ember "Just Works" and generates the right paths.
Can you think of a better way to do this?

@lgebhardt @brandonparsons I have exactly the same use case. Want to use slugs within our ember app without changing the internal id:uuid representation. However, just in case this is going to be a lot of work. I tried the approach of changing id:uuid to id:string format with my rails application and it working just fine.
Just feels a bit weird storing strings as ID's instead of UUID or Integers

@rahult @brandonparsons I've seen plenty of ember implementations that use a combination of the model and serialize hooks on a route to accomplish your goal. See http://emberjs.com/api/classes/Ember.Route.html#method_serialize
This allows you to maintain consistent IDs on both sides of your application, and provides the potential benefit that your slugs can be mutable (note: JSON API doesn't support mutable types or IDs).
On the other hand, if your slugs are immutable and unique, then it's worth considering promoting them to be the primary key on both sides.
Either approach should allow you to avoid the extra overhead of all these translation lookups in your API layer.

Cool - thanks @dgeb. If you are all comfortable, feel free to close this ticket.

@brandonparsons ok, I'll close for now but feel free to comment further here if you have any questions / problems.

@dgeb  - perhaps the following sentence in the README can be changed?
 Note: this doesn't have to be the actual primary key of the model. For example you may wish to use integers internally and a different scheme publicly.

@brandonparsons Yes, we should remove that as it is definitely wrong. Thanks for pointing that out.

@brandonparsons did you ever get this working in practice?  I'm trying to do something similar in my Ember app and I'm a little confused by @dgeb's suggestion.

@Dhaulagiri That's a negative. I've just resorted to sending both the uuid and the slug from the API, serializing/deserializing on the ember side to make the URLs do what they should be.

@brandonparsons how do you handle a situation where you are on the ember side with a slug in the url and no way to figure out what id to send to the server because that doesn't exist in the store yet?

@Dhaulagiri I'm doing the following on the rails side to get JR to lookup by slug as well:
    def self.find_by_key(key, options = {})
      # If you leave JSONAPI to deal with AR::RnF here, it can't figure out the
      # associated_key (because it can be a slug) and throws an exception.
      begin
        record = records(options).friendly.find(key)
      rescue ActiveRecord::RecordNotFound
        raise JSONAPI::Exceptions::RecordNotFound.new(key)
      end
      self.new(record)
    end

@brandonparson In combination with setting key_type to :string, that did the trick.  Thanks!


docker: Error response from daemon: subnet sandbox join failed for "<IP_ADDRESS>/24": error creating vxlan interface: file exists.

My environment:
# docker version
Client:
 Version:      17.09.1-ce
 API version:  1.32
 Go version:   go1.8.3
 Git commit:   19e2cf6
 Built:        Thu Dec  7 22:24:16 2017
 OS/Arch:      linux/amd64

Server:
 Version:      17.09.1-ce
 API version:  1.32 (minimum version 1.12)
 Go version:   go1.8.3
 Git commit:   19e2cf6
 Built:        Thu Dec  7 22:22:56 2017
 OS/Arch:      linux/amd64
 Experimental: false
# uname -a
Linux X 4.9.0-3-amd64 #1 SMP Debian 4.9.30-2+deb9u5 (2017-09-19) x86_64 GNU/Linux
# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 9 (stretch)"
NAME="Debian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
#

I'm getting following error while trying to start container and join it to my existing network
# docker run --network X hello-world
docker: Error response from daemon: subnet sandbox join failed for "<IP_ADDRESS>/24": error creating vxlan interface: file exists.
ERRO[0000] error waiting for container: context canceled
#

btw, everything was working fine using 17.09.0-ce and above error after upgrading to 17.09.1-ce.
Please advise.

https://github.com/docker/for-linux/issues/183


[buffer] deprecate Buffer.to_bytes()

This method is no longer needed since with Python 3 we can simply use
bytes(buf).

@mikeboers are you OK with this?


(opt / c / windows) tests.vsprojects/Release/h2_fakesec_test.exe call_creds

https://grpc-testing.appspot.com/job/gRPC_master/15494/config=opt,language=c,platform=windows/
Also in the following builds:
https://grpc-testing.appspot.com/job/gRPC_master/15490
https://grpc-testing.appspot.com/job/gRPC_master/15462

On portability master:
https://grpc-testing.appspot.com/job/gRPC_portability_master/968/language=c,scenario=windows_x64_vs2015/testReport/junit/(root)/tests/vsprojects_x64_Debug_h2_fakesec_test_exe_call_creds/

Build 1123.

The build has disappeared from Jenkins since then. Please copy the relevant logs to the issue comments, or hit the "Keep this build forever" button on Jenkins.


Docs are out of date in github.io

The content in this link from the main readme are old docs and contain information that doesn't work in the current version.

Fixed by https://github.com/GetBlimp/django-rest-framework-jwt/commit/f02cda6e9700a94a9f6f65364673a8a52390b7a0

@carltongibson It seems this update to the github.io docs didn't include the most recent update to the docs that I did a PR for around the same time.  Must have been done in the other order.  The PR was a very minor change to password length in the examples, but worth saving new users a bit of hassle when they are copy pasting.

OK. Noted


ci: kind proxy run tests concurrently

Conformance kind envoy embedded workflow improved with connectivity test concurrent run to make it faster.
Workflow runtime:

without concurrency: ~15m
with --test-concurrency=5: ~10m

Please ensure your pull request adheres to the following guidelines:

[x] For first time contributors, read Submitting a pull request
[ ] All code is covered by unit and/or runtime tests where feasible.
[x] All commits contain a well written commit description including a title,
description and a Fixes: #XXX line if the commit addresses a particular
GitHub issue.
[ ] If your commit description contains a Fixes: <commit-id> tag, then
please add the commit author[s] as reviewer[s] to this issue.
[x] All commits are signed off. See the section Developer’s Certificate of Origin
[x] Provide a title or release-note blurb suitable for the release notes.
[ ] Are you a user of Cilium? Please add yourself to the Users doc
[ ] Thanks for contributing!

Fixes: #issue-number
<!-- Enter the release note text here if needed or remove this section! -->

/test


Upgrade postgresql to 9.6 on all db_admin classes

We need version 9.6 of postgresql on email_alert_api_db_admin,
publishing_api_db_admin, transition_db_admin, and
warehouse_db_admin

I'll test with transition in AWS staging


Unable to write to a DB file on macOS

I've tried using both LiteRepository and LiteDatabase to create and open a new DB, but I am getting an error when calling Insert.
Error:
Exception has occurred: CLR/System.PlatformNotSupportedException
An unhandled exception of type 'System.PlatformNotSupportedException' occurred in LiteDB.dll: 'Locking/unlocking file regions is not supported on this platform. Use FileShare on the entire file instead.'
at System.IO.FileStream.LockInternal(Int64 position, Int64 length)
at LiteDB.FileHelper.TryExec(Action action, TimeSpan timeout)
at LiteDB.StreamExtensions.TryLock(FileStream stream, Int64 position, Int64 length, TimeSpan timeout)
at LiteDB.FileDiskService.Lock(LockState state, TimeSpan timeout)
at LiteDB.LiteEngine..ctor(IDiskService disk, String password, Nullable1 timeout, Int32 cacheSize, Logger log)    at LiteDB.LiteDatabase.<>c__DisplayClass11_0.<.ctor>b__0()    at LiteDB.LazyLoad1.get_Value()
at LiteDB.LiteCollection`1.Insert(T document)
at LiteDbDemo.Program.Main(String[] args) in /Users/grantd/Projects/Ecs/LiteDbDemo/Program.cs:line 20

Hi @Devin-Grant, I didn´t know about this macOS limitation (lock/unlock regions). In this case, try use mode=Exclusive in your connection string.

Thant works!

Hi guys, I had the same issue above, used the Mode=Exclusive, however when trying to insert a new document (Employees.Insert(Employee)) getting the error - System.ArgumentNullException: Value cannot be null.
Parameter name: filename
at LiteDB.FileDiskService..ctor(String filename, FileOptions options)
at LiteDB.LiteDatabase.<>c__DisplayClass11_0.<.ctor>b__0()
at LiteDB.LazyLoad1.get_Value()    at LiteDB.LiteCollection1.Insert(T document)
at LiteDBSample.Program.Main(String[] args) in
Any thoughts? Many thanks, Alexandre

I get the same issue as above.


Source inspection isn't useful when build for production

Storybook by default uglifies when building for static deployments. This causes the source inspection to be relatively useless:

You can write a custom config to remove the uglify plugin, but that seems like a hacky workaround the issue.

Defining a displayName for each component is the easiest solution to this.

Do you think it'd be reasonable to include a display name babel transformer by default in the production Storybook Webpack?

Yes, I think that'll be great. Could you make a PR with it?

@kesne The react preset already has this transformer but unfortunately it only works for React.createClass expressions. Found this plugin but It should be tested well if we're going to use it. And we also have stateless functional react components to handle.

Any update on that one :)? We wanted to use this addon for documentation and it would be really useful not to ugilfy things on default (or if we could run build with a flag or something) :).

Until we can find a good babel transformer to preserve component names, we have to use the displayName property when creating react components.

Maybe the addon could force webpack ulgify to have the keep_fnames option set?
Until we get a better solution...

There's no reason to mangle function names. Can we just stop doing that?

Minifying the js is important when deploying a storybook.
This problem will go away by defining a displayName for the component. Having a display name should help with other development tools like react dev tools as well.

@ljhard I think minifying is important even this is a dev tool.
We have users who use Storybook for code reviewing and people other than developers use the deployed version.
I think we can stop magaling function names still use JS minification.

@arunoda i'm not saying don't minify, i'm just very skeptical that there's any benefit of minifying storybook. Certainly simply "not mangling function names" seems like it will vastly improve this situation.

@ljharb This only happens when a storybook is built for deployment using "build-storybook", not when used for development. Are you seeing this when in development as well?

@arunoda Sure. Will look into it.

@roonyh what i mean is, even when using build-storybook, the resulting "production" storybook site is still used as documentation/a playground for developers. storybook is a developer tool, and imo never really has production requirements.

@ljharb Ok. I understand. I am looking into providing a flag to stop uglifying. Or to keep function names as is by default.

@ljharb Published storybook v2.18.1 that does not mangle names.

I confirm the issue is resolved with storybook 2.18.1


fix(core): dts relative path import

Fixes relative path import of config to dts

@Marviuz thank you very much. The fix was released with version 0.4.1 of @content-collections/core.


[ERR_REQUIRE_ESM]: Must use import to load ES Module

Hello,
Following the instructions from the readme lead me to this error
error during build:
Error [ERR_REQUIRE_ESM]: Must use import to load ES Module: `PATH\node_modules\vite-plugin-singlefile\node_modules\chalk\source\index.js
require() of ES modules is not supported.
require() of PATH\node_modules\vite-plugin-singlefile\node_modules\chalk\source\index.js from PATH\node_modules\vite-plugin-singlefile\dist\index.js is an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which defines all .js files in that package scope as ES modules.
Instead rename PATH\node_modules\vite-plugin-singlefile\node_modules\chalk\source\index.js to end in .cjs, change the requiring code to use import(), or remove "type": "module" from PATH\node_modules\vite-plugin-singlefile\node_modules\chalk\package.json.

Hi! Please use 0.7.1, version  0.7.0 was too aggressive in updating a new dependency.

@richardtallent waiting for it to be released to npm 👍

same problem with 0.8.0

same problem with 0.9.0, but it is Ok with 0.7.1

Try setting your application's type to module, as shown here:
https://github.com/richardtallent/vite-plugin-singlefile-example/blob/54b1d94cb03ae5132b867939a6c649f590005779/package.json#L5
If that becomes an impediment, we'll switch back away from ESM.

Please try 0.10.0-beta and let me know if it helps. It should allow use in both CommonJS and ESM environments.

0.10.0 has been released.


Doc lint and script reorg

Went a bit overboard, probably need more coding and less meetings ;)

Example output
checking modules
  [✓] artifact-registry
  [✓] bigquery-dataset
  [✓] bigtable-instance
  [?] cloud-config-container
  [✓] cloud-function
  [✓] compute-mig
  [✓] compute-vm
  [✓] container-registry
  [✓] datafusion
  [✓] dns
  [✓] endpoints
  [✓] folder
  [✓] folders-unit
  [✓] gcs
  [✓] gke-cluster
  [✓] gke-nodepool
  [✓] iam-service-account
  [✓] kms
  [✓] logging-sinks
  [✓] net-address
  [✓] net-cloudnat
  [✓] net-ilb
  [✓] net-vpc
  [✓] net-vpc-firewall
  [✓] net-vpc-peering
  [✓] net-vpn-dynamic
  [✓] net-vpn-ha
  [✓] net-vpn-static
  [✓] organization
  [✓] project
  [✓] pubsub
  [✓] secret-manager
  [✓] service-directory
  [✓] source-repository
  [✓] vpc-sc
checking networking
  [✓] hub-and-spoke-peering
  [✓] hub-and-spoke-vpn
  [✓] ilb-next-hop
  [✓] onprem-google-access-dns
  [✓] shared-vpc-gke
checking foundations
  [✓] business-units
  [✓] environments
checking cloud-operations
  [✗] asset-inventory-feed-remediation
  [✗] dns-fine-grained-iam
  [✓] quota-monitoring
  [✓] scheduled-asset-inventory-export-bq
checking data-solutions
  [✗] cmek-via-centralized-kms
  [✓] gcs-to-bq-with-dataflow
errors were present

Test failure is of course expected until we fix the stale READMEs. ;)

Sent you a PR with a slight refactor :D

LGTM

nice output 👍


The unit of the "Spectrum" subplot in the ICA properties figure

When calling ICA.plot_properties(), the ordinate of the subplot titled "Spectrum" is labeled "AU^2/Hz (dB)":

(taken from https://mne.tools/stable/auto_tutorials/preprocessing/40_artifact_correction_ica.html#looking-at-the-ica-solution)

Why "AU" and not the unit of the sensor type (e.g., µV for EEG)?
dB here means – what? That the plotted value is 10 log10 (AU^2/Hz)?
Why is the subplot titled "Spectrum" and not "PSD"? Seems inconsistent with our naming elsewhere?

A comparable figure produced by EEGLAB looks like this:

(taken from https://eeglab.org/tutorials/08_Plot_data/Plotting_ICA_components.html)
Or am I reading this wrong?
I feel that the axis label there makes it much clearer to understand what's being shown.

I think we forgot to change this in #12232, where we converged on using:
Power (dB µV²/Hz)
Regarding the title, I'm OK with changing it to PSD if you think this is better.

This sounds reasonable! I don't have strong feelings regarding the plot title, I just thought the current wording might not be the best choice


Update cert-manager documentation

Issue (https://github.com/jetstack/cert-manager/issues/1529) and PR (https://github.com/jetstack/cert-manager/pull/1575) have provided a static label, we can use that instead of manually checking for  acme-http-domain and acme-http-token

Hey, thanks for this! Since this is doc-only, can you open it against the ambassador-docs repo? That makes it easier to make it available on the website.
Thanks!

Sorry will do it later and close this PR after.

Created new PR https://github.com/datawire/ambassador-docs/pull/86


fixed linting error

On running npm install I receved the following error:
standard: Use JavaScript Standard Style (http://standardjs.com)
patata/lib/sdk/fileUtils.js:8:30: Unnecessary escape character: \..
npm ERR! Test failed.  See above for more details.

This fixes that lint error
Also while tests pass, the deps of the system pull in and use setting, however for validation.storagePath() the tests use settings.storagePath(), and the app tried too, but because the file is setting, not settings, the app failed... this also fixes that

Changes Unknown when pulling ad78d8b9556142db8f9a4d41aab1a16419eaa076 on appersonlabs:master into ** on eridem:master**.

Changes Unknown when pulling b5443b8f77bf0705f549f5cd568382e378057017 on appersonlabs:master into ** on eridem:master**.

Changes Unknown when pulling bb80c0363e9f1f66572e3261fe3aaf5121ed7379 on appersonlabs:master into ** on eridem:master**.

Thanks a lot @mattapperson :-)

@eridem no problem! More to come! 😊


Create Insertion Sort

What type of PR is this? (check all applicable)

[x] 🚀 Added Name
[x] ✨ Feature
[x] 🌟 stared the repo
[x] 🐛 Grammatical Error
[x] 📝 Documentation Update
[x] 🚩 Other

Description
Add Link of GitHub Profile

Rashid


Support SVG for reference images

Only thing lacking is export support but I'm not sure what the correct behaviour would be. GLTF supports SVG textures but Blender doesn't seem to allow it. Rasterize the SVGs on export? I think we can punt on this for the moment and document this as a known issue.

Cool!

GLTF supports SVG textures

Source? I've only found info that says it's not going to happen officially. https://github.com/KhronosGroup/glTF/issues/549#issuecomment-1542139007
I think it would be fine if we rasterized on export.

@mikeskydev :

I think it would be fine if we rasterized on export.

This is now implemented.

Is there a desire from Open Brush to support SVG textures in GLTF? I am also mildly interested in having this in Godot Engine. It should be quite trivial to build a spec for this.
The only blocker is justification and motivation. I don't have any particular use case for this myself.
Also, for the name, Khronos discouraged me from using the EXT_ prefix because there are not multiple vendors interested. However, if both Open Brush and Godot are interested, that would be at least 2 vendors.


Reload Command Error

Hi, unsure what I'm doing wrong here.

Is the command installed on your system? The command hs.ipc.cliStatus() should return true when executing inside hammerspoon console. Also it must be the first statement of your init.lua
From the docs

The command line tool will not work unless the hs.ipc module is loaded first, so it is recommended that you add require("hs.ipc") to your Hammerspoon init.lua file (usually located at ~/.hammerspoon/init.lua) so that it is always available when Hammerspoon is running.

Issue was with Apple Silicone and the Homebrew install of Hammerspoon. Resolved by using advice here and running hs.ipc.cliInstall("/opt/homebrew")


docs(github): add bug and feature issue templates

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

v4.1.1
GitHub release

Your semantic-release bot :package::rocket:


src exclude not working as expected

I have two files 'ui-bootstrap.js' and 'ui-bootstrap-tpls.js' under directory 'xxx/vendor/angular-bootstrap/'.
I want to copy 'xxx/vendor/**/*.js' to the build directory.  and I want to exclude 'ui-bootstrap.js' from copying to the dest.
It seems not working by using below code:
paths.vendor.src = './vendor/**/*';
...
gulp.src([paths.vendor.src, '!./vendor/angular-bootstrap/ui-bootstrap.js'], {base: './'});

I'm using gulp 3.9.0, is this a bug?

There might have been a node-glob or minimatch bug that caused this not to work.  Try removing the ./ before vendor in both paths.

Still not working, copy all the files to the dest...

Sorry, actually i did some wrong config, it shouldn't be a issue. Thanks anyway!