Use H5Dchunk_iter to get chunk information from HDF5 files

Use H5Dchunk_iter to get chunk information from HDF5 files
This pull request makes chunk information retrieval from HDF5 files more efficient, especially when more than 16K chunks are involved. Translation times drop from tens of seconds to fractions of a second.
Fix #286
Here we replace dsid.get_chunk_info with dsid.chunk_iter which is available with HDF5 1.14.0 and will soon be available with HDF5 1.12.3. The HDF5 C call is H5Dchunk_iter.
The is particularly more efficient with a large number of chunks.
Before this pull request: N^2 scaling with the number of chunks
With 16,384 chunks translating takes 13 seconds. With 32,768 chunks, twice as many chunks, translating takes 74 seconds.
In [1]: import kerchunk.hdf, fsspec, h5py

In [2]: with h5py.File("pytest.h5", "w") as f:
   ...:     dset = f.create_dataset("test", (1024*2,1024*2), chunks=(16,16))
   ...:     dset[:] = 1
   ...:     print(dset.id.get_num_chunks())
   ...:
16384

In [3]: %%time
   ...: with fsspec.open("pytest.h5") as inf:
   ...:     h5chunks = kerchunk.hdf.SingleHdf5ToZarr(inf, "pytest.h5", inline_threshold=100)
   ...:     h5chunks.translate()
   ...:
CPU times: user 13.3 s, sys: 6.91 ms, total: 13.3 s
Wall time: 13.3 s

In [4]: with h5py.File("pytest.h5", "w") as f:
   ...:     dset = f.create_dataset("test", (1024*4,1024*2), chunks=(16,16))
   ...:     dset[:] = 1
   ...:     print(dset.id.get_num_chunks())
   ...:
32768

In [5]: %%time
   ...: with fsspec.open("pytest.h5") as inf:
   ...:     h5chunks = kerchunk.hdf.SingleHdf5ToZarr(inf, "pytest.h5", inline_threshold=100)
   ...:     h5chunks.translate()
   ...:
CPU times: user 1min 14s, sys: 34.1 ms, total: 1min 14s
Wall time: 1min 14s

In [6]: with h5py.File("pytest.h5", "w") as f:
   ...:     dset = f.create_dataset("test", (1024*4,1024*4), chunks=(16,16))
   ...:     dset[:] = 1
   ...:     print(dset.id.get_num_chunks())
   ...:
65536

In [7]: %%time
   ...: with fsspec.open("pytest.h5") as inf:
   ...:     h5chunks = kerchunk.hdf.SingleHdf5ToZarr(inf, "pytest.h5", inline_threshold=100)
   ...:     h5chunks.translate()
   ...:

CPU times: user 6min 33s, sys: 275 ms, total: 6min 33s
Wall time: 6min 33s

After this pull request: Linear scaling with the number of chunks
With 16,384 chunks, translating takes 0.131 seconds. With 32,768 chunks, twice as many chunks, translating takes 0.214 seconds.
In [1]: import kerchunk.hdf, fsspec, h5py

In [2]: with h5py.File("pytest.h5", "w") as f:
   ...:     dset = f.create_dataset("test", (1024*2,1024*2), chunks=(16,16))
   ...:     dset[:] = 1
   ...:     print(dset.id.get_num_chunks())
   ...:
16384

In [3]: %%time
   ...: with fsspec.open("pytest.h5") as inf:
   ...:     h5chunks = kerchunk.hdf.SingleHdf5ToZarr(inf, "pytest.h5", inline_threshold=100)
   ...:     h5chunks.translate()
   ...:
CPU times: user 131 ms, sys: 23.8 ms, total: 155 ms
Wall time: 154 ms

In [4]: with h5py.File("pytest.h5", "w") as f:
   ...:     dset = f.create_dataset("test", (1024*4,1024*2), chunks=(16,16))
   ...:     dset[:] = 1
   ...:     print(dset.id.get_num_chunks())
   ...:
32768

In [5]: %%time
   ...: with fsspec.open("pytest.h5") as inf:
   ...:     h5chunks = kerchunk.hdf.SingleHdf5ToZarr(inf, "pytest.h5", inline_threshold=100)
   ...:     h5chunks.translate()
   ...:
CPU times: user 214 ms, sys: 4.39 ms, total: 218 ms
Wall time: 217 ms

In [6]: with h5py.File("pytest.h5", "w") as f:
   ...:     dset = f.create_dataset("test", (1024*4,1024*4), chunks=(16,16))
   ...:     dset[:] = 1
   ...:     print(dset.id.get_num_chunks())
   ...:
65536

In [7]: %%time
   ...: with fsspec.open("pytest.h5") as inf:
   ...:     h5chunks = kerchunk.hdf.SingleHdf5ToZarr(inf, "pytest.h5", inline_threshold=100)
   ...:     h5chunks.translate()
   ...:
CPU times: user 472 ms, sys: 32.4 ms, total: 504 ms
Wall time: 503 ms

Summary
Time for SingleHdf5ToZarr.translate():

Number of Chunks
Before this pull request, with get_chunk_info
After this pull request, with chunk_iter
Ratio

16,384
13 seconds
0.131 seconds
99x

32,768
74 seconds
0.214 seconds
346x

65,536
393 seconds
0.472 seconds
832x

Thanks for coming back to this - good to see it didn't take too many lines of code, but made a big impact!
Do you happen to know, are fewer bytes being transferred too? That would mean even bigger impact for remote scanning of HDFs.

Do you happen to know, are fewer bytes being transferred too?

My guess is yes, this does involve fewer bytes transferred. The current method is very inefficient. For each chunk, it starts a new search through the metadata.
The new method searches through the metadata exactly once.
What could mitigate the difference in transferred data is the metadata cache.
https://docs.hdfgroup.org/hdf5/develop/_t_n_m_d_c.html
Another factor could be how consolidated the metadata is. I usually like to have all the metadata in a single 4 MB block at the beginning of the file by setting the metadata block size.
https://docs.hdfgroup.org/hdf5/develop/group___f_a_p_l.html#ga8822e3dedc8e1414f20871a87d533cb1

Another factor could be how consolidated the metadata is. I usually like to have all the metadata in a single 4 MB block at the beginning of the file by setting the metadata block size.

We typically open HDF5 files with "first" caching strategy, meaning that the first block (usually 5MB) is never flushed, so it sounds like we were already doing the right thing here. That would not, of course, help with metadata spread throughout the file.

If one just makes the meta data block larger them the meta data would be more consolidated.

Only if you control creation of the hdf5 file! I bet most never touch or even know about such options.

Only if you control creation of the hdf5 file! I bet most never touch or even know about such options.

This is a big issue since the defaults are VERY conservative.


Database calls on main UI thread

Shouldn't the local database calls be handled off of the UI thread? If you create a few tasks with large descriptions the app hangs, even showing unresponsive messages.

Yes. The MVP sample only executes the remotedatasource.getTasks() on a different thread. Samples like MVP-Clean get off the main thread asap. This should be documented.

I found sample like MVP-Dagger also call database in UI Thread

Closing as obsolete.


Update Selwyn PPP

Closes #239

Updated existing PPP for Selwyn

LGTM, just one small comment. Should we wait until all the PRs are done before merging this?

Yes, we will merge all PPPs together after all bugs have been fixed. We can do it while finalising our UG and DG.


Prepared Query Not Working

Hi,
Map<String, Object> params = new HashMap();
params.put("rid", someRID);

String query =  "SELECT FROM :rid";

List<ODocument> list = getDB().command(new OSQLSynchQuery<ODocument>(query)).execute(params);

Why does this not work?
I'm using 2.0-rc1.
Thanks,

@luigidellaquila is this addressed in 2.1?

This is already in 2.1-SNAPSHOT ;-)

Great!


Improve detection of C++11 support.

Set ELPP_CXX11 only when the compiler’s C++ standard is C++11 or
later (esp. GCC and Clang).
Do not use Clang version, as it is not reliable.
Detect and use std::thread when Clang can find the  header
file (this also fixes the problem that %thread does not output anything
in Clang prior to this change).

I have noticed that you have recently removed the error report when C++11 is not detected. If it had not been removed, this change would also make the compiler report the error when -std=c++11 or similar is not specified on the command line in GCC 5.x (or earlier) and Clang.

I do not know why you original chose not to enable std::thread in Clang. My assumption is that it was  was not available at an early stage or something. If it is something else, say, std::thread has problems on a specific platform, we may need some other solutions.
By the way, feel free to borrow from my C++11-detection code, which is available at https://github.com/adah1972/nvwa/blob/master/nvwa/c%2B%2B11.h

In addition, if you need some platform-detection code, you may check https://github.com/adah1972/nvwa/blob/master/nvwa/_nvwa.h

In case you do not know why I said Clang version is not reliable.
These definitions are from the Apple Clang installed by Xcode:
#define __clang__ 1
#define __clang_major__ 8
#define __clang_minor__ 0
#define __clang_patchlevel__ 0
#define __clang_version__ "8.0.0 (clang-8<IP_ADDRESS>)"

These are from the standard Clang 3.9:
#define __clang__ 1
#define __clang_major__ 3
#define __clang_minor__ 9
#define __clang_patchlevel__ 1
#define __clang_version__ "3.9.1 (tags/RELEASE_391/final)"

Sorry, I deleted the branch by mistake.

It's a bit messed up after deleting, restoring, and merging. I'll redo it.


Fail on dateutil

I installed  PyTextNow to use in an app running on a Raspberry Pi 3A+, Python 3. I first took an error that the dateutil library was not found. I installed dateutil and now I get the following error. Suggestions to fix?

%Run main.py
Traceback (most recent call last):
File "/home/pi/clearskyalarm/main.py", line 10, in
import pytextnow as pytn
File "/home/pi/.local/lib/python3.7/site-packages/pytextnow/init.py", line 2, in
from pytextnow.TNAPI import *
File "/home/pi/.local/lib/python3.7/site-packages/pytextnow/TNAPI.py", line 8, in
from dateutil.relativedelta import relativedelta
File "/home/pi/.local/lib/python3.7/site-packages/dateutil/relativedelta.py", line 118
raise TypeError, "relativedelta only diffs datetime/date"
^
SyntaxError: invalid syntax

Theres a good chance that your datetime is configured on your Raspberry Pi.
Is it a new RPi and if so try using raspiconfig to setup your timezone

I think I ran into the same issue. pip install python-dateutil fixed it for me


Create a "notify all admin users" feature

Create a super-admin function which allows us to define email text and send a notification to all admin users. This will allow us to notify about template changes or new releases.

Covered by #2092


User token is printed out!

This line prints user token on command line! Is it safe?
https://github.com/huggingface/datasets/blob/12ebe695b4748c5a26e08b44ed51955f74f5801d/src/datasets/load.py#L2091

Indeed, this is not a good practice. I've opened a PR that removes the token value from the (deprecation) warning.


The first version of pull request template

What this PR tries to resolve?
We're trying to extract information out off the head of contributors.
Hope this help the review process more friendly for everyone.
How to test and review this PR?
Copy this template and paste to your GitHub Web UI to see if it renders well.
Additional information
Kubernetes community has one of the best guide of "Best Practices for Faster Reviews".
It describes tips for contributors tocreate a high quality PR. We might want
to create our own one and include it in PR template in the future.
In addition, I don't know how much time it take to update the changelog. I saw
some projects let PR author write down the release note of the PR. This sounds
helpful to take some burden off from maintainers, as well as let contributors
feel more involved. Anyway, it's not in this PR but is good to discuss later.

r? @Eh2406
(rust-highfive has picked a reviewer for you, use r? to override)

I do feel this template is a bit heavy and even me don't want to read it. There are some OSS PR template with checklists but I can't think of an applicable way to use it in cargo.
To make it more concise, maybe keep the "tips" section is enough?

Curious what others think!
@rfcbot fcp merge

@bors: r+

:pushpin: Commit 3d9d52f358f153f2e5a75c8ace414a6ba91a5da1 has been approved by alexcrichton

:hourglass: Testing commit 3d9d52f358f153f2e5a75c8ace414a6ba91a5da1 with merge 50840723d59e14efa721f52ef7b12dfb746d047a...

:sunny: Test successful - checks-actions
Approved by: alexcrichton
Pushing 50840723d59e14efa721f52ef7b12dfb746d047a to master...


prometheus-dnsmasq-exporter: unstable-2024-05-06 -> 0.3.0

Description of changes
Bumps dnsmasq-exporter to the latest version. This version fixes parsing dnsmasq lease files with ipv6 DUIDs.

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

https://github.com/nixos/nixpkgs/pull/340146 was merged instead.


Change TFMs to netstandard when available

As per: https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/standard-platform.md

This is obviously on hold pending rc2.

Want me to just do it and go for the lowest version the current code allows? Should only take an hour to figure that out.

I've already tried to move us to dotnet5.* as part of the #104 work. Whatever TFM's are in that branch currently are the best I could come up with given our dependencies. Are the netstandard tfm's available in rc1u1?
Feel free to improve upon it and PR into that branch.

Had a quick look, still not supported. Will have to remain as Dotnet5.x for now

Yeh, I though I'd got the latest. That's fine.

Port in progress: #133


Add operating system to Metadata

We currently list the kernel version, but not the actual kernel we are running

Should we use /etc/os-release for this?
Related: should make sure we customise that in SR OS


composed negative relative timedelta

Hi,
Thanks for this cool library!
Tested what is the date three days one hour and 20 min ago, but..
In [1]: from parsedatetime import Calendar
In [2]: c = Calendar()
In [3]: c.parse("")
Out[3]:
(time.struct_time(tm_year=2015, tm_mon=1, tm_mday=24, tm_hour=22, tm_min=42, tm_sec=33, tm_wday=5, tm_yday=24, tm_isdst=0),
 0)
In [4]: c.parse("3 days 1 hour 20 min ago")
Out[4]:
(time.struct_time(tm_year=2015, tm_mon=1, tm_mday=22, tm_hour=0, tm_min=3, tm_sec=6, tm_wday=3, tm_yday=22, tm_isdst=-1),
 3)
In [5]: c.parse("3 days ago 1 hour ago 20 min ago")
Out[5]:
(time.struct_time(tm_year=2015, tm_mon=1, tm_mday=21, tm_hour=21, tm_min=23, tm_sec=16, tm_wday=2, tm_yday=21, tm_isdst=-1),
 1)

Is it the expected behaviour?
Thanks!

Marking this as working as expected.
The reason this happens is that "ago" can only be linked to the "20 min" phrase so it will only adjust that phrase as a negative offset instead of the entire phrase.
I've always wanted to add/enhance parsedatetime to build a nlp graph of the phrase that it's parsing so that modifiers can be associated with each discrete piece but that hasn't happened yet.


Last active slide in the carousel

How to get the index of the last active slide in the carousel for example if it has 4 active slide?

This is a old thread but if someone is still looking for help there is a much cleaner and easier way to remove css or whatever from the last active item.
For example if you have three active items:
.slick-active + .slick-active + .slick-active {   padding: 0; /* or whatever */ }

how to adjust slick slider with proper arrow width and margin adjust kindly help me that


Add option '-y' to Doom CLI install command

Describe your request
I'd like Doom CLI to add option -y to command doom install. This allows users to automatically answer yes to all prompt questions.
Briefly explain its use-case

Run doom install -y
The following prompts are automatically answered with yes

Generate an envvar file? (see `doom help env` for details) (y or n)
...
Download and install all-the-icon's fonts? (y or n) y

@teeann
I haven't tested yet, but AFAIS doom help
doom -y install

should work.

I can confirm this doesn't work.
Running both doom -y install and doom --yes install gives me a prompt for
Generate an envvar file? (see 'doom help env' for details) (y or n)
Doom cloned from develop just now (f458f9776049fd7e9523318582feed682e7d575c)
uname -a:
Linux rui-iMac 5.11.0-41-generic #45~20.04.1-Ubuntu SMP Wed Nov 10 10:20:10 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

emacs -nw:
GNU Emacs 28.0.90

I don't intend to add -y to doom install. Going forward, doom install will be more of a wizard. You shouldn't be using it in headless or automated workflows. In fact, you shouldn't even be running it more than once. doom -y sync will work, however, and there are a number of --no-* switches for that, so please use that instead.


[DC-866] Fix union_ehr failing to save achilles_heel_results

Add unioned_ehr to whitelist, where it can be prepended to the Achilles tables.

Yes, I tested  it.


Flow type checking fails in projects without redux as an explicit dependency

Bug report
What is the current behavior?
When running flow type checking on a project with redux-form as a dependency, we get an error from redux-form failing to import type { Dispatch } from 'redux'
What is the expected behavior?
Clients of redux-form should not need to also include redux as a dependency for flow typing to succeed for redux-form.
Other information
It seems like an unusual use case to want redux-form without redux, but from an ideological point of view it feels like as the redux-form library relies upon redux for types, it should be declared as a non-dev dependency

I know a professional hacker named (hack4net8@gmail .com) who has worked for me this week. He offers very legitimate services such as clearing of bad records online without being traced back to you, He clone/hack mobile phones, hack Facebook account, instagram, WhatsApp, emails, Twitter, bank accounts, Skype, FIXES CREDIT REPORTs, track calls. He also help retrieve accounts that have been taking by hackers. His charges are affordable, reliable and 100% safe. For his job well done this is my own way to show appreciation, Contact him via email, (hack4net8@gmail .com)


iOS Chinese garbled

Bug description:
I use webview to open a URL and get garbled.
<WebView
  originWhitelist={['*']}
  source={{ uri: 'https://www.fisc.com.tw/tc/download/twd.txt' }}
  javaScriptEnabled
  startInLoadingState
  domStorageEnabled
  automaticallyAdjustContentInsets
/>

To Reproduce:
Use this url to open: url
Expected behavior:
no garbled.
Screenshots/Videos:

Environment:

OS: iOS
OS version: 13.5
react-native version: 0.60.6
react-native-webview version: 6.0.2

this is fixed ?


SIGSEGV Segmentation fault

We're running envoy in Kubernetes, latest tag. We were evaluating envoy a while back and had the same issue. Could be something unique to our environment
Envoy is running as a daemonset, using hostNetwork, with each client connecting to <IP_ADDRESS>:4142 for access (avoiding iptables and service proxy)
Envoy is running as a daemonset, using hostNetwork, with each client connecting to <IP_ADDRESS>:4142 for access (avoiding iptables and service proxy)
I have captured some coredumps:
core.envoy.0.71931db9a9fd4747a254b1b6a34425bf.66875.1497721116000000000000
(gdb) bt
#0  0x00000000006266a3 in Envoy::Http::Http2::ConnectionImpl::onFrameReceived (this=0x222d178, frame=0x2a4ff98) at source/common/http/http2/codec_impl.cc:326
#1  0x000000000062e093 in session_call_on_frame_received (frame=0x2a4ff98, session=0x2a4fe00) at nghttp2_session.c:3272
#2  session_after_header_block_received (session=0x2a4fe00) at nghttp2_session.c:3749
#3  nghttp2_session_mem_recv (session=0x2a4fe00, in=0x787703b "\347\337\355\346\332^\326\225\t\334[;\230\205c\030\352\222\202\355/kJ\204\243\203\206\337\336\335\334\177\001\206y\267\337}\273\177\331\177", inlen=11) at nghttp2_session.c:6087
#4  0x00000000006250ce in Envoy::Http::Http2::ConnectionImpl::dispatch (this=0x222d178, data=...) at source/common/http/http2/codec_impl.cc:234
#5  0x000000000061af5f in Envoy::Http::CodecClient::onData (this=0x297a060, data=...) at source/common/http/codec_client.cc:100
#6  0x000000000061b0bd in Envoy::Http::CodecClient::CodecReadFilter::onData (this=, data=...) at bazel-out/local-opt/bin/source/common/http/_virtual_includes/codec_client_lib/common/http/codec_client.h:139
#7  0x000000000072b2c9 in Envoy::Network::FilterManagerImpl::onContinueReading (this=this@entry=0x1e8dcc8, filter=filter@entry=0x0) at source/common/network/filter_manager_impl.cc:61
#8  0x000000000072b33c in Envoy::Network::FilterManagerImpl::onRead (this=this@entry=0x1e8dcc8) at source/common/network/filter_manager_impl.cc:71
#9  0x000000000072a389 in Envoy::Network::ConnectionImpl::onRead (read_buffer_size=11, this=0x1e8dcc0) at source/common/network/connection_impl.cc:191
#10 Envoy::Network::ConnectionImpl::onReadReady (this=0x1e8dcc0) at source/common/network/connection_impl.cc:337
#11 0x000000000072a9ed in Envoy::Network::ConnectionImpl::onFileEvent (this=0x1e8dcc0, events=3) at source/common/network/connection_impl.cc:285
#12 0x000000000049d218 in std::function<void (unsigned int)>::operator()(unsigned int) const (__args#0=3, this=) at /usr/include/c++/5/functional:2267
#13 Envoy::Event::FileEventImpl::<lambda(int, short int, void*)>::operator() (__closure=0x0, arg=, what=) at source/common/event/file_event_impl.cc:60
#14 Envoy::Event::FileEventImpl::<lambda(int, short int, void*)>::_FUN(int, short, void ) () at source/common/event/file_event_impl.cc:61
#15 0x000000000075e822 in event_persist_closure (ev=, base=0x19f1440) at event.c:1580
#16 event_process_active_single_queue (base=base@entry=0x19f1440, max_to_process=max_to_process@entry=2147483647, endtime=endtime@entry=0x0, activeq=) at event.c:1639
#17 0x000000000075ef7f in event_process_active (base=0x19f1440) at event.c:1738
#18 event_base_loop (base=0x19f1440, flags=0) at event.c:1961
#19 0x0000000000497641 in Envoy::Worker::threadRoutine (this=0x1a0a100, guard_dog=...) at source/server/worker.cc:66
#20 0x00000000007686ce in std::function<void ()>::operator()() const (this=) at /usr/include/c++/5/functional:2267
#21 Envoy::Thread::Thread::<lambda(void)>::operator() (__closure=0x0, arg=) at source/common/common/thread.cc:15
#22 Envoy::Thread::Thread::<lambda(void*)>::_FUN(void *) () at source/common/common/thread.cc:17
#23 0x00007f45b56a16b4 in ?? ()
#24 0x0000000000000000 in ?? ()
core.envoy.0.71931db9a9fd4747a254b1b6a34425bf.60956.1497718337000000000000
(gdb) bt
#0  0x000000000079d887 in std::__detail::_List_node_base::_M_unhook() ()
#1  0x000000000061a589 in std::__cxx11::list<std::unique_ptr<Envoy::Http::CodecClient::ActiveRequest, std::default_deleteEnvoy::Http::CodecClient::ActiveRequest >, std::allocator<std::unique_ptr<Envoy::Http::CodecClient::ActiveRequest, std::default_deleteEnvoy::Http::CodecClient::ActiveRequest > > >::_M_erase (
__position=..., this=0x4b07cb0) at /usr/include/c++/5/bits/stl_list.h:1774
#2  std::__cxx11::list<std::unique_ptr<Envoy::Http::CodecClient::ActiveRequest, std::default_deleteEnvoy::Http::CodecClient::ActiveRequest >, std::allocator<std::unique_ptr<Envoy::Http::CodecClient::ActiveRequest, std::default_deleteEnvoy::Http::CodecClient::ActiveRequest > > >::erase (__position=...,
this=0x4b07cb0) at /usr/include/c++/5/bits/list.tcc:156
#3  Envoy::LinkedObjectEnvoy::Http::CodecClient::ActiveRequest::removeFromList (list=..., this=0x59e2fc8) at bazel-out/local-opt/bin/source/common/common/_virtual_includes/linked_object/common/common/linked_object.h:73
#4  Envoy::Http::CodecClient::deleteRequest (this=this@entry=0x4b07c70, request=...) at source/common/http/codec_client.cc:34
#5  0x000000000061adb4 in Envoy::Http::CodecClient::responseDecodeComplete (this=0x4b07c70, request=...) at source/common/http/codec_client.cc:80
#6  0x000000000060213b in Envoy::Http::StreamDecoderWrapper::decodeHeaders(std::unique_ptr<Envoy::Http::HeaderMap, std::default_deleteEnvoy::Http::HeaderMap >&&, bool) (this=0x59e2fe0,
headers=<unknown type in /media/root/var/lib/docker/overlay/2f966a6f1a3d5df5952ae3c931a3fd376df17f46e7c3221d47c16d0d8da22be8/root/usr/local/bin/envoy, CU 0x3703564, DIE 0x376f31c>, end_stream=)
at bazel-out/local-opt/bin/source/common/http/_virtual_includes/codec_wrappers_lib/common/http/codec_wrappers.h:16
#7  0x00000000006266b9 in Envoy::Http::Http2::ConnectionImpl::onFrameReceived (this=0x32d90a8, frame=0x54c3f98) at source/common/http/http2/codec_impl.cc:326
#8  0x000000000062e093 in session_call_on_frame_received (frame=0x54c3f98, session=0x54c3e00) at nghttp2_session.c:3272
#9  session_after_header_block_received (session=0x54c3e00) at nghttp2_session.c:3749
#10 nghttp2_session_mem_recv (session=0x54c3e00, in=0x6f15861 "\004", inlen=49) at nghttp2_session.c:6087
#11 0x00000000006250ce in Envoy::Http::Http2::ConnectionImpl::dispatch (this=0x32d90a8, data=...) at source/common/http/http2/codec_impl.cc:234
#12 0x000000000061af5f in Envoy::Http::CodecClient::onData (this=0x4b07c70, data=...) at source/common/http/codec_client.cc:100
#13 0x000000000061b0bd in Envoy::Http::CodecClient::CodecReadFilter::onData (this=, data=...) at bazel-out/local-opt/bin/source/common/http/_virtual_includes/codec_client_lib/common/http/codec_client.h:139
#14 0x000000000072b2c9 in Envoy::Network::FilterManagerImpl::onContinueReading (this=this@entry=0x5562e48, filter=filter@entry=0x0) at source/common/network/filter_manager_impl.cc:61
#15 0x000000000072b33c in Envoy::Network::FilterManagerImpl::onRead (this=this@entry=0x5562e48) at source/common/network/filter_manager_impl.cc:71
#16 0x000000000072a389 in Envoy::Network::ConnectionImpl::onRead (read_buffer_size=49, this=0x5562e40) at source/common/network/connection_impl.cc:191
#17 Envoy::Network::ConnectionImpl::onReadReady (this=0x5562e40) at source/common/network/connection_impl.cc:337
#18 0x000000000072a9ed in Envoy::Network::ConnectionImpl::onFileEvent (this=0x5562e40, events=3) at source/common/network/connection_impl.cc:285
#19 0x000000000049d218 in std::function<void (unsigned int)>::operator()(unsigned int) const (__args#0=3, this=) at /usr/include/c++/5/functional:2267
#20 Envoy::Event::FileEventImpl::<lambda(int, short int, void*)>::operator() (__closure=0x0, arg=, what=) at source/common/event/file_event_impl.cc:60
#21 Envoy::Event::FileEventImpl::<lambda(int, short int, void*)>::_FUN(int, short, void ) () at source/common/event/file_event_impl.cc:61
#22 0x000000000075e822 in event_persist_closure (ev=, base=0x3309440) at event.c:1580
#23 event_process_active_single_queue (base=base@entry=0x3309440, max_to_process=max_to_process@entry=2147483647, endtime=endtime@entry=0x0, activeq=) at event.c:1639
#24 0x000000000075ef7f in event_process_active (base=0x3309440) at event.c:1738
#25 event_base_loop (base=0x3309440, flags=0) at event.c:1961
#26 0x0000000000497641 in Envoy::Worker::threadRoutine (this=0x3322100, guard_dog=...) at source/server/worker.cc:66
#27 0x00000000007686ce in std::function<void ()>::operator()() const (this=) at /usr/include/c++/5/functional:2267
#28 Envoy::Thread::Thread::<lambda(void)>::operator() (__closure=0x0, arg=) at source/common/common/thread.cc:15
#29 Envoy::Thread::Thread::<lambda(void*)>::_FUN(void *) () at source/common/common/thread.cc:17
#30 0x00007f13a652d6b4 in ?? ()
#31 0x0000000000000000 in ?? ()
core.envoy.0.71931db9a9fd4747a254b1b6a34425bf.58584.1497716552000000000000
(gdb) bt
#0  0x00000000006266a3 in Envoy::Http::Http2::ConnectionImpl::onFrameReceived (this=0x249f8e8, frame=0x338a198) at source/common/http/http2/codec_impl.cc:326
#1  0x000000000062e093 in session_call_on_frame_received (frame=0x338a198, session=0x338a000) at nghttp2_session.c:3272
#2  session_after_header_block_received (session=0x338a000) at nghttp2_session.c:3749
#3  nghttp2_session_mem_recv (session=0x338a000, in=0x90c4c54 "", inlen=49) at nghttp2_session.c:6087
#4  0x00000000006250ce in Envoy::Http::Http2::ConnectionImpl::dispatch (this=0x249f8e8, data=...) at source/common/http/http2/codec_impl.cc:234
#5  0x000000000061af5f in Envoy::Http::CodecClient::onData (this=0x30ee4c0, data=...) at source/common/http/codec_client.cc:100
#6  0x000000000061b0bd in Envoy::Http::CodecClient::CodecReadFilter::onData (this=, data=...) at bazel-out/local-opt/bin/source/common/http/_virtual_includes/codec_client_lib/common/http/codec_client.h:139
#7  0x000000000072b2c9 in Envoy::Network::FilterManagerImpl::onContinueReading (this=this@entry=0x2aa10c8, filter=filter@entry=0x0) at source/common/network/filter_manager_impl.cc:61
#8  0x000000000072b33c in Envoy::Network::FilterManagerImpl::onRead (this=this@entry=0x2aa10c8) at source/common/network/filter_manager_impl.cc:71
#9  0x000000000072a389 in Envoy::Network::ConnectionImpl::onRead (read_buffer_size=49, this=0x2aa10c0) at source/common/network/connection_impl.cc:191
#10 Envoy::Network::ConnectionImpl::onReadReady (this=0x2aa10c0) at source/common/network/connection_impl.cc:337
#11 0x000000000072a9ed in Envoy::Network::ConnectionImpl::onFileEvent (this=0x2aa10c0, events=3) at source/common/network/connection_impl.cc:285
#12 0x000000000049d218 in std::function<void (unsigned int)>::operator()(unsigned int) const (__args#0=3, this=) at /usr/include/c++/5/functional:2267
#13 Envoy::Event::FileEventImpl::<lambda(int, short int, void*)>::operator() (__closure=0x0, arg=, what=) at source/common/event/file_event_impl.cc:60
#14 Envoy::Event::FileEventImpl::<lambda(int, short int, void*)>::_FUN(int, short, void ) () at source/common/event/file_event_impl.cc:61
#15 0x000000000075e822 in event_persist_closure (ev=, base=0x24ccc00) at event.c:1580
#16 event_process_active_single_queue (base=base@entry=0x24ccc00, max_to_process=max_to_process@entry=2147483647, endtime=endtime@entry=0x0, activeq=) at event.c:1639
#17 0x000000000075ef7f in event_process_active (base=0x24ccc00) at event.c:1738
#18 event_base_loop (base=0x24ccc00, flags=0) at event.c:1961
#19 0x0000000000497641 in Envoy::Worker::threadRoutine (this=0x2487f20, guard_dog=...) at source/server/worker.cc:66
#20 0x00000000007686ce in std::function<void ()>::operator()() const (this=) at /usr/include/c++/5/functional:2267
#21 Envoy::Thread::Thread::<lambda(void)>::operator() (__closure=0x0, arg=) at source/common/common/thread.cc:15
#22 Envoy::Thread::Thread::<lambda(void*)>::_FUN(void *) () at source/common/common/thread.cc:17
#23 0x00007f3612c3a6b4 in ?? ()
#24 0x0000000000000000 in ?? ()
core.envoy.0.71931db9a9fd4747a254b1b6a34425bf.1379.1497702113000000000000
(gdb) bt
#0  0x000000000079d887 in std::__detail::_List_node_base::_M_unhook() ()
#1  0x00000000004bd7fb in std::__cxx11::list<std::unique_ptr<Envoy::Http::ConnectionManagerImpl::ActiveStream, std::default_deleteEnvoy::Http::ConnectionManagerImpl::ActiveStream >, std::allocator<std::unique_ptr<Envoy::Http::ConnectionManagerImpl::ActiveStream, std::default_deleteEnvoy::Http::ConnectionManagerImpl::ActiveStream > > >::_M_erase (__position=..., this=0x4582a70) at /usr/include/c++/5/bits/stl_list.h:1774
#2  std::__cxx11::list<std::unique_ptr<Envoy::Http::ConnectionManagerImpl::ActiveStream, std::default_deleteEnvoy::Http::ConnectionManagerImpl::ActiveStream >, std::allocator<std::unique_ptr<Envoy::Http::ConnectionManagerImpl::ActiveStream, std::default_deleteEnvoy::Http::ConnectionManagerImpl::ActiveStream > > >::erase (__position=..., this=0x4582a70) at /usr/include/c++/5/bits/list.tcc:156
#3  Envoy::LinkedObjectEnvoy::Http::ConnectionManagerImpl::ActiveStream::removeFromList (list=..., this=0x38a4788) at bazel-out/local-opt/bin/source/common/common/_virtual_includes/linked_object/common/common/linked_object.h:73
#4  Envoy::Http::ConnectionManagerImpl::doDeferredStreamDestroy (this=this@entry=0x4582a40, stream=...) at source/common/http/conn_manager_impl.cc:157
#5  0x00000000004bd8fb in Envoy::Http::ConnectionManagerImpl::doEndStream (this=0x4582a40, stream=...) at source/common/http/conn_manager_impl.cc:125
#6  0x00000000004bdb0b in Envoy::Http::ConnectionManagerImpl::ActiveStream::maybeEndEncode (this=this@entry=0x38a4780, end_stream=true) at source/common/http/conn_manager_impl.cc:807
#7  0x00000000004c4313 in Envoy::Http::ConnectionManagerImpl::ActiveStream::maybeEndEncode (end_stream=true, this=0x38a4780) at source/common/http/conn_manager_impl.cc:723
#8  Envoy::Http::ConnectionManagerImpl::ActiveStream::encodeHeaders (this=0x38a4780, filter=, headers=..., end_stream=true) at source/common/http/conn_manager_impl.cc:732
#9  0x0000000000541961 in Envoy::Router::Filter::onUpstreamHeaders(std::unique_ptr<Envoy::Http::HeaderMap, std::default_deleteEnvoy::Http::HeaderMap >&&, bool) (this=0x3e83600,
headers=<unknown type in /media/root/var/lib/docker/overlay/2f966a6f1a3d5df5952ae3c931a3fd376df17f46e7c3221d47c16d0d8da22be8/root/usr/local/bin/envoy, CU 0x2bada59, DIE 0x2c493d7>, end_stream=true) at source/common/router/router.cc:489
#10 0x000000000060214d in Envoy::Http::StreamDecoderWrapper::decodeHeaders(std::unique_ptr<Envoy::Http::HeaderMap, std::default_deleteEnvoy::Http::HeaderMap >&&, bool) (this=0x71152e0,
headers=<unknown type in /media/root/var/lib/docker/overlay/2f966a6f1a3d5df5952ae3c931a3fd376df17f46e7c3221d47c16d0d8da22be8/root/usr/local/bin/envoy, CU 0x3703564, DIE 0x376f31c>, end_stream=)
at bazel-out/local-opt/bin/source/common/http/_virtual_includes/codec_wrappers_lib/common/http/codec_wrappers.h:19
#11 0x00000000006266b9 in Envoy::Http::Http2::ConnectionImpl::onFrameReceived (this=0x23dd4f8, frame=0x68f9598) at source/common/http/http2/codec_impl.cc:326
#12 0x000000000062e093 in session_call_on_frame_received (frame=0x68f9598, session=0x68f9400) at nghttp2_session.c:3272
#13 session_after_header_block_received (session=0x68f9400) at nghttp2_session.c:3749
#14 nghttp2_session_mem_recv (session=0x68f9400, in=0x7dce06e "\005", inlen=62) at nghttp2_session.c:6087
#15 0x00000000006250ce in Envoy::Http::Http2::ConnectionImpl::dispatch (this=0x23dd4f8, data=...) at source/common/http/http2/codec_impl.cc:234
#16 0x000000000061af5f in Envoy::Http::CodecClient::onData (this=0x3b4a760, data=...) at source/common/http/codec_client.cc:100
#17 0x000000000061b0bd in Envoy::Http::CodecClient::CodecReadFilter::onData (this=, data=...) at bazel-out/local-opt/bin/source/common/http/_virtual_includes/codec_client_lib/common/http/codec_client.h:139
#18 0x000000000072b2c9 in Envoy::Network::FilterManagerImpl::onContinueReading (this=this@entry=0x23d7048, filter=filter@entry=0x0) at source/common/network/filter_manager_impl.cc:61
#19 0x000000000072b33c in Envoy::Network::FilterManagerImpl::onRead (this=this@entry=0x23d7048) at source/common/network/filter_manager_impl.cc:71
#20 0x000000000072a389 in Envoy::Network::ConnectionImpl::onRead (read_buffer_size=62, this=0x23d7040) at source/common/network/connection_impl.cc:191
#21 Envoy::Network::ConnectionImpl::onReadReady (this=0x23d7040) at source/common/network/connection_impl.cc:337
#22 0x000000000072a9ed in Envoy::Network::ConnectionImpl::onFileEvent (this=0x23d7040, events=3) at source/common/network/connection_impl.cc:285
#23 0x000000000049d218 in std::function<void (unsigned int)>::operator()(unsigned int) const (__args#0=3, this=) at /usr/include/c++/5/functional:2267
#24 Envoy::Event::FileEventImpl::<lambda(int, short int, void*)>::operator() (__closure=0x0, arg=, what=) at source/common/event/file_event_impl.cc:60
#25 Envoy::Event::FileEventImpl::<lambda(int, short int, void*)>::_FUN(int, short, void ) () at source/common/event/file_event_impl.cc:61
#26 0x000000000075e822 in event_persist_closure (ev=, base=0x195d440) at event.c:1580
#27 event_process_active_single_queue (base=base@entry=0x195d440, max_to_process=max_to_process@entry=2147483647, endtime=endtime@entry=0x0, activeq=) at event.c:1639
#28 0x000000000075ef7f in event_process_active (base=0x195d440) at event.c:1738
#29 event_base_loop (base=0x195d440, flags=0) at event.c:1961
#30 0x0000000000497641 in Envoy::Worker::threadRoutine (this=0x1976100, guard_dog=...) at source/server/worker.cc:66
#31 0x00000000007686ce in std::function<void ()>::operator()() const (this=) at /usr/include/c++/5/functional:2267
#32 Envoy::Thread::Thread::<lambda(void)>::operator() (__closure=0x0, arg=) at source/common/common/thread.cc:15
#33 Envoy::Thread::Thread::<lambda(void*)>::_FUN(void *) () at source/common/common/thread.cc:17
#34 0x00007ff677e3d6b4 in ?? ()
#35 0x0000000000000000 in ?? ()

If possible, please run envoy at -l trace logging level on current master, and post a gist of the logs. We might be able to figure it out from that without a repro.

Thanks. When I run with -l trace it hangs after receiving traffic (huge amount of logging). -l info doesn't hang. Seeing what else I can do

You could try -l debug. Does the crash happen right away? Or it's a timing thing?

Same with -l debug, it actually seems like it's just the /stats page that stops responding (unacked keeps going up). But also the docker container stops logging output so that doesn't help
core@kube-068 ~ $ ss -lti '( sport = :9990 )' #admin port
State       Recv-Q Send-Q                                                                                Local Address:Port                                                                                Peer Address:Port
LISTEN      4      128                                                                                *:9990                                                                                :
bbr rto:1000 ato:250 mss:536 cwnd:10 lastsnd:2004716948 lastrcv:2004716948 lastack:2004716948 unacked:4 sacked:128

Can you make sure to build with -c dbg and possibly put the binary and core dump somewhere? I might be able to figure it out if I can look at the dumb with full debug info and symbols.

Otherwise trying to figure out a self contained repro is probably the only thing that is going to get it fixed without you doing all the debugging.

Uploaded 3 dumps here (we're running latest lyft/envoy-alpine-debug)
https://ufile.io/sfhwz

Can you tell me which SHA specifically? We are merging all the time.

SHA f4d4f9566a50a58162d41388b37b47be6fa09755
Also uploaded the binary here: https://ufile.io/93ogl

OK thanks I have the symbols lined up. I can probably figure it out from the dump. Will let you know.

Great thanks. It's easily reproducible from our side for more testing

I think I already know what the problem roughly is. Still looking.
As an aside, why does the process have so many threads? That seems kind of curious.

We're running  2 x E5-2699 v4 (22 core CPU's), having a total of 88 threads to the OS
We're on bare metal / CoreOS

We're running 2 x E5-2699 v4 (22 core CPU's), having a total of 88 threads to the OS

That's awesome. I bet you are hitting atomic contention on the stats stuff. Would love to profile that!
re: this issue, I know what the bug is, working on a fix.

Sure we can arrange something if you would like to profile

@andrewvd I know what the bug is, but I'm a little confused what scenario is getting us into this situation. If possible, can you post a gist of your config and/or any info about your overall setup which might give some insight into that (like if you are using any router headers to effect retry, etc.)?

 Also seeing this warning in gdb: "warning: exec file is newer than core file." Are you sure the core and binary you gave me match?

@andrewvd the referenced commit definitely fixes one of your issues. For the next issue, can you please open a fresh GH issue with crash info and I will debug it.

Thanks I'll get back to you soon

Update: no crashes yet! Want to say a big thanks for a quick resolution!

@andrewvd the fact that you hit an assert in a debug build is still problematic and means that something is probably still potentially broken. If you do feel like running a -c dbg build at some point to see if it still asserts I'm happy to debug if that happens (and in fact would like to see if that is the case).

May have been something with our custom build we were testing, running the latest from master and hasn't crashed since my last comment

@andrewvd are you running the release docker build though? (Even though it says dbg that just means it has symbols, it still doesn't compile asserts). It's still probably worth running a real dbg build with asserts at some point, but as long as it's working for you that's great.

We've been running docker image lyft/envoy:cfd7a400921ea4da6ddb4bb87a51f1b0866d5c24 for 15hr and haven't had an issue yet

Alright thanks. Like I said before, I still am concerned some logic is not correct since the last crash you hit was actually a debug ASSERT which should not happen. It's possible it's benign, but it makes me uneasy. If you have time to run a debug build per above I would appreciate it, but NBD if you don't have time. We don't have official docker images of full debug builds currently so you would need to build yourself.


Fix media query when using css package with null responsive values

Hi,
Noticed an issue with responsive arrays when using @styled-system/css today. When null values are passed in, the order that the media queries are loaded in, can be out of order.
A detail of the issue and what is happening is in the issue https://github.com/system-ui/theme-ui/issues/577 on theme-ui project.
I looked through many issues in this repo where it was bought up, #551, #561 and #813.
I noticed it was fixed in theme ui with PR https://github.com/system-ui/theme-ui/pull/600
This is a port of that fix, with the added tests also.
I don't have full context over the reason it may or may not have been ported from theme-ui, since it seems the css package there is identical to this one, minus this fix.

Thanks! The @styled-system/css package will be deprecated in favor of @theme-ui/css in the future, but I think it makes sense to get this patch in


Vue3: API Key Create Page: vertical spacing issue

Setup

Rancher version: dev 2.10.0

Describe the bug

vertical spacing broken
need to understand why this style issue broke, could apply in other places

To Reproduce
User avatar --> Account & API Keys -->  Create API Key
Result

Expected Result

Additional context

Similar spacing issue https://github.com/rancher/dashboard/issues/11719 (but horizontal)

Moving to To Test because it got fixed by https://github.com/aalves08/dashboard/commit/47217a4c4c914e037fafaaba9121630c588d6457


Line comment in multi-line comment causes textmate scopes to mark the entire rest of the file as a comment

Just putting this
/* // */
line into a rust file will cause all subsequent lines to be marked as a comment.block.rust. This is on current nightly.

Can comfirm:

For reference, without the //:

It seems to style the entire document as a comment, and the only saving grace are the semantic informations that override the grammar later on.

CC @dustypomerleau if you haven't seen this.

Yes I'll have a look - appears that the line comment is commenting out the block comment terminator when they are on the same line.


Android compatibility

Hi, I would like to use this plugin for android mobile devices. I already have the project working on windows but when I transfer to android it doesn't recognize the connected joycon (I successfully connected the joycon through Bluetooth on my android device). Does this plugin work for android or is there a way to make it work for android?

Hey I'm trying to do the same thing, as I can build it for windows.
However when building for android on my PC the object that has the demo script dissapears, I was wondering if you maybe have found a fix yet :)

Also interested in this, have you found any info yet?


Not An Issue, But Might Want To Follow This Thread

https://forums.mydigitallife.net/threads/optimize-offline-guide-best-windows-debloating-tool-for-17763-ltsc-2019-and-18362-isos.80038/
Might want to Watch this, your advice would be invaluable.

I glanced at it, but do not have the time to answer questions there that have either been answered here, or are addressed in the ReadMe. People do private message me regularly there about this script (and others) which is fine.
I will check it out when I have the time and I'm browsing those forums but I just do not have the time to offer support in two separate places.


All the anime extensions aren't there

Steps to reproduce
No response
Expected behavior
All the extensions should be available for download

Actual behavior
All the extensions aren't available for download
Crash logs
No response
Aniyomi version
Preview r7567
Android version
Android 23
Device
OnePlus Nord ce 3
Other details
No available extensions for download
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] If this is an issue with an official anime extension, I should be opening an issue in the extensions repository.
[X] If this is an issue with a manga extension, report it to the manga source extension project you added it from.
[X] I have gone through the FAQ and troubleshooting guide.
[X] I have updated the app to version <IP_ADDRESS>.
[X] I have updated all installed extensions.
[X] I will fill out all of the requested information in this form.

Due to a DMCA takedown notice, most anime extensions have been removed from the official extensions list.


Remove dead and irrelevant Jenkins references

Updates doc to remove references to Jenkins, many of these were dead before we ever moved off of Jenkins. Some will need to be replaced with future tooling, but nothing exists today to replace them with.
Signed-off-by: Brett Logan<EMAIL_ADDRESS>

Not at the moment, but most of these links didn't make sense anyway, for example, the link to the coverage report was just a link to the Unit Test job page. You then had to choose a random unit test run, and the code coverage report was really just the output of go test -cover ./... that was in the log of everyones job run.
The integration test link in the doc really had no context around it, so it made no sense.
For the rest of them there is no equivalent. We used to, for whatever reason, run BYFN as part of EVERY SINGLE REPO. Both SDK's, the chaincodes, Fabric and Fabric-CA all ran the same BYFN test scenario nightly and weekly and then we reported on that. Those links were just links to the results for all of these jobs, which were again, worthless.
The 4 links around SVT results, haven't been active for years.

In the future, we do plan to have a dashboard for fabric-test results with really information (not just saying where SVT tests passed or not, as that provides no context into the actually quality of the code) but we aren't there yet


AmazonS3Client does not support passing managed key group id associated with cloudfront distribution

Currently AmazonS3Client GetPreSignedURL method is using the root account keys for verifying presigned urls. However there is an option with using AmazonCloudFrontUrlSigner for passing managed key group ids, but it does not allow to specify PUT or POST methods to S3 API like the client.
Describe the Feature
Provide a property to the GetPreSignedUrlRequest to pass keyPairId the same way that is provided in AmazonCloudFrontUrlSigner, so the client can leverage of the extra security added from cloudfront.
Is your Feature Request related to a problem?
Cannot sign PUT request with a managed key pair id.
Proposed Solution

Describe alternatives you've considered
An alternative might be AmazonCloudFrontUrlSigner to expose methods for specifying additional policy attributes like PUT, POST.
Additional Context

Environment

[ ] :wave: I may be able to implement this feature request
[ ] :warning: This feature might incur a breaking change

This is a :rocket: Feature Request

AmazonCloudFrontUrlSigner.SignUrl(string resourceUrlOrPath, string keyPairId, FileInfo privateKey, string policy) supports Identifier of a public/private certificate keypair already configured in your Amazon Web Services account. (API reference AmazonCloudFrontUrlSigner.SignUrl (string, string, FileInfo, string)
). Create a URL signature using C# and the .NET Framework also provides custom logic for creating signed URL. CloudFront: Serving private content with signed URLs and signed cookies does not state support for PUT or POST requests.
Needs review with the team.


Http request trigger UI issue

Describe the Bug with repro steps

Create a standard logic app.
Add a stateful/ stateless workflow.
Add Http request trigger

**Expected;**Http request trigger UI should be good
Actual: Http request trigger UI issue
What type of Logic App Is this happening in?
Standard (Portal)
Which operating system are you using?
Windows
Are you using new designer or old designer
New Designer
Did you refer to the TSG before filing this issue? https://aka.ms/lauxtsg
Yes
Workflow JSON
No response
Screenshots or Videos

Browser
Edge
Additional context
Version: 2.40826.1.3

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."

Note: Not only Http request trigger all the other actions also has similar UI issue

Related to https://github.com/Azure/LogicAppsUX/issues/5486


VMP causes Carpet's /player <name> spawn to spawn player bots in wrong dimension.

Describe the bug
When using VMP and running the command /player <name> spawn in either the Nether or The End the bot that spawns will arrive in the Overworld, but will keep the coordinates of where you were standing in the non-Overworld dimension. See screenshots for a visual explanation. When VMP is disabled, the bots spawn in as expected.
To Reproduce
Install latest release of VMP and Carpet, run command in non-Overworld dimension
Expected behavior
VMP should not interfere with the spawning of offline players through Carpet
Screenshots
Nether - Command:

Nether - Result:

The End - Command:

The End - Result:

In another test, I found that the bot has metadata related to entering the nether at the specified coordinates stored, which would seem to indicate that they spawn in correctly and then are teleported to the Overworld at their Nether coordinates.
Runtime info (please complete the following information):

OS: Windows 10
Minecraft version: 1.21
Mod version: vmp-fabric-mc1.21-0.2.0+beta.7.163-all.jar (https://modrinth.com/mod/vmp-fabric)
Mod branch: (fill this if you are not using the default ver branches)

Other mods
fabric-carpet-1.21-1.4.147+v240626.jar
Checklist

[ x ] I am using the official version of the mod.
[ ] I tried the latest development version but the issue persists.
[ x ] I searched for similar open issues and could not find an existing bug report on this.

Abandoned Issue

Additional context
Initially filed bug report with Carpet here but was ultimately sent to this repo instead since it's VMP interfering with Carpet.

Should be fixed in 7e0b751166d7077b90d1c22cd3e70460adf2a67e


Flag a discriminator property that is defined as an extensible enum

A property that is defined as the discriminator for a schema should not be defined as an extensible enum (i.e. x-ms-enum: { modelAsString: true }, because changing the set of values for a discriminator is a breaking change.

Actually, we want the discriminator to be defined as an extensible enum.  Closing.


feat: support delete entry by tombstone

Support delete entry by tombstone.
Fix seek for UserKeyIterator which need to use full key to seek inner.

Ref: #1.

Codecov Report

Merging #32 (c4762a8) into main (fb16e64) will increase coverage by 0.71%.
The diff coverage is 99.54%.

@@            Coverage Diff             @@
##             main      #32      +/-   ##
==========================================
+ Coverage   89.40%   90.12%   +0.71%
==========================================
  Files          22       21       -1
  Lines        1879     1994     +115
==========================================
+ Hits         1680     1797     +117
+ Misses        199      197       -2

Impacted Files
Coverage Δ

storage/src/lsm_tree/components/block.rs
96.85% <ø> (ø)

storage/src/lsm_tree/iterator/block_iterator.rs
99.46% <ø> (+0.53%)
:arrow_up:

storage/src/lsm_tree/iterator/concat_iterator.rs
97.57% <ø> (ø)

storage/src/lsm_tree/iterator/merge_iterator.rs
98.87% <ø> (ø)

storage/src/lsm_tree/utils/coding.rs
88.32% <96.42%> (+2.08%)
:arrow_up:

storage/src/lsm_tree/components/sstable.rs
98.86% <100.00%> (+0.56%)
:arrow_up:

storage/src/lsm_tree/components/sstable_store.rs
88.37% <100.00%> (ø)

storage/src/lsm_tree/iterator/sstable_iterator.rs
93.36% <100.00%> (+0.36%)
:arrow_up:

storage/src/lsm_tree/iterator/user_key_iterator.rs
98.29% <100.00%> (+1.43%)
:arrow_up:

storage/src/lsm_tree/utils/skiplist/list.rs
58.96% <0.00%> (-0.40%)
:arrow_down:

... and 4 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 fb16e64...c4762a8. Read the comment docs.


The UpstreamHttpFilterConfigProviderManagerImpl has same stats prefix as HttpFilterConfigProviderManagerImpl

This might be a cosmetic issue, but it does not look right to have same stats prefix for two different filters:

https://github.com/envoyproxy/envoy/blob/6e349d9d6c0a18fadd8f8dc81c74aee1b810ac4e/source/common/filter/config_discovery_impl.h#L516

https://github.com/envoyproxy/envoy/blob/6e349d9d6c0a18fadd8f8dc81c74aee1b810ac4e/source/common/filter/config_discovery_impl.h#L542

@kyessenov @alyssawilk

Thinking out loud, the subscriptions are shared, so if the same filter works as both upstream and downstream HTTP, I think it's fine to reuse the prefix, no?

IIUC, even the subscriptions can be shared, and the downstream HTTP filter and upstream HTTP filter could get same configurations from control plane, but the two filters are different.They each should have their own stats counters and stats prefix.

Not stale. We should change this. Also adding some tests for UpstreamHttpFilterConfigProviderManagerImpl class to fill in the test coverage gap: https://storage.googleapis.com/envoy-pr/01a5070/coverage/source/common/filter/config_discovery_impl.h.gcov.html


SetInterval delay in ms

This sets the interval delay in milliseconds, which gets the test running correctly for me.

@aidylka  Thanks for the thorough testing. I'll look at updating the README.

@kyleparrott, so you also get num_sending: 0?

Hrm, no. Mine takes 1-2 seconds but does reach a num_sending of 10.


Various fixes to edge cases with GILGuard

Closes #1019
I introduce panics for the two "nasty" cases discussed in that issue.

For allow_threads
I think it's OK to add T: Send.
It's not so meaningful to return T: !Send in this context.

For nested case
I'll leave some comments.

Having looked further into these and subsequent tests, I've concluded that panic! is not the right solution for either of these two issues. In both cases, a panic will make it hard or impossible for user code to correct the GIL state, so Python will likely abort the process or deadlock shortly after the panic.
For allow_threads, I now agree we should add T: Send bound.
For the GILGuard drop out of order, I think the solution is less clear. I'm tempted to just add an abort() to this instead of panic, to be on the safe side.

so Python will likely abort the process or deadlock shortly after the panic.

In extension case (we get GILGuard in #[pyfunction] or so), we don't need to worry about that so seriously. gstate is mostly LOCKED.
In embedding case (we get GILGuard from main function or so), we don't need to recover the interpreter state, right?

It's not quite so clear-cut as that. Even for extensions, use of Python::allow_threads could lead to acquisition of new UNLOCKED GILGuards. Also, for the embedding case (~ tests) I was seeing the test process deadlock after a panic.
I have to say I really don't like the abort UX, so in the end I think I will keep panic! as the implementation. I'll add a whack of documentation to Python::acquire_gil to warn against possible issues here, and encourage users to use Python::with_gil.
Also, I think I'll change GILGuard::acquire to be just pub(crate), which will push users of it onto Python::acquire_gil. This means that all the safety notes can just go on Python::acquire_gil, as well as discouragement from using it!

I've pushed those discussed changes.
One interesting discovery from this was that PyErr is not Send. For now, I've pushed a couple of tweaks to this branch to make PyErr: Send. If you think this is a good idea, I'll first open a separate PR to make PyErr: Send properly. I think this would be a good idea anyway.

Thank you, though I don't understand the intention of some changes in the test files.

For now, I've pushed a couple of tweaks to this branch to make PyErr: Send. If you think this is a good idea, I'll first open a separate PR to make PyErr: Send properly. I think this would be a good idea anyway.

I agree that PyErr should be Send, but I'm sorry I can't understand what changes are related to PyErr.

I agree that PyErr should be Send, but I'm sorry I can't understand what changes are related to PyErr.

The example for Python::allow_threads returns PyResult<()>, and to make PyResult: Send, I had to make PyErr: Send. The alternative was to change the example, but I think the example is a good one.
Anyway, please hold on merging this PR; I'll make a new PR for PyErr: Send shortly.

I don't understand the intention of some changes in the test files.

Maybe the changes you are referring to are where I had to remove GILGuard::acquire usage from tests, because I've taken that function out of the PyO3 public API.

Having made the PyErr changes separately in #1067, I've rebased this PR and proceeding now to merge.


Add crossfade and update UI

Also separated JS code into new file

Good stuff!
Having the JS inside the HTML was intentional, as the NodeMCU cannot handle multiple requests at the same time. I have since built 'pipelining' into nodemcu-httpd, but that version has not been uploaded to the lights yet. Personally I would keep everything in one file for performance: the thing is sloooow.

@lionello Oh I see. Also, I found that my uploaded version of rgb.lua was an older one (and does not work), so I had replaced it through my last commit.


new(tests): Identity precompile test

🗒 Description
Adds a test for the identity precompile based on this https://github.com/ethereum/go-ethereum/blob/master/docs/postmortems/2021-08-22-split-postmortem.md
Also adds a new variant that can be filled for EOF EXT*CALL opcodes .
🔗 Related Issues

✅ Checklist

[ ] All: Set appropriate labels for the changes.
[ ] All: Considered squashing commits to improve commit history.
[ ] All: Added an entry to CHANGELOG.md.
[ ] All: Considered updating the online docs in the ./docs/ directory.
[ ] Tests: All converted JSON/YML tests from ethereum/tests have been added to converted-ethereum-tests.txt.
[ ] Tests: A PR with removal of converted JSON/YML tests from ethereum/tests have been opened.
[ ] Tests: Included the type and version of evm t8n tool used to locally execute test cases:  e.g., ref with commit hash or geth 1.13.1-stable-3f40e65.
[ ] Tests: Ran mkdocs serve locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.

@shemnon I was reviewing your memory expansion tests and remembered this case, so decided to add a test that can be filled for the EXT*CALL opcodes in test_identity_return_buffer_modify, let me know what you think.


Add settings attribute to check if inactive user login is allowed

This will help if 'AllowAllUsersModelBackend' is used or any other authentication backend that allow inactive user login is used.
If you don't specify 'REST_INACTIVE_USER_LOGIN' it will be False by default which will make django-rest-auth to work normally as before. But, If you set it with True it will not raise an error when you log in using an inactive user.

Hi,
as a user of rest-auth, thanks for the contribution!
This repo is not maintained anymore, so the development moved to dj-rest-auth. (reference: https://github.com/Tivix/django-rest-auth/issues/568)
It may be best, if you move this PR there. (and upgrade to using dj_rest_auth)
new repo link: https://github.com/jazzband/dj-rest-auth (I'm not the upkeeper of that repo, it just makes sense for me to help you merge your PR)
Many Thanks,
Barney


Documentation / Tutorials?

I've noticed that there is very little documentation on how to generate swagger files from annotations.
Is this really all there is http://goswagger.io/generate/spec/?
How about some code examples that show annotations being used?

There is the examples folder in the repo, all generated code also uses all the annotations that are applicable for it.
https://github.com/go-swagger/go-swagger/tree/master/examples/todo-list
This is the code I used to test parsing the annotations: https://github.com/go-swagger/go-swagger/tree/master/fixtures/goparsing/classification
Please bear in mind that this is a project (not a product!) to which others and I have contributed significant amounts of free time to get it to where it is today. All help we can get is absolutely welcome.
To make things better:
The site source is here, uses hugo. Feel free to submit a PR with some more examples; I'll gladly merge

@casualjim I used your example test parsing the annotations and use a command
swagger generate spec -o ./swagger.json
And again I got an empty definitions fields in a json file. I tried to use it in my own project, but again it parses the main file and doesn't go deeply (doesn't scan other packages), but in doc we have.

You give it a main file and it will parse all the files that are reachable by that main package to produce a swagger specification.

While I agree with the project vs. product sentiment, it's difficult to help document something I don't understand. 😕

@nathany the latest documentation for the code on master can be found here: https://github.com/go-swagger/go-swagger/tree/master/docs/generate/spec
Improvement of documentation is always a good request. You are in a unique position however as you are a newcomer and thus have the perspective that is perfectly fit to help with the improvement of documentation.
Could you please add questions here that are not answered by the documentation. Also any suggestions on what according to you is missing, is always more then welcome :)

@GlenDC Thanks for the link. I see swagger:operation is documented there but not yet on https://goswagger.io.
Right now I'm having some trouble getting the Responses: section working for swagger:router, including some routes that have just a status code with no other response. While searching around the code, I also saw description: for the route responses.
What I think would help the most is a tutorial that walks through generating swagger.json from code annotations, assuming someone is coming from an existing code base (even if it were a to do app).

I've decided to write swagger.yml instead of using the code annotations for now. It's going well.

@nathany yes that's the recommended and more sane approach. Also saves you tons of work. Also in the end writing annotations doesn't save that much work compared to writing the spec, as you end up writing most of the stuff anyhow.
None the less, does not mean that annotations should not be well documented. Your tutorial suggestion is definitely a good idea.
Could you please be a bit more clear about the other stuff? Please be as clear as possible with the questions and to what they relate. This way we can take it into account when improving the documentation.

Regarding the other questions, in the swagger.yml I just write something like this:
responses:
        201:
          description: Created
        400:
          description: Bad request
          schema:
            $ref: "#/definitions/error"
        401:
          description: Unauthorized
        500:
          description: Unexpected error
          schema:
            $ref: "#/definitions/error"

But I was having trouble getting the equivalent to work as code annotations. Perhaps I just wasn't formatting it correctly?


add toleration to deployment

Hi,
After going through the documentation of Elasticsearch and the README of the official chart (https://github.com/helm/charts/tree/master/stable/elasticsearch) - I understood that it's a good thing to isolate the deployment for the ElasticStack into specific nodes.
If we want to apply that to the charts for AKS, it implies that we need to play with node taints and deployment tolerations.
This PR brings the modifications for adding the tolerations to the deployment.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: VanHolleeder sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

I slightly modified the file .travis.yaml to get the project to build with the current versions of Golang.

repo is going into read-only and archive mode


Update sidecar-injection.md to add IBM Cloud Container service

#887 cc @ayj

@linsun: PR needs rebase.

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

Should we go ahead and merge this?

Should we go ahead and merge this?

The k8s setup instructions have been consolidated under _docs/setup/kubernetes/quick-start.md. I ported this PR's changes to that location in https://github.com/istio/istio.github.io/pull/1136. Closing this PR in favor of that one.


Support int * float

Currently 2 * 2.0 raises error but it is not convenient.

Workaround is write it as 2.0 * 2.0 or 2.to_f * 2.0.


Format code using 'cargo fmt'

This is your second rejected PR to format the code. I highly recommend finding other ways to contribute to projects than mass tool-automated format requests.

that's annoying. this user's entire account history is this same stuff. reported to github as it really shouldn't be allowed

sorry, I didn't check the closed PR.

@gamozolabs @evanrichter sorry, I didn't check the closed PR.


Add a tiles iterator to FiniteTileLayer/InfiniteTileLayer

Add some kind of iterator that has Item = (LayerTile, (i32, i32)) or similar. Very useful for rendering code.

But in which order should it iterate the tiles? In Tiled I have:
    using RenderTileCallback = std::function<void (QPoint, const QPointF &)>;

    /**
     * Calls the given \a renderTile callback for each tile in the given
     * \a exposed rectangle.
     *
     * The callback takes two arguments:
     *
     * \list
     * \li \c tilePos - The tile position of the cell being rendered.
     * \li \c screenPos - The screen position of the cell being rendered.
     * \endlist
     */
    virtual void drawTileLayer(const RenderTileCallback &renderTile,
                               const QRectF &exposed) const = 0;

But the order in which it calls renderTile depends on the map orientation. Of course this function is doing a bit more than iterating tiles, it also says where each tile goes on the screen.
Note that it doesn't get a tile reference on purpose. There was no tile layer reference going in either. This is to make the function more generally useful, since you could be drawing some other overlay or stacks of tiles based on this.

IMO the order shouldn't be specified, and we should leave it as implementation-dependent. This is because we can't really specify the order of iteration of infinite tile layers without adding overhead, for instance.

Note that it doesn't get a tile reference on purpose. There was no tile layer reference going in either. This is to make the function more generally useful, since you could be drawing some other overlay or stacks of tiles based on this.

I don't really see how it makes it more useful. If you have a tiles iterator the normal thing would be to iterate over the tiles in the layer. Otherwise you could just use two nested fors.

IMO the order shouldn't be specified, and we should leave it as implementation-dependent. This is because we can't really specify the order of iteration of infinite tile layers without adding overhead, for instance.

It is about the order of the visible tiles. The function takes the exposed rectangle (the area where tiles should get drawn), so the size of the layer is irrelevant and could be infinite. The tile rendering order is important in case they overlap.

I don't really see how it makes it more useful. If you have a tiles iterator the normal thing would be to iterate over the tiles in the layer. Otherwise you could just use two nested fors.

So, it makes it more useful in the cases I mentioned. If you're rendering a special overlay or rendering tiles as stacks, a reference to a single tile is not always useful. And it can anyway be trivially obtained using the tile coordinates.
Anyway, I think I may be over-complicating things. Personally I'd hope we can provide some support as well for rendering maps with different orientations, rendering only a part of a tile layer and rendering some overlay, but your proposed iterator is useful in its own right.

Anyway, I think I may be over-complicating things. Personally I'd hope we can provide some support as well for rendering maps with different orientations, rendering only a part of a tile layer and rendering some overlay, but your proposed iterator is useful in its own right.

Whoa. Okay, that is a bit too much for this library. This is supposed to be a library for parsing and reading tiled files; The actual rendering is done by the user. IMO they are the ones that should care about draw order and whatnot.

Right, maybe it's going too far, but I wasn't talking about the actual rendering, but rather about an abstraction on top of the various map orientations supported by Tiled, which have non-trivial logic about how tiles get placed. It could anyway be more suited for a different crate.

Hey I wrote my own parser for tiled maps because none of the existing solutions were really to my liking and then saw this is now the official one and wanted to switch. I have already implemented infinite maps for my game and was saddened to see that its not really? supported yet. I don't get how to iterate over an infinite map from the examples at least. Is there anything speaking against just exposing the internally stored chunks to iterate over? I actually kinda just rolled with these and my game now loads terrain in the chunks tiled has defined. That way I'd also avoid iterating over huge empty spaces. Was even thinking about making a fork of this repository but maybe I can help out a little?

The thing about the chunks is that they're meant to be an implementation detail and as such you cannot change e.g. their size. I guess we could make them public, don't see anything wrong with it, as we do need some kind of iterator over infinite maps anyways.

@bjorn Opinions on this?

Chiming in here because I just discovered this crate and was also disappointed at the limited support for infinite maps. At minimum I was hoping for some way to retrieve a lower and upper bound for the x and y coordinates for the tiles in an infinite layer but exposing chunks would allow for more uses too. I understand that chunks are an implementation detail but they do exist in the TMX file itself so not exposing that information through the crate just encourages people to roll their own TMX parser rather than using this one which doesn't seem like it helps anyone.

Thought about this once again, maybe we could provide 4 functions, where each one iterates in one direction and starts in a corner: Right down, right up, left down or left up. And maybe also provide another one to just return the iterator corresponding to the render order set in the map.


Write backfill tests with s3

Test for request rate metrics. It should not exceed s3 rate limit.

Tracked by https://github.com/risingwavelabs/risingwave-test/issues/469


Could not connect latest master build

It seems that node, http://<IP_ADDRESS>:8080/v2/health is not running Midgardv2, but is running v1 http://<IP_ADDRESS>:8080/v1/health

.env has to point to correct Midgard as follow:
REACT_APP_MIDGARD_TESTNET_URL = https://testnet.midgard.thorchain.info

.env has to point to correct Midgard as follow:
REACT_APP_MIDGARD_TESTNET_URL = https://testnet.midgard.thorchain.info


Better GUI?

Don't know Phyton, but wouldn't it be cooler if you added a dark theme and stuff like that?
I'm more familiar with WinAPI and not Phyton so I don't know what's possible.

There is an example of a dark theme. Just rename example-theme.ini to theme.ini and restart the program (You can actually customize the colors in the GUI changing this file)


Storage: Reinitialise root disk quota on lxd import

Reinitialise root disk quota on lxd import so that directory project quota is reinitialised based on the instance's new volume ID.
Fixes https://github.com/lxc/lxd/issues/8280

jenkins: test this please

jenkins: test this please

Testsuite passed

Testsuite passed


Cannot (mousewheel) scroll with Alacritty in hyprland

Alacritty does not respond to scroll wheel in Hyprland. I've duplicated this 3 times on 3 different distributions (arch, fedora, gentoo) all compiled from source while following the instructions given.  I have attempted manually binding scroll wheel actions in alacritty to no evail.
steps to reproduce:
build hyprland from master branch
open alacritty
try to scroll with mouse wheel
due to alacritty being the most popular terminal amongst tiling wm users, i assumed this would have been in the issues already. I searched closed and open issues and didn't find an issue about it- so here we are

I can confirm that.
Interestingly, trackpad scroll works.

Related to #465 ?

probable dupe of #465


[New Feature Request] ability to close child modal and refresh previous modal

Hello,
this feature request if possible can we have method on the controller to close a child modal and refresh previous modal
or even close modal and refresh the Livewire component that opened it
thanks for the great package today my first day using it and love it already

Have a look at the docs for the closeModalWithEvents method. You should be able to use this to refresh another modal or active livewire component.

Hi @3alampro,
Happy to hear you love it already 😄
You can simply emit events to refresh the previous modal like @thermiteplasma mentioned.