AOT gen_kernel removes entry-point body

class X0 {
  @pragma("vm:entry-point")
  void call() {
    print("effect1");
    return null;
  }
}

class X2 extends X0 {
  @override
  void call() {
    print("effect2");
    return null;
  }
}

main() {
  X2()();
}

../../runtime/vm/compiler/aot/precompiler.cc: 889: error: expected: !function.is_abstract()
version=3.2.0-edge.793357f6f76ca49b51ba708495687980888357c1 (be) (Thu Sep 28 08:39:17 2023 -0700) on "linux_x64"
pid=4129955, thread=4129955, isolate_group=isolate(0x55ed402f4810), isolate=isolate(0x55ed40302130)
os=linux, arch=x64, comp=no, sim=no
isolate_instructions=0, vm_instructions=0
fp=7ffd3fe040f0, sp=7ffd3fe03fb8, pc=55ed3ee85f9c
  pc 0x000055ed3ee85f9c fp 0x00007ffd3fe040f0 dart::Profiler::DumpStackTrace+0x7c
  pc 0x000055ed3ebc5c24 fp 0x00007ffd3fe041d0 dart::Assert::Fail+0x84
  pc 0x000055ed3f2319f5 fp 0x00007ffd3fe04270 dart::Precompiler::ProcessFunction+0x305
  pc 0x000055ed3f22be64 fp 0x00007ffd3fe042c0 dart::Precompiler::Iterate+0x94
  pc 0x000055ed3f2286cc fp 0x00007ffd3fe04bd0 dart::Precompiler::DoCompileAll+0x192c
  pc 0x000055ed3f226cf6 fp 0x00007ffd3fe05060 dart::Precompiler::CompileAll+0xb6
  pc 0x000055ed3f462e0f fp 0x00007ffd3fe051c0 Dart_Precompile+0x1bf
  pc 0x000055ed3eb97bfb fp 0x00007ffd3fe05350 dart::bin::main+0x8fb
-- End of DumpStackTrace
=== Crash occurred when compiling unknown function in AOT mode in unknown pass
=== Flow Graph not available

...
library from "file:///usr/local/google/home/rmacnak/dart1/sdk/fuzz.dart" as fuzz {

  abstract class X0 extends core::Object {
    synthetic constructor •() → fuzz::X0
      : super core::Object::•()
      ;
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,hasNonThisUses:false,hasTearOffUses:false,methodOrSetterSelectorId:1,getterSelectorId:2]    @#C3
    abstract method call() → void;
  }
  class X2 extends fuzz::X0 {
    synthetic constructor •() → fuzz::X2
      : super fuzz::X0::•()
      ;
[@vm.procedure-attributes.metadata=methodOrSetterCalledDynamically:false,getterCalledDynamically:false,hasThisUses:false,methodOrSetterSelectorId:1,getterSelectorId:2]    method call() → void {
      core::print("effect2");
      return null;
    }
  }
  static method main() → dynamic {
<EMAIL_ADDRESS>file:///usr/local/google/home/rmacnak/dart1/sdk/fuzz.dart::X2.call] [@vm.inferred-type.metadata=!? (skip check)] new fuzz::X2::•().{fuzz::X2::call}(){() → void};
  }
}
...
constants  {
  #C1 = "vm:entry-point"
  #C2 = null
  #C3 = core::pragma {name:#C1, options:#C2}
  #C4 = "call"
...

gen_kernel has removed the body of X0.call but retained its entry-point annotation. It should either keep the body or remove the entry-point annotation (knowing that even as an entry-point, it is unreachable because X0 is neither instantiated nor an entry point).

Alternatively the entry-point annotation on X0.call could imply that X0 is an entry. I have made the mistake of missing the annotation of the class before.
@alexmarkov Thoughts on which direction to resolve the mismatch?

I think it's valid to use @pragma("vm:entry-point") on an abstract method, and it should not be removed by TFA when method is converted to abstract.
@pragma("vm:entry-point") on an instance method likely means that this instance method can be called from native code with a receiver which implements declaring class of an instance method ("interface call"). This also covers abstract methods.
Here's an example of code where @pragma("vm:entry-point") is used on an abstract method in Dart source:
abstract class A {
  @pragma('vm:entry-point')
  void foo();
}

class B extends A {
  foo() {
    print('B');
  }
}

A a = B();

void main() {
  a.foo();
}

On this example compiler also crashes with the same assertion in debug mode, but TFA didn't tree shake any code.
We should just fix the assertion, probably by filtering abstract functions from pending_functions_ in precompiler.cc.


missing-call-to-setgroups-before-setuid

Hi, I'm trying to package this for Fedora.
This is an error I get running rpmlint:
missing-call-to-setgroups-before-setuid:
This executable is calling setuid and setgid without setgroups or initgroups.
There is a high probability this means it didn't relinquish all groups, and
this would be a potential security issue to be fixed. Seek POS36-C on the web
for details about the problem.

https://www.securecoding.cert.org/confluence/display/c/POS36-C.+Observe+correct+revocation+order+while+relinquishing+privileges

acdbeedebf016e35ba6c36ef98c3a233df78a536 should address this. Thanks!


Support for Exporting Timeline Frames

It would be nice if there is support for exporting the timeline frames as images. Something like this:
psd.tree.filter_by_animframe(0).save_as_png("frame01.png")

As a game developer, this would be tremendously helpful for me, as I could simply use .psd files as source files for my engine-ready assets. Currently, in order to achieve the following, I would have to "convert" the animation frames into layer comps in Photoshop, and then use filter_by_comp.

That is a pretty cool idea. I have no idea where or how that data is stored, so it will take some serious sleuthing to find out. Could be really difficult, but could also be way easier than expected.

Do you have an example PSD by any chance so I can poke around? I've never worked with the timeline before in Photoshop.

I did some search, and I found out that the timeline frames information is stored inside a chunk marked with "AnDs". Somewhere inside that descriptor, there is a list ("FrIn") which contains a descriptor containing the ID of each frame ("FrID") and its delay in centiseconds ("FrDl"). If you search for the frame ID, you'll see that it appears again somewhere below inside a list ("FsFr").
Inside a PSD with 2 frames and 2 layers, where each frame has a single layer visible, it seems that each frame ID appears for each layer ("LaID"), inside a descriptor ("LaSt") which seems to contain a list of booleans of whether that layer is visible for each frame ID.
Sample PSD file with 1 frame and 1 layer
Sample PSD file with 2 frames and 2 layers

Hi @hasyimibhar
Did you find any more details about this?
Specially how the ImageResource block 0x0FA0 - 4000 and the blocks (mlst and cust) inside the AdditionalLayerInfo called shmd (metadata).
https://forums.adobe.com/message/10646902


modify static url

https://dn-phphub.qbox.me//uploads/images/...........
to
https://dn-phphub.qbox.me/uploads/images/...........

或者修改 TopicsController 166 行
$folderName      = '/uploads/images/' . date("Ym", time()) .'/'.date("d", time()) .'/'. Auth::id();

Thanks for the hint. fix by https://github.com/summerblue/phphub/commit/0474f6cd4933b9de22e161303179c653f287f24c


BA Traffic Shaping (QPS, etc) and Configuration Between Sellers and Buyers

Are any knobs for shaping and configuring traffic between an SSP and DSP being discussed? In particular I'd think allowing some filters for traffic flowing from the SFE to BFEs would be good, as we currently support different types of filters when sending requests to DSPs to help them manage their traffic and infrastructure. We also allow a bidder to change the location of their DSP collection per DC without requiring a restart on our side.
QPS or other throttling controls are valuable. Our simplest ones are QPS per data center but we do some interesting stuff with dynamically optimizing the bidstream based on auction results or server failure/timeouts (Hystrix'y type stuff). From what I can see so far in the SFE Runtime Flags I'm not seeing anything that seems related to traffic. I do see configurations related to auto-scaling, and that is good, but not all ad techs will want to auto-scale as high as traffic allows, and even with good and infinite auto-scaling in place static and dynamic QPS throttles are still valuable in maintaining a working system.
Additionally on BFE cluster config, am I right that, as of now, if a DSP wanted to change the location of their cluster, they'd have to ask the SSP to restart all of their SFEs with a new config with BFE hosts? And they'd have to do that across any sellers they expect traffic from?

This issue has been migrated to the new WICG/protected-auction-services-discussion repository.
Please continue the discussion in the migrated issue here: https://github.com/WICG/protected-auction-services-discussion/issues/20


Do not crash when used with url

Fixes #233
Testing

Clone the repo and switch to this branch
Change the volumes in docker compose
docker compose up

curl http://<IP_ADDRESS>:7070/cache

curl --json '{"url": "https://github.com/HooliCorp/vulnerable-aws-koa-app", "type": "js"}' http://<IP_ADDRESS>:7070/scan

Wow, you guys are fast. Checks out for me too!


[Bug]: ValueError: Unknown document type: <class 'llama_index.legacy.schema.Document'>

Bug Description
According my understanding, it seems that there might be a compatibility issue with the types of documents being processed in the script. Following the example from the documentation:
I am doing from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, ServiceContext
Version
0.10.6
Steps to Reproduce
from llama_index.core import VectorStoreIndex, SimpleDirectoryReader, ServiceContext
def train():
documents = SimpleDirectoryReader("/work/dtilwani/Reasons/Data/").load_data() # give the path of the directory which contains all the files of the dataset
os.environ["REPLICATE_API_TOKEN"] = "api"

llama2_7b_chat = "meta/llama-2-7b-chat:8e6975e5ed6174911a6ff3d60540dfd4844201974602551e10e9e87ab143d81e"
llm = Replicate(
    model=llama2_7b_chat,
    temperature=1.0,
    additional_kwargs={"top_p": 0.95, "max_new_tokens": 300},
)

embed_model = resolve_embed_model("local:BAAI/bge-small-en")
service_context = ServiceContext.from_defaults(
    chunk_size=512,
    llm=llm,
    embed_model=embed_model
)

rerank = SentenceTransformerRerank(
model="cross-encoder/ms-marco-MiniLM-L-12-v2", top_n=10
)

index = VectorStoreIndex.from_documents(documents, service_context=service_context)

return [index, rerank]

Relevant Logs/Tracbacks
[nltk_data] Downloading package punkt to /home/dtilwani/nltk_data...
[nltk_data]   Package punkt is already up-to-date!
/work/dtilwani/Reasons/AdvRAG/Advanced_RAG_LLAMA/Advanced_RAG_Indirect.py:117: DeprecationWarning: Call to deprecated class method from_defaults. (ServiceContext is deprecated, please use `llama_index.settings.Settings` instead.) -- Deprecated since version 0.10.0.
  service_context = ServiceContext.from_defaults(
/home/dtilwani/.local/lib/python3.9/site-packages/torch/_utils.py:831: UserWarning: TypedStorage is deprecated. It will be removed in the future and UntypedStorage will be the only storage class. This should only matter to you if you are using storages directly.  To access UntypedStorage directly, use tensor.untyped_storage() instead of tensor.storage()
  return self.fget.__get__(instance, owner)()
Traceback (most recent call last):
  File "/work/dtilwani/Reasons/AdvRAG/Advanced_RAG_LLAMA/Advanced_RAG_Indirect.py", line 170, in <module>
    main()
  File "/work/dtilwani/Reasons/AdvRAG/Advanced_RAG_LLAMA/Advanced_RAG_Indirect.py", line 167, in main
    prompting(file_name,d)
  File "/work/dtilwani/Reasons/AdvRAG/Advanced_RAG_LLAMA/Advanced_RAG_Indirect.py", line 140, in prompting
    t = train()
  File "/work/dtilwani/Reasons/AdvRAG/Advanced_RAG_LLAMA/Advanced_RAG_Indirect.py", line 127, in train
    index = VectorStoreIndex.from_documents(documents, service_context=service_context)
  File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/indices/base.py", line 135, in from_documents
    nodes = run_transformations(
  File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/ingestion/pipeline.py", line 127, in run_transformations
    nodes = transform(nodes, **kwargs)
  File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/node_parser/interface.py", line 115, in __call__
    return self.get_nodes_from_documents(nodes, **kwargs)
  File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/node_parser/interface.py", line 75, in get_nodes_from_documents
    nodes = self._parse_nodes(documents, show_progress=show_progress, **kwargs)
  File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/node_parser/interface.py", line 184, in _parse_nodes
    build_nodes_from_splits(splits, node, id_func=self.id_func)
  File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/node_parser/node_utils.py", line 91, in build_nodes_from_splits
    raise ValueError(f"Unknown document type: {type(document)}")
ValueError: Unknown document type: <class 'llama_index.legacy.schema.Document'>

@Deepa-Tilwani it seems like you mixed legacy imports with non-legacy imports? You should use either all legacy imports or not

I have list of json file in and I am trying to read like this :
documents = SimpleDirectoryReader("/work/dtilwani/Reasons/Data/").load_data()
I updated it with the following :
from llama_index.legacy.schema import TextNode
Convert your custom Document objects to TextNode objects
text_nodes = [TextNode(text=doc.text) for doc in documents]
Now you can use text_nodes with VectorStoreIndex.from_documents
index = VectorStoreIndex.from_documents(text_nodes, service_context=service_context)
I have this error now :
Traceback (most recent call last):
File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/readers/file/base.py", line 21, in _try_loading_included_file_formats
from llama_index.readers.file import (
File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/readers/file/init.py", line 1, in
from llama_index.readers.file.docs import DocxReader, HWPReader, PDFReader
File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/readers/file/docs/init.py", line 1, in
from llama_index.readers.file.docs.base import DocxReader, HWPReader, PDFReader
File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/readers/file/docs/base.py", line 15, in
from llama_index.core.readers.file.base import get_default_fs
ImportError: cannot import name 'get_default_fs' from 'llama_index.core.readers.file.base' (/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/readers/file/base.py)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/work/dtilwani/Reasons/AdvRAG/Advanced_RAG_LLAMA/Advanced_RAG_Indirect.py", line 177, in
main()
File "/work/dtilwani/Reasons/AdvRAG/Advanced_RAG_LLAMA/Advanced_RAG_Indirect.py", line 174, in main
prompting(file_name,d)
File "/work/dtilwani/Reasons/AdvRAG/Advanced_RAG_LLAMA/Advanced_RAG_Indirect.py", line 147, in prompting
t = train()
File "/work/dtilwani/Reasons/AdvRAG/Advanced_RAG_LLAMA/Advanced_RAG_Indirect.py", line 111, in train
documents = SimpleDirectoryReader("/work/dtilwani/Reasons/Data/").load_data() # give the path of the directory which contains all the files of the dataset
File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/readers/file/base.py", line 396, in load_data
SimpleDirectoryReader.load_file(
File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/readers/file/base.py", line 303, in load_file
default_file_reader_cls = SimpleDirectoryReader.supported_suffix_fn()
File "/home/dtilwani/.local/lib/python3.9/site-packages/llama_index/core/readers/file/base.py", line 35, in _try_loading_included_file_formats
raise ImportError("llama-index-readers-file package not found")
ImportError: llama-index-readers-file package not found
When I do pip list here it is showing it have above package :

@Deepa-Tilwani just start with a fresh venv
In a new terminal
pip uninstall llama-index
python -m venv venv
source venv/bin/activate
pip install llama-index

And again, please ensure all imports are using llama.index.legacy, or ensure all imports are updated to the non-legacy, there cannot be both

@Deepa-Tilwani Has your issue been resolved? If so, how did you fix it?


Sequelize v4 Support

In theory we should be able to design the mock API to support both v3 and v4. The number of breaking differences in the public API are small(-ish) from our perspective. The most complicated piece is definitely the Instance being an actual instance of a Model.
Problems to address:

[ ] Toggle specific compatibility for projects (with a sane default).
[ ] Instance is an instance of Model. instance.Model and model.Instance were removed
[ ] Model.validate rejects on a validation issue, rather than return false
[ ] Hooks use promises instead of callbacks

Compatibility Toggle
To solve the compatibility problem between v3 and v4, we can try and parse the version of sequelize required by the code base from the package.json. Then we can have an override that loads it explicitly for the test code
// Loads the version from the NPM package.json file
var sequelizeMock = new SequelizeMock();

// Does not try to load it and instead uses a hardcoded version value
var sequelizeMock = new SequelizeMock({
  $compatibility: '~3.0.0',
});

Is there some reason you need to maintain backwards compat with Sequelize 3? If this is already working for it, then people using it could simply not upgrade sequelize-mock (just as they are not upgrading sequelize itself).

I would really appreciate this.


adding texture to 3d model

Hi,
In your documentation, in Application -> 2. Face Reconstruction, there is a 3D model and then the texture is added to that. Is this also addressed in your code?
What I understood from the .ply file is that it only contains shape, and not texture and light. Right?
Thanks again for your wonderful work!

face3d will help you.

Sorry for that I have not a chance to update these days.
If you have the dense correspondence from vertices to image pixels, you can directly set the color attribute of the vertex to corresponding pixel RGB value. Or you can refer here1 and here2.

Yes, @mehameha998. PRNet and face3d provide several codebases for 3D face related applications. But the author and I are all busy these days, so you @cnaaq may first dive into these codes.

@cleardusk So, will I get the only 3D model without the texture of human being in face reconstruction?

I have updated the code. But the texture is sampled from the original image, so the occlusion region may appear strange.

@cleardusk How do I get the reconstruction for full 3D human?

您好 贴图代码现在更新了吗？

您好，由于精力有限，贴图代码没有更新。欢迎提交 PR ～


Feature: Move past Bower

This is more of a todo/RFP to provide a way for wiredep to expand past Bower. Whether thats some property in npm or automatically determining them somehow from something like import {foo} from 'bar';
This would probably require a lot of work but I think it would benefit the community overall.
Thoughts?

Some good discussion at https://github.com/taptapship/wiredep/issues/173 but keeping this one as the feature request issue to track this

Its worth noting that bower are suggesting a bower > yarn migration so perhaps this feature should be focused on that.

Hey!
I made a fork of this lib for people that are migrating from bower with bower-away.
You can find it https://github.com/johnnyasantoss/wiredep-away


Dump the output of a regression run in a formatted file

Currently, the output is dumped in standard output and in refame.out, but it is not in a machine readable format. We should dump the output in JSON as well.

Duplicate of #667.


Add emergency stop button

Updated, but I'm pretty sure it polls once every 30 seconds in that case instead of constantly.

Merge queue is stopped so I'm going to push.


Windows can't go to sleep mode

Issue Type: Bug
Windows can't go to sleep mode, if I have opend vscode. Even I close the vscode, the windows still can't go to sleep mode.
 I need some helps.

Can you try some other scenarios to see when Windows can go to sleep?

I already tried other scenarios. I opened edge, wsl, docker, office and more, even run some apps in the wsl, Windows still can go to sleep successfuly.
So I opened Windows again to run vscode, but It can't go to sleep mode in this time.
I even try to install ubuntu vscode, run it by wsl gui, the same situation happened.
It's weird, so I opened this issue to get some advices.


Query "hot" page from Front page

Whoops -- we got new, controversial, and top, but not "hot", which is the default view!

It turns out that we should be querying the "all" subreddit rather than the front page -- which returns the per-user customized page (which will be meaningless). But the "all"  subreddit in praw fails when you query basic information, so rather than modifying the subreddit querying code, we should refactor the front_page controllers.


Add new GitHub Actions workflow to submit dependency tree samples on changes to main branch

The new workflow should use the maven-dependency-tree-action to submit samples to GitHub Insights. The new workflow should only run on changes to pom files made in the main branch

Hi there! I've submitted a PR addressing this issue. I'd appreciate any feedback you might have! https://github.com/FwMotion/3scale-cms/pull/66

Resolved by #66


ci: create random user name and password for haproxy

Description
This pull request changes the following:

Created template function to create random proxy user name and password if do not exist
Use haproxy user name and password as global values so they can be used in both haproxy-cm.yaml and haproxy-deployment.yaml

Related Issues

Closes #854

@JeffreyDallas , Looks like because the title started with 'ci:', it didn't trigger a new version.  In the future, since this is code that is used in the charts build, it should probably either be 'fix:' or 'feat:' so that it upgrades the version and publishes a build.

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


Video get stuck after click on timeline

Hello, when I click on timeline in area where video is buffered, all is ok, video plays from that time, but when I click on timeline in area where video not buffered, video get stuck and I can't do nothing to it, play/pause not helping, and the biggest problem - there is no errors. What it can be?

Did you tried with the test video file?
http://static.videogular.com/assets/videos/videogular.mp4
Maybe is some problem with your video file.

I tried it right now, but problem still exists

Browser? That looks like a bug.

It's on android emulator and on android device, I have modal window with videogular in it.
In browser ( Chrome 51.0.2704.106 (64-bit) ), click on timeline throws error

And it's what happens on click on timeline in browser, 1 click = 4 state changes and then error

In Firefox Developer Edition 49.0a2 (2016-07-18) timeline works, but not allows to go to the non-buffered area, so if I click on a non-buffered area, it starts play video from the last buffered moment

I've tried on Android 5.0.2, Chrome and Firefox and everything works as expected.
Could be some problem with your server or your connectivity?

Hmm.. really don't know. I will search what causes this error. I'll tell if find something.

Hello, I found out solution, you was right, it was server problem, with Bytes range

Ok, thanks for letting me know :)
Closing.


Unbreak consumers on more Unices

NASM defaults to bin format (e.g. DOS .COM, .SYS). DragonFly, FreeBSD, NetBSD, OpenBSD, Solaris, GNU Hurd and probably more systems use ELF. NASM supports more formats but those are less likely to be supported by Rust and aren't shared on many platforms.
Found via rav1e on FreeBSD x86_64:
$ cargo build
[...]
     Running `/path/to/rav1e/target/debug/build/rav1e-930659fb03421608/build-script-build`
error: failed to run custom build command for `rav1e v0.1.0 (/a/rav1e)`
process didn't exit successfully: `/path/to/rav1e/target/debug/build/rav1e-930659fb03421608/build-script-build` (exit code: 101)
--- stdout
running: "nasm" "" "-g" "-I/path/to/rav1e/target/debug/build/rav1e-bf67f461e7fd7434/out/" "-Isrc/" "/path/to/rav1e/src/x86/ipred.asm" "-o" "/path/to/rav1e/target/debug/build/rav1e-bf67f461e7fd7434/out/src/x86/ipred.o"

--- stderr
/path/to/rav1e/src/x86/ipred.asm:100: error: impossible combination of address sizes
src/ext/x86/x86inc.asm:1424: ... from macro `movdqu' defined here
src/ext/x86/x86inc.asm:1288: ... from macro `RUN_AVX_INSTR' defined here
src/ext/x86/x86inc.asm:1748: ... from macro `vmovdqu' defined here
[...]
thread 'main' panicked at 'nonzero exit status: exit code: 1', /home/foo/.cargo/git/checkouts/nasm-rs-4e8d02e8a0db2eea/7c01c74/src/lib.rs:340:9
note: Run with `RUST_BACKTRACE=1` for a backtrace.

@jbeich I opened a PR for the patch in my fork, once it's merged I'll just point rav1e to this repo.

@tdaede, #22 got merged >1 week ago. Are you waiting on @medek to push 0.1.4 to crates.io with #21 and #22 or what?

Whoops, totally forgot. Opened a PR.


Side effects of imprecise clock

I found an interesting problem that took some time to track down.
Basically spans in the jaeger UI were "centered" in a weird way. Initially I thought that it's some UI issue, but after comparing the json returned by jaeger-query with cassandra it turned out that jaeger-query completely messes span start times. And by completely I mean that span taking 1ms was shifted by 3ms. Here's how it looks like:

In this example "child 2" should happen as the last span inside the "parent" - should be stuck to the right edge of the parent. There's no delay because all those spans are reported by the same process.
After digging through the jaeger code I found ClockSkew and there are two problems here:

ClockSkew adjust span start times if they overlap with their parent. It does it only if parent and child are reported by different hosts, but the host is taken from "ip" tag of the process. If it's missing the default is to assume that these are different hosts.

jaeger-client-java by default uses SystemClock which has millisecond precision, but timestamps reported to jaeger are in microseconds. To convert the time to micros it multiplies it by 1000:
public long currentTimeMicros() {  return System.currentTimeMillis() * 1000; }

One can think of it as rounding down exact start time to milliseconds.
Span duration on the other hand is calculated with more precise System.nanoTime.
As a result of this rounding it's possible that:
round(parent.start) + parent.duration < round(child.start) + child.duration

for children which end at the same time as the parent it happens very often.

So - child span end time exceeds parent's finish time by between 0 and 1000 micros which in combination with missing process "ip" tag triggers clock skew adjuster. And for very long parents and very short children the adjustment is drastic (around 50% of parent duration).
There are two options:

change the default in jaeger-query
better clock implementation in jaeger-client-java
add "ip" process tag by default

I guess that the default make sense so better clock implementation would be a good improvement.

Nice catch.
Are you using java client that reports jaeger-thrift model (recently released)? It should not have the problem with "ip" tag.
The behavior of clock skew adjustment aside, the real issue seems to be the difference in precision between startTime and duration. Unfortunately, I don't know of a good way to get accurate startTime precision. The System.nanoSeconds() we're using for duration is not an offset from epoch, but from some random point in time, so not suitable for startTime.

Yes, I use the thrift Sender - com.uber.jaeger.senders.UdpSender. But it doesn't add "ip" tag. It probably should be added inside Tracer constructor - ip is obtained there, but added to the tags.
As for the clock - I'm not sure. I'd consider keeping offset between currentTimeMillis and nanoTime and use nanoTime + offset, but the offset is not fixed - ntpd adjusts the clock, there might be leap seconds. So it should be updated from time to time... It might be tricky to get it right.

Yes, I use the thrift Sender

I mean v0.19.0 of the client - it sends jaeger.thrift instead of zipkin.thrift, where the tracer tags are sent once, but applied to each span on the backend.

Yes, this one.

@mabn is it actually necessary to adjust the offset? The main requirements for the trace are:

startTime + duration == endTime
For spans started in the same process at true time t1 and t2 we have startTime1 - startTime2 == t1 - t2

It does not matter if both startTime and endTime are "off" by some delta, clocks across processes are skewed anyway, and the ClockSkewAdjuster is expected to fix those. As long as nanoTime() is monotonic, it doesn't even seem to matter if it's consistently faster or slower than the wall clock time, since nanoTime() is defined as the correct way for measuring elapsed time.
So would the following work?
// on tracer initialization, capture
initWallclock = currentTimeMillis()
initElapsed = nanoTime()

// when starting the span
startTimeNanos = nanoTime()
startTimeMicros = initWallclock * 1000 + (startTimeNanos - initElapsed) / 1000

// when finishing the span
durationMicros = (nanoTime() - startTimeNanos) / 1000

cc @sul4bh @pavolloffay

That approach comes to mind, but I'm not sure if it works. My concern is that clock drifts and is adjusted from time to time - e.g. by nptd. The rate of drift changes - e.g it depends on the temperature but in the cloud environment there are additional factors caused by virtualization. There are also edge cases like leap seconds.
The approach you mention basically records the offset between nanoTime() and currentTimeMillis() at Tracer initialization and uses it later, so it would be fine if the offset didn't change.
On linux nanoTime() uses clock_gettime with CLOCK_MONOTONIC. Additionally CLOCK_MONOTONIC is adjusted by NTP so it seems that the offset between nanoTime() and currentTimeMillis() should be more or less constant on linux with NTP configured to use adjtime (not sure about ntp_adjtime discipline though)
It would be good to test it, but for example POSIX allows CLOCK_MONOTONIC frequency to vary by up to 500ppm (8ms/day). If the offset is not constant it might lead to significant inaccuracies in start_time for long running processes - which is the normal case for services.
So it gets tricky and OS-specific.
I'd rather see one of following solutions:

Calculate the offset inside Tracer.extract() and store it inside Span or SpanContext. Pass it to child spans. Use nanoTime + offset to calculate start_time. This will ensure that inside a single trace within a single process the start times are accurate with nanosecond precision. The drawback is that the offset has to be passed around and is no longer encapsulated inside Clock.
Create Clock implementation which updates offset periodically - e.g. once every 30 seconds. If process spends usually significantly less than 30 seconds on processing a single trace then it will be rare for the trace to be affected by offset change. But it will happen and the jumps will be between -1ms and +1ms (assuming that currentTimeMillis has 1ms accuracy, which is not the case on some systems - e.g. on windows xp). The jumps aren't a big issue because JVM pauses happen anyway. If it ensured that time cannot go backwards it would be a pretty good solution. Big plus - it fits the current Clock interface.

I also remember some discussion about implementing better time source in some opentracing-related project, but I wasn't able to find it.

Additionally CLOCK_MONOTONIC is adjusted by NTP

yes, but it still remains monotonic, the adjustments are probably done as smearing of the delta over some larger time interval, making the change unnoticeable to the application.

It would be good to test it, but for example POSIX allows CLOCK_MONOTONIC frequency to vary by up to 500ppm (8ms/day). If the offset is not constant it might lead to significant inaccuracies in start_time for long running processes - which is the normal case for services.

Now sure how big of a problem this is. In some cases the system's HW timer can be so out of whack that measuring precise elapsed time for tracing is probably not the biggest problem. And for long running processes, 8ms error per day is nothing, and again we'd expect the system to have a proper NTP configuration to compensate for the frequency drift: "This clock's frequency might be adjusted in a PLL control loop once an external reference (NTP, GPS, etc.) has been available long enough to measure the ±500 ppm frequency error and instability of typical motherboard oscillators."
So my preference would be to start with this simplified approach. Of the two other approaches you listed, I think the first one is doable, but certainly more complicated, while the second may still result in unaccounted jumps and bad timing for short spans.

btw, thanks for the references.

btw. java 9 should provide nanoseconds accuracy:

http://download.java.net/java/jdk9/docs/api/java/time/Instant.html
https://stackoverflow.com/a/35213339/4158442

Lightstep tracer is doing something funky with time: https://github.com/lightstep/lightstep-tracer-java/blob/master/common/src/main/java/com/lightstep/tracer/shared/ClockState.java#L86

I did this:
https://gist.github.com/mabn/9587658d78d730917559cd61a274ea4f
Seems to work so far. I haven't seen it logging warnings yet.

@mabn we're thinking of going with your option 1 where the millis wallclock timestamp is captured in the SpanContext and all other timestamps are calculated as offsets using nanos() (e.g. https://github.com/uber/jaeger-client-node/pull/122#issuecomment-315430905)
Your gist is a simpler version, which might be good enough. I wouldn't expect it to log the differences unless your machine's HW timer is seriously faster or slower than a true clock AND you have ntpd adjustments happening.

I'm pretty sure that a leap second will make my clock 1-second off until application restart. Same with any manual (non-ntpd) adjustments.

Doesn't the code in the Gist require Java 8? Or is it about a different clock?
https://docs.oracle.com/javase/8/docs/api/java/time/Clock.html
I'd be curious to see if this behavior would also be present for recent JVMs (8+), as date/time manipulation is really better and more precise with the new APIs.

Is this being worked on? I seem to be experiencing this rather severely:

(top blue span is the parent, all other blue spans are immediate children that happen consecutively in a loop)

@jpkrohling It's not JDK8 Clock, it's io.jaegertracing.utils.Clock one.
Yes, this behaviour it's present in JDK8 and it will also be present in newer ones because io.jaegertracing.utils.SystemClockusesSystem.currentTimeMillis`.
On JDK9+ it might be a good idea to simply use system clock - it has now sufficient precision due to https://bugs.openjdk.java.net/browse/JDK-8068730 - Increase the precision of the implementation of java.time.Clock.systemUTC()

Is there a workaround involving setting certain tags? I'm manually setting the process "ip" tag so everything has the same IP (it is all running in docker on the same machine), but still seem to be experiencing the problem.

@yurishkuro The start times appear to snapping/rounding to incorrect times as described in the initial message in this issue:

So - child span end time exceeds parent's finish time by between 0 and 1000 micros which in combination with missing process "ip" tag triggers clock skew adjuster. And for very long parents and very short children the adjustment is drastic (around 50% of parent duration).

As you can see from my first post, some of the children are 0ms, and the parent is relatively long. All of the children should be contained within the parent in my example, as the parent is a for loop and the children are each iteration, however it seems all but the first child has been snapped to a particular start time, resulting in a completely incorrect graph. You can see some children's finish times are after the parent's. As they happen consecutively, you'd expect each child's start time to be the finish time of the last.
The first post mentions that if the "ip" tag is the same, the clock skew adjuster shouldn't kick in, but it looks like it does in my case. It seems that is relevant information for this issue, and I'm also wondering if there is a workaround for the meantime until it is fixed.

@olivercf what you are experiencing is because your spans are very short (sub 1ms) but Java system clock has 1ms precision so the start time is truncated and they all seem to start at the same time. The workaround I use is this clock implementation:
https://gist.github.com/mabn/9587658d78d730917559cd61a274ea4f
use it when creating a Tracer instance and it should solve your issue.

@mabn Thanks, that worked.


change from cni 1.1.1 to 1.2.0

[ ] Make sure you have followed Kube-OVN Code Style.

What type of this PR
Examples of user facing changes:

Features
Bug fixes
Docs
Tests

Which issue(s) this PR fixes:
Fixes #2402

The commit message should be modified


improve security: do not send credentials to remote server

Observed: In chrome-uploader, the uploader is able to make any web requests it needs to make in order to fetch information.  In order to get carelink data, it collects Carelink user credentials in the app, where the code is running on the user's local machine.  Then, chrome-uploader sends these credentials to a remote server that is not Carelink servers.  In addition, the payload appears to be sent in the clear (although presumably over SSL transport, the message containing the passed credentials are not encrypted).
Expected: If you must collect third-party credentials, use them locally on the user's machine and delete them immediately. Eg, from chrome-uploader directly log into carelink and download the data using the permissions granted by the chrome extension.  Upload the data only, not the user's credentials.

It's hard to tell how logic flows through the app, it could be that some other method is being used to collect carelink data (I see also a cli tool).  As-is, this seem to be the problematic code:

https://github.com/tidepool-org/platform-client/blob/1c24f402936948d57807aab21510c3a3faa6be16/index.js#L489
https://github.com/tidepool-org/chrome-uploader/blob/master/lib/core/api.js#L365-L374

There's some additional confusion due to the method being named "upload" but actually retrieving data from Carelink's servers, first?

Hi Ben!
It was great to see you in person on Monday. Thanks so much for filing this issue. As discussed, we've examined this and while there are pros and cons to the current implementation, it is not a security issue. Credentials are passed to the server over TLS and as can be seen in the source are not stored or logged. Tidepool uses TLS/SSL with an up-to-date SHA2 certificate ensuring that credentials are encrypted at all times while in transit. Credentials only exist ephemerally on the server while the CSV is being fetched and are never stored to disk or retained in any way.
The current method of fetching the CSV file from CareLink is a historical artifact of our original implementation which did the fetch and parse on the server. When we created the Tidepool Uploader, we chose the most expeditious route to deliver CareLink support to our users, which is the current implementation.
It is certainly not optimal to fetch the CSV on the server and then pass it to the client for parsing, then re-upload the data. However, as stated above, it is not a security issue. For now, since we track issues in Trello, not GitHub, I've created this card and am closing this.
Feel free to call if you'd like to discuss further.
Thanks again!
Howard

Nice.  Good to see it get tracked in the trello, thanks.


High Command headset

About the PR

Adds a High Command headset for admin usage.
Why / Balance

HC channel already exists, the encryption key for it does not. This PR also adds a pre-made headset with all channels.
Media

Requirements

[x] I have read and I am following the Pull Request Guidelines. I understand that not doing so may get my pr closed at maintainer’s discretion
[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl:
ADMIN:

add: High Command headset and encryption key exist now.

I call test self-antag.


Allocate things per KestrelThread instead of per listener

Moved things that have loop affinity to KestrelThread like
WriteReqPool, MemoryPool and the ConnectionManager
Changed on the listeners to only kill the ListenSocket, not the
connections on dispose
Moved connection disposal to KestrelThread.Stop
Simplify the connection manager logic so it's possible to walk and
wait in a single call

(Note: Builds on no-connection-locks but that doesn't really matter)

Nice. But what's the purpose of this change? Does it improve perf?

No perf gain but no impact either, so :+1:

@cesarbs Since the number of listeners (primary and secondary) is numKestrelThreads * numListeningAddresses, having a pool per listener was wasteful. Since the only reason for multiple pools in the first place was for some degree of thread affinity, might as well store the pool directly with a thread.
Functionally, nothing changes if you are only listening to one address, but this is better if you are listening to multiple addresses.
It's also cleaner, since I wrote the Listener shutdown logic as if there was one listener per thread. Each listener would walk all libuv handles on the thread and close the during ungraceful shutdown.  This resulted in listeners closing handles that really didn't belong to them. It's not a huge deal, since those handles should be closed any during ungraceful shutdown, but it makes more sense for the thread to walk the handles.

Tangentially... you could have two memory pool types, a regular (non-concurrent) stack for libuv reads with no contention (concurrent collection for user code block-chain returns?) With current concurrent one for writes.
Though don't think a lot of time is spent in memory pool; ymmv.

@benaadams This is something that we/ve discussed, but we would want to measure before making a change. There's also some transport related refactoring that we would like to do first.

@halter73 just throwing it out there :wink:

@benaadams Appreciate it. Just want to make sure you don't waste your time on a PR we probably won't merge quickly :wink:

@halter73 you went and shipped; I'm all (mostly) upstream now, have to ship too! Will still do bugs/blockers I come across though.
Also I've seen the wonder of @davidfowl's new async, waiting to see how that plays out...

It's coming! The refactoring is underway!

Moved this PR to https://github.com/aspnet/KestrelHttpServer/pull/979


Updating version and changelog ready for release

Codecov Report

Merging #42 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master      #42   +/-   ##
=======================================
  Coverage   97.33%   97.33%
=======================================
  Files           8        8
  Lines         300      300
=======================================
  Hits          292      292
  Misses          8        8

Impacted Files
Coverage Δ

app/__init__.py
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


Shm write thread safe

Summary: Thread safety of shm in Rialto Client improved
Type: Feature
Test Plan: UT, YT Manual tests, NF Manual tests
Jira: RIALTO-121

https://jenkins.code.rdkcentral.com/job/github-triggered/31763/ started

https://jenkins.code.rdkcentral.com/job/build-component/68661/ started.

https://jenkinsrdkm.cmf.code.rdkcentral.com/job/github-triggered/1066/ started

https://jenkinsrdkm.cmf.code.rdkcentral.com/job/build-component-platform/1976/ started.

Sanity tests for ['RPI3 Refapp2'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/4564/

Sanity tests for ['RPI3 Hybrid/MC'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/4565/

Sanity tests for ['BCM Reference Refapp2'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/4567/

https://jenkins.code.rdkcentral.com/job/github-triggered/31832/ started

https://jenkins.code.rdkcentral.com/job/build-component/68721/ started.

https://jenkinsrdkm.cmf.code.rdkcentral.com/job/build-component-platform/2023/ started.

https://jenkins.code.rdkcentral.com/job/github-triggered/31833/ started

https://jenkins.code.rdkcentral.com/job/build-component/68728/ started.

https://jenkinsrdkm.cmf.code.rdkcentral.com/job/github-triggered/1106/ started

https://jenkinsrdkm.cmf.code.rdkcentral.com/job/build-component-platform/2029/ started.

Sanity tests for ['BCM Reference Refapp2'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/4689/

Sanity tests for ['BCM Reference Refapp2'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/4698/

Sanity tests for ['RPI3 Refapp2'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/4713/

Sanity tests for ['RPI3 Hybrid/MC'] added.
https://jenkinsrdkm.cmf.code.rdkcentral.com/job/test-components-flow/4714/


Add GitHub Bots to Wechaty Repositories

We need to have project-specific bots later (Especially for Python, Typescript and JS-based projects) to track code quality, builds and all. Please have a look and let me know what you think. You can also add more bot integrations that we can have right here.
This issue would be used to track the integration of GitHub Bots across Wechaty repositories.
1 . Prosebot Integration

Checks for grammatical errors in the Docs.
Analyzes spelling, prose and inclusive verbiage in Markdown and Text Files.
Provides an easy way to analyze documentation changes and ensure a consistency throughout

2 . Stale Bot  Integration

Closes Issues and Pull Requests if not attended to in a specified period of time
Maintains the overall sanctity of the issues and Pull Requests tab.
Keeps a check on spam/unnecessary Issues and PRs.

3 . Greet Bot Integration

Greet First Time Contributors

4 . Request - Info Integration

Request for the information if the issues/PR Content body is empty
Help us in Spam / invalid issues and PRs

We can also add many bots i have more specific bots and i can also add in the future
What is the idea cc @huan

I think this is a great idea and we definitely should automate our working process as much as possible!
I will try to learn those bots and let you know what I think, thank you very much!


Not able to read local file in WASM .NET Core layer

Hi @mingyaulee
I have developed a chrome extension using WASM and able to set bidirectional communication meaning I am able to call .NET Core function from JavaScript lib   and JavaScript functions from WASM Dlls  .
Now , I have a file URL which I want to download and then read the content in .NET Core layer .  I have tried multiple ways but unable to achieve it in Blazor.BrowserExtension .
I am able to download a file in user's download folder and want to read the file from there not sure how we can achieve it as whatever file location I hardcode and pass it to WASM Dlls it always gives null as location .
Even Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);   always give Null  though I have path available in registry
@mingyaulee  can u suggest a way by which we can read a file from file system  ?

In web extensions development, there is no access to the file system for security purposes. Web extensions have a lot less permissions and mostly are limited to only functionalities within the browser.

In web extensions development, there is no access to the file system for security purposes. Web extensions have a lot less permissions and mostly are limited to only functionalities within the browser.

I get that directly the file system access is not available is there any other way to achieve the same ??

Unfortunately in the API list there's none for extensions. There is a very limited functionality provided by the HTML5 File API which you can check out to see if it suits your need.


Great improvement. Training code release?

The new model generates a more accurate depthmap than its previous version. Can you share the change you made? Also, is there a timeline for releasing the training code and the training data processing pipeline?

You might want to have a look at the first version of the paper to get a sense of what changed (https://arxiv.org/pdf/1907.01341v1.pdf). In a nutshell the final improvement is a culmination of multiple things:

Better encoder and associated higher capacity
More robust loss
Higher resolution training
More datasets for training
Better automatic cleaning procedure for movie groundtruth (i.e. the WSVD protocol)

There are currently no plans for releasing the training pipeline. For data see #13

Thanks!


Request for help thinking about aws_lambda_typing

aws_lambda_typing surprises me, in that I'm accustomed to an emphasis in lambda coding on the lightest, fastest computations possible.  As fond as I am of typing rigor, how can my lambda definitions afford to import aws_lambda_typing, rather than just crudely and "locally" approximating an SQSEvent as a dict, and a Context as an object?

I appreciate you asking, MousaZeidBaker.  Yes, I am fond of more precise import-ing, and practice it in my own coding; it's indeed pertinent in this conversation.
My team has a more general concern, though.  Lambda-s, in our understanding, are minimal:  they do the least work possible, are active as little as possible, and, in particular, put a premium on rapid coldstart time.  Our current thinking is that we can only afford to import aws_lambda_typing or even from aws_lambda_typing import ... only within if TYPE_CHECKING:, because lambda-s simply can't afford the run-time cost of finding and then reading aws_lambda_typing.  Has no one else raised this point?
We do not yet have satisfying ways to measure the impact of import aws_lambda_typing within a lambda.  We're operating more at a folklore level, at this point.

aws_lambda_typing is extremely lightweight with zero dependencies (python >3.7) so I wouldn't be worried. Plus everything outside the handler method such as importing packages is only executed on cold starts.

Thanks, MousaZeidBaker:  just the kind of detail I appreciate.  While I recognize that the source is right there for inspection, and all of us can confirm those facts about light-weight actions, it might be worth summarizing them in the README.md just as you have for me:  "... extremely lightweight ... only executed on cold starts."  You advertise that aws_lambda_typing is "convenient"; I also needed reassurance about its safety or performance.
I'm closing this Issue now; you've answered my questions, with one exception:  do you want a pull request from me, one focused exclusively on the README.md as I imagine it might be?


Long key gets truncated possibly due to word wrapping

My workflow tries to improve cache coherence by using hierarchical keys, consisting of a fixed prefix followed by two hashes from differently variable file sources. This results in a long primary key, but then the key appears to be effectively truncated accordingly to a log message, like in this run:
  with:
    path: ~/.cargo/registry
    key: Linux-cargo-registry-v1-2ac2a43cb7f80b945a11345b0eb9f4ff41596ba78129ad7cb130f7023f302239-91eba4bcc27b55c7ecf9bef264ba33101e7c0f7a4eb56f1f676a8e4f4da54f45
    restore-keys: Linux-cargo-registry-v1-2ac2a43cb7f80b945a11345b0eb9f4ff41596ba78129ad7cb130f7023f302239-
  Linux-cargo-registry-v1-

  env:
    GIT_AUTHOR_NAME: GitHub CI
    GIT_AUTHOR_EMAIL<EMAIL_ADDRESS>    GIT_COMMITTER_NAME: GitHub CI
    GIT_COMMITTER_EMAIL<EMAIL_ADDRESS>Cache Size: ~122 MB (128144670 B)
/bin/tar -xz -f /home/runner/work/_temp/49b4284a-c2a3-42ae-8448-a3a1e9cc9ed2/cache.tgz -C /home/runner/.cargo/registry
Cache restored from key: Linux-cargo-registry-

Perhaps some script unwittingly applies pretty printing with word wrapping to a YAML file somewhere?

Hi @mzabaluev, something is being formatted strangely in the UI.  If you look at the raw logs (click the ... in the upper-right hand corner), it shows the full key:
2020-05-15T14:14:26.0047019Z Cache restored from key: Linux-cargo-registry-v1-2ac2a43cb7f80b945a11345b0eb9f4ff41596ba78129ad7cb130f7023f302239-91eba4bcc27b55c7ecf9bef264ba33101e7c0f7a4eb56f1f676a8e4f4da54f45

I'll need to track down which team develops the actions UI and pass this on to them.

Alright, I filed an issue against the team.  I'll try to keep an eye on it and update here when the issue is resolved.  Thanks for bringing this to our attention!

Hi 👋
I'm an engineer behind the logs functionality. We've recently made a couple of changes but I'm not being able to replicate the problem.
With this URL https://github.com/input-output-hk/chain-libs/runs/678355136?check_suite_focus=true#step:4:4 I see this:

Works on Firefox and Chrome. Could you try with a hard refresh and see if it still happens? If it does, could you share the exact log line (click on the line number on the left) and the browser you are using? A screenshot would be helpful.
Thanks!

Ok, found the issue. A fix is done, pending of being deployed.

Ah, thanks for clarifying that it is an UI problem.
@gimenete I can still see the truncation in the page of that run, after loading it in a new tab and a hard refresh; it seems dependent on the length of the key, as I see an adequately displayed key in the runs where the cache was missed and a shorter key was chosen.
The line link: https://github.com/input-output-hk/chain-libs/runs/678355136?check_suite_focus=true#step:4:15
The browser is Firefox (firefox-76.0.1-1.fc32.x86_64), running on Fedora Linux with MOZ_ENABLE_WAYLAND=1.

Perhaps it's not an actions/cache issue after all. Feel free to clone it where appropriate.

Should be fixed now!

Long keys are displayed correctly now, thank you!


Grouping patch updates in dependabot.

https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#groups

@utam0k It seems that update-type strictly requires an array, so check is failing on master : https://github.com/containers/youki/runs/18288323874


Added the capital L

This construction should return the capital L. Although I wasn't able to implement it in your code, so it returns an error somehow, maybe you can have a look at this and perhaps implement it properly.

Could never think of a way to get L, I like this :)
(""+Object["entries"](Function("return Error")()))[10] will work :)

Ok, now everything should work. Have fun with it and keep expanding your awesome projects ;)

This, unfortunately, does not work in Firefox and PhantomJS

As FF is not supported, I'll close this.


Race condition in sync-ft test

Original issue: https://charm.cs.illinois.edu/redmine/issues/254

Add a blocking sleep test on the checkpoint file before you issue the kill signal.

Original author: Jonathan Lifflander
Original date: 2013-09-17 20:08:56

Progress on this?

Original date: 2013-09-17 20:35:06

Found that the internal mechanism for fault injection uses periodic CCD. Will require more elaborate revision to fix than simply hacking a shell script. Probably best if reimplemented to track completion of checkpoint completion of kill target PE.  Still need to evaluate distributed visibility issues for checkpoint completion information.


Comparing dimensions to each other in a filter

We would like to model something like the following SQL query in Druid:
SELECT *
FROM t
WHERE t.a == t.b

As far as I can see it's not possible to compare dimensions to each other in Druid. Or is it?
Would it be possible to add some new filter like:
"filter": { "type": "dimensions", "dimensions": [<dimension_string>, <dimension_string>, ...], "op": <"=="|"!="> }

Which would allow you to compare 2 or more dimensions to each other.
It's not possible top speed up queries with this filter so I guess it should be applied once a columns is selected to be processed (does that make sense?).

I think I can implement this by adding another method to ValueMatcherFactory.java like makeValueMatcher(String[] dimensions, Comparator<String> compare). The implementation in StringValueMatcherColumnSelectorStrategy would be quite easy and just passes different dimensions values to the comparator (would need a custom comparator class if we want to support comparing more than 2 dimensions at once). Implementing the actual Filter after this is quite easy.
Does that seem accurate?

ValueMatcherFactory doesn't exist anymore! It was removed in #3797 to make it possible for filters to be more flexible. The new Filter interface should let you do this. You want a filter that always returns false from "supportsBitmapIndex", throws unsupported operation exception from getBitmapIndex, and in "makeMatcher" it should create two selectors and build a ValueMatcher that compares their results.
That sounds like a useful contribution if you're interested in working on it.
We'll need to figure out what the semantics of "a == b" should be if a and b are both multi-value dimensions. Only true if they're identical? Or true if there's any overlap in values?

Should I modify ValueMatcherColumnSelectorStrategy and StringValueMatcherColumnSelectorStrategy and add a method to match multiple columns with each other? I think that's probably cleanest.
How about if instead of making a new filter I extend the selector filter by adding an valueDimension parameter. So either value or valueDimension need to be set. Then we can keep the current semantics of selector with the addition that if valueDimension is multi-value all of its values need to be in dimension.

Hmm that could work too, although "selector" is kind of a weird name for a filter that checks if two columns are equal. If you do it that way then how about having a list called "dimensions"? So the syntax would be:
{"type": "selector", "dimensions": ["a", "b"]}

I think "they're equal if there is any overlap" is probably the best semantic for multi-value, since:

it is symmetric, such that selector(["a", "b"], ["a", "b", "c"]) and selector(["a", "b", "c"], ["a", "b"]) are both true
it is a proper extension of single-value, such that selector(["a", "b"], "b") and selector(["a", "b"], ["b"]) are both true

@gianm with those semantics it will not be possible to check if a is in b but b is not in a. But I guess modifying the in filter to do this would make more sense.

Then we have one semantics issue left and that is extractionFn. I guess it should applied to all dimensions.

That sounds reasonable; may also be useful to allow an extractionFns where they positionally apply to each of the dimensions.

I'm already working on a pull request: https://github.com/erikdubbelboer/druid/commit/85c4e82e112a32a36cba52c259c4c7cf52c5cd21#diff-9c0344041e595e113f03e0d783939f88
So far I only wrote the code and got it to pass all current tests. No idea yet if it actually works. Will write tests for it next.

https://github.com/druid-io/druid/issues/3928 has been merged.


Change video poster image

Is there any poperty to set the poster image like video source "setSrc" property?. Suppose I want to set poster image on a button click.How can I do that?
Please help.Thanks in advance.

I am also want to do that. When I set new source and then set new poster Image! How to do that?

@dennisjose  and @hero2201 You can do it with the following code:
$('#player-id').attr('poster', 'URL|path');

Closing old issues. If you'd like to reopen this, let us know. Thanks!


When using a regex in a switch statement, the syntax highlighting is broken.

Original issue from: @thehackadmin

When using a regex in a switch statement, the syntax highlighting is broken.
$expand_cmd = $current_muleee_file ? {
  /\.tar\.gz$/ => "/usr/bin/sudo tar -zx -f ${mulesoft_home}/${current_muleee_file} -C ${mulesoft_home}",
  /\.zip$/     => "/usr/bin/sudo unzip ${mulesoft_home}/${current_muleee_file} -d ${mulesoft_home}",
  default      => "not confiugred to use this type of file: ${current_muleee_file}"
}

Is valid... maybe not great, but valid.  (don't judge me!   lol) But it looks like:

If I remove the all of the "/", it looks good, but will not work as expected:

Cross reference: https://github.com/lingua-pupuli/puppet-vscode/issues/487

Leaving a comment here to make sure that I will track this issue.  Thank you for your work.

@thehackadmin This was solved by https://github.com/lingua-pupuli/puppet-editor-syntax/pull/25
Unfortunately I forgot to release the code :-(  Apologies.  I've queued up the release process and it will be fixed in the next release.

I have upgraded to 0.18.0, and  it now shows up correctly.  Thank you very much for your help!


merge MONDO_0000844 'spondyloepimetaphyseal dysplasia' with MONDO:0016761 spondyloepiphyseal dysplasia and spondyloepimetaphyseal dysplasia

consider merging MONDO_0000844 'spondyloepimetaphyseal dysplasia' with MONDO:0016761 spondyloepiphyseal dysplasia and spondyloepimetaphyseal dysplasia
From comments: Obsolete in ORDO, consider merge with MONDO:0016761 spondyloepiphyseal dysplasia and spondyloepimetaphyseal dysplasia

This: MONDO:0016761 'spondyloepiphyseal dysplasia and spondyloepimetaphyseal dysplasia' seems to be a suboptimal label.
I would suggest that we really should base our labels on the nosology of the skeletal dysplasia working group. There is a new edition here.
https://www.ncbi.nlm.nih.gov/pubmed/31633310
The term they use is spondylo-epi-(meta)-physeal dysplasia


Add Laravel 6.0 to composer.json

Laravel 6.0 is out: https://packagist.org/packages/laravel/laravel#v6.0.2 When will twill be compatible with this version. All our software is up to date only the software that is using twill is not.
Replace laravel core functions
For this you will need to replace:
str_contains(

by
Str::contains(

Check the difference in documentation:
https://laravel.com/docs/5.6/helpers
vs
https://laravel.com/docs/6.0/helpers
More release changes
https://laravel.com/docs/6.0/releases
Hopefully we can update soon in the future. Thanks in advanced.

Yes, we have a PR for doing this: https://github.com/area17/twill/pull/389
Wish it could be merged soon!
Thank you!

When will Laravel 6.4 support be? Thanks.

Hi @ManukMinasyan, it is available on master and we are planning to tag it in the next few days.

so what happened to this ?

hey, what's the status of laravel 6 support then? I read the release will be 2.x?

Next few days?

Hi guys, any news on this one?


Compile error on ubuntu 14.04

After make it get stucked at compiling LedDeviceWS2812b:
[ 28%] Building CXX object libsrc/leddevice/CMakeFiles/leddevice.dir/LedDevicePhilipsHue.cpp.o
[ 29%] Building CXX object libsrc/leddevice/CMakeFiles/leddevice.dir/LedDeviceTpm2.cpp.o
[ 30%] Building CXX object libsrc/leddevice/CMakeFiles/leddevice.dir/LedDeviceWS2812b.cpp.o
/tmp/hyperion/libsrc/leddevice/LedDeviceWS2812b.cpp: In member function âunsigned int LedDeviceWS2812b::mem_phys_to_virt(uint32_t)â:
/tmp/hyperion/libsrc/leddevice/LedDeviceWS2812b.cpp:582:21: error: cast from âuint8_t* {aka unsigned char*}â to âuint32_t {aka unsigned int}â loses precision [-fpermissive]
return (uint32_t)virtbase + i * PAGE_SIZE + pg_offset;
^
/tmp/hyperion/libsrc/leddevice/LedDeviceWS2812b.cpp: In member function âvoid LedDeviceWS2812b::initHardware()â:
/tmp/hyperion/libsrc/leddevice/LedDeviceWS2812b.cpp:715:42: warning: format â%dâ expects argument of type âintâ, but argument 2 has type âlong unsigned intâ [-Wformat=]
printf("Page map: %d pages\n", NUM_PAGES);
^
make[2]: *** [libsrc/leddevice/CMakeFiles/leddevice.dir/LedDeviceWS2812b.cpp.o] Error 1
make[1]: *** [libsrc/leddevice/CMakeFiles/leddevice.dir/all] Error 2
make: *** [all] Error 2
root@Biostar:/tmp/hyperion#

Closed due to age. Please open a new one, if you encounter any problems.
Thank you


Can you add support for repairing the ProgramData/Packages folder too?

Hey,
I ran your program and like magic it restored all my apps, except for the windows store. However, I was able to figure out that the permissions on the C:\ProgramData\Packages folder were still the old ones. And that these old permissions were causing the windows store app to not load. So, in order to fix this, I simply copied these permissions:
D:PAI(A;;FA;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;OICIIO;GA;;;S-1-5-80-956008885-3418522649-1831038044-1853292631-2271478464)(A;;0x1200a9;;;S-1-15-3-1024-3635283841-2530182609-996808640-1887759898-3848208603-3313616867-983405619-2501854204)(A;OICIIO;GXGR;;;S-1-15-3-1024-3635283841-2530182609-996808640-1887759898-3848208603-3313616867-983405619-2501854204)(A;;FA;;;SY)(A;OICIIO;GA;;;SY)(A;CI;0x1200a9;;;BA)(A;OICI;0x1200a9;;;LS)(A;OICI;0x1200a9;;;NS)(A;OICI;0x1200a9;;;RC)(XA;;0x1200a9;;;BU;(Exists WIN://SYSAPPID))

to the ProgramData\Packages folder and then set the owner to nt service\trustedinstaller and it worked!
Just opening this issue so the tool can be updated to also fix permissions for the Packages folder, which should help people who had a similar problem as mine.

I'd appreciate it if someone would add this, I spend quite some time wondering what was missing until I copied the programdata acls from a different system....

Fixed: ba5df32
The proper owner is SYSTEM and not TrustedInstaller, but I also granted "Full control" to TrustedInstaller, so hopefully it should have the same effect.


Inconsistent app state if download interrupted

Actual Behaviour
Currently, if the first download is interrupted, the app goes in an inconsistent state where the next app launch will assume the data is downloaded
Expected Behaviour
This is simply due to the step at which the shared preference of the data downloaded is stored. Ot is set to true as soon as the user presses Yes on download data dialog, whereas it should be set to true when the complete data is downloaded
Steps to reproduce it

Uninstall app or remove data
Click Yes when prompted to download data
Interrupt download before completion by exiting the application
Re-enter application

Would you like to work on the issue?
Yes
@the-dagger @mananwason Shall I send the PR?

@iamareebjamal
data download is happening on a separate thread right. so even if i exit the app the process of downloading should go on right?

No. That's not true. Threads are attached to the process, so they are ended too when process exits.

@iamareebjamal
i dont think you are right.
when we use async task the process keeps on going on despite exitng or something else. As this is a similar thing it should go on and thus wont exit.

Try exiting the app while download is going on.

@iamareebjamal I tested this on my phone. Seems like a valid issue :+1:

I too faced the same issue. What I did is, Cleared the data of app, restarted it again. When it prompted for data download, I clicked on "yes". Then after a moment, I turned off my wifi switch and closed the app. Now when I restarted the app, the data is not syncing. All the tracks shows "No Sessions yet!"

i dont have the problem with the issue. its just that if the process occurs on a background thread the process never exits.
anyways the issue seems valid.

We are removing listeners and binding the asynchronous tasks to activity lifecycle. Running async tasks such that process doesn't exit until it is completed is a memory leak situation. As soon as the activity is destroyed, all its instances must be garbage collected in the next GC run and if a background task is holding it as a strong reference, then it may not be garbage collected, hence, causing a memory leak. So in order to prevent that, we explicitly make sure that background tasks do not continue when activity is destroyed. Some libraries like Picasso do it via WeakReference. Furthermore, keeping the task running may even crash the application as when it is completed, it will try to update the UI, which is destroyed, hence causing an anonymous crash


Parallel execution operator scheduling seems to be inconsistent across runs

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): Yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Ubuntu 18.04.5 LTS
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
TensorFlow installed from (source or binary): binary
TensorFlow version (use command below): 2.4.0
Python version: 3.6.9
Bazel version (if compiling from source):
GCC/Compiler version (if compiling from source):
CUDA/cuDNN version: 10.2.89
GPU model and memory: 512-core Volta GPU with Tensor Cores
--

Describe the current behavior
I'm trying to run a small computational graph in parallel on both CPU and GPU. The computational graph is shown below.

I want Conv1, Conv2 and Conv4 to be executed on GPU and Conv3 to be executed on CPU. After mapping the operators to the required device, I'm observing inconsistent operator scheduling when executing the graph across multiple runs. You can observe three different execution trace for the same computational graph. These three traces have different total inference or run times. They vary from 300ms to 400ms.

Describe the expected behavior
Its expected to produce the first trace output shown above where both operation on CPU and GPU starts executing in parallel at almost the same time.
Standalone code to reproduce the issue
Please find the code snippet here

Hi,
Thank you for opening this issue. Since this issue has been open for a long time, the code/debug information for this issue may not be relevant with the current state of the code base.
The Tensorflow team is constantly improving the framework by fixing bugs and adding new features. We suggest you try the latest TensorFlow version with the latest compatible hardware configuration which could potentially resolve the issue. If you are still facing the issue, please create a new GitHub issue with your latest findings, with all the debugging information which could help us investigate.
Please follow the release notes to stay up to date with the latest developments which are happening in the Tensorflow space.


Describe the bug
All <mj-raw> tags get rendered within the html output.
To Reproduce
Create a mjml template and render it with:
mjml('some mjml', {
    filePath: 'path/to/index.html'
  });

Expected behavior
No <mj-*> tags are in the output
MJML environment (please complete the following information):

OS: Ubuntu 19.04 / OSX
MJML Version 4.4.1

It's more specific, as it looks like to me. I recognized that behavior if I use  inside a  for example. Reproduced with the  try live feature of the documentation (https://mjml.io/try-it-live/components/text)  with the following example:
<mjml>   <mj-body>     <mj-section>       <mj-column>         <mj-text>           <mj-raw>{% if title %}</mj-raw>           <h1>             Hey Title!           </h1>           <mj-raw>{% else %}</mj-raw>           <h2>             Hey Subtitle           </h2>           <mj-raw>{% endif %}</mj-raw>         </mj-text>       </mj-column>     </mj-section>   </mj-body> </mjml>
Also reproduced if  used inside the following mjml tags.

Maybe I've missed something in the documentation.

There's no need for mj-raw within mj-text, you can just use the {% %} tags
directly in mj-text
Kind Regards,
:----------------------------:
Dale McConnell
On Thu, 15 Aug 2019 at 15:27, Philipp Jauss<EMAIL_ADDRESS>wrote:

It's more specific, as it looks like to me. I recognized that behavior if
I use inside a for example. Reproduced with the try live feature of the
documentation (https://mjml.io/try-it-live/components/text) with the
following example:
     {% if title
%}  Hey Title!  {% else %}  Hey
Subtitle  {% endif %}

Also reproduced if used inside the following mjml tags.

Maybe I've missed something in the documentation.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/mjmlio/mjml/issues/1682?email_source=notifications&email_token=ACWEWOAGQ5PNAUZN4DNNG2TQEVKUXA5CNFSM4IL37D2KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4LZSQQ#issuecomment-521640258,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACWEWOHEM4QQP2R6QS433ULQEVKUXANCNFSM4IL37D2A
.

Final tag that can contain html doesn't need mj-raw

Hey @iRyusa is it possible to add the list of 'content' tags that dont parse (the mj-raw tag) to the docs @ https://mjml.io/documentation/#mj-raw?
Cause it seems like there's a few of us trying to use mjml in conjunction with template languages and expecting mj-raw to work globally.
Also see #1482 #1626

Common rules is any tag that receive anything other than MJML behave as a content tag


[Rust] .. should be like operator

In Rust, you can define a range with .. : 0..3 is 0 to 3 excluded and you can have 0..=3 meaning 3 included.

This is also ready.

Does ..= works as well?

Yes, it works as well. It seems to me, that Tree-sitter itself gets it wrong, but as = is also operator, highlighting is fine (=.


'$data-image-*' variable at the top of output file

My config is as follows:
datauri: {
    my_target: {
        src: ["img/**/*.svg"],
        dest: "css/svg_datauris.scss"
    }
}

This results in the following output:
$data-image-*: "data:image/svg+xml;base64,";
$data-image-myimage: "data:image/svg+xml;base64,PD94bWwgdm.....N2Zz4NCg==";
// and so on

Note the empty data-image-* variable at the top of the output file.

Can no longer repro. Not sure what was the issue.


Rename generated methods about condition request support (#1417)

Let's use some more common terms for the generate interfaces and methods that deal with support for conditional requests.
For instance:

interface ConditionalResponseEntity -> ConditionalRequestEntity
method ctx.ConditionalEntity(...) -> ctx.ConditionalRequest(...)

Fixes #1417
Signed-off-by: Xavier Coulon<EMAIL_ADDRESS>
Please describe what your change is about.
What issues does it solve? (Use autoreferencing for this)
If you are still working on the change please prefix the pull request title with "WIP"

Codecov Report

Merging #1418 into master will decrease coverage by 0.01%.
The diff coverage is 75%.

@@            Coverage Diff             @@
##           master    #1418      +/-   ##
==========================================
- Coverage   60.28%   60.26%   -0.02%
==========================================
  Files         119      119
  Lines       11114    11112       -2
==========================================
- Hits         6700     6697       -3
- Misses       3760     3761       +1
  Partials      654      654

Impacted Files
Coverage Δ

goasupport/conditional_request/generator.go
15.71% <0%> (-0.12%)
:arrow_down:

controller/user.go
0% <0%> (ø)
:arrow_up:

controller/space.go
81.69% <100%> (ø)
:arrow_up:

controller/iteration.go
85.02% <100%> (ø)
:arrow_up:

controller/workitemtype.go
80.43% <100%> (ø)
:arrow_up:

controller/work_item_link_type.go
80.4% <100%> (ø)
:arrow_up:

controller/comments.go
74.21% <100%> (ø)
:arrow_up:

controller/area.go
88.05% <100%> (ø)
:arrow_up:

controller/users.go
78.87% <100%> (ø)
:arrow_up:

controller/filter.go
96.61% <100%> (ø)
:arrow_up:

... and 2 more

Continue to review full report at Codecov.

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


Update courses.md

@kashyap32 Please follow contribution guidelines properly for your future commits. Accepting this PR as you have put efforts and can't let it go!


Nuget documentation is not loading the correct file

When I am looking on the nuget package I cannot see documentation provided in
https://raw.githubusercontent.com/cpoDesign/EFCore.TemporalSupport/master/README.md
can you fix this?

the expected fix did not work


Add back builtin support for OpenShift web console.

Is your feature request related to a problem? Please describe.
When a workshop is deployed to OpenShift, and is targeting OpenShift features, it would be preferable to have access to the OpenShift web console rather than standard Kubernetes dashboard.
Describe the solution you'd like
Add back ability to set vendor under applications.console to openshift.
Also provide an option which can be set which results in download of the oc client corresponding to the OpenShift version, from the download server hosted within the OpenShift cluster itself, into the workshop session.
Describe alternatives you've considered
The OpenShift web console can be added via a side car by adding a patch in the workshop definition, but this puts complexity on the user.
The oc client could be provided with the workshop base image rather than downloading it from the clusters own download server, but this would add extra bloat to the workshop base image as would need to support multiple versions like do with kubectl.
Additional information
No response

A way of doing this through the workshop definition for now is as follows:
apiVersion: training.educates.dev/v1beta1
kind: Workshop
metadata:
  name: "lab-openshift-testing"
spec:
  title: "Workshop"
  description: "Workshop description."
  publish:
    image: "$(image_repository)/lab-openshift-testing-files:$(workshop_version)"
  workshop:
    files:
      includePaths:
      - /workshop/**
      - /templates/**
      - /README.md
  session:
    namespaces:
      budget: medium
    applications:
      terminal:
        enabled: true
        layout: split
      editor:
        enabled: true
      console:
        enabled: false
      docker:
        enabled: false
      registry:
        enabled: false
      vcluster:
        enabled: false
    ingresses:
    - name: xconsole
      host: console-openshift-console.$(ingress_domain)
      protocol: https
    - name: console
      port: 10083
    dashboards:
    - name: OpenShift
      url: $(ingress_protocol)://console-$(session_hostname)/
    patches:
      containers:
      - name: console
        image: quay.io/openshift/origin-console:4.15
        command:
        - "/opt/bridge/bin/bridge"
        env:
        - name: BRIDGE_K8S_MODE
          value: in-cluster
        - name: BRIDGE_LISTEN
          value: http://<IP_ADDRESS>:10083
        - name: BRIDGE_BASE_PATH
          value: "/"
        - name: BRIDGE_PUBLIC_DIR
          value: "/opt/bridge/static"
        - name: BRIDGE_USER_AUTH
          value: disabled
        - name: BRIDGE_BRANDING
          value: openshift
        volumeMounts:
        - mountPath: /var/run/secrets/kubernetes.io/serviceaccount
          name: cluster-token
          readOnly: true
    objects:
    - apiVersion: rbac.authorization.k8s.io/v1
      kind: Role
      metadata:
        name: openshift-user
      rules:
      - apiGroups:
        - project.openshift.io
        resources:
        - projects
        verbs:
        - get
        - list
        - watch
      - apiGroups:
        - image.openshift.io
        resources:
        - imagestreams
        verbs:
        - create
      - apiGroups:
        - build.openshift.io
        resources:
        - builds/details
        verbs:
        - update
      - apiGroups:
        - build.openshift.io
        resources:
        - builds
        verbs:
        - get
      - apiGroups:
        - build.openshift.io
        resources:
        - buildconfigs
        - buildconfigs/webhooks
        - builds
        verbs:
        - create
        - delete
        - deletecollection
        - get
        - list
        - patch
        - update
        - watch
      - apiGroups:
        - build.openshift.io
        resources:
        - builds/log
        verbs:
        - get
        - list
        - watch
      - apiGroups:
        - build.openshift.io
        resources:
        - buildconfigs/instantiate
        - buildconfigs/instantiatebinary
        - builds/clone
        verbs:
        - create
      - apiGroups:
        - apps.openshift.io
        resources:
        - deploymentconfigs
        - deploymentconfigs/scale
        verbs:
        - create
        - delete
        - deletecollection
        - get
        - list
        - patch
        - update
        - watch
      - apiGroups:
        - image.openshift.io
        resources:
        - imagestreams/status
        verbs:
        - get
        - list
        - watch
      - apiGroups:
        - image.openshift.io
        resources:
        - imagestreamimages
        - imagestreammappings
        - imagestreams
        - imagestreamtags
        - imagetags
        verbs:
        - get
        - list
        - watch
      - apiGroups:
        - image.openshift.io
        resources:
        - imagestreams/layers
        verbs:
        - get
      - apiGroups:
        - route.openshift.io
        resources:
        - routes
        verbs:
        - create
        - delete
        - deletecollection
        - get
        - list
        - patch
        - update
        - watch
      - apiGroups:
        - route.openshift.io
        resources:
        - routes/custom-host
        verbs:
        - create
      - apiGroups:
        - route.openshift.io
        resources:
        - routes/status
        verbs:
        - get
        - list
        - watch
    - apiVersion: rbac.authorization.k8s.io/v1
      kind: RoleBinding
      metadata:
        name: openshift-user
      roleRef:
        apiGroup: rbac.authorization.k8s.io
        kind: Role
        name: openshift-user
      subjects:
      - kind: ServiceAccount
        namespace: $(workshop_namespace)
        name: $(service_account)


Simple way to generate TLV encode/decode logic (CON-1150)

I would like to be able to write a small XML file describing my custom clusters and then run a tool to generate the TLV encode/decode logic.  zap can do that, but ... how can I run zap over a small amount of external XML without rebuilding all of CHIP?

@jonsmirl This is how you can add custom cluster.

Write data model xml in required format.
Add entry of the xml/s to the src/app/zap-templates/zcl/zcl-with-test-extensions.json, src/app/zap-templates/zcl/zcl.json and src/app/zap-templates/zcl/data-model/all.xml.
Use script to regenerate zap. ./scripts/tools/zap_regen_all.py

There should be a simpler way to do this. Wouldn't you like to put the XML for the Rainmaker cluster into the build, and then when you build, the build process generates the Encode/Decode file?
In the short term... can you check an empty XML file into CHIP named custom.xml and edit src/app/zap-templates/zcl/zcl-with-test-extensions.json, src/app/zap-templates/zcl/zcl.json and src/app/zap-templates/zcl/data-model/all.xml to process it? Then all you have to do is replace custom.xml with your own XML.  But that still leaves the manual process of digging the generated code out of the zzz directories.

As of now this is the way to add custom cluster.


Feat: Super Pill and Range Picker

Fixes #4679
PRD: https://www.notion.so/rilldata/Time-Super-pill-b26f581630a14680b05fb5f2cd2d41e6?pvs=4
This PR incorporates a variety of updates related to the new Time Super Pill. It started as a refactor of the calendar picker, the original description of which can be seen below.
This implementation has been put together with the Time Control store refactor in mind, but sticks to the existing state, pulling only a few helpers or types from the new time controls file. As such, a few things that have just been copied verbatim into new locations will be simplified when integrated with the new store.
To Do:

[x] Add custom range selection to comparison (needs feedback)
[x] Resolve UI issues with narrower screens (feedback welcome)
[x] Ensure implementation matches Figma as close as possible
[x] Move subrange to Zoom button
[x] Consider solutions to button shifting issue (based on changing range strings)
[x] Update tests
[x] Add comparison selector to Time Series view
[x] Resolve inclusive/exclusive date display issues

Out of Scope:

[ ] Add zoom functionality from PRD (likely out of scope for this PR)

This PR is a feature-complete, but WIP proposal (initially started with #3824) that both updates the TimeRangeSelector and TimeComparisonSelector menus to the new ShadCN components and makes a related and technically necessary change to our date picker implementation. Additionally, there is some simplification being done in preparation for the refactor of the time control state management.
Looking for experience passes around the new UX, technical review (mostly around date handling), design input and general feedback.

Removes the use of Litepicker
Adds custom Month and Calendar components
Removes the use of domain-less text fields as a secondary form of input
Adds Select components from ShadCN
Uses dropdown UI elements for month, day and year selection
Adds the ability to nudge the selection by different time grains
Fixes a critical bug that would extend the selected range by one day
Explicitly labels the start and end dates as inclusive/exclusive

Tagging @mindspank and @jkhwu

Closes: #3808

As mentioned in check-in, first @mindspank will review the UX. After his green light, one of @AdityaHegde / @djbarnwal / myself will do the code review.

Code looks good. I see @jkhwu just finalized the Time "Superpill" PRD, so I think her UX feedback will be important.

Thanks for your patience, here are my thoughts:

Those little step buttons at the bottom felt a bit buggy, and they may not be necessary. Sometimes (esp after changing the dates manually), those arrow buttons only changed one of the dates, and once when I tried stepping by year it didn't work for either date. Sometimes the year stepper lets you get to a year much further in the future than the dropdown selectors allow. I'd prefer omitting those buttons for now.

When using the calendar layout to click on dates, I found myself frequently entering this state (where the start date was after the end date). Could we simply disallow this from ever happening so I don't trigger a bunch of errors by clicking dates? I propose that instead of entering this state, we simply assume that the earlier selected date is always the start date. Would that be possible?

Could we set the extended calendar panel to not move around? When trying to advance the months using the arrows, I kept closing the panel by accident because the arrow moves around depending on how many days are in the month. Would be nice to keep those arrows fixed in place.

Just a note in response to Eric's comment that this component will remain available even after we implement the time super-pill concept, so would be great to spend the time polishing its usability.

https://www.notion.so/rilldata/UXQA-Time-superpill-d7ed5d224f4e4a829bf588eb3ee27d82?pvs=4
^ Where @ericpgreen2  and I have started listing things from experience pass

Adding some comments to the same list

@ericpgreen2 @briangregoryholmes Are we splitting timeseries exports into its own issue?

UXQA –

Given the super pill can turn on a time range comparison, I'd expect to be able to turn off a time range comparison. It feels weird to have to go somewhere else to do the inverse operation, and I initially had trouble finding how to do it. One idea – maybe we shouldn't display "vs [comparison period]" when there's no comparison, and maybe there should be explicit "add time comparison" / "remove time comparison" (icon) buttons. @jkhwu, @mindspank?

With "All time" selected:

I'd expect the "Pan time range back" button to be disabled.
Clicking/enabling the comparison "custom period" doesn't seem to do anything meaningful

Hi y'all, I've done a Product Review and documented my thoughts here:
https://www.notion.so/rilldata/EO-Product-Review-notes-25f671118e0f4bc7a1bd6073091581ab?pvs=4

Just reviewed, this looks good to me!

I love the new always-on leaderboard comparisons!
UXQA –

I navigate from "Last 7 days" comparing "Previous week" to  "Last 14 days". The compared range has updated to show the previous 14 days / previous period, but the label still says "Previous week".

On "Last 12 months", I initially see ["Previous period", "Previous Year"] are available options. After selecting "Previous period", "Previous year" disappears as an option.
In other cases, if I have this right, it looks like we don't show "Previous period" when we have already have an equivalent "Previous X". E.g. when the time range is "Last 24 Hours", we have "Previous day", and we don't show "Previous period". So, it seems like we should do the same for "Last 12 months" and "Previous year".

The Custom Time Range picker isn't very keyboard accessible. It doesn't need to be perfect for this first pass, but I most noticed it when I pressed "tab" to try to move from the Start Date to End Date, the dialog closed on me, and the selection wasn't applied.

(Existing behavior) I noticed that Pivot comparisons don't work when a Time dimension is included. Maybe we could be explicit about this and toggle off the Comparison in the Super Pill.

Addressed, though this is technically a behavior change. Default comparison period for LAST_14_DAYS was WEEK instead of CONTIGUOUS. You can see in your screenshot that the comparison interval overlaps the primary interval. This feels wrong to me, though, so I think the behavior change is correct.
This is a leap year bug that I can't fully address as part of this PR. It will not be present after I move time controls to the new store/logic.
Addressed.
Added a workaround for just the date picker, but this looks to be true of all our menus. Tab closes the dropdown. I didn't immediately see a way to disable this using shadcn/Bits APIs.
Made these states mutually exclusive for now.
Asking Janet/Mike.

There are three areas that we want to follow up with soon but that were considered too big of an effort for this PR:

Showing comparison lines in multi-line visualizations (when dimension comparisons are on)
Showing delta columns in Time Dimension Detail
Showing delta columns in Pivot, even when a time pill is being used.

cc @ericokuma and @mindspank for consideration in upcoming sprints.


Add support for running multiple OLTP-Benchmark without loading data every time

For multiple experiments that running the same benchmark but with different workloads, one could pass a list as a command-line arguments (to loop over terminals) to the run_oltpbench.py:
run_oltpbench.py tpcc 45,43,4,4,4 --loader-threads=4 --client-time=60 --terminals=1,2,4,8,16
The run_oltpbench.py script would first create a and populate a database that can be reused, and then run experiments with different workloads on it.
Then we could reduce the data loading time when we run some scalability testing(e.g. nightly job on Jenkins)

Why was this closed?


Integrates Haddock

Closes #127 by starting to integrate haddock. Updates all files to produce complete documentation for haddock.
Still needs to be updated to auto-produce & publish haddock documentation under the GH-pages website for this project. This can be done automatically via Travis-CI, and only on the master when things are ready.
In addition, I'm going to run through and clear up as many of those warnings as I can in this same PR. Although we will be rewriting a large portion of the codebase in the coming year, it would be advantageous to do so on top of a clean and clearly documented body of work.

New additions integrate haddock as part of the testing process for PRs. The standard tests via HUnit run first, and if they succeed they are followed by running stack haddock. If the source files fail to parse into docs this will cause the overall test result to fail, and will report accordingly.
If the test result passes, and the branch in question is master, an automatic deployment of the generated haddock will take place, which should end up in https://the-code-in-sheep-s-clothing.github.io/Spiel-Lang/haddock/ (once the first build on master completes).

Going to move this in to verify that the haddock directory is successfully generated on the master. Changes look good other than that, nothing that should impact functionality.


Support for Collections

I can't get this plugin to work in combination with Jekyll Collections. It works fine when I avoid them.
Tried on Jekyll 2.4.0, 2.5.3.
Full stacktrace

Fixed in #9


Always "Temporary failure in name resolution"

If it's happening to all IPs, then it sounds like it's a DNS issue on your end. Try running:
nslookup IP

Also, you could try temporarily changing your DNS to use Google's nameservers <IP_ADDRESS>, e.g.,
sudo nano /etc/resolv.conf

blu@server:~$ nslookup <IP_ADDRESS>
Server:         <IP_ADDRESS>
Address:        <IP_ADDRESS>#53

** server can't find <IP_ADDRESS>.in-addr.arpa: SERVFAIL

I tried adding more now:
blu@server:/etc/resolvconf/resolv.conf.d$ nslookup <IP_ADDRESS>
;; reply from unexpected source: <IP_ADDRESS>#53, expected <IP_ADDRESS>#53
;; Got SERVFAIL reply from <IP_ADDRESS>, trying next server
;; Got SERVFAIL reply from <IP_ADDRESS>, trying next server
;; reply from unexpected source: <IP_ADDRESS>#53, expected <IP_ADDRESS>#53
;; reply from unexpected source: <IP_ADDRESS>#53, expected <IP_ADDRESS>#53
;; connection timed out; no servers could be reached

blu@server:/etc/resolvconf/resolv.conf.d$ sudo cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver <IP_ADDRESS>
nameserver <IP_ADDRESS>
nameserver <IP_ADDRESS>
nameserver <IP_ADDRESS>
search fritz.box

This appears to be an issue with your DNS and not with goaccess. Essentially goaccess uses the dns resolver configured on your machine. From your nslookup output above, it couldn't resolve the IP and thus the same output in goaccess. I'd recommend posting a question on https://serverfault.com/ to see what might be the issue with your DNS.


Error during installation

I tried to run the code using ./run-training.sh, but it shows the error:
Failed to build pyarrow
ERROR: Could not build wheels for pyarrow which use PEP 517 and cannot be installed directly

Hi @deepakraina99 I think it is a problem with your Python version, maybe this will help https://stackoverflow.com/questions/62994971/error-installing-streamlit-it-says-error-could-not-build-wheels-for-pyarrow-wh


OOM tracking: backport #1348, #1346 and #1340 (release-1.15)

Backports #1348, #1346 and #1340.
/sig scalability
/cc jkaniuk
/cc wojtek-t

/lgtm
/approve


PEST updates

@mnfienen is this ready to pull in? I can deal with any CI failures.

@jdhughes-usgs  - yeah this should be ready to pull in. Not sure why linting CI is failing because it's passing on my machine


README: Add goacmedns, a Go acme-dns client library

:wave: Hi @joohoi,
In the process of writing an ACME-DNS hook for a Go ACME client I ported your pyacmedns library to Go: https://github.com/cpu/goacmedns
This PR adds a link to the README next to pyacmedns. I hope someone finds it useful!

Coverage remained the same at 92.244% when pulling efeb5eb1aab9055b044cd88ea14329269fb9c877 on cpu:cpu-add-goacmedns into 0bbbf5ed39d01242a036274911a0399edf8d97f8 on joohoi:master.

My github.com/xenolf/lego ACME-DNS hook using goacmedns is still a WIP (needs tests and some cleanup) but its far enough along that I was able to use it to issue a certificate from the Let's Encrypt ACMEv2 staging environment w/ Lego and ACME-DNS :tada:

For reference, I opened a PR with my initial Lego hook built on this library: https://github.com/xenolf/lego/pull/591

Yay! This is awesome! Thanks!


default local maybe better

now default prod, so error when run without APP_ENV.
default local maybe better?
docker run -p 8000:80 -e "DB_CONNECTION=sqlite"   -e "APP_KEY=base64:L+3avOYCfuq8nnDpHs74+5Et3sx27TssucHQIyqfpDY="   laravelfans/laravel:6

Route cache cleared!

In Route.php line 917:

  Unable to prepare route [api/user] for serialization. Uses Closure.

docker run -p 8000:80 -e "APP_ENV=local" -e "DB_CONNECTION=sqlite"   -e "APP_KEY=base64:L+3avOYCfuq8nnDpHs74+5Et3sx27TssucHQIyqfpDY="   laravelfans/laravel:6

fine.

docker run -it laravelfans/laravel is the best!
need no argument


lager_console_backend on Windows

Hi,
the following commit:
https://github.com/basho/lager/commit/032b3fc518bbe6db3f08bc71e0807e07ac566587
broke lager_console_backend on Windows.
(Apart from this, the condition "element(1, os:type()) /= win32" is evidently a bad choice for checking if the new shell is present)
The previous commit:
https://github.com/basho/lager/commit/59a2a1a974283a6972b64752fe394f9dcf6bc055
correctly allowed to use lager_console_backend on Windows with old shell because there's no alternative. The commit above for some reasons reverts the condition and breaks this useful behaviour. Please change it back, if possible.

Due to the age of this issue, I'm closing it. Please reopen if it's still broken.


wildcard for protectedResourceMap ?

Please follow the issue template below. Failure to do so will result in a delay in answering your question.
Library

[ ]<EMAIL_ADDRESS>or<EMAIL_ADDRESS>[ ]<EMAIL_ADDRESS>[ ]<EMAIL_ADDRESS>[x]<EMAIL_ADDRESS>[ ]<EMAIL_ADDRESS>
Description
msal interceptor will attach the token to the requests which url & scope listed in "protectedResourceMap" as below format
      protectedResourceMap: [         ['https://graph.microsoft.com/v1.0/me', ['user.read']]       ]
since in my situation i got some urls with same scope.
so is it possible to use a wild card url in protectedResourceMap?
which similar like this
      protectedResourceMap: [         ['https://*.microsoft.com/*', ['user.read']]       ]
or
      protectedResourceMap: [         ['*', ['user.read']]       ]

@gItSpLasHeR This is reasonable ask, we'll track it and follow up when we have a chance to address, thanks!

For those who looks about msal-angular MsalHttpInterceptor.
I've made own implementation of MsalInterceptor to overcome issues with protectedResourceMap.
This is my custom code block:
// #region own workaround in order not to put every api endpoint url to settings
if (!scopes && req.url.startsWith(this.settingsService.apiUrl)) {
  scopes = [this.auth.getCurrentConfiguration().auth.clientId];
}
// #endregion

// If there are no scopes set for this request, do nothing.
if (!scopes) {
  return next.handle(req);
}