I need to respond to machine generated emails, except those also sent to one colleague or contain a particular topic outside my responsibility.
I've been trying to set up a Gmail filter which includes all mail from user X but NOT those emails which are also addressed to user Y NOR those containing "junk_term". I want the emails archived and to skip the inbox.
I created a filter like so:
"from:(user_X@address.com) -{user_Y@address.com OR junk_term}"
Run Code Online (Sandbox Code Playgroud)
但似乎没有任何影响,或者没有办法"刷新"当前标记的电子邮件标签.如果上面的代码恰好是正确的语法,并且有一些方法可以刷新所有内容,我也很感激学习如何做到这一点.谢谢.
我有一堆阶段性和非阶段性的更改,我想快速切换到另一个分支然后切换回来.
所以我使用以下方式进行了更改:
$ git stash push -a
Run Code Online (Sandbox Code Playgroud)
(事后我可能会用--include-untracked而不是--all)
然后,当我去弹出藏匿处时,我遇到了很多错误:
$ git stash pop
foo.txt already exists, no checkout
bar.txt already exists, no checkout
...
Could not restore untracked files from stash entry
Run Code Online (Sandbox Code Playgroud)
似乎没有从藏匿处恢复任何更改.
我也试过,$ git stash branch temp但显示相同的错误.
我确实找到了解决这个问题的方法:
$ git stash show -p | git apply
Run Code Online (Sandbox Code Playgroud)
现在避免了灾难,但这提出了一些问题.
为什么这个错误首先发生,下次如何避免?
鉴于Java 9已经出现在我们身上,我们终于可以拥有一个java REPL了,jshell我希望有一种方法可以将一个shebang添加到脚本中并对其进行jshell解释.
我尝试创建test.jsh:
#!/usr/bin/env jshell -s
System.out.println("Hello World")
/exit
Run Code Online (Sandbox Code Playgroud)
然而,这给了:
? ./test.jsh
| Error:
| illegal character: '#'
| #!/usr/bin/env jshell -s
| ^
| Error:
| illegal start of expression
| #!/usr/bin/env jshell -s
| ^
Hello World
Run Code Online (Sandbox Code Playgroud)
事实证明,在OpenJDK https://bugs.openjdk.java.net/browse/JDK-8167440中有一个增强请求.
有没有其他方法可以做到这一点?
我刚刚开始测试Akka HTTP请求级客户端API(基于未来).我一直在努力弄清楚的一件事是如何为此编写单元测试.有没有办法模拟响应并在不必实际执行HTTP请求的情况下完成未来?
我正在查看API和testkit包,试图看看我如何使用它,只是在文档中找到它实际上说的:
akka-http-testkit用于验证服务器端服务实现的测试工具和实用程序集
我正在思考一些事情TestServer(有点像TestSourceAkka Streams),并使用服务器端路由DSL来创建预期的响应,并以某种方式将其挂钩到Http对象上.
以下是我想要测试的函数的简化示例:
object S3Bucket {
def sampleTextFile(uri: Uri)(
implicit akkaSystem: ActorSystem,
akkaMaterializer: ActorMaterializer
): Future[String] = {
val request = Http().singleRequest(HttpRequest(uri = uri))
request.map { response => Unmarshal(response.entity).to[String] }
}
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试升级旧解决方案以使用VS2010(VC100).
我有它的设置,以便stdafx.cpp将从stdafx.h创建一个预编译的头stdafx.pch.然后指示包含stdafx.h的所有其他.cpp文件使用预编译头.
这些帖子帮助我做到了这一点:
现在,当我在发布模式下构建时,一切都很好.但是,当我尝试在调试模式下构建时,我得到了一大堆错误:
错误1错误C2859:[已删除]\debug\vc100.idb不是创建此预编译头时使用的idb文件,请重新创建预编译头.
我相信这个.idb文件是Visual Studio创建的中间调试文件.
为什么我收到此错误?换句话说,为什么它在创建预编译头时不使用此.idb文件?
我不确定您需要什么进一步的信息才能给我回答,所以请问我是否需要提供更多信息.
我有一个使用 Bootstrap 4 的网站。我正在尝试修改 CSS,以便当我将页面打印为 PDF 时,它看起来像我想要的那样。
我找到了Rendering启用Emulate CSS media type. 启用此功能意味着我在浏览器中看到的规则与打印期间应用的规则相同。
我想Emulated Device在Chrome中设置一个,使其与各种物理页面(例如A4)具有相同的尺寸。
我使用的是 MacBook Pro 15" 2019,因此它的设备像素比应为 2。
A4 纸的尺寸为 210 毫米 x 297 毫米。
设备的宽度和高度应该设置为多少?
在过去的几天里,我一直试图找出使用Akka Streams和HTTP将HTTP资源下载到文件的最佳方法.
最初我开始使用Future-Based Variant,它看起来像这样:
def downloadViaFutures(uri: Uri, file: File): Future[Long] = {
val request = Get(uri)
val responseFuture = Http().singleRequest(request)
responseFuture.flatMap { response =>
val source = response.entity.dataBytes
source.runWith(FileIO.toFile(file))
}
}
Run Code Online (Sandbox Code Playgroud)
这有点好,但是一旦我学到了更多关于纯Akka Streams的信息,我想尝试使用基于Flow的Variant来创建一个从一个开始的流Source[HttpRequest].起初,这完全困扰了我,直到我偶然发现了flatMapConcat流动转换.这最终变得更加冗长:
def responseOrFail[T](in: (Try[HttpResponse], T)): (HttpResponse, T) = in match {
case (responseTry, context) => (responseTry.get, context)
}
def responseToByteSource[T](in: (HttpResponse, T)): Source[ByteString, Any] = in match {
case (response, _) => response.entity.dataBytes
}
def downloadViaFlow(uri: Uri, file: File): Future[Long] …Run Code Online (Sandbox Code Playgroud) 我认为标题应该解释一下,但以防万一......
我想知道以下Java代码片段可能产生与转换相关的风险和潜在问题:
List<? extends MyObject> wildcardList = someAPI.getList();
List<MyObject> typedList = (List<MyObject>) wildcardList;
Run Code Online (Sandbox Code Playgroud)
我的想法是wildcardList中的所有对象都应该是MyObject的实例(确切的类型或子类),因此每当从typedList检索对象时,就不应该有ClassCastException.它是否正确?如果是这样,为什么编译器会生成警告?
我想知道是否有人能够向我解释如何解释一些导致OutOfMemoryError的G1 GC日志?
我知道堆转储是查找实际使用堆的最佳选择,但我无法得到它,因为它包含无法离开客户端站点的受保护信息.我所拥有的只是应用程序日志(包括来自OOME的堆栈)和G1 GC日志.
完整的G1 GC日志有很多细节,所以我不会把它们放在这里,除非有人特别需要看到它们.
这些来自的特定Java版本是:
> java -version
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b11)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
Run Code Online (Sandbox Code Playgroud)
我用来创建GC日志的GC选项是:
-XX:+PrintGCTimeStamps
-XX:+PrintGCDetails
-Xloggc:log/gc.log
Run Code Online (Sandbox Code Playgroud)
以下是在OOME前30分钟内每个年轻和完整GC的所有内存统计数据:
INFO | jvm 1 | 2015/05/28 04:29:34 | [Eden: 1290M(1290M)->0B(1290M) Survivors: 20M->20M Heap: 2445M(3932M)->1155M(3932M)]
INFO | jvm 1 | 2015/05/28 04:33:21 | [Eden: 1290M(1290M)->0B(1290M) Survivors: 20M->20M Heap: 2445M(3932M)->1155M(3932M)]
INFO | jvm 1 | 2015/05/28 04:37:09 | [Eden: 1290M(1290M)->0B(1290M) Survivors: 20M->20M Heap: 2445M(3932M)->1155M(3932M)]
INFO | jvm 1 | …Run Code Online (Sandbox Code Playgroud) 我一直在尝试使用更抽象的函数式编程概念,例如来自scle的typelevel/cats的概念.
在这个特定的情况下,我试图消除map(_.flatten)遍历一些Futures 后调用的需要.
使用标准库,它看起来像这样:
def stdExample[T](things: Seq[T]): Future[Seq[T]] = {
Future.traverse(things)(futureMaybeThings[T]).map(_.flatten)
}
def futureMaybeThings[T](thing: T): Future[Option[T]] = ???
Run Code Online (Sandbox Code Playgroud)
我尝试使用flatTraversetypelevel/cats,但我能得到的最好的是:
def catsExample[T](things: Seq[T]): Future[Seq[T]] = {
things.toList.flatTraverse(futureMaybeThings[T](_).map(_.toList))
}
Run Code Online (Sandbox Code Playgroud)
things.toList要求获得Traversable需要调用,我可以使用那个.
由于flatTraverse需要f为C => G[F[B]](其中两个C和B是T,G是Future和F是List),futureMaybeThings不匹配而不首先用所述结果map(_.toList).这最终比其他解决方案更糟糕.
它可以创建只上工作的功能Future和TraversableOnce(因为是隐式转换Option[A] => TraversableOnce[A]这样的实现可能是这样的:
def flatTraverse[A, B[_], C, M[X] <: TraversableOnceWithFlatten[X, M]](in: M[A]) …Run Code Online (Sandbox Code Playgroud) java ×3
scala ×3
akka-http ×2
akka-stream ×1
akka-testkit ×1
debugging ×1
filter ×1
g1gc ×1
generics ×1
git ×1
git-stash ×1
gmail ×1
java-9 ×1
jshell ×1
jvm ×1
scala-cats ×1
shebang ×1
visual-c++ ×1