os/exec: data race in TestStdinClose

While testing new race runtime I've hit:
WARNING: DATA RACE
Read at 0x00c4200f8900 by goroutine 28:
  os.(*File).Write()
      /tmp/workdir/go/src/os/file.go:139 +0x70
  os.(*File).WriteString()
      /tmp/workdir/go/src/os/file.go:200 +0x7b
  os/exec.(*closeOnce).WriteString()
      <autogenerated>:43 +0x77
  io.WriteString()
      /tmp/workdir/go/src/io/io.go:289 +0xa5
  strings.(*Reader).WriteTo()
      /tmp/workdir/go/src/strings/reader.go:133 +0x172
  io.copyBuffer()
      /tmp/workdir/go/src/io/io.go:380 +0x432
  io.Copy()
      /tmp/workdir/go/src/io/io.go:360 +0x7e
  os/exec_test.TestStdinClose.func2()
      /tmp/workdir/go/src/os/exec/exec_test.go:241 +0xff

Previous write at 0x00c4200f8900 by goroutine 27:
  os.(*file).close()
      /tmp/workdir/go/src/os/file_unix.go:138 +0x10a
  os.(*File).Close()
      /tmp/workdir/go/src/os/file_unix.go:127 +0x55
  os/exec.(*closeOnce).close()
      /tmp/workdir/go/src/os/exec/exec.go:536 +0x50
  os/exec.(*closeOnce).(os/exec.close)-fm()
      /tmp/workdir/go/src/os/exec/exec.go:531 +0x41
  sync.(*Once).Do()
      /tmp/workdir/go/src/sync/once.go:44 +0xe1
  os/exec.(*closeOnce).Close()
      /tmp/workdir/go/src/os/exec/exec.go:531 +0x79
  os/exec.(*closeOnce).safeClose()
      /tmp/workdir/go/src/os/exec/exec.go:569 +0x55
  os/exec.(*closeOnce).(os/exec.safeClose)-fm()
      /tmp/workdir/go/src/os/exec/exec.go:518 +0x41
  os/exec.closerFunc.Close()
      /tmp/workdir/go/src/os/exec/exec.go:541 +0x34
  os/exec.(*Cmd).closeDescriptors()
      /tmp/workdir/go/src/os/exec/exec.go:262 +0x67
  os/exec.(*Cmd).Wait()
      /tmp/workdir/go/src/os/exec/exec.go:447 +0x2b8
  os/exec_test.TestStdinClose()
      /tmp/workdir/go/src/os/exec/exec_test.go:246 +0x21b
  testing.tRunner()
      /tmp/workdir/go/src/testing/testing.go:639 +0xcd

Goroutine 28 (running) created at:
  os/exec_test.TestStdinClose()
      /tmp/workdir/go/src/os/exec/exec_test.go:245 +0x20d
  testing.tRunner()
      /tmp/workdir/go/src/testing/testing.go:639 +0xcd

Goroutine 27 (running) created at:
  testing.(*T).Run()
      /tmp/workdir/go/src/testing/testing.go:676 +0x535
  testing.runTests.func1()
      /tmp/workdir/go/src/testing/testing.go:832 +0xaa
  testing.tRunner()
      /tmp/workdir/go/src/testing/testing.go:639 +0xcd
  testing.runTests()
      /tmp/workdir/go/src/testing/testing.go:838 +0x4a8
  testing.(*M).Run()
      /tmp/workdir/go/src/testing/testing.go:773 +0x12f
  main.main()
      os/exec/_test/_testmain.go:98 +0x1b8

I can't reproduce it with current race runtime, but the race looks very real. Introduced while fixing another race in os/exec #6270. One does not simply use os/exec without races.

It's not OK to call Wait while working with stdin/stdout.

@dvyukov, I don't understand why this is a race. I will explain why I think it's not a race. Please show me why I am wrong.
The subprocess is running case "stdinClose" at line 660:
    case "stdinClose":
            b, err := ioutil.ReadAll(os.Stdin)
            if err != nil {
                    fmt.Fprintf(os.Stderr, "Error: %v\n", err)
                    os.Exit(1)
            }
            if s := string(b); s != stdinCloseTestString {
                    fmt.Fprintf(os.Stderr, "Error: Read %q, want %q", s, stdinCloseTestString)
                    os.Exit(1)
            }
            os.Exit(0)

That is, the subprocess consumes the entire stdin and then exits.
TestStdinClose does (simplifying):
    cmd := helperCommand(t, "stdinClose")
    stdin, err := cmd.StdinPipe()
    check("StdinPipe", err)
    check("Start", cmd.Start())
    go func() {
            _, err := io.Copy(stdin, strings.NewReader(stdinCloseTestString))
            check("Copy", err)
            check("Close", stdin.Close())
    }()
    check("Wait", cmd.Wait())

The new goroutine is kicked off and cmd.Wait blocks in the wait system call waiting for the subprocess to exit.
The new goroutine writes stdinCloseTestString to stdin (using the underlying *os.File) and then closes stdin (using the underlying *os.File). Once stdin closes, the subprocess should see the EOF and exit. Then cmd.Wait unblocks - the wait system call returns - and now sees the subprocess exit and calls close on the underlying *os.File for stdin, just in case the calling code has not already closed the file. That second close should not do anything because the file is already closed. Also, the whole thing is sequenced: the goroutine's close of stdin is what makes the subprocess exit, and the subprocess exit is what makes the second half of cmd.Wait begin, and the second half of cmd.Wait is what is closing the file in the race report.
Having explained why this code is essentially single-threaded, I am confused about the race report. The race report seems to be saying that the second half of cmd.Wait has already executed and the copy loop in the goroutine is now running and racing with Wait. But assuming something is not completely broken in the test, the copy loop should always run before cmd.Wait.
Is the race report accurate about the time ordering here? Or does the race detector just pick one event to be 'previous' when it doesn't actually know which one came first in time order?
If the race report is accurate about the time ordering, then the test itself must be broken somehow, in which case there should be other failure output. If the race report has the time ordering backward, and in fact it is objecting to the write in goroutine 27 racing with a previous read in goroutine 28, that's just not a race: they are sequenced by the subprocess exiting.

@rsc Your reasoning regarding event ordering is correct, I missed that there is transitive relation. Race detector does not see transitive synchronization that involves other process. To fix that we could synchronize all fd Close's with all unblocks of cmd.Wait (Close will need to a release on a fake address, and Wait do acquire on the same address after return). However, the signal to exit can have other forms, e.g. one process could write some magic value to a pipe, or maybe create a special file or disk.
The ordering of events in the report is precise. Tsan observed that in this particular execution Close happened before Write.
How it happened is a good question. Fortunately I still have the log:
--- FAIL: TestStdPipe (8.17s)
	pipe_test.go:85: unexpected exit status signal: killed for descriptor 1s sig false
FAIL
FAIL	os	57.546s
==================
WARNING: DATA RACE
Read at 0x00c4200f8900 by goroutine 28:
  os.(*File).Write()
      /tmp/workdir/go/src/os/file.go:139 +0x70

So in this case the child process was killed (seems to be happening on race gomote machines regularly:
https://groups.google.com//forum/#!topic/golang-dev/y0GnG9vvttI).
Which suggests that: you can never be sure that the process won't exit before you signal it. A child process can be killed by user, by kernel, or just exit with an error.
Now consider that we are sending some sensitive data to a trusted subprocess. The process gets killed. Wait returns and closes stdin fd. Then the fd is reused for an external internet connection and we continue sending the sensitive data there as if nothing happened.

That was a wrong part of the log, but it was still killed:
==================
WARNING: DATA RACE
Read at 0x00c4200f8900 by goroutine 28:
  os.(*File).Write()
      /tmp/workdir/go/src/os/file.go:139 +0x70
  os.(*File).WriteString()
      /tmp/workdir/go/src/os/file.go:200 +0x7b
  os/exec.(*closeOnce).WriteString()
      <autogenerated>:43 +0x77
  io.WriteString()
      /tmp/workdir/go/src/io/io.go:289 +0xa5
  strings.(*Reader).WriteTo()
      /tmp/workdir/go/src/strings/reader.go:133 +0x172
  io.copyBuffer()
      /tmp/workdir/go/src/io/io.go:380 +0x432
  io.Copy()
      /tmp/workdir/go/src/io/io.go:360 +0x7e
  os/exec_test.TestStdinClose.func2()
      /tmp/workdir/go/src/os/exec/exec_test.go:241 +0xff

Previous write at 0x00c4200f8900 by goroutine 27:
  os.(*file).close()
      /tmp/workdir/go/src/os/file_unix.go:138 +0x10a
  os.(*File).Close()
      /tmp/workdir/go/src/os/file_unix.go:127 +0x55
  os/exec.(*closeOnce).close()
      /tmp/workdir/go/src/os/exec/exec.go:536 +0x50
  os/exec.(*closeOnce).(os/exec.close)-fm()
      /tmp/workdir/go/src/os/exec/exec.go:531 +0x41
  sync.(*Once).Do()
      /tmp/workdir/go/src/sync/once.go:44 +0xe1
  os/exec.(*closeOnce).Close()
      /tmp/workdir/go/src/os/exec/exec.go:531 +0x79
  os/exec.(*closeOnce).safeClose()
      /tmp/workdir/go/src/os/exec/exec.go:569 +0x55
  os/exec.(*closeOnce).(os/exec.safeClose)-fm()
      /tmp/workdir/go/src/os/exec/exec.go:518 +0x41
  os/exec.closerFunc.Close()
      /tmp/workdir/go/src/os/exec/exec.go:541 +0x34
  os/exec.(*Cmd).closeDescriptors()
      /tmp/workdir/go/src/os/exec/exec.go:262 +0x67
  os/exec.(*Cmd).Wait()
      /tmp/workdir/go/src/os/exec/exec.go:447 +0x2b8
  os/exec_test.TestStdinClose()
      /tmp/workdir/go/src/os/exec/exec_test.go:246 +0x21b
  testing.tRunner()
      /tmp/workdir/go/src/testing/testing.go:639 +0xcd

Goroutine 28 (running) created at:
  os/exec_test.TestStdinClose()
      /tmp/workdir/go/src/os/exec/exec_test.go:245 +0x20d
  testing.tRunner()
      /tmp/workdir/go/src/testing/testing.go:639 +0xcd

Goroutine 27 (running) created at:
  testing.(*T).Run()
      /tmp/workdir/go/src/testing/testing.go:676 +0x535
  testing.runTests.func1()
      /tmp/workdir/go/src/testing/testing.go:832 +0xaa
  testing.tRunner()
      /tmp/workdir/go/src/testing/testing.go:639 +0xcd
  testing.runTests()
      /tmp/workdir/go/src/testing/testing.go:838 +0x4a8
  testing.(*M).Run()
      /tmp/workdir/go/src/testing/testing.go:773 +0x12f
  main.main()
      os/exec/_test/_testmain.go:98 +0x1b8
==================
--- FAIL: TestStdinClose (36.33s)
	exec_test.go:227: Wait: signal: killed
	exec_test.go:227: Copy: write |1: file already closed
FAIL
FAIL	os/exec	65.409s

cmd.Process.Kill() can be a workaround? is there temporary solution?

The solution is to not call cmd.Wait() while working with stdin/stdout pipes.

Thanks the problem is still valid
file descriptors are still used. any idea when version 1.8 is scheduled to?

1.8 is scheduled to be released February 1, 2017.

Hello,
Regarding the issue at dour and 1.8.
Does 1.8 will include the fix and will be out? Is there any beta or should
I modify my src with fix above?
Thank you,
Yoni Shperling
On Wed, 16 Nov 2016 at 4:25 GopherBot<EMAIL_ADDRESS>wrote:

Closed #17647 https://github.com/golang/go/issues/17647 via b906df6
https://github.com/golang/go/commit/b906df653b58bc2ab9b93e18f62adccc8c1419b7
.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/17647#event-860406386, or mute the
thread
https://github.com/notifications/unsubscribe-auth/ALrs2nEpFvjj_zUsf1p28WfkYVF7lN9Sks5q-mmSgaJpZM4KjeKw
.

--
Best Regards,
Yoni Shperling

1.8 includes the fix.  Release candidate 3 for Go 1.8 is currently available, and the final release will occur within a couple of weeks.  See the golang-dev mailing list for details.

Thank you!
On Wed, Feb 1, 2017 at 4:48 PM, Ian Lance Taylor<EMAIL_ADDRESS>wrote:

1.8 includes the fix. Release candidate 3 for Go 1.8 is currently
available, and the final release will occur within a couple of weeks. See
the golang-dev mailing list for details.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/golang/go/issues/17647#issuecomment-276675780, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ALrs2i1bU3W9YAqHvHiEN7uiuqSLpYO1ks5rYJtNgaJpZM4KjeKw
.

--
Best Regards,
Yoni Shperling


Don't update version in .ipynb files until an edit has been made

When I'm using a different Python version than the one used to create a Jupyter notebook, opening a Jupyter notebook results in the version in the .ipynb file changing. So, just from exploring a repository, I get lots of small diffs that show up in git.
-   "version": "3.10.5"
+   "version": "3.10.6"

It seems like this edit is not necessary until some kind of modification is made to the notebook. Essentially, I'm suggesting being lazy about this kind of change and ignoring it until something else about the notebook changes.
Thanks!!

Here's another example
@ research/adagrid/lewis_ada.ipynb:560 @
 ],
 "metadata": {
  "kernelspec": {
-   "display_name": "Python 3.10.5 ('confirm')",
+   "display_name": "Python 3.9.6 64-bit",
   "language": "python",
   "name": "python3"
  },
@ research/adagrid/lewis_ada.ipynb:574 @
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
-   "version": "3.10.5"
+   "version": "3.9.6"
  },
  "vscode": {
   "interpreter": {
-    "hash": "b4c6ec5b2d6c7b38df115d547b82cd53ca25eea58d87299956d35a9dc79f19f1"
+    "hash": "31f2aee4e71d21fbe5cf8b01ff0e069b9275f58929596ceb00d14d90e3e16cd6"
   }
  }
 },

I very much second this.

I encounter the same issue, with a twist. There are two version numbers in the metadata, but only one of them is updated, language_info.version, the version in kernelspec.display_name is not updated. The venv Python version is 3.10.8.
"metadata": {
 "kernelspec": {
  "display_name": "Python 3.10.4 ('.pyenv': venv)",
 },
 "language_info": {
  "version": "3.10.8"
 },
}

opening a Jupyter notebook results in the version in the .ipynb file changing. So, just from exploring a repository, I get lots of small diffs that show up in git.

This should now be fixed in the latest version
The kernel is no longer automatically selected, hence notebook metadata is not updated.
The update takes place when users select a kernel (either manually or a side effect of executing a cell)


Add missing picture tag

According to the documentation a source tag musst have on of the following parent elements:

audio
video
track
picture

Since it was missing here i added it.

Thanks


How to get the minimum and maximum cuda compute capability for the given version of TensorFlow.

Hello, is any way to get the supported versions of compute capablity.
An exemplary function could look like this:
>>>import tensorflow as tf
>>>tf.get_supported_compute_capablity()
(3.0, 7.0)
System information

TensorFlow version 1.10:
Are you willing to contribute it (Yes/No): Yes

Minimum compute capability can be seen here:
https://www.tensorflow.org/install/gpu#hardware_requirements
If we are not supporting this value, that means we have a bug.
While the API is an interesting idea, I think our docs cover this. And this is a pretty stable value that I don't think a new API symbol is that useful.

Are you satisfied with the resolution of your issue? Yes No


cherry pick #28

ship is still using the soh-macready branch, in order to get ship onto latest LUS we need this, so here's a cherry pick

my bad, #28 is already pointing to the soh-macready branch


Lettuce blocked when connecting to Redis

Bug Report

yes
Current Behavior

contidion:
maven import:
lettuce 5.2.2.Release
org.latencyutils.LatencyUtils 2.0.3
org.hdrhistogram.HdrHistogram 2.1.12
when I am running a simple test case -- use a threadpool to execute "basic usage"(https://lettuce.io/core/release/reference/#basic-usage). Every lettuce thread will block in
DefaultCommandLatencyCollector$DefaultPauseDetectorWrapper.getPauseDetector()
There is a certain probability to meet this problem. But if I put a breakpoint in statement instanceCounter.decrementAndGet() in DefaultCommandLatencyCollector$DefaultPauseDetectorWrapper.release(), the problem will happen every time.
test case logic like below:
Input Code

Input Code
// your code here;

Main.class:
public static void main(){
    //define a fixed thread pool
   ExecutorService es = Exectors.newFixedThreadPool(50);
   for (i = 0; i < 5000; i++){
        es.execute(new Runnable(){
            @Override
            public void run(){
                   if(RedisUtils.get("aaa") != null){
                        RedisUtils.del("aaa");
                   }else{
                        RedisUtils.set("aaa", "bbb");
                   }
             }
        })
   }
}

RedisUtils.class:
//just like the  "basic usage" in https://lettuce.io/core/release/reference/#basic-usage
//implement "get" "set" "del" method to get/set/delete redis key.

Environment

Lettuce version(s): 5.2.2.RELEASE
Redis version: 5.X
maven import:
lettuce 5.2.2.Release
org.latencyutils.LatencyUtils 2.0.3
org.hdrhistogram.HdrHistogram 2.1.12

Possible Solution

As I see. DefaultCommandLatencyCollector$DefaultPauseDetectorWrapper.getPauseDetector() have a "while" statment. Maybe in the case of concurrency, the "DefaultCommandLatencyCollector$DefaultPauseDetectorWrapper.parseDetector" will be set to wrong value "null".
Maybe "DefaultCommandLatencyCollector$DefaultPauseDetectorWrapper.release()" method have a wrong invoke.
Additional context

Please note that ClientResources are intended to be created once per JVM instance. Creating/shutting down ClientResources more than once indicates wrong API usage.

Thank you for your attention. Because someone on my side only read a part of the document, this problem occurred in the process of using lettuce. Now I know what to do, thank you.

Hi @mp911de ,
I encountered the similar problem in my code. I use thread pool and each thread will create a RedisClient instance, and will deal with create /shutdown issue separately.  So there may be multi clientResource in one JVM.
Now I know that it is not recommended in lettuce.
When I use  Lettuce = 4.4.3.Final version, there was the  similar exception:
com.lambdaworks.redis.RedisCommandTimeoutException: Command timed out
	at com.lambdaworks.redis.LettuceFutures.await(LettuceFutures.java:118)
	at com.lambdaworks.redis.LettuceFutures.awaitOrCancel(LettuceFutures.java:96)
	at com.lambdaworks.redis.FutureSyncInvocationHandler.handleInvocation(FutureSyncInvocationHandler.java:61)
	at com.lambdaworks.redis.internal.AbstractInvocationHandler.invoke(AbstractInvocationHandler.java:80)
	at com.sun.proxy.$Proxy40.info(Unknown Source)
	at com.amazon.redisnanny.provider.LettuceClient.getMonitorParameters(LettuceClient.java:82)
	at com.amazon.redisnanny.provider.ReplicationInfoCollector.lambda$getCurrentSnapshot$1(ReplicationInfoCollector.java:72)

And it may cause a block in the thread and all the RedisCommands do not work .
"lettuce-epollEventLoop-592348-2" #2282594 daemon prio=5 os_prio=0 tid=0x00007f77ac28d000 nid=0x4af6 waiting for monitor entry [0x00007f776f8f9000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1682)
	- waiting to lock <0x000000072956f370> (a java.util.concurrent.ConcurrentHashMap$ReservationNode)
	at com.lambdaworks.redis.metrics.DefaultCommandLatencyCollector.recordCommandLatency(DefaultCommandLatencyCollector.java:109)
	at com.lambdaworks.redis.protocol.CommandHandler.recordLatency(CommandHandler.java:342)
	at com.lambdaworks.redis.protocol.CommandHandler.decode(CommandHandler.java:327)

But the tricky is  the code work well  in the Lettuce = 4.2.2.Final_snpPatch version and it does not cause above exception though it runs for serveral months.
My doubt is why it works well with version Lettuce = 4.2.2.Final_snpPatch when there are multi connectionResource in one JVM.
Thanks for your time.

Thanks for your details.
What is version 4.2.2.Final_snpPatch? Indeed, there seems an issue with synchronization. Thile multiple ClientResource instances are discouraged, we should not create a failure, therefore reopening this ticket.

Thx for your quick response.
Sorry,  typo fix  4.2.2.Final_snpPatch ->  4.2.2.Final.
pls let me I add some background here.
Now the code with 4.2.2.Final worked well for several months and not throw above exception although i use thread pool to create multi clientResource.
The reason why i use thread pool is that i need to monitor redis cluster status, so i should connect to different host in redis cluster.  For efficiency,  thread pool is used in the code.
When i upgrade the version to 4.4.3.Final, the exception occured and i see block in the thread.
So, is there practical way to use lettuce in this background?

Can you share the full thread dump for further investigation? I'm not able to reproduce the blocking issue.
The SimplePauseDetector requires a bit of a dance to lazily create threads and to make sure that we only use a single instance in a JVM along with a proper shutdown.
Connecting asynchronously is fine with Lettuce, but I'd recommend using a single-node client that you keep reusing.
As a workaround, and if you don't require latencies, use CommandLatencyCollector.disabled() to avoid issues in the first place.

Thx for your suggestions.
In my opinion, one single-node can only hold one host.  it may be not suitable because there are many hosts in redis cluster and i need to pick some specific info seperately. it may not be very effective.
The following is some info that may help reproduce the question.
I pick major thread dump info here
"lettuce-epollEventLoop-592348-2" #2282594 daemon prio=5 os_prio=0 tid=0x00007f77ac28d000 nid=0x4af6 waiting for monitor entry [0x00007f776f8f9000]
   java.lang.Thread.State: BLOCKED (on object monitor)
	at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1682)
	- waiting to lock <0x000000072956f370> (a java.util.concurrent.ConcurrentHashMap$ReservationNode)
	at com.lambdaworks.redis.metrics.DefaultCommandLatencyCollector.recordCommandLatency(DefaultCommandLatencyCollector.java:109)
	at com.lambdaworks.redis.protocol.CommandHandler.recordLatency(CommandHandler.java:342)
	at com.lambdaworks.redis.protocol.CommandHandler.decode(CommandHandler.java:327)
	at com.lambdaworks.redis.protocol.CommandHandler.decode(CommandHandler.java:276)
	at com.lambdaworks.redis.protocol.CommandHandler.channelRead(CommandHandler.java:260)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1422)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:931)
	at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:792)
	at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:483)
	at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:383)
	at io.netty.util.concurrent.SingleThreadEventExecutor$6.run(SingleThreadEventExecutor.java:1044)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.lang.Thread.run(Thread.java:749)

"lettuce-epollEventLoop-592348-1" #2282593 daemon prio=5 os_prio=0 tid=0x00007f77ac383000 nid=0x4af1 waiting on condition [0x00007f7766465000]
   java.lang.Thread.State: TIMED_WAITING (sleeping)
	at java.lang.Thread.sleep(Native Method)
	at com.lambdaworks.redis.metrics.DefaultCommandLatencyCollector$DefaultPauseDetectorWrapper.getPauseDetector(DefaultCommandLatencyCollector.java:362)
	at com.lambdaworks.redis.metrics.DefaultCommandLatencyCollector.lambda$new$0(DefaultCommandLatencyCollector.java:83)
	at com.lambdaworks.redis.metrics.DefaultCommandLatencyCollector$$Lambda$38/10794757.apply(Unknown Source)
	at java.util.concurrent.ConcurrentHashMap.computeIfAbsent(ConcurrentHashMap.java:1664)
	- locked <0x000000072956f370> (a java.util.concurrent.ConcurrentHashMap$ReservationNode)
	at com.lambdaworks.redis.metrics.DefaultCommandLatencyCollector.recordCommandLatency(DefaultCommandLatencyCollector.java:109)
	at com.lambdaworks.redis.protocol.CommandHandler.recordLatency(CommandHandler.java:342)
	at com.lambdaworks.redis.protocol.CommandHandler.decode(CommandHandler.java:327)
	at com.lambdaworks.redis.protocol.CommandHandler.decode(CommandHandler.java:276)
	at com.lambdaworks.redis.protocol.CommandHandler.channelRead(CommandHandler.java:260)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)
	at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1422)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)
	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)
	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:931)
	at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:792)
	at io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:483)
	at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:383)
	at io.netty.util.concurrent.SingleThreadEventExecutor$6.run(SingleThreadEventExecutor.java:1044)
	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.lang.Thread.run(Thread.java:749)

Add the thread info in java process, It seems to have there epoll threads.

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
22790 nobody    20   0 5422m 2.2g  31m S  0.3 14.8   2:02.65 SimplePauseDete
14816 nobody    20   0 5422m 2.2g  31m S  0.3 14.8   1:25.32 SimplePauseDete
18726 nobody    20   0 5422m 2.2g  31m S  0.3 14.8   0:26.73 lettuce-epollEv
18747 nobody    20   0 5422m 2.2g  31m S  0.3 14.8   0:27.02 lettuce-epollEv
19185 nobody    20   0 5422m 2.2g  31m R  0.3 14.8   0:26.11 lettuce-epollEv
19550 nobody    20   0 5422m 2.2g  31m S  0.3 14.8   0:00.21 RMI TCP Connect

I want to say the problem is not easy to reproduce. it cost several hours or days to reproduce in my test environment and it will definitely appear after i tried.
Pls let me know if l lack some information.

Hi @mp911de,  i reproduced it again in my test environment. This time, it cost 2 hours to reproduce it. i use three schedule task and each task will try to create many clientResources. the timed interval is 1s.
We can try to start multi threads(can use schedule task/thread pool) at the same time. Each thread we do create client/connection/shutdown. And it will be helpful to reproduce the problem.

Given the thread dump I have a clue how to address the issue.  It looks like the ConcurrentHashMap in conjunction with the lock in the wrapper cause the issue.

Yes, I agree with you.
I compare the code between 4.4.3.Final  and 4.2.2.Final.
The code in 4.4.3.Final use computeIfAbsent in method recordCommandLatency of class DefaultCommandLatencyCollector to instead traditional logic in version 4.2.2.Final.
And the issue does not appear in version 4.2.2.Final.
In the link concurrentHashmap  also points the block.

That's fixed now.

Please note that ClientResources are intended to be created once per JVM instance. Creating/shutting down ClientResources more than once indicates wrong API usage.

@mp911de , is this still relevant for lettuce-core v6.2.x? I ask because I don't see much in the way of related docs in the Lettuce API, etc but am running into a similar issue (Lettuce is blocked connecting to redis) and am indeed creating/shutting down ClientResources more than once within a single JVM. I happened to see this thread while troubleshooting and researching the problem. While this would be an easy fix - just create a static member for the client resources, it is not easy to reproduce the issue, so would like to confirm this is a likely fix since the docs are not clear. If so, I might also suggest to clarify in the docs that this ClientResources object is not to be re-created.
For my use-case, we're detecting if redis commands are persistently failing, and if so, shutdown all existing connections and initiate all new connections from the seed hosts (clustered deployment) - kind of like a complete teardown/reset of all client connections.


feat(object storage): add is_https_endpoint for minio

I hereby agree to the terms of the RisingWave Labs, Inc. Contributor License Agreement.
What's changed and what's your intention?

Checklist

[ ] I have written necessary rustdoc comments
[ ] I have added necessary unit tests and integration tests
[ ] I have added fuzzing tests or opened an issue to track them. (Optional, recommended for new SQL features #7934).
[ ] My PR contains breaking changes. (If it deprecates some features, please create a tracking issue to remove them in the future).
[ ] All checks passed in ./risedev check (or alias, ./risedev c)
[ ] My PR changes performance-critical code. (Please run macro/micro-benchmarks and show the results.)

[ ] My PR contains critical fixes that are necessary to be merged into the latest release. (Please check out the details)

Documentation

[ ] My PR needs documentation updates. (Please use the Release note section below to summarize the impact on users)

Release note
If this PR includes changes that directly affect users or other significant modifications relevant to the community, kindly draft a release note to provide a concise summary of these changes. Please prioritize highlighting the impact these changes will have on users.

Can we just simply remove the hardcode http://, and use whatever given:

If the given endpoint url is with scheme (http or https), use it as it it.
If the given endpoint url doesn't specify any scheme, append http scheme for it.

Can we just remove the hardcode http://, and ensure backward compatibility via:

If the given endpoint url is with scheme (http or https), use it as it is.
If the given endpoint url doesn't specify any scheme, add http scheme for it.

For example

https example: minio://https://<IP_ADDRESS>:9301/hummock001
http example: minio://http://<IP_ADDRESS>:9301/hummock001 is the same as minio://<IP_ADDRESS>:9301/hummock001

Thanks for your suggestion!


Java build sef.faults when POST4_PATH is undefined.

If I the POST4_PATH environment variable is not set for post4.jni.Post4, SIGSEGV occurs.
This fails:
java -Djava.library.path="" -cp ../.. post4.jni.Post4

This succeeds:
POST4_PATH=".:../src:../examples" java -Djava.library.path="" -cp ../.. post4.jni.Post4

Originally posted by @ruv in https://github.com/SirWumpus/post4/issues/64#issuecomment-2469007685

Very odd given that post4.c handles this.

Appears to work for me:
elf$ pwd
/home/achowe/git/com/snert/src/post4/jni
elf$ echo $POST4_PATH

elf$ java -Djava.library.path="" -cp ../.. post4.jni.Post4
CAFEBABE Monaco 377 e 2.718280 PI 3.141590 Planck's 6.626070E-34
ok

Very odd given that post4.c handles this.

Probably, the build in value P4_CORE_PATH is correct in your case, and incorrect in my case.
If we do not provide a correct path to "src", it fails with SIGSEGV:
POST4_PATH="." java -Djava.library.path="" -cp ../.. post4.jni.Post4


[Bridging PCH] Add test for interfering redundant (modular & non) defns.

NOTE: this change depends on a fix in clang landing upstream: https://reviews.llvm.org/D34741
This is a test of of a clang-level fix that's not entirely obvious how to test at the clang level; in any
case it manifests as a bug when using swift, not clang, so this seems a reasonable place to test it.
The bug is annoyingly subtle and the test thus documents it in exhaustive, boring detail; so I
refer you to the comments in the test for understanding.
rdar://30851899
(and probably a few other friends)

Upstream fix to clang has merged into stable. Merging this test now.

@swift-ci please test and merge


Copypaste

Don't talk to the credits already you have copy paste cmd Tomato, website vcodes lol + other

Don't talk to the credits already you have copy paste cmd Tomato, website vcodes lol

ye PLUS MIT license Clearly says That The Person who uses this src code is not liable of any Claims

@tomato6966


TE Integration

This PR allows to embed tensor expression directly in the relax program, so that user can do prototyping easily
    def te_func(args, args_dict, msg):
        A, B = args
        C = args_dict["C"]
        D = te.compute((128, 128), lambda i, j: A[i, j] + B[i, j])
        E = te.compute((128, 128), lambda i, j: D[i, j] - C[i, j])
        return E

    with bb.function([x, y, z], "rx_func"):
        out = bb.emit_te(te_func, [x, y], {"C": z}, msg="hello")
        bb.emit_func_output(out)

See https://github.com/octoml/relax/wiki/EmitTE-Staging-Integration for details
Co-Authored-By: Andrew Liu<EMAIL_ADDRESS>

need rebase.
git rebase --onto relax relax-stage1

NOTE on implementation of RXPlaceholder:

Let us still populates the shape and name field
Note that it is not possible to turn every rx.Expr into RXPlaceholder(need to perform checks in the constructing time) that the shape can be matched to a tuple. Add an optional shape field to builder.te_tensor that generates a refined match_shape for other cases
Note that for now the first stage impl does not properly handle shape with symbolic expressions (n*2, n*4), perform static check in construction time that every shape field are either a Var, or constant. Enhance the generator to handle the other case later.
emit_te should be able to handle mixed args, kwargs, where arguments can be rx.Expr or other constant types(e.g. strides, pad, list/tuple of constant), have a type checking and optional conversion util to perform such type converstions and collect rx.Expr arguments. (This is a good place to add regression tests)

Main considerations on building out support.

C0: Support all possible cases. In particular, expr.shape() may return ShapeExpr(common case),
but we also need to properly handle when expr.shape() is not a ShapeExpr(via proper error messaging)
or nop in the case of transformation.
C1: We can make the current support restricted(e.g. only support constant shape for now),
but need to handle a broad set of inputs with proper error messaging.

Keeping both Cs in mind, here are the following suggestions to the EmitTE.
Perhaps we can also incorporate some of them into the design doc.
S0: Recursively Check and convert argument types passed to emit_te.

x = bb.var("x", shape=(1, 2))
y = bb.var("y", shape=(2, 2))

bb.emit_te(te_func, {"elem": [x, y]}, strides=1)

Consider the above case, where the te_func takes a dictionary whose value
is a list of te.Tensors. We can still emit the function by
te_func({"elem": [bb.te_tensor(x), bb.te_tensor(y)]}, strides=1)

The key idea is to introduce an ArgConverter that recursively checks the type of
each argument, handles a set of common types(list, tuple, dict(of str), int, float, str)
and convert them into te calling convention.
Importantly, this would restrict the possible arguments we can pass to emit te. E.g.
if we pass in a customized class object, it will result in an error(that such argument type is
not supported). But we ensure that:

Everything we do support is correctly handled.
Everything that we do not support have a clear error message.

S1: Check and have proper error messages about shape
When converting an rx.Expr to RXPlaceholder, we need the existence of a Array[PrimExpr] as shape.
This is not always possible(per C0). We need to rase a proper error message in such cases,
such as "Expression do not have an known symbolic shape, please consider use match_shape to
constraint the shape before passing into te_tensor". This way we have a proper error message
for less frequent cases.
S2: Check the symbolic shapes
Right now when we construct call_dps, we do not yet handle the case where symbolic shape
dimension contains expressions (x.shape=[2*n, 2*n]). Instead of let things error out
at later stage of the build. It would be good to have a function(in emit_te after we collected
the te_tensors) to check the shapes, and only allow shapes that contains Var or constant, and
raise a proper error message for other cases.
We can then lift this constraint after we add support for such cases, which is doable.

Thanks to @ZihengJiang and @hypercubestart for the huge efforts for this PR! EmitTE is a very important piece in relax, and for the first time we strictly followed the development guidelines to do the development and code review to ensure the high quality of the code. Really good job folks! 🥳 🏖


Fix assert

Changes to make Chisel self-testing work with https://github.com/ucb-bar/firrtl/pull/92 (which is the solution to #121 and replacement for #122)
Also add same test from #122 to check that pipelined resets are supported.
Note: This should fail testing without https://github.com/ucb-bar/firrtl/pull/92 being merged to FIRRTL.

retest this please


Problem with code

Problem encountered on https://dotnet.microsoft.com/en-us/learn/aspnet/hello-world-tutorial/modify
Operating System: windows
I followed the steps in until I opened Pages/Index.cshtml in notepad. I replaced the code with what was on the prompt. When I saved then checked the webapp page, everything is red. There are lines telling different error codes. I listed some of the codes below.
Index.cshtml.cs(2,8): error CS1003: Syntax error, ',' expected
error CS1646: Keyword, identifier, or string expected after verbatim specifier: @
error CS1002: ; expected

The error message seems to indicate that the Index.cshtml.cs file was edited instead. Can you try to start over perhaps and make sure you opened the cshtml page?
The code should look almost the same excepted for the highlighted lines.


Fix up ms.topic: reference metadata

Contributes to #37281.
(Hide whitespace changes in diff.)

Per https://review.learn.microsoft.com/en-us/help/patterns/library/content-type-comparison?branch=main#content-types, some of our articles were incorrectly labeled reference.
Also removed redundant file-level ms.topic metadata where it was implied at the folder level.
Changed reference to error-reference where appropriate.

Internal previews
Toggle expand/collapse

📄 File
🔗 Preview link

docs/core/deploying/native-aot/warnings/il3053.md
IL3053: Assembly produced AOT warnings

docs/core/deploying/single-file/warnings/il3003.md
IL3003: 'RequiresAssemblyFilesAttribute' annotations must match across all interface implementations or overrides.

docs/core/deploying/trimming/trim-warnings/il2060.md
"IL2060: Call to 'System.Reflection.MethodInfo.MakeGenericMethod' cannot be statically analyzed by the trimmer"

docs/core/deploying/trimming/trim-warnings/il2064.md
IL2064: Value assigned to a field annotated with 'DynamicallyAccessedMembersAttribute' cannot be statically determined and may not meet the attribute's requirements

docs/framework/performance/garbage-collection-etw-events.md
docs/framework/performance/garbage-collection-etw-events

docs/framework/performance/interop-etw-events.md
Interop ETW Events

docs/framework/performance/jit-tracing-etw-events.md
"JIT Tracing ETW Events"

docs/framework/performance/loader-etw-events.md
Loader ETW Events

docs/framework/performance/runtime-information-etw-events.md
Runtime Information ETW Events

docs/framework/performance/security-etw-events.md
docs/framework/performance/security-etw-events

docs/framework/performance/thread-pool-etw-events.md
Thread Pool ETW Events

docs/framework/wcf/diagnostics/tracing/connectionpoolmaxoutboundconnectionsperendpointquotareached.md
"System.ServiceModel.Channels.ConnectionPoolMaxOutboundConnectionsPerEndpointQuotaReached"

docs/framework/wcf/diagnostics/tracing/mts-registrationcoordinatorresponseinvalidmetadata.md
Microsoft.Transactions.TransactionBridge.RegistrationCoordinatorResponseInvalidMetadata

docs/framework/wcf/diagnostics/tracing/mtt-durableparticipantreplaywhilepreparing.md
docs/framework/wcf/diagnostics/tracing/mtt-durableparticipantreplaywhilepreparing

docs/framework/wcf/interpreting-error-codes-returned-by-wsatconfig-exe.md
Interpreting Error Codes Returned by wsatConfig.exe

docs/framework/wcf/simplified-configuration.md
"Simplified Configuration"

docs/framework/wcf/tools.md
Windows Communication Foundation Tools

docs/fundamentals/code-analysis/style-rules/ide0003-ide0009.md
this and Me preferences (IDE0003 and IDE0009)

docs/fundamentals/code-analysis/style-rules/naming-rules.md
Defining the 'public_symbols' symbol group

docs/fundamentals/diagnostics/runtime-type-events.md
docs/fundamentals/diagnostics/runtime-type-events

docs/standard/base-types/conversion-tables.md
Type Conversion Tables in .NET

docs/standard/data/xml/node-types-recognized-with-xpath-queries.md
"Node Types Recognized with XPath Queries"

docs/standard/data/xml/output-options-on-the-xslcompiledtransform-class.md
Output Options on the XslCompiledTransform Class

docs/standard/data/xml/recoverable-xslt-errors.md
docs/standard/data/xml/recoverable-xslt-errors

docs/standard/data/xml/rules-for-inferring-schema-node-types-and-structure.md
Rules for Inferring Schema Node Types and Structure

docs/standard/data/xml/rules-for-inferring-simple-types.md
"Rules for Inferring Simple Types"

docs/standard/exceptions/exception-class-and-properties.md
Exception class and properties

docs/standard/generics/collections.md
Generic collections in .NET

docs/standard/io/common-i-o-tasks.md
docs/standard/io/common-i-o-tasks

docs/standard/serialization/attributes-that-control-xml-serialization.md
Attributes That Control XML Serialization

Note
This table shows preview links for the 30 files with the most changes. For preview links for other files in this PR, select OpenPublishing.Build Details within checks.

Thanks @IEvangelist!


Is that Loot Rarity Coloring breaks the Controller inventory UI a known issue??

Description of the bug
Is that Loot Rarity Coloring breaks the Controller inventory UI a known issue??
And could anyone tell me how to add cooking recipes by toybox ?  can't find anything by searching keyword recipe.
Steps To Reproduce
1 toggle Loot Rarity Coloring 2 Using controllers 3 Open inventory
Expected Behavior
No response
Log Files
No response
Save File
No response
Screenshots
No response
Settings
No response
Toybox Version
1.510a
Operating System
Win10
What game are you using Toybox on?
Pathfinder Wrath of the Righteous
Game Version
2224p
Anything else?
No response

Using a controller with Toybox does break several different UIs, sadly. See #999 for more details


Remove Kernel GCV node

This PR is intended to clean up ReactiveMP.jl slightly.
KernelGCV is a very specific "entity," largely untested.
Also, I doubt the rules are compatible with the actual ReactiveMP API.

Codecov Report
Patch coverage has no change and project coverage change: -0.74 :warning:

Comparison is base (5d2f840) 62.54% compared to head (57ef050) 61.80%.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #285      +/-   ##
==========================================
- Coverage   62.54%   61.80%   -0.74%
==========================================
  Files         199      194       -5
  Lines        7385     7117     -268
==========================================
- Hits         4619     4399     -220
+ Misses       2766     2718      -48

Impacted Files
Coverage Δ

src/ReactiveMP.jl
75.86% <ø> (ø)

src/score/score.jl
25.00% <0.00%> (-36.54%)
:arrow_down:

src/nodes/gcv.jl
0.00% <0.00%> (-33.34%)
:arrow_down:

src/addons.jl
52.38% <0.00%> (-17.99%)
:arrow_down:

src/helpers/macrohelpers.jl
60.00% <0.00%> (-16.37%)
:arrow_down:

src/constraints/specifications/constraints.jl
0.00% <0.00%> (-10.35%)
:arrow_down:

src/rule.jl
55.76% <0.00%> (-8.88%)
:arrow_down:

src/constraints/specifications/form.jl
0.00% <0.00%> (-6.67%)
:arrow_down:

src/addons/logscale.jl
48.00% <0.00%> (-5.58%)
:arrow_down:

src/constraints/specifications/meta.jl
0.00% <0.00%> (-2.05%)
:arrow_down:

... and 41 more

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

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Feature Input Parameters

Purpose
Get value from simple methods or properties.
Description
I made a dropdown control so user can input some simple parameters to get a value.

Declarations
Check these if you believe they are true

[x] This PR fix bug
[x] This PR for new feature

I think when user click apply, me be we need close expand and if user want input again, need click to button dropdown.

You are right, i will fix this.

Need sort all BuiltInParameter to quick select, if can, i hope you can fix that because too much BuiltInParameter inside

More than 3000 enum, i can sort by name,but it still so much.Do you have some ideas?

I think may be we can convert to input by string and if user need more info, can goto revitapidoc.com to check.it my ideas, becuase it effect too much performance of addin.

I agree. I will change it to a textbox.


Scanner Reported Sangonomiya Kokomi as Yoimiya

Current Behavior
When I ran the scanner for the first time to upload the data to Genshin Optimizer, when it was scanning Sangonomiya Kokomi, it said the data was for Yoimiya, meaning when I uploaded to Genshin Optimizer, the site said I had Yoimiya and didn't have Kokomi, when in fact it's the opposite (I have Kokomi, don't have Yoimiya.)
Expected Behavior
The scanner to correctly exports the data
Reproducing a Behavior
Run the scanner on an account that has Sangonomiya Kokomi on it (may need to be an account that does not have Yoimiya).
Device OS
Windows 10
Genshin Impact Version
2.8
Inventory Kamera Version
1.2.8
Screen resolution, screen mode, and UI scale
1600x900 Windowed
Additional notes and remarks
No response
Evidence
No response
Preflight Checklist

[X] I have checked for similar issues in the issue page, and I have not found any similar to mine.
[X] I am using the latest version of the scanner.
[ ] I tried setting the scanning delay to maximum, and it still doesn't work.
[ ] I have attached the video recording to the bug report.
[ ] I have attached the error log to the bug report.
[X] I am available to later explains the issue.
[X] I have disabled all screen filtering software or plugins (i.e. HDR, Image Sharpening) while scanning.
[X] I use default in-game keybindings or have configured keybindings for the scanner.

InventoryKamera.log
InventoryKamera.debug.log
Ha, I figured out what log files it's asking for!


Set up secondary DICOM receive server on Commissure

Second server is now running on commissure. Will meet with Terry to see if we can send fresh discoms to it. This will serve as a second option for sending data from teh scanner in teh event that dbic-mrinbox server is not operational.

Met with Terry to test new dicom server. It did not work. I adjusted some settings and will test again later this afternoon or tomorrow.


Spike: Investigate the use of swap for OCP-4.15 to deal with default memory requirements

As per https://docs.openshift.com/container-platform/4.15/nodes/nodes/nodes-nodes-managing.html#nodes-nodes-swap-memory_nodes-nodes-managing it is possible to use swap but this is in Tech preview. I was trying it out and see how reliable we can start the cluster without increase the resources on crc side. Because for 4.15, OVN-K is default and require more memory resource (~1.5G) then SDN for network operator.

Enable Tech- preview feature: Can be done using install-config or as day-2 https://docs.openshift.com/container-platform/4.15/nodes/clusters/nodes-cluster-enabling-features.html#nodes-cluster-enabling-features-cli_nodes-cluster-enabling
Add kernel arg swapaccount=1 which can be done with following machine config

apiVersion: machineconfiguration.openshift.io/v1
kind: MachineConfig
metadata:
  labels:
    machineconfiguration.openshift.io/role: master
  name: 05-kernelarg-swapon
spec:
  kernelArguments:
    - swapaccount=1

Have a custom kubelet setting to enable swap

oc label machineconfigpool master kubelet-swap=enabled

apiVersion: machineconfiguration.openshift.io/v1
kind: KubeletConfig
metadata:
  name: swap-config
spec:
  machineConfigPoolSelector:
    matchLabels:
      kubelet-swap: enabled
  kubeletConfig:
    failSwapOn: false
    memorySwap:
      swapBehavior: UnlimitedSwap

Have a swap partition in the VM

https://github.com/coreos/docs/blob/master/os/adding-swap.md#managing-swap-with-systemd

After all those steps swap is used for the the workload and take care of all the extra mem requirement but it has some caveats which is part of https://kubernetes.io/blog/2023/08/24/swap-linux-beta/ one. On openshift side since we enable Techpreview feature gate which means anything behind this gate is enabled automatic which are lot of things mentioned in the doc.
Node resources when swap is on (you can see memory is over committed because of swap is taking hit) and I started this cluster with default mem setting (9G)
Allocated resources:
  (Total limits may be over 100 percent, i.e., overcommitted.)
  Resource           Requests       Limits
  --------           --------       ------
  cpu                3245m (85%)    0 (0%)
  memory             9967Mi (117%)  0 (0%)
  ephemeral-storage  0 (0%)         0 (0%)
  hugepages-1Gi      0 (0%)         0 (0%)
  hugepages-2Mi      0 (0%)         0 (0%)

<crc_vm>$ $ sudo swapon
NAME              TYPE SIZE   USED PRIO
/var/vm/swapfile1 file 7.9G 360.6M   -2

Should we go with this option and not update the resource limit on crc side or should we not use it because it is tech preview?
All this is done as day-2 operation on our existing 4.15 bundle so I am not sure how much bundle size increase if we do it.

Should we go with this option and not update the resource limit on crc side or should we not use it because it is tech preview?

In general swap is no magic bullet, it helps to overcommit, but the price to pay is slower performance. The more you overcommit, the slower your system will get. What is the impact here?

In general swap is no magic bullet, it helps to overcommit, but the price to pay is slower performance. The more you overcommit, the slower your system will get. What is the impact here?

@cfergeau impact in case of cluster performance? Because I didn't see but I also didn't put any workload. Docs on kubenetes already suggest the https://kubernetes.io/blog/2023/08/24/swap-linux-beta/#caveats those.

Is there an impact on cluster startup time?

I am less concerned about the startup time, as the introduction of swap to prevent the increase of the default memory might have effects on the overall use.

Is there an impact on cluster startup time?

During my testing I didn't see any impact but let me create the bundle and then see.

Enable Tech- preview feature

What are the implications of this? This allows us to use swap, but does this also enable automatically other features we may want or not want?

Enable Tech- preview feature

What are the implications of this? This allows us to use swap, but does this also enable automatically other features we may want or not want?

https://docs.openshift.com/container-platform/4.15/nodes/clusters/nodes-cluster-enabling-features.html#nodes-cluster-enabling-features-about_nodes-cluster-enabling have all details about what ll features are auto enabled (even we want or not)

After bit more experiment looks like swap is not stable as I thought and stop => start always fails.  Filled 2 different issues around swap.

https://issues.redhat.com/browse/OCPBUGS-31035
https://issues.redhat.com/browse/OCPBUGS-31040


Default namespace matches default client name which makes type resolution harder

The quick action capabilities in VSCode/Visual Studio are not able to resolve this because the type and the namespace are named the same.
namespace ApiClient {
    /// <summary>The main entry point of the SDK, exposes the configuration and the fluent API.</summary>
    public class ApiClient {

We should pick different defaults.
AB#10905

Thanks! What default would you have instead for the namespace?

How do feel about "ApiSdk"  for the namespace?


Issue 1373: If socket.SOL_TCP does not exist (Jython) return 6 (for TCP)

It looks like you don't have git configured with an email associated with GitHub. https://help.github.com/articles/about-commit-email-addresses/

Sorry, total newb.  Will retry that.


Use jsbeautifier from pip

This will fix #1431
Things still left to do:

[x] Use proper decode or _native etc. which will fix the Travis failure.

[x] Delete jsbeautifier files from repo

[ ] Use cssbeautifier instead of cssutils?

The contentviews dependencies are optional - we should either make them all mandatory or make sure that mitmproxy still runs without jsbeautifier being installed.

I'd be in favor of just installing the dependencies so that things work out of the box.
jsbeautifier package actually also has a cssbeautfier so we could use it directly instead of cssutils?

+14 −1,583
Way to go :+1:  :smile:

Can we have a very simple test for this view as well? This is a bit more important now that this is an external dependency which may change without us noticing.

We already have tests for javascript contentview but what I don't get is why they didn't fail before.


test: add tests for git bugs, git import and git sync

Description
Contains cypress tests for

Git bugs #12724 #12000
Git import flow

Fixes # (issue)
How Has This Been Tested?
On release
Checklist:

[X] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[X] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[X] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

Test coverage results :test_tube:
:white_circle: Total coverage has not changed
// Code coverage diff between base branch:release and head branch: gitCypressTests

Status
File
% Stmts
% Branch
% Funcs
% Lines

:red_circle:
app/client/src/utils/autocomplete/TernServer.ts
52.71 (-0.23)
40.83 (-0.84)
36.21 (0)
56.74 (-0.25)

/ok-to-test sha=95ae33e

/ok-to-test sha=731e16a

/ok-to-test sha=b1924bd

/ok-to-test sha=f27bded

/ok-to-test sha=117288c

/ok-to-test sha=117288c

/ok-to-test sha=d382fff

/ok-to-test sha=1aba4c2

/ok-to-test sha=2779bb5


Pervious and next button not working

I create a video story and add 3 videos and when I play it the first time next, previous buttons work well, but the next time when I open the same story, it's not working.

I see this is a pretty old issue, but what works for me is just enabling the pagination arrows in the skin config


Docker build tag

Create a workflow, which automatically adds the docker build tag of the branch tag.

Fully automated with GitHub packages


Wrong format displayed in the Credit the creator box

Description
When opening an URL to see the single result view of any content, tabs in Credit the creator box show an incorrect format of the attribution information. Rich text tab shows HTML content, HTML tab shows plain text, and Plain text shows nothing.
This does not happen when opening a result from the search results page.
Reproduction

Open this result.
Play with the tabs of the Credit the creator box.
See the error

Screenshots

Environment

Staging
Device:Macbook Pro M1 13-inch
OS: MacOS Monterey 12.3.1
Browser: Firefox
Version: 100.0

Resolution

[ ] 🙋 I would be interested in resolving this bug.

This seems to be a problem on server-rendered single image results. It appears that the indices of the tabs are off by one somehow, which results in a default state of no active tab, and each tab being shifter over one position.


'x' on last character of line

x deletes the character underneath as it should, but it does not more the cursor to the character to the left, as vim proper does.

Wow, all this time I never knew that was the correct behavior. Merged as f1692af


self.is_in(BCD, 1.13, 1.168), the fib ratio is wrong

self.is_in(BCD, 1.13, 1.168), the fib ratio is wrong

What should it be?

Hi, @howie1013 ,
According to the reference, for example, gartley pattern:
https://harmonicpattern.com/blog/gartley-pattern/
1.13 to 1.618 is the range, did I misunderstand this?

Outdated


Show requests left in feedback

Include the number of requests left more often in the output. Perhaps at the start of every phase.

#142


Display not working after sleep and reconnecting does not work, only loads on login + hyprland-git, aquamarine-git

Regression?
Yes
System Info and Version
 System/Version info
Hyprland, built from branch main at commit 312411fc7073143a8bf1fc3ba23ef403b7d15eee  (windows: support size with pseudo tiled).
Date: Sun Sep 8 06:46:46 2024
Tag: v0.42.0-126-g312411fc, commits: 5195

flags: (if any)

System Information:
System name: Linux
Node name: zaiyhu-laptop
Release: 6.10.7-arch1-1
Version: #1 SMP PREEMPT_DYNAMIC Thu, 29 Aug 2024 16:48:57 +0000

GPU information:
00:02.0 VGA compatible controller [0300]: Intel Corporation CoffeeLake-H GT2 [UHD Graphics 630] [8086:3e9b] (prog-if 00 [VGA controller])

os-release: NAME="Arch Linux"
PRETTY_NAME="Arch Linux"
ID=arch
BUILD_ID=rolling
ANSI_COLOR="38;2;23;147;209"
HOME_URL="https://archlinux.org/"
DOCUMENTATION_URL="https://wiki.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://gitlab.archlinux.org/groups/archlinux/-/issues"
PRIVACY_POLICY_URL="https://terms.archlinux.org/docs/privacy-policy/"
LOGO=archlinux-logo

plugins:

======Config-Start======

Config File: /home/zaiyhu/.config/hypr/hyprland.conf: Read Succeeded

# #######################################################################################
# AUTOGENERATED HYPR CONFIG.
# PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT,
# OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS.
# #######################################################################################

#autogenerated = 1 # remove this line to remove the warning

# This is an example Hyprland config file.
# Refer to the wiki for more information.
# https://wiki.hyprland.org/Configuring/Configuring-Hyprland/

# Please note not all available settings / options are set here.
# For a full list, see the wiki

# You can split this configuration into multiple files
# Create your files separately and then link them to this file like this:
# source = ~/.config/hypr/myColors.conf

################
### MONITORS ###
################

# See https://wiki.hyprland.org/Configuring/Monitors/
monitor=,preferred,auto,auto

monitor=eDP-1, 1920x1080, auto, 1.25
#monitor=HDMI-A-3, 1920x1080, 1920x0, 1

###################
### MY PROGRAMS ###
###################

# See https://wiki.hyprland.org/Configuring/Keywords/

# Set programs that you use
$terminal = kitty
$fileManager = dolphin
$menu = fuzzel
$browser = librewolf

#################
### AUTOSTART ###
#################

# Autostart necessary processes (like notifications daemons, status bars, etc.)
# Or execute your favorite apps at launch like this:
#
# exec-once = hyprlock
exec-once = hyprpaper
exec-once = waybar
exec-once = dunst
exec-once = wl-paste --type text --watch cliphist store
exec-once = hypridle
exec-once = kdeconnectd
exec-once = /usr/lib/polkit-kde-authentication-agent-1

#############################
### ENVIRONMENT VARIABLES ###
#############################

# See https://wiki.hyprland.org/Configuring/Environment-variables/

env = GDK_BACKEND,wayland,x11
env = GDK_SCALE,1

env = QT_QPA_PLATFORM,wayland;xcb
env = QT_QPA_PLATFORMTHEME,qt5ct

xwayland {
  force_zero_scaling = true
}

env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24

env = XDG_CURRENT_DESKTOP,Hyprland
env = XDG_SESSION_TYPE,wayland
env = XDG_SESSION_DESKTOP,Hyprland
env = XDG_MENU_PREFIX,arch-
env = AQ_DRM_DEVICES,/dev/dri/card0:/dev/dri/card1

#####################
### LOOK AND FEEL ###
#####################

# Refer to https://wiki.hyprland.org/Configuring/Variables/

# https://wiki.hyprland.org/Configuring/Variables/#general
general {
    gaps_in = 3
    gaps_out = 6

    border_size = 2

    # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
    col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
    col.inactive_border = rgba(595959aa)

    # Set to true enable resizing windows by clicking and dragging on borders and gaps
    resize_on_border = true

    # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
    allow_tearing = false

    layout = dwindle
}

# https://wiki.hyprland.org/Configuring/Variables/#decoration
decoration {
    rounding = 10

    # Change transparency of focused and unfocused windows
    active_opacity = 1.0
    inactive_opacity = 1.0

    drop_shadow = true
    shadow_range = 4
    shadow_render_power = 3
    col.shadow = rgba(1a1a1aee)

    # https://wiki.hyprland.org/Configuring/Variables/#blur
    blur {
        enabled = true
        size = 3
        passes = 1
        vibrancy = 0.1696
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#animations
animations {
    enabled = true

    # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more

    bezier = myBezier, 0.05, 0.9, 0.1, 1.05

    animation = windows, 1, 7, myBezier
    animation = windowsOut, 1, 7, default, popin 80%
    animation = border, 1, 10, default
    animation = borderangle, 1, 8, default
    animation = fade, 1, 7, default
    animation = workspaces, 1, 6, default
}

# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
dwindle {
    pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
    preserve_split = true # You probably want this
}

# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
master {
    new_status = master
}

# https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
    force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
    disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
}

#############
### INPUT ###
#############

# https://wiki.hyprland.org/Configuring/Variables/#input
input {
    kb_layout = us,ru
    kb_variant =
    kb_model =
    kb_options = grp:win_space_toggle
    kb_rules =

    follow_mouse = 1

    sensitivity = 0 # -1.0 - 1.0, 0 means no modification.

    touchpad {
        natural_scroll = false
    }
}

# https://wiki.hyprland.org/Configuring/Variables/#gestures
gestures {
    workspace_swipe = false
}

# Example per-device config
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
device {
    name = epic-mouse-v1
    sensitivity = -0.5
}

####################
### KEYBINDINGSS ###
####################
#

binde =, xf86audioraisevolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+
binde =, xf86audiolowervolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bind =, xf86audiomute, exec, wpctl set-mute @DEFAULT_SINK@ toggle

bind =, xf86audioplay, exec, playerctl play-pause
bind =, xf86audiopause, exec, playerctl play-pause
bind =, xf86audionext, exec, playerctl next
bind =, xf86audioprev, exec, playerctl previous

bind =, xf86monbrightnessup, exec, brightnessctl set 5%+
bind =, xf86monbrightnessdown, exec, brightnessctl set 5%-

bind=, Print, exec, grim -g "$(slurp)" - | satty --filename - --output-filename ~/data/Pictures/satty-$(date '+%Y%m%d-%H:%M:%S').png

# See https://wiki.hyprland.org/Configuring/Keywords/
$mainMod = SUPER # Sets "Windows" key as main modifier

# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
bind = $mainMod, Q, exec, $terminal
bind = $mainMod, C, killactive,
bind = $mainMod, M, exit,
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, B, exec, $browser
bind = $mainMod, V, togglefloating,
bind = $mainMod, R, exec, $menu
bind = $mainMod, P, pseudo, # dwindle
bind = $mainMod, J, togglesplit, # dwindle
bind = $mainMod, L, exec, hyprlock

# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d

# Switch workspaces with mainMod + [0-9]
bind = $mainMod, 1, workspace, 1
bind = $mainMod, 2, workspace, 2
bind = $mainMod, 3, workspace, 3
bind = $mainMod, 4, workspace, 4
bind = $mainMod, 5, workspace, 5
bind = $mainMod, 6, workspace, 6
bind = $mainMod, 7, workspace, 7
bind = $mainMod, 8, workspace, 8
bind = $mainMod, 9, workspace, 9
bind = $mainMod, 0, workspace, 10

# Move active window to a workspace with mainMod + SHIFT + [0-9]
bind = $mainMod SHIFT, 1, movetoworkspace, 1
bind = $mainMod SHIFT, 2, movetoworkspace, 2
bind = $mainMod SHIFT, 3, movetoworkspace, 3
bind = $mainMod SHIFT, 4, movetoworkspace, 4
bind = $mainMod SHIFT, 5, movetoworkspace, 5
bind = $mainMod SHIFT, 6, movetoworkspace, 6
bind = $mainMod SHIFT, 7, movetoworkspace, 7
bind = $mainMod SHIFT, 8, movetoworkspace, 8
bind = $mainMod SHIFT, 9, movetoworkspace, 9
bind = $mainMod SHIFT, 0, movetoworkspace, 10

# Example special workspace (scratchpad)
bind = $mainMod, S, togglespecialworkspace, magic
bind = $mainMod SHIFT, S, movetoworkspace, special:magic

# Scroll through existing workspaces with mainMod + scroll
bind = $mainMod, mouse_down, workspace, e+1
bind = $mainMod, mouse_up, workspace, e-1

# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow

##############################
### WINDOWS AND WORKSPACES ###
##############################

# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules

# Example windowrule v1
# windowrule = float, ^(kitty)$

# Example windowrule v2
# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$

windowrulev2 = suppressevent maximize, class:.* # You'll probably like this.

#Pavucontrol
windowrulev2 = size 800 500,class:(pavucontrol)
windowrulev2 = float,class:(pavucontrol)

======Config-End========

Description
First I had this issue #7564 with hyrplock freeze on waking up from suspend on external monitor, but its reconnection though HDMI was fixing that. But now external monitor does not work after suspend at all.
How to reproduce

Install hyprland-git + aquamarine-git
Turn on the laptop with plugged monitor
Suspend with systemctl suspend cmd (no hyprlock or anything, just plain suspend). My monitor goes to sleep mode too.
Wake up from sleep + screen of laptop loads, but not the monitor, one more flash laptop screen turns dark, when again laptop screen works, but the monitor is dark.
Reconnect few times, monitor is still dark, it LED indicator indicates that it is connected.

Crash reports, logs, images, videos
No response

Removing env = AQ_DRM_DEVICES,/dev/dri/card0:/dev/dri/card1 makes it work on wake up from suspend, but when reconnecting still get black screen.

On 0.43 version of hyprland, systemctl suspend is fully broken, second monitor is either freezing on wake up from suspend or outright black, logout and login do not help at all, reconnecting does not help it crashes hyprland background & hyprpaper, screen is black. Basically suspend is sadly not usable at all.

I have the same problem on 0.42.0-2. For me the external monitor is black, I cannot see even mouse cursor on it. But I can hover on it and see that focus changes normally.

In short: after suspend second external monitor stays black, sometimes frozen on last frame before suspend. Nothing helps, reconnecting it, relogin into Hyprland. It stays black or frozen on last frame until reboot. If you do not suspend, second external monitor works as expected.

Same behaviour for me.
Not that kanshi is not able to make the internal  screen turns when declared disabled in the conf. It stays on with Grey background even if not listed by hyprctl.
This was working on 0.42

Version 0.44 fixes suspend, now it is working. But if I use hyprlock it freezes on resume from suspend. I will open issue in hyprlock repo.


v0 Design Fixes

Description
Oooo pretty!!

Issue
ch66711
Test plan
Load app, navigate around, look at the sparklies.

BEAUTIFUL!! ✨ I'm going to pull now and give it a look, we should definitely showcase this in the demo today.

design looks good on firefox! The only thing is if we should add the GISAID field now that @ttung added that functionality to the sample data view?

#138!

gisaid field is there :) the jsonToType<T> function uses the mapping, but any key in the input object not in the mapping just gets directly transferred. It's already in the Sample type definition and the table def hits that key.


register Dtree.jl and enable travis-ci

With the lines
before_install:
  - sudo apt-get update -qq -y
  - sudo apt-get install mpich2 libmpich2-3 libmpich2-dev -y
  - sudo apt-get install openmpi-bin openmpi-common libopenmpi-dev mpi-default-dev -qq -y

added to .travis.yml, I can list Dtree in Celeste's REQUIRE file wo breaking the unit tests. Probably some of these apt package aren't necessary even. @kpamnany -- You may want to do something like this to test Dtree on travis.

Dtree master has Travis enabled and passes now.

Awesome!
On Wed, Aug 10, 2016, 5:56 PM kpamnany<EMAIL_ADDRESS>wrote:

Dtree master has Travis enabled and passes now.
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/jeff-regier/Celeste.jl/issues/244#issuecomment-239048692,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIieCzDstXWMa_CJl9KV8OFuiyYANc0tks5qenMygaJpZM4JTACV
.


Only increment skill usage for successes.

NOTE: THIS BREAKS THE ANT TEST BECAUSE WE DON'T BUNDLE JUNIT5.
Thanks to phreddrickk @ kolmafia.us for reporting this issue.
This adds an example of how one might use Mockito to inject a custom
response. It's not super-well-documented, but I promise all the bits
are necessary.
In particular: we need to set session ID or else GenericRequest.run()
will short-circuit, and we need to set max / current MP and "learn"
the skill so UseSkillRequest.run() won't reject it before even passing
it on to GenericRequest.
These test cases follow the standard arrange / act / assert model.

Can we make a kolmafia test base class that has a beforeall that sets the hash?
I imagine we'll want a few utilities like that to make setup/teardown easier


Feature request: Button to convert long break to mini break

Prerequisites

[x] I'm using latest version: v1.3.0
[x] I've checked Known issues
[x] I've checked Open issues

Description
I frequently find myself not always having time to take a Long Break, but still wanting to take a Mini Break according to my schedule.  Currently, when such a long break occurs, I count out the 20 seconds of a Mini Break and then click postpone/skip Long Break.
It would be nice to have an alternative option/button "convert to mini break" so that I don't have to count it out manually, and then resetting the long break timer. Alternatively, this option could appear automatically when enough time has elapsed... I see that "skip" (which is the equivalent of having converted to a mini break) already appears after the appropriate time has elapsed.
Operating system: Windows 10

Hi @edemaine , you can do this now from tray menu by doing "Skip to next". Alternatively, Stretchly now also has a sort of command line interface (stretchly help), if you find yourself on command line :)
I prefer not to add any new buttons to break screen, reasoning being that over years people requested many buttons there, so if I would do that, there would be bunch of them and it would not be nice :)

Sounds good. Thanks for considering!
One more idea: I suspect that the switch from delay to skip button is a fixed percentage of the break. Could we make that percentage configurable?
I didn't know about the CLI - I'll give it a try! I've often wanted to delay breaks for a specific amount of time (like 30 or 90 minutes, e.g. duration of a class) so maybe that will fix that for me!

Hi @edemaine , yes it is configurable, you can also set how many times you want to allow to skip :) https://github.com/hovancik/stretchly#editing-postpone-functionality-
also see this, in future I will add global shortcuts #791


typo

Development is continuing at thedataincubator/jupyterhub-hashauthenticator.  I've merged this fix in there.  Thanks!


Fix native fallback issue in StridedSlice

This PR introduces two changes:

Returns unimplemented error when begin tensor has dynamic values.
Fixes the logic when shrink_axis mask is used with unknown input dimensions.

@tfeher @DEKHTIARJonathan Please review


Use designated build directory for glog

Pull request
Issue tracker
Fixes will automatically close the related issue
Fixes #
Feature
Use designated build directory
Unit test

[ ] Done

Manual test

[ ] Done

Code Review

Unit and manual test pass
GitHub Action CI pass
At least one contributor reviews and votes
Can be merged clean without conflicts
PR will be merged by rebase upstream base

Additional Info

Is the original build directory removed?


Spyder 5.0.5 author verification needed for MacOS 11

Issue Report Checklist

[* ] Searched the issues page for similar reports
[* ] Read the relevant sections of the Spyder Troubleshooting Guide and followed its advice
[ ] Reproduced the issue after updating with conda update spyder (or pip, if not using Anaconda)
[ ] Could not reproduce inside jupyter qtconsole (if console-related)
[* ] Tried basic troubleshooting (if a bug/error)

[* ] Restarted Spyder
[ ] Reset preferences with spyder --reset
[ ] Reinstalled the latest version of Anaconda
[ ] Tried the other applicable steps from the Troubleshooting Guide

[ ] Completed the Problem Description, Steps to Reproduce and Version sections below

Problem Description
When downloaded from the standalone explorer located here: https://www.spyder-ide.org/ the unpackaged app will not run, instead hitting the " "Spyder” cannot be opened because the developer cannot be verified. " error.
I note a number of the steps to fix the problem focus on the use of Anaconda and Anaconda navigator, and using this as a portal to install the program allows it to work fine. However this defeats the point of having a standalone installer, as anaconda navigator can be extremely heavy and slow to set up at times. Either the author verification issue should be fixed, or the standalone explorer should be removed and no longer advertised on the website.
I note there was a similar issue around a year ago, which appears to have been fixed since it was closed? (So I assume the standalone explorer worked for a bit at least!)
What steps reproduce the problem?

Download Spyder on MacOS 11 from the standalone explorer located: https://www.spyder-ide.org/
Install Spyder and drop it to applications folder
Run Spyder

What is the expected output? What do you see instead?
Expected output: the app opens
Actual output: "Spyder” cannot be opened because the developer cannot be verified.
Paste Traceback/Error Below (if applicable)

PASTE TRACEBACK HERE

Versions

Spyder version: 5.0.5
Python version:
Qt version:
PyQt version:
Operating System name/version: MacOS 11.6 (Big Sur)

Dependencies

PASTE DEPENDENCIES HERE

Hey @T-Wainwright, thanks for reporting. We understand this can be a nuisance when installing Spyder, especially for newbies because they probably don't know what do to disable the security settings necessary to install our app.
Right now @mrclary is working on it (see #16490), so hopefully our next version (5.2.0, to be released later this month) won't have this problem.

I'm going to close this issue in favor of #16414 because it was reported there for the first time.


Compatibility with pandas 1.1.0rc0

Thanks as always for doing this @TomAugspurger

Hey @TomAugspurger -- does this supercede #6156 ?

It does, thanks.

Thanks!


Add loading spinner

See package "shinycssloaders".

Added it to tableOutput("dataInfo") in the filter sidebar. The KPI list stays the same.


Customizing bounds for my optimization problem.

Hello, I am using pymoo to work on my MOO problem. I am working on placing Acess points of WiFi and LiFi in a room. Initially, I was keeping it to square or rectangular rooms for placement. Now I am thinking of extending this to irregularly shaped rooms. But I am not sure how to modify my problem bounds and then use a custom type variable for it because the AP placement is outside the room dimension. Is there a way to describe specific x and y boundary coordinates for the optimization for placement within that only?
I have attached an image for reference as to how the placement now happens.

The bounds, in general, define a rectangular shape. Suppose you need to define a different shape for the area. In that case, you can define the rectangle to be the bounding box (largest possible values for each coordinate) and then constraints (which can also cover dependencies along with variables) to further constrict the space.
The getting started guide demonstrates how constraints can be added to a problem:
https://pymoo.org/getting_started/part_1.html


New react-native projects fail to start

Description
New react-native projects fail to start.
I do this with 3 different windows machines and get the same error.
error in the CMD:
error Android project not found. Are you sure this is a React Native project? If your Android files are located in a non-standard location (e.g. not inside 'android' folder), consider setting project.android.sourceDir option to point to a new location.
info Run CLI with --verbose flag for more details.
error Command failed with exit code 1.
when I open with android studio, i get this build error (during sync):
React Native CLI failed to determine Android project configuration. This is likely due to misconfiguration. Config output:
[root:D:\repos\DeepLinkingApp1, reactNativePath:D:\repos\DeepLinkingApp1\node_modules\react-native, dependencies:[:], commands:[[name:log-ios, description:starts iOS device syslog tail], [name:run-ios, description:builds your app and starts it on iOS simulator, examples:[[desc:Run on a different simulator, e.g. iPhone SE (2nd generation), cmd:react-native run-ios --simulator "iPhone SE (2nd generation)"], [desc:Pass a non-standard location of iOS directory, cmd:react-native run-ios --project-path "./app/ios"], [desc:Run on a connected device, e.g. Max's iPhone, cmd:react-native run-ios --device "Max's iPhone"], [desc:Run on the AppleTV simulator, cmd:react-native run-ios --simulator "Apple TV"  --scheme "helloworld-tvOS"]], options:[[name:--simulator , description:Explicitly set simulator to use. Optionally include iOS version between parenthesis at the end to match an exact version: "iPhone 6 (10.0)", default:iPhone 13], [name:--configuration , description:Explicitly set the scheme configuration to use, default:Debug], [name:--scheme , description:Explicitly set Xcode scheme to use], [name:--project-path , description:Path relative to project root where the Xcode project (.xcodeproj) lives., default:ios], [name:--device [string], description:Explicitly set device to use by name.  The value is not required if you have a single device connected.], [name:--udid , description:Explicitly set device to use by udid], [name:--no-packager, description:Do not launch packager while building], [name:--verbose, description:Do not use xcbeautify or xcpretty even if installed], [name:--port , default:8081], [name:--terminal , description:Launches the Metro Bundler in a new window using the specified terminal path.]]], [name:log-android, description:starts logkitty], [name:run-android, description:builds your app and starts it on a connected Android emulator or device, options:[[name:--root , description:[DEPRECATED - root is discovered automatically] Override the root directory for the android build (which contains the android directory), default:], [name:--variant , description:Specify your app's build variant, default:debug], [name:--appFolder , description:[DEPRECATED â€“ use "project.android.appName" in react-native.config.js] Specify a different application folder name for the android source. If not, we assume is "app"], [name:--appId , description:Specify an applicationId to launch after build. If not specified, package from AndroidManifest.xml will be used., default:], [name:--appIdSuffix , description:Specify an applicationIdSuffix to launch after build., default:], [name:--main-activity , description:Name of the activity to start, default:MainActivity], [name:--deviceId , description:builds your app and starts it on a specific device/simulator with the given device id (listed by running "adb devices" on the command line).], [name:--no-packager, description:Do not launch packager while building], [name:--port , default:8081], [name:--terminal , description:Launches the Metro Bundler in a new window using the specified terminal path.], [name:--tasks , description:Run custom Gradle tasks. By default it's "installDebug"], [name:--no-jetifier, description:Do not run "jetifier" â€“ the AndroidX transition tool. By default it runs before Gradle to ease working with libraries that don't support AndroidX yet. See more at: https://www.npmjs.com/package/jetifier.], [name:--active-arch-only, description:Build native libraries only for the current device architecture for debug builds., default:false]]]], assets:[], healthChecks:[], platforms:[ios:[:], android:[:]], project:[ios:[sourceDir:D:\repos\DeepLinkingApp1\ios, folder:D:\repos\DeepLinkingApp1, pbxprojPath:D:\repos\DeepLinkingApp1\ios\DeepLinkingApp1.xcodeproj\project.pbxproj, podfile:D:\repos\DeepLinkingApp1\ios\Podfile, podspecPath:null, projectPath:D:\repos\DeepLinkingApp1\ios\DeepLinkingApp1.xcodeproj, projectName:DeepLinkingApp1.xcodeproj, libraryFolder:Libraries, sharedLibraries:[], plist:[], scriptPhases:[]], android:null]]
Version
0.68.2
Output of npx react-native info
System:
OS: Windows 10 10.0.19044
CPU: (12) x64 Intel(R) Core(TM) i5-10400F CPU @ 2.90GHz
Memory: 4.13 GB / 15.93 GB
Binaries:
Node: 14.17.2 - C:\Program Files\nodejs\node.EXE
Yarn: 1.22.17 - ~\AppData\Roaming\npm\yarn.CMD
npm: 6.14.13 - C:\Program Files\nodejs\npm.CMD
Watchman: Not Found
SDKs:
Android SDK: Not Found
Windows SDK: Not Found
IDEs:
Android Studio: Version     2<IP_ADDRESS> AI-211.7628.21.2111.8309675
Visual Studio: Not Found
Languages:
Java: 11.0.11 - C:\Program Files\jdk-11.0.11\bin\javac.EXE
npmPackages:
@react-native-community/cli: Not Found
react: 17.0.2 => 17.0.2
react-native: 0.68.2 => 0.68.2
react-native-windows: Not Found
npmGlobalPackages:
react-native: Not Found
Steps to reproduce
cmd:
react-native init DeepLinkingApp1
cd DeepLinkingApp1
react-native run-android
Snack, code example, screenshot, or link to a repository
No response

I am also facing the same issue. Any help would be appreciated.

Closing as it's a duplicate of #33835

I'm also facing the same issue. Any solution?

Solução:
npm i<EMAIL_ADDRESS>Vê se dá certo


Validation issues

Here are the messages from updating the data:
Validating neon.ecocomdp.20107.001.001:
  Required tables
  Column names
  Required columns
  Column classes
  Datetime formats
  Primary keys
  Composite keys
  Referential integrity
  Latitude and longitude format
  Latitude and longitude range
  Elevation

Validating neon.ecocomdp.10043.001.001:
  Required tables
  Column names
  Required columns
  Column classes
  Datetime formats
  Primary keys
  Composite keys
  Referential integrity
  Latitude and longitude format
  Latitude and longitude range
  Elevation

@sokole do we need to worry about it?

It seems my updates on the dev branch last summer before ESA never made it to CRAN. Do you still get these warnings using the dev branch? Thanks!

Yes, I still got these warnings with the development branch.


Handle invalid JSON between transfers and transfer-connector

Closing as the project has been refactored and this bug issue no longer applies - please see https://github.com/apigee/openbank#previous-versions


Unrecognized tensor type ID: Autocast CUDA [BUG]

I'm working with auto-gptq and I don't know why but I'm getting this weird error only when a certain number of inputs are passed (~32) when trying to evaluate a quantized model. If anyone is familiar with this issue please let me know. I believe it to be related to memory, but I also think it has something to do with how auto-gptq peforms quantized matrix multiplication.
Bottom of stack trace:
...
--> 223     self.autogptq_cuda.vecquant8matmul_old(x, self.qweight, out, self.scales.float(), self.qzeros, self.group_size)
    224 else:
    225     raise NotImplementedError("Only 2,3,4,8 bits are supported.")

RuntimeError: Unrecognized tensor type ID: AutocastCUDA

Code:
def evaluate(model, tokenizer, dataset, evaluator, batch_size=16,
             dataset_range=None, **eval_kwargs):
    if dataset_range is not None:
        dataset = dataset.select(range(*dataset_range))
    m = len(dataset)
    for i in range(0, m, batch_size):
        batch_range = range(i, min(i + batch_size, m))
        subset = dataset.select(batch_range)
        evaluator.compute(model, data=subset, tokenizer=tokenizer, **eval_kwargs)

squad_evaluator = evaluator(task="question-answering")
evaluate(model, tokenizer, valset, squad_evaluator, batch_size=8,
         dataset_range=(0, 32), metric="squad_v2", squad_v2_format=True,
         device="cuda")

Hardware details
Nvidia Asus Strix RTX 4080 16GB, Ryzen 7 7700x, 32GB ddr5 ram
Software details
Windows WSL ubuntu 22.04 torch=2.1.0+cu118 auto-gptq=0.4.2+cu118 accelerate=0.23.0

I tried passing examples with batch size 1 too while calling torch.cuda.empty_cache() and it still gets this error after about 32 inputs have been passed through the model, but works fine when about 20 are passed

I have similar problem when I try this tutorial.
  File "/home/lili/miniconda3/envs/py39_torch21/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/lili/miniconda3/envs/py39_torch21/lib/python3.9/site-packages/peft/tuners/lora.py", line 1255, in forward
    result = self.quant_linear_module(x)
  File "/home/lili/miniconda3/envs/py39_torch21/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1518, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/home/lili/miniconda3/envs/py39_torch21/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1527, in _call_impl
    return forward_call(*args, **kwargs)
  File "/home/lili/miniconda3/envs/py39_torch21/lib/python3.9/site-packages/auto_gptq/nn_modules/qlinear/qlinear_cuda_old.py", line 221, in forward
    self.autogptq_cuda.vecquant4matmul_old(x, self.qweight, out, self.scales.float(), self.qzeros, self.group_size)
RuntimeError: Unrecognized tensor type ID: AutocastCUDA

Hardware details
Nvidia A100 40GB
Software deta
ubuntu 20.04 torch=2.1.0+cu118 auto-gptq=0.4.2+cu117 accelerate=0.23.0

I have the exact same issue while trying to use a quantized model for inference.

Happy to review a PR for a fix!

This issue is resolved if we build auto-gptq from source using BUILD_CUDA_EXT=0 pip install -v . in the provided notebook.

I can confirm building from source and running BUILD_CUDA_EXT=0 pip install -v .  resolved the issue. One last thing to note was this issue only occurred when I quantized the model to 8-bit precisions. When I used 4-bit, the Autocast error did not occur.

You can set BUILD_CUDA_EXT=0 to disable pytorch extension building, but this is strongly discouraged as AutoGPTQ then falls back on a slow python implementation.
it seems that not a perfect solution.

Maybe there is an autocast context somewhere like https://github.com/PanQiWei/AutoGPTQ/blob/e4b2493733d69a6e60e22cebc64b619be39feb0e/auto_gptq/modeling/_base.py#L452 that needs to be removed.

also getting the same issue

@UzmaYounas794 Thx, this work for me.

Interesting, will have a look.

After checking out on the release commit (git checkout tags/v0.4.2)
I can reproduce the issue with torch 2.1.0+cu118 & auto-gptq-0.4.2+cu118 installed through pip (pip install auto-gptq --extra-index-url https://huggingface.github.io/autogptq-index/whl/cu118/):
CUDA_VISIBLE_DEVICES=0 pytest tests/test_q4.py  -s -k "test_cuda_old_0"

However, I can not reproduce the issue when installing from source the 0.4.2 version (or the dev version from the main branch). So it appears to be an issue with the hosted wheel - I assume due to the fact that it was built against torch 2.0.1.
Until the next release, I would recommend to install from source. The 0.5.0 release will have wheels built against torch 2.1.0.


Logger does not log timestamp with full precision

This is problematic for the timestamps as the part that is actually changing is not within the logged precision.

Thanks, I have created a pull request for setting a high enough precision (here)[https://github.com/open-dynamic-robot-initiative/robot_interfaces/pull/26].


Steam

Added better description for the app for getting 17 digit Steam ID, and demo data for preview.

Thanks Rohan, I totally messed that up 🤦♂
On Wed, Feb 9, 2022, 16:58 Rohan Singh @.***> wrote:

Merged #146 https://github.com/tidbyt/community/pull/146 into main.
—
Reply to this email directly, view it on GitHub
https://github.com/tidbyt/community/pull/146#event-6037930463, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AXARD74BEYRFEC6HCMQXB5LU2LWTBANCNFSM5N3ICTVQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>


Add support for IDN zone names in Punycode form

Description
Fixes #347. See there for details.
Has your change been tested?
Local tests pass. Integrating in lego succeeds.
Types of changes
What sort of change does your code introduce/modify?

[x] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
My change requires a change to the documentation.
I have updated the documentation accordingly.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

cc @zackproser @patryk

Let's just fix merge conflicts and it's good to go!

Sure, give me a moment :-)

I have rebased my changes onto master.

@patryk: Thanks for merging!
Not to sound impatient, but can we expect a new release/tag anytime soon? Are you waiting on other PRs, where I might be able to help?

We make cloudflare-go releases more or less as needed. If you need an urgent release, let me know.


Math Magicians: refactor with hooks

Final PR of the project for this block.
Changes:

Refactored the Calculator component (components/Calculator.js) from a class-based component to a functional component with hooks.
Verified the application behaves as expected after the refactor.

Hi @lu-jim 👋,
Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉

Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


depends: update rust-bitcoin

Currently, rust bitcoin v0.29.2 is used. Current latest release is https://github.com/rust-bitcoin/rust-bitcoin/releases/tag/bitcoin-0.30.2

I'll try this 🙌

Note that rust-bitcoin 30.2 is the latest release on GitHub, but not the latest version of the crate on https://crates.io/crates/bitcoin. We should update to the latest version of the crate if possible.

yes even I was thinking the same, in docs.rs/bitcoin it shows 0.32.2

I've opened a PR in https://github.com/0xB10C/peer-observer/issues/31 for this. I wasn't sure if you were still working on it.

I've opened a PR in #31 for this. I wasn't sure if you were still working on it.

okay, I was working on it!! but no worries!!


3D Cursor Implementation

It would be great to add a 3D cursor that matches the implementation in Unity. This reads from the depth buffer to know where the cursor should be placed on Z, but could also be done with a raycast.
This would ideally also have the 3D orbit controls added, which allow for standard translate, rotate, scale, but also refocus on double-click.

I need help with simply doing mouse raycasting inside the looking glass view, if anyone could help that would be awesome!


Implement special metrics

Implement

[x] Counter
[x] Gauge
[x] Timer
[x] CountVector
[x] GaugeVector
[x] Histogram (backed by https://github.com/jonhoo/hdrsample)

@saurvs could you add examples to go along as well, for example for histogram, a buckets storing response time for an Http Request would be cool. You could keep pinging https://google.com and updating a histogram based on the time it took.

@suyash I was going to put the examples here but a separate PR sounds better since this one is pretty big by itself.

@saurvs, are the failing windows build anything to do with additional dependencies introduced?

Seems similar to https://github.com/alexcrichton/flate2-rs/issues/33. It says the error occurs if gcc.exe is not installed

@ryandoyle @suyash I added C:\MinGW/bin to PATH, taking a cue from flate2-rs's appveyor.yml. It now builds for the i386 targets but not for x86_64 because I think appveyor only has the 32-bit version of MinGW installed. This is probably why flate2-rs's appveyor config excludes the x86_64 target. I'll investigate more to see if it's possible to get mingw-w64 on appveyor.

The rust repo also recommends MSYS2, we could look into that too
On Thu, Aug 10, 2017, 5:17 PM Saurav Sachidanand<EMAIL_ADDRESS>wrote:

@ryandoyle https://github.com/ryandoyle @suyash
https://github.com/suyash I added C:\MinGW/bin to PATH, taking a cue
from flate2-rs's appveyor.yml
https://github.com/alexcrichton/flate2-rs/blob/master/appveyor.yml#L10.
It now builds for the i386 targets but not for x86_64 because I think
appveyor only has the 32-bit version of MinGW installed. This is probably
why flate2-rs's appveyor config excludes the x86_64 target. I'll
investigate more to see if it's possible to get mingw-w64 on appveyor.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/performancecopilot/hornet/pull/25#issuecomment-321529033,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APkY5XyPO5v8cHlsQSSqx3rBQzvYtPVCks5sWu2_gaJpZM4Oj8ep
.

It looks to be working now after adding C:\msys64\mingw64\bin to PATH when the target is x86_64.


[webapi] Update baseline to sync with chrome M48 for Nexus9

ARM-Nexus9:
Impacted TCs num(approved): New 1, Update 116, Delete 3
Unit test Platform: Crosswalk Project for Android 19.48.495.0
Unit test result summary: Pass 0, Fail 0, Blocked 0
https://crosswalk-project.org/jira/browse/XWALK-6578

Pending to merge, continute to update for webmanu-system-android-tests

@kangxu, please file tasks to track baseline update.

Finish update

Merge as-is.


Deprecate timeout and promote timeouts in PR

Changes
With TEP-0046 a combination of timeouts was proposed as
timeouts:
  pipeline: 30m
  task: 30m
  finally: 30m

The following was introduced as alpha feature and it's been almost a while and now we can safely move that out of alpha gate.
This PR promotes the combined timeouts from alpha to stable and also deprecation existing timeout which can only be used to apply timeout at Pipeline level.
Signed-off-by: vinamra28<EMAIL_ADDRESS>/kind feature
closes #4460
Submitter Checklist
As the author of this PR, please check off the items in this checklist:

[X] Docs included if any changes are user facing
[X] Tests included if any functionality added or changed
[X] Follows the commit message standard
[X] Meets the Tekton contributor standards (including
functionality, content, code)
[X] Release notes block below has been filled in
(if there are no user facing changes, use release note "NONE")

Release Notes
Deprecate timeout field in PipelineRuns and promote PipelineRun.Timeouts field from alpha to stable

/retest

/retest

/retest

/retest

/cc @vdemeester @jerop @pritidesai


Edits to util.py and cluster_bootstrap.py with Mekaeel, removed '==' for deeper inspection

Description
Creates new function under util.py for deeper inspection, and edits cluster_boostrap.py to incorporate these changes.
Issues Resolved
Resolves issue #63 with deeper inspection.
Written by Mekaeel and Miriam.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Thank you! This is a bit more detailed so it may take me some time to review but I will try and get it done in the first half of this week.


Finished UI Design. GameLogic methods stood up, waiting to be implemented in next version.

Second-half of the UI Design. The UI is finished, and the GameLogic class library is waiting to be filled in. That will be ready in the next version.

Looks good. Solution is building with no errors. Approved.


Fix #2120

For #2120

Restore must_redraw only when in update_screen

Ozaki Kiichi wrote:

For #2120

Restore must_redraw only when in update_screen

Thanks.  It's not quite right, the w_redr_type of all windows is set, we
only restore one.  It seems best to use another approach: Don't call
redraw_all_later() when updating the screen.
I don't like the update_str_safe() solution much, I rather explicitly
set a flag that something changed.
--
hundred-and-one symptoms of being an internet addict:
234. You started college as a chemistry major, and walk out four years
later as an Internet provider.
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///


Support for different height on active bar

Some modifications on alwaysActive and areSelectedValuesDefault logic

I removed the extra RectF object.
Also I exposed both barHeight and activeBarHeight variables.
Have a look :)