Support for web workers

The only example I can find for using a web worker with WebSharper is this old demo:
https://bitbucket.org/IntelliFactory/websharper.demos.webworker/src/53a08c18e9f9e62ba494fb154f05751738d26986/websharper.demos.webworker/Client.fs?at=default&fileviewer=file-view-default
With a single page application this appears to work, because all the JavaScript required is put into a single js file. But with my regular application, feeding the js file of the current project to the web worker fails because there are dependencies on other js files, including WebSharper.Core.JavaScript/Runtime.js.

Having explicit support for targeting a web worker from WebSharper would be useful. What I'm currently trialing in WebSharper 4.x/Zafir is:
Configure projects as libraries
Set
<WebProjectOutputDir>Content</WebProjectOutputDir>

(previously this was <WebSharperProject>Bundle</WebSharperProject>)
that outputs everything into \Content\Scripts\WebSharper
You can then manually determine the libaries you need and import them (and bundle as desired):
    importScripts("build/WebSharper.Core.JavaScript/Runtime.js");
    importScripts("build/WebSharper.Main.js");
    importScripts("build/WebSharper.Collections.js");
    importScripts("build/WebSharper.Web.js");

    importScripts("build/ourlibrary.js");
    importScripts("build/anotherlibary.js");
    importScripts("build/yetmorelibary.js");
    importScripts("build/ourapp.js");

Hope this helps, having something like this route documented would be really useful! In WebSharper 3.x this was a bit easier as you can get everything in concatenated form.

To add some background on this, it seems potentially very useful to have direct support for web workers with build templates. This would let us progressive add our F# based modules to larger web based tools – ones where we currently call onto the server for those parts. There would also the be the possibility to optimise those modules as the functions we actually call don’t touch much of the BCL.
Presently we bundle up the various parts including other bits of UI type code then stick it all in a web worker. I’ve considered using one of the JavaScript optimisers but WebSharper has far more context for this.

Unfortunately, this seems to have gotten more awkward, possibly with recent versions (using Zafir.<IP_ADDRESS>-beta6) as the generated code directly looks for Global on window. I've been able to workaround this by modifying the equivalent global self in web workers around the import:
eval("self.window = self");
// Load the transcompiled F# code.
importScripts("websharperlibs.js");
importScripts("ourtranspiledlib.js");
eval("delete self.window");

note: I used eval as TypeScript sensibly marks self as read-only so this may not work indefinitely but you might also be able to do without that.
It would be great if WebSharper could look for its global on self as well (or avoid globals).

Any word on this? We mostly use W# to do the lengthy math operations as F# is nicer for that kind of stuff, and they need to go in a worker.

We still keep an eye on this, will be high priority after 4.0 stable release, coming soon.

I posted plans to implement web workers at #970, would love to hear your thoughts about it!


Just use id instead of calling host->GetID() again

simple fix

What is it supposed to fix? Is there a related ticket?

It's just a simple optimization I noticed while working on Print feature.

While there's nothing wrong with the idea, the new code will break the build if NaCl is disabled. For example, I do my Linux builds with component=shared_library disable_nacl=1 and get this with your patch:
../../xwalk/runtime/browser/xwalk_content_browser_client.cc:171:7: error: unused variable 'id' [-Werror,-Wunused-variable]
  int id = host->GetID();

Agreed, not worth it then.


Editor - scrollTo() heading

Add a new method in the controller for scrolling to a particular heading. Since the delta format at the moment does not provide ids for headings we will the index to command the scroll controller. Now be aware that the editor can be rendered also in the non scrollable configuration. Meaning that the parent above controls the scroll behaviour. Therefore when implementing in VS what you need is to get a list of headings with viewport coordinates and animate the parent scroll. Write a demo page for this purpose. demonstrating the internal scroll. Write documentation in controller to explain how to use the scrollTo feature. Similar to how we did for markers.
Ideally we would have a generic method that can intercept any type or styling scrollToElement('h1', 5) // ul, bold, etc. This method would be far more useful than just headings.
Join on discord to get advice and help or follow us on YouTube Visual Coding to learn more about the architecture of Visual Editor and other Flutter apps.

Completed by Sebi


Error while starting

Bug
Error while starting application
To Reproduce
Steps to reproduce the behavior:

Download ZIP
Open Solution File
Set starting project to ProcessLauncher
Click Start

Screenshots

Desktop (please complete the following information):

OS Version: Windows 10 1903 18362.267

Thanks for trying out Files UWP! The reason it wont load is that component is meant to open executable files, it gets the file name from the main component. To open correctly try using FilesUWP.Package. Please reopen this issue if this does not help.

Thanks for trying out Files UWP! The reason it wont load is that component is meant to open executable files, it gets the file name from the main component. To open correctly try using FilesUWP.Package. Please reopen this issue if this does not help.

Thanks! I had to deploy first and then build, it's working now!


bluebird: Add support a type and a promise of the type altogether

A fulfilled handler can handle a raw value and a promise of the raw
value at same time.

@heycalmdown Thanks mate!


Link between StatisticalProgram and StatisticalProgramCycle

StatisticalProgram and StatisticalProgramCycle are both imported from GSIM into COOS, but the "has" property that links them in GSIM is not. Should we define a specific property in COOS or use a generic one like dcterms:isPartOf or such?

Following 9/7 meeting: though dcterms:isPartOf might not be enough to represent the relationship between Statistical Program and Statistical Program Cycle (for example the notion of temporal iterations), we keep it for now while indicating its limitations in the text.


https://playground.talao.co/manage

Hello workd from server : at the bottom of the screen

It's a debug message for server connectivity
Linked to #30


fixed overflow issues for page_value and additional checks for min, max.

Fixed : #46778
Bugsquad edit: Fixes #46863

[x] made sure min and max work correctly.
[x] Automatically update page(value) after setting min or max value.
[x] made sure page doesn't overflow.
[ ]  Does clamping page to max-min have any side effects in other node? In this case (ScrollBar) it is clear.

Results after Fixing :

Ok I tested it and indeed it's bugged. Try e.g. setting min value to 200 and max to 300. When you run the project, min is 100, because that's the default max value.
Maybe we should do something like this I mentioned in this comment: https://github.com/godotengine/godot/issues/46863#issuecomment-795798206

there was a problem with rebase I some how can't edit the commit. So used reset to go back which totally changed and github can't detect my push. So I made new PR https://github.com/godotengine/godot/pull/47017 and closing this.


Add edmf consistency test

This PR adds an edmf consistency test. It works by running Bomex and first setting all the edmf auxiliary variables to NaNs, which should work so long we compute everything in the correct order.
Since it's not yet working, I've labeled the job as a soft_fail, so that we can chip away until it's working and change it to a test proper.

bors r+

This is great. Thank you!


Support for setting labels, hints and legends via Rails' i18n

Currently all of the helpers require that the text that's passed in to form labels, hints and legends is supplied inline. Many projects prefer to store the text in the locales files and use Rails' i18n to populate the relevant strings.
There's a working implementation in the GOV.UK elements form builder that can be used for inspiration.

[x] investigate the best approach for generically retrieving localisation values from Rails' store
[x] ensure that strings are chosen in the correct preference order:

provided
localised
automatic

[x] work out the best structure to store hints and legends in the locales file
[ ] document the process in the guide

Additional things to check

[ ] Should there be translations added for radio buttons and check boxes labels and hints? This might be nice addition and could definitely be useful, but there's already text_method: and :hint_method which probably already do everything that's required 🤔
[ ] Should there be a shorthand way to specify to the helper which localisation key to use? Rather than doing something like label: { text: I18n.t('my.favourite.type.of.pasta') } perhaps label: { t: 'my.favourite.type.of.pasta' }? 🤷🏽♂

This is a great addition!
Are there plans to make the i18n scopes configurable? For example, I'd like to use the ActiveRecord activerecord.attributes.(model).(attribute_name) scope for labels, because this would make the form labels and validations use the same text.

Thank you!
I'm in agreement regarding being able to configure it, and generally being able to configure how the builder works is definitely on my radar (mainly for things like setting default label/legend sizes and tags, etc).
The automatic building of the path is very straightforward and should be easily-overridable, but I think individually configuring the structure labels, hints and legends might get a bit complicated.

This is now in the 1.1.0 branch


ARXML problem: decode data are not what expected.

Hi, Miss or Mr.
I have a question when I decode the can files via "arxml". Here are the descriptions.

Please see this picture. The decoded values which are False and Disabled. They should be uint8 or uint16 values. Eg. They should be 0, 1 or 2...
This picture is the definition of one signal.

It seams that the code put the "Description value" in the value column.
Could you please help me to fix this problem?
If you need more description or pictures. Please contact my e-mail of<EMAIL_ADDRESS>Looking forward to hearing from you.

I suppose that you need to ask the provider of the tool which you are using; cantools seems to be completely unrelated to it. I'm closing the issue for this reason. Feel free to reopen it if I made a mistake...

(I can have a closer look if you provide a sample data file.)

Hi, I am glad to provide sample data. Could I send such data to this address<EMAIL_ADDRESS>Or could you please send me hello via the e-mail address<EMAIL_ADDRESS>Then I can direct send you sample data.

To provide clean sample data. I need about 3 days. Thank you so much.

Hi, I am glad to provide sample data. Could I send such data to this address<EMAIL_ADDRESS>
yes, that would work. Alternatively, you can create a gist and post the link to it here...

To provide clean sample data. I need about 3 days. Thank you so much.

don't worry, I'll probably need a few days to inspect it thereafter anyway...

Hi, I have sent you the test data and its related arxml format database. Thank you for your time.

Hi, here is the gist link. However, the test data which is xxx.blf can not be uploaded. I have sent you via e-mail<EMAIL_ADDRESS>Please check.
On the gist, it is my python can decode code. Its ugly.

thanks for the data. I'll have a look, but since I'm pretty busy at the moment it might take a while before I can have a look...

Ok, thanks a lot. Feel free to e-mail if you need more information.

Ok, thanks a lot. Feel free to e-mail if you need more information. testdata.zip

I use the following code：
db = cantools.database.load_file('abc.arxml')
all_message = db.messages
print(al_lmessage)
The above code reads frame in _arxm_l, and can only read the signal directly hung under message.(message.signal_trees)
In fact, many signals in arxml are hung under the pdu, and these signals cannot be read.
I don't know whether the above is a bug or There is a problem with my way of reading load_file
can you help me?

Generally, the arxml format of CANFD is   Frame :: Container-PDU :: I-signal-PDU :: Signal
If arxml is in the above format, thenThe method of  load_ file（abc.arxml） cannot read the signal.
Above, how should this form of arxml be read? or  is the bug ？


window_unfocused_color: Improve appearance of unfocused quickfix

With window_unfocused_color set to true, and the quickfix window opened but unfocused, you the unfocused window styles mean you can't distinguish the current QF items from the other.
For example, the active item in the QF list below is test3.md, but you wouldn't know it:

After this PR, it will appear closer to this:

@olimorris LMK what you think!

LGTM! And thanks for adding to my horrific cache tests 😄 .

No prob! Thanks for merging.


Introduce afterCreate hook for Factories

The afterCreate hook will be invoked after server.create inserts the
record into the DB.
There are two ways to define an afterCreate hook:

In the Factory definition. This will be invoked on each
server.create call:

export default Mirage.Factory.create({
  afterCreate(db) {
    db.posts.update(this.id, {
      links: {
        posts: `/api/authors/${this.id}/posts`,
      },
    });
  },
});

In the overrides passed to the server.create call:

server.create('post', {
  afterCreate(db) {
    db.author.insert({ name: 'Tobey Flenderson', post_ids: [this.id] });
  }
});

@samselikoff let me know if this was the API you envisioned.
The implementation is a little wacky, so if you have issues with my approach I'll gladly refactor to something more idiomatic to this project.

Thanks for working on this! I was traveling last week.
The factory definition API looks perfect. Is there a need for supporting it in the overrides to server.create?

@samselikoff I was under the assumption that it'd be useful for setting up ad-hoc relationships (as opposed to having them defined within the factory)

I see. I'm planning on handling relationships through a new api on Factory, so I'd like to leave this off for now. I know it would make it easier in the short-term, but it's a new API that would only be temporary, so I'd rather not add it in + explain it.
Factory relationships will look something like
// factories/author.js
export default Factory.extend({
  name(i) { return `Author ${i}`; },
  include: ['posts']   // this
  posts: hasMany(), // or this
  relationships: { // or something else
    posts: ...
  }
});

Need to think through the API for the details, but basically yah I want to hold off on this.

:ok_hand:

I'm still in favor of this but I'd like to see the afterCreate in server.create removed (i.e. I'd like users to just define afterCreate within a factory). If you find time, could you remove that feature?
Also, I think it would be ideal if the logic invoking the afterCreate hook was in factory.js rather than server.js.

@samselikoff sure thing, but if we remove the call from server.create, how will consumers setup relationships within their test files if the hook is only exposed in the factory?

Ah, I see... my answer is, traits and factory relationships, which is kind of a crappy answer because they don't exist yet. But they are top priority, after 0.2.0 is released.
I guess my question is, what's the benefit of
server.create('post', {
  afterCreate(db) {
    db.author.insert({ name: 'Tobey Flenderson', post_ids: [this.id] });
  }
});

in a test, versus
let post = server.create('post');
db.author.insert({ name: 'Tobey Flenderson', post_ids: [post.id] });

? Again I'm mostly hesitant about introducing a new API if we don't have to. afterCreate in a Factory definition is totally valid to me, but after factory relationships/traits land, is there any valid use case for afterCreate in server.create?

2634942811fc44153ca4525514a08a991dea965f closes
Thanks for kicking this off!


undo/redo does not work with merge/split actions

Maybe you aware of that, but want to let you know
You can try on the demo
https://codepen.io/soccerloway/pen/WWJowj
Merge some cells, and hit Ctrl+Z to trigger the undo functionality. Nothing happens.
Undo functionality triggered by Ctrl+Z works for other actions like insert row up/down, etc.

Is this problem solved please?


443 Permission Denied

1. Which version of Caddy are you using (caddy -version)?
Caddy 0.11.4 (non-commercial use only)
2. What are you trying to do?
Running behind a Caddy Reverse Proxy with Free SSL
3. What is your Caddyfile?
[Unit]
Description=Caddy HTTP/2 web server
Documentation=https://caddyserver.com/docs
After=network-online.target
Wants=network-online.target
[Service]
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5000
User=www-data
Group=www-data
; Letsencrypt-issued certificates will be written to here in this directory
Environment=CADDYPATH=/etc/ssl/caddy
ExecStart=/usr/local/bin/caddy -log stdout -agree=true -conf=/etc/caddy/Caddyfile -root=/var/tmp
ExecReload=/bin/kill -USR1 $MAINPID
LimitNOFILE=1048576
LimitNPROC=64
PrivateTmp=true
PrivateDevices=true
ProtectHome=true
ProtectSystem=full
ReadWriteDirectories=/etc/ssl/caddy
; The following additional security directives only work with systemd v229 or later.
; They further restrict privileges that can be gained by caddy. Uncomment if you want.
; You may need to add capabilities required by the plugins in use.
;CapabilityBoundingSet=CAP_NET_BIND_SERVICE
;AmbientCapabilities=CAP_NET_BIND_SERVICE
;NoNewPrivileges=true
[Install]
WantedBy=multi-user.target

6. What did you expect to see?
Successfully running caddy service then acquire let's encrypt
7. What did you see instead (give full error messages and/or log)?
AuthURL: https://acme-v02.api.letsencrypt.org/acme/authz/<token>
caddy[15383]: 2019/02/27 16:41:32 [INFO] [mydomain] acme: use tls-alpn-01 solver
caddy[15383]: 2019/02/27 16:41:32 [INFO] [mydomain] acme: Trying to solve TLS-ALPN-01
caddy[15383]: 2019/02/27 16:41:33 [mydomain] failed to obtain certificate: acme: Error -> One or more domains had a problem:
caddy[15383]: [mydomain] [mydomain] acme: error presenting token: presenting with standard provider server: could not start HTTPS server for challenge -> listen tcp :443: bind: permission denied
systemd[1]: caddy.service: Main process exited, code=exited, status=1/FAILURE
systemd[1]: caddy.service: Failed with result 'exit-code'.

8. Why is this a bug, and how do you think this should be fixed?
It's a fresh install of ubuntu 18.04 and caddy. I'm trying to run a Rocket.Chat server on my server with https. Server is running fine locally, my domain is pointing to my server, ports are good but stucked at this errors
Caddyfile
mydomain {
	proxy / <IP_ADDRESS>:3000 {
		header_upstream X-Forwarded-Proto {scheme}
                header_upstream X-Forwarded-For {host}
                header_upstream Host {host}
                websocket
        }
}

Thanks

Thanks for your question, and I'm thrilled that you're using Caddy! This looks more like a question about how to use Caddy rather than a bug report or feature request. Since this issue tracker is reserved for specific, development-focused discussions, I'm going to close this, but we have a community forum where more people will be exposed to your question, including people who may be more expert or experienced with the specific question you're facing. I hope you'll ask your question there, and thanks for understanding!


Add changefeed in readme and update limitations

Packages impacted by this PR
@azure/cosmos
Describe the problem that is addressed by this PR

Add change feed pull model in readme.
Update change feed limitations in readme.

What are the possible designs available to address the problem? If there are more than one possible design, why was the one in this PR chosen?
Are there test cases added in this PR? (If not, why?)
Provide a list of related PRs (if any)
Command used to generate this PR:**(Applicable only to SDK release request PRs)
Checklists

[ ] Added impacted package name to the issue description
[ ] Does this PR needs any fixes in the SDK Generator?** (If so, create an Issue in the Autorest/typescript repository and link it here)
[ ] Added a changelog (if necessary)

API change check
API changes are not detected in this pull request.


Runtime Error

I used the command as follow:
srun -p Ai4sci_3D --gres gpu:1 bash tools/dist_train.sh configs/imvoxelnet/imvoxelnet_kitti.py 1
But I meet some problem:
(imvoxel) [nanuey@SH-IDC1-10-140-24-32 imvoxelnet]$ srun -p Ai4sci_3D --gres gpu:1 bash tools/dist_train.sh configs/imvoxelnet/imvoxelnet_kitti.py 1
srun: job 2563067 queued and waiting for resources
srun: job 2563067 has been allocated resources
srun: Job 2563067 scheduled successfully!
Current QUOTA_TYPE is [reserved], which means the job has occupied quota in RESERVED_TOTAL under your partition.
Current PHX_PRIORITY is normal
Traceback (most recent call last):
File "tools/train.py", line 15, in
from mmdet3d.datasets import build_dataset
File "/mnt/petrelfs/dengken_nerf_perception/imvoxelnet/mmdet3d/datasets/init.py", line 1, in
from mmdet.datasets.builder import build_dataloader
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/datasets/init.py", line 2, in
from .cityscapes import CityscapesDataset
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/datasets/cityscapes.py", line 16, in
from .coco import CocoDataset
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/datasets/coco.py", line 14, in
from mmdet.core import eval_recalls
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/core/init.py", line 2, in
from .bbox import *  # noqa: F401, F403
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/core/bbox/init.py", line 7, in
from .samplers import (BaseSampler, CombinedSampler,
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/core/bbox/samplers/init.py", line 9, in
from .score_hlr_sampler import ScoreHLRSampler
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/core/bbox/samplers/score_hlr_sampler.py", line 2, in
from mmcv.ops import nms_match
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/ops/init.py", line 1, in
from .bbox import bbox_overlaps
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/ops/bbox.py", line 3, in
ext_module = ext_loader.load_ext('_ext', ['bbox_overlaps'])
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/utils/ext_loader.py", line 11, in load_ext
ext = importlib.import_module('mmcv.' + name)
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: /mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/_ext.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZNK2at6Tensor6deviceEv
/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/torch/distributed/launch.py:186: FutureWarning: The module torch.distributed.launch is deprecated
and will be removed in future. Use torchrun.
Note that --use_env is set by default in torchrun.
If your script expects --local_rank argument to be set, please
change it to read from os.environ['LOCAL_RANK'] instead. See
https://pytorch.org/docs/stable/distributed.html#launch-utility for
further instructions
FutureWarning,
ERROR:torch.distributed.elastic.multiprocessing.api:failed (exitcode: 1) local_rank: 0 (pid: 8099) of binary: /mnt/est/nanuey/anaconda3/envs/imvoxel/bin/python3
Traceback (most recent call last):
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/runpy.py", line 193, in _run_module_as_main
"main", mod_spec)
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/torch/distributed/launch.py", line 193, in
main()
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/torch/distributed/launch.py", line 189, in main
launch(args)
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/torch/distributed/launch.py", line 174, in launch
run(args)
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/torch/distributed/run.py", line 713, in run
)(*cmd_args)
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/torch/distributed/launcher/api.py", line 131, in call
return launch_agent(self._config, self._entrypoint, list(args))
File "/mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/torch/distributed/launcher/api.py", line 261, in launch_agent
failures=result.failures,
torch.distributed.elastic.multiprocessing.errors.ChildFailedError:
tools/train.py FAILED
Failures:
<NO_OTHER_FAILURES>
Root Cause (first observed failure):
[0]:
time      : 2023-11-06_19:17:25
host      : SH-IDC1-10-140-24-88
rank      : 0 (local_rank: 0)
exitcode  : 1 (pid: 8099)
error_file: <N/A>
traceback : To enable traceback see: https://pytorch.org/docs/stable/elastic/errors.html
I have installed as your instruction, only changed the version of pytorch, I use pytorch 1.10.0, cuda 11.3, mmdet3d 0.8.0, mmdet 2.10, mmcv-full 1.2.7.
"pip install torch==1.6.0+cu101 torchvision==0.7.0+cu101 -f https://download.pytorch.org/whl/torch_stable.html
Install MMCV
pip install mmcv-full==1.2.7+torch1.6.0+cu101 -f https://openmmlab.oss-accelerate.aliyuncs.com/mmcv/dist/index.html
pip install mmdet==2.10.0
Install MMDetection
git clone https://github.com/saic-vul/imvoxelnet.git
cd imvoxelnet
pip install -r requirements/build.txt
pip install --no-cache-dir -e .
Uninstall pycocotools installed by nuscenes-devkit and reinstall mmpycocotools
pip uninstall pycocotools --no-cache-dir -y
pip install mmpycocotools==12.0.3 --no-cache-dir --force --no-deps
Install differentiable IoU
cd ..
git clone https://github.com/lilanxiao/Rotated_IoU
cp -r Rotated_IoU/cuda_op imvoxelnet/mmdet3d/ops/rotated_iou
cd imvoxelnet/mmdet3d/ops/rotated_iou/cuda_op
python setup.py install"
But I still meet the problem I show: ImportError: /mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/_ext.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZNK2at6Tensor6deviceEv.
Could you please help me
Best wishes~

I dont know why some words so big... Ignore it please..

ImportError: /mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/_ext.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZNK2at6Tensor6deviceEv

This basically means that your cuda version for pytorch or mmcv is wrong. E.g. you install pytorch with cuda==11.3 and mmcv with cuda==10.1.

ImportError: /mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/_ext.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZNK2at6Tensor6deviceEv

This basically means that your cuda version for pytorch or mmcv is wrong. E.g. you install pytorch with cuda==11.3 and mmcv with cuda==10.1.

nonono, I was not using the mmcv installation command as you gived.
I just tried another time and using this:pip install mmcv-full==1.2.7 -f https://download.openmmlab.com/mmcv/dist/cu113/torch1.10.0/index.html
but still the same error

ImportError: /mnt/est/nanuey/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/_ext.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZNK2at6Tensor6deviceEv

This basically means that your cuda version for pytorch or mmcv is wrong. E.g. you install pytorch with cuda==11.3 and mmcv with cuda==10.1.

I mean I mainly used your commands and adjust it based on my situation: pytorch version 1.10.0 (I adjust as above)

If I understand correctly, there is no mmcv-full==1.2.7 at https://download.openmmlab.com/mmcv/dist/cu113/torch1.10.0/index.html .

If I understand correctly, there is no mmcv-full==1.2.7 at https://download.openmmlab.com/mmcv/dist/cu113/torch1.10.0/index.html .

Oh.... So....How can I solve this problem...Could you give me some advice or useful command ?.....Thanks....

You can try to rownload mmcv code at 1.2.7 release and build it from source with your cuda and pytroch versions.

You can try to download mmcv code at 1.2.7 release and build it from source with your cuda and pytorch versions.

I will try it.Thanks

You can try to download mmcv code at 1.2.7 release and build it from source with your cuda and pytorch versions.

I compile mmcv by" git checkout v1.2.7; pip install -v -e ." and successful. But when I run the code by the command mention above, meet a new error:
Traceback (most recent call last):
File "tools/train.py", line 15, in
from mmdet3d.datasets import build_dataset
File "/mnt/petrelfs/dengken_nerf_perception/imvoxelnet/mmdet3d/datasets/init.py", line 1, in
from mmdet.datasets.builder import build_dataloader
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/datasets/init.py", line 2, in
from .cityscapes import CityscapesDataset
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/datasets/cityscapes.py", line 16, in
from .coco import CocoDataset
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/datasets/coco.py", line 15, in
from mmdet.core import eval_recalls
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/core/init.py", line 2, in
from .bbox import *  # noqa: F401, F403
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/core/bbox/init.py", line 7, in
from .samplers import (BaseSampler, CombinedSampler,
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/core/bbox/samplers/init.py", line 9, in
from .score_hlr_sampler import ScoreHLRSampler
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmdet/core/bbox/samplers/score_hlr_sampler.py", line 2, in
from mmcv.ops import nms_match
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/ops/init.py", line 1, in
from .bbox import bbox_overlaps
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/ops/bbox.py", line 3, in
ext_module = ext_loader.load_ext('_ext', ['bbox_overlaps'])
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/utils/ext_loader.py", line 11, in load_ext
ext = importlib.import_module('mmcv.' + name)
File "/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: /mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/mmcv/_ext.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZN2at4_ops19empty_memory_format4callEN3c108ArrayRefINS2_6SymIntEEENS2_8optionalINS2_10ScalarTypeEEENS6_INS2_6LayoutEEENS6_INS2_6DeviceEEENS6_IbEENS6_INS2_12MemoryFormatEEE
/mnt/lustre/houyuenan/anaconda3/envs/imvoxel/lib/python3.7/site-packages/torch/distributed/launch.py:186: FutureWarning: The module torch.distributed.launch is deprecated

Looks like torch==1.10.0 is too good for mmcv==1.2.7 :(

Looks like torch==1.10.0 is too good for mmcv==1.2.7 :(

help me please !   I use too old version will meet the problem of 8.0 arch problem. T_T

Looks like the only solution is to use our implementation from mmdetection3d. It works with modern pytorch.

mmdetection3d

Exactly, I want to use NeRF-Det..It implement based on your excellent project...I neet to install this environment first...

Looks like the only solution is to use our implementation from mmdetection3d. It works with modern pytorch.

I use pytorch 1.8.0 but meet the problem:
× python setup.py develop did not run successfully.
│ exit code: 1
╰─> [89 lines of output]
No CUDA runtime is found, using CUDA_HOME='/mnt/cache/share/cuda-11.3/'
Compiling sparse_conv_ext without CUDA
Compiling iou3d_cuda without CUDA
Compiling voxel_layer without CUDA
Compiling roiaware_pool3d_ext without CUDA
Compiling ball_query_ext without CUDA
Compiling group_points_ext without CUDA
Compiling interpolate_ext without CUDA
Compiling furthest_point_sample_ext without CUDA
Compiling gather_points_ext without CUDA
running develop
running egg_info
writing mmdet3d.egg-info/PKG-INFO
writing dependency_links to mmdet3d.egg-info/dependency_links.txt
writing requirements to mmdet3d.egg-info/requires.txt
writing top-level names to mmdet3d.egg-info/top_level.txt
reading manifest file 'mmdet3d.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/easy_install.py:147: EasyInstallDeprecationWarning: easy_install command is deprecated. Use build and pip and other standards-based tools.
EasyInstallDeprecationWarning,
/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/install.py:37: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
setuptools.SetuptoolsDeprecationWarning,
warning: no files found matching 'mmdet3d/ops//*.cpp'
warning: no files found matching 'mmdet3d/ops//.cu'
warning: no files found matching 'mmdet3d/ops/**/.h'
warning: no files found matching 'mmdet3d/ops/**/*.cc'
warning: no files found matching 'mmdet3d/VERSION'
adding license file 'LICENSE'
writing manifest file 'mmdet3d.egg-info/SOURCES.txt'
running build_ext
building 'mmdet3d.ops.spconv.sparse_conv_ext' extension
creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build
creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build/temp.linux-x86_64-cpython-37
creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build/temp.linux-x86_64-cpython-37/mmdet3d
creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build/temp.linux-x86_64-cpython-37/mmdet3d/ops
creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build/temp.linux-x86_64-cpython-37/mmdet3d/ops/spconv
creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build/temp.linux-x86_64-cpython-37/mmdet3d/ops/spconv/src
Traceback (most recent call last):
File "", line 36, in
File "", line 34, in
File "/mnt/petrelfs/dengken_nerf_perception/imvoxelnet/setup.py", line 248, in
zip_safe=False)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/init.py", line 87, in setup
return distutils.core.setup(**attrs)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/core.py", line 185, in setup
return run_commands(dist)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
dist.run_commands()
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
self.run_command(cmd)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/dist.py", line 1208, in run_command
super().run_command(command)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/develop.py", line 34, in run
self.install_for_development()
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/develop.py", line 114, in install_for_development
self.run_command('build_ext')
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
self.distribution.run_command(command)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/dist.py", line 1208, in run_command
super().run_command(command)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
cmd_obj.run()
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/build_ext.py", line 84, in run
_build_ext.run(self)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run
_build_ext.build_ext.run(self)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/command/build_ext.py", line 346, in run
self.build_extensions()
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 708, in build_extensions
build_ext.build_extensions(self)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions
_build_ext.build_ext.build_extensions(self)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/command/build_ext.py", line 468, in build_extensions
self._build_extensions_serial()
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/command/build_ext.py", line 494, in _build_extensions_serial
self.build_extension(ext)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/build_ext.py", line 246, in build_extension
_build_ext.build_extension(self, ext)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/command/build_ext.py", line 556, in build_extension
depends=ext.depends,
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 524, in unix_wrap_ninja_compile
cuda_post_cflags = unix_cuda_flags(cuda_post_cflags)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 423, in unix_cuda_flags
cflags + _get_cuda_arch_flags(cflags))
File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1561, in _get_cuda_arch_flags
arch_list[-1] += '+PTX'
IndexError: list index out of range
[end of output]

Looks like the only solution is to use our implementation from mmdetection3d. It works with modern pytorch.

I use pytorch 1.8.0 but meet the problem:
× python setup.py develop did not run successfully. │ exit code: 1 ╰─> [89 lines of output] No CUDA runtime is found, using CUDA_HOME='/mnt/cache/share/cuda-11.3/' Compiling sparse_conv_ext without CUDA Compiling iou3d_cuda without CUDA Compiling voxel_layer without CUDA Compiling roiaware_pool3d_ext without CUDA Compiling ball_query_ext without CUDA Compiling group_points_ext without CUDA Compiling interpolate_ext without CUDA Compiling furthest_point_sample_ext without CUDA Compiling gather_points_ext without CUDA running develop running egg_info writing mmdet3d.egg-info/PKG-INFO writing dependency_links to mmdet3d.egg-info/dependency_links.txt writing requirements to mmdet3d.egg-info/requires.txt writing top-level names to mmdet3d.egg-info/top_level.txt reading manifest file 'mmdet3d.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' /mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/easy_install.py:147: EasyInstallDeprecationWarning: easy_install command is deprecated. Use build and pip and other standards-based tools. EasyInstallDeprecationWarning, /mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/install.py:37: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools. setuptools.SetuptoolsDeprecationWarning, warning: no files found matching 'mmdet3d/ops//*.cpp' warning: no files found matching 'mmdet3d/ops//.cu' warning: no files found matching 'mmdet3d/ops/**/.h' warning: no files found matching 'mmdet3d/ops/**/*.cc' warning: no files found matching 'mmdet3d/VERSION' adding license file 'LICENSE' writing manifest file 'mmdet3d.egg-info/SOURCES.txt' running build_ext building 'mmdet3d.ops.spconv.sparse_conv_ext' extension creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build/temp.linux-x86_64-cpython-37 creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build/temp.linux-x86_64-cpython-37/mmdet3d creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build/temp.linux-x86_64-cpython-37/mmdet3d/ops creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build/temp.linux-x86_64-cpython-37/mmdet3d/ops/spconv creating /mnt/petrelfs/dengken_nerf_perception/imvoxelnet/build/temp.linux-x86_64-cpython-37/mmdet3d/ops/spconv/src Traceback (most recent call last): File "", line 36, in File "", line 34, in File "/mnt/petrelfs/dengken_nerf_perception/imvoxelnet/setup.py", line 248, in zip_safe=False) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/init.py", line 87, in setup return distutils.core.setup(**attrs) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/core.py", line 185, in setup return run_commands(dist) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/core.py", line 201, in run_commands dist.run_commands() File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands self.run_command(cmd) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/dist.py", line 1208, in run_command super().run_command(command) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/develop.py", line 34, in run self.install_for_development() File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/develop.py", line 114, in install_for_development self.run_command('build_ext') File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command self.distribution.run_command(command) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/dist.py", line 1208, in run_command super().run_command(command) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/build_ext.py", line 84, in run _build_ext.run(self) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 186, in run _build_ext.build_ext.run(self) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/command/build_ext.py", line 346, in run self.build_extensions() File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 708, in build_extensions build_ext.build_extensions(self) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/Cython/Distutils/old_build_ext.py", line 195, in build_extensions _build_ext.build_ext.build_extensions(self) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/command/build_ext.py", line 468, in build_extensions self._build_extensions_serial() File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/command/build_ext.py", line 494, in _build_extensions_serial self.build_extension(ext) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/command/build_ext.py", line 246, in build_extension _build_ext.build_extension(self, ext) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/setuptools/_distutils/command/build_ext.py", line 556, in build_extension depends=ext.depends, File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 524, in unix_wrap_ninja_compile cuda_post_cflags = unix_cuda_flags(cuda_post_cflags) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 423, in unix_cuda_flags cflags + _get_cuda_arch_flags(cflags)) File "/mnt/lustre/houyuenan/anaconda3/envs/nerf_det/lib/python3.7/site-packages/torch/utils/cpp_extension.py", line 1561, in _get_cuda_arch_flags arch_list[-1] += '+PTX' IndexError: list index out of range [end of output]

while compiling imvoxelnet.. "pip install --no-chache-dir -e . "

Author

So bad, it seems cuda version incompatible...

Looks like the only solution is to use our implementation from mmdetection3d. It works with modern pytorch.

I use pytorch 1.8 and cuda 10.1 and compile mmcv and imvoxelnet successfully, but I meet
Traceback (most recent call last):
File "tools/train.py", line 15, in
from mmdet3d.datasets import build_dataset
File "/mnt/petrelfs/dengken_nerf_perception/imvoxelnet/mmdet3d/datasets/init.py", line 1, in
from mmdet.datasets.builder import build_dataloader
File "/mnt/lustre/houyuenan/anaconda3/envs/nerfdet/lib/python3.7/site-packages/mmdet/datasets/init.py", line 2, in
from .cityscapes import CityscapesDataset
File "/mnt/lustre/houyuenan/anaconda3/envs/nerfdet/lib/python3.7/site-packages/mmdet/datasets/cityscapes.py", line 16, in
from .coco import CocoDataset
File "/mnt/lustre/houyuenan/anaconda3/envs/nerfdet/lib/python3.7/site-packages/mmdet/datasets/coco.py", line 14, in
from mmdet.core import eval_recalls
File "/mnt/lustre/houyuenan/anaconda3/envs/nerfdet/lib/python3.7/site-packages/mmdet/core/init.py", line 2, in
from .bbox import *  # noqa: F401, F403
File "/mnt/lustre/houyuenan/anaconda3/envs/nerfdet/lib/python3.7/site-packages/mmdet/core/bbox/init.py", line 7, in
from .samplers import (BaseSampler, CombinedSampler,
File "/mnt/lustre/houyuenan/anaconda3/envs/nerfdet/lib/python3.7/site-packages/mmdet/core/bbox/samplers/init.py", line 9, in
from .score_hlr_sampler import ScoreHLRSampler
File "/mnt/lustre/houyuenan/anaconda3/envs/nerfdet/lib/python3.7/site-packages/mmdet/core/bbox/samplers/score_hlr_sampler.py", line 2, in
from mmcv.ops import nms_match
File "/mnt/petrelfs/dengken_nerf_perception/mmcv/mmcv/ops/init.py", line 1, in
from .bbox import bbox_overlaps
File "/mnt/petrelfs/dengken_nerf_perception/mmcv/mmcv/ops/bbox.py", line 3, in
ext_module = ext_loader.load_ext('_ext', ['bbox_overlaps'])
File "/mnt/petrelfs/dengken_nerf_perception/mmcv/mmcv/utils/ext_loader.py", line 11, in load_ext
ext = importlib.import_module('mmcv.' + name)
File "/mnt/lustre/houyuenan/anaconda3/envs/nerfdet/lib/python3.7/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
ModuleNotFoundError: No module named 'mmcv._ext'
I am going to crazzzzzzy.......
If I install mmcv-full, the same error as I first mentioned occur again !!!!!
It is so unbelievable....

Looks like the only solution is to use our implementation from mmdetection3d. It works with modern pytorch.

By the way, pip install mmcv-full==1.2.7+torch1.6.0+cu101 -f https://openmmlab.oss-accelerate.aliyuncs.com/mmcv/dist/index.html, will not find a match version to install. It will error too

I success by using torch 1.8.1, cuda 10.1, mmcv1.3 mmdet 2.11. Thanks a lot


[fix] strip auth params from multipart/form-data post request

Fixes an api error for multipart/form-data when passing the openai api key as a param (https://github.com/dvcrn/ex_openai/issues/27).
I have tested this works with Files.create_file/3 using a pdf document. I haven't touched the tests since I didn't see a precedent for when the api key is passed as a param. Open to feedback /  happy to make additional changes, or to coauthor the PR, as is convenient.

Thanks for this! Let me go ahead and merge this to get it into the next release. Could you try adding a test in a separate PR? I think this is something we should add testcases for

Released in https://github.com/dvcrn/ex_openai/releases/tag/1.6.0

Thanks for this! Let me go ahead and merge this to get it into the next release. Could you try adding a test in a separate PR? I think this is something we should add testcases for

Yes I'd be happy to! I should have time tomorrow or early next week, so I will send another PR soon.
I am thinking to add a small sample pdf in the testdata, create a new cassette and assert the request body when calling with api key in opts. Please let me know if you prefer another approach!


Static route to BGP redistribution

Summary

Static routes selected for redistribution base on combination of: prefix-set, set-tag
MED set to value of metric of static route (metric propagation)
AS-Path set to contain one AS with value provided in configuration
Local-Preference to a value provided in configuration
Community list set to defined community set
BGP protocol next-hop set to value provided in configuration
Redstribute static-route with "DROP" as the next-hop

https://github.com/openconfig/featureprofiles/issues/2568

Pull Request Functional Test Report for #2569 / 8c42f1c3b4026ca21c29ec789ac67c4de70e7f4f
No tests identified for validation.
Help

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 52.141%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1668

Relevant Lines:
3199

💛  - Coveralls


Feat: Stop autoplay on focus of slide elements

Feature request is related to

[x]  embla-carousel-autoplay (plugin)

A clear and concise description of what the problem is.
The current implementation of stopOnInteraction does not stop if focus is received by a nested element.
Describe the solution you'd like
This PR adds event handlers to the autoplay plugin to stop the autoplay if a bubbled up focus event is received by the root element.

Hi @nwidynski,
I think this is a good idea. Thank you for your efforts! I will test this when I get the chance and get back to you.
Best,
David

Hi @nwidynski,
I just tested this and it's working well except one bug. To reproduce:

Add a focusable element (a link) inside each slide.
Set the following option: stopOnInteraction: false.
Let autoplay scroll past the first slide.
Tab to the link in the first slide so it receives focus.
Click with the mouse outside the carousel to remove focus.
When autoplay plays again, the first time it won't animate the slide change.

At the time of writing I don't know what's causing this so we'll have to investigate it a bit.
Best,
David

@nwidynski I found the culprit. I will share more information soon about how to proceed with this PR. Thank you for your patience!

@nwidynski thank you for your contribution ⭐!


Unexpectedly leaving insert mode when job writes to hidden buffer using prompt buffers (regression by patch 8.2.1654)

Describe the bug
After patch 8.2.1654, insert mode is exited unexpectedly using prompt-buffers when a job writes to a hidden buffer.
I used the repro case to bisect this to 8.2.1654 patch.
To Reproduce
Detailed steps to reproduce the behavior:
test.vim
set buftype=prompt

call prompt_setprompt( bufnr(), 'Enter some text: ' )

call job_start( [ 'uuencode', '/dev/urandom', '/dev/stdout' ], #{
      \ out_io: 'buffer',
      \ out_name: ''
      \ } )

vim -Nu NONE -S test.vim
i
type something

You will be bumped unexpectedly out of insert mode into normal mode as you're typing.
Expected behavior
Remain in insert mode until pressing <CR> in the prompt buffer.
Environment (please complete the following information):

Vim version 8.6.1654 and later
OS: Linux RHEL 7, macOS
Terminal: tmux, PuTTY, iTerm

I'm surprised patch  8.6.1654 would cause this, and only now gets reported.
Are you sure it's not related to 8.2.1762 ?

I can check but I bisected and it indicated the above commit. I can confirm that with 8.2.1762 we no longer have the pum left open, but it still exits insert mode unexpectedly. With 8.1.1654, you end up with both - exit insert mode unexpectedly and the pum is left open.

Does it happen also in gvim?
What are the answers to

:set timeout? timeoutlen? ttimeout? ttimeoutlen?

(including the question marks)?
Best regards,
Tony.

Does it happen also in gvim?

Will check motif GUI at work tomorrow, sorry don't have a gvim here right now.
For the record, it does repro in MacVim with:
ben@BenMBP vim-clean % gvim --version
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Sep 28 2020 22:02:11)
macOS version
Included patches: 1-1768
Compiled by Homebrew
Huge version with MacVim GUI.  Features included (+) or not (-):

What are the answers to :set timeout? timeoutlen? ttimeout? ttimeoutlen?

timeout
timeoutlen=1000
ttimeout
ttimeoutlen=100

On Mon, Sep 28, 2020 at 11:23 PM Ben Jackson<EMAIL_ADDRESS>wrote:

Does it happen also in gvim?
Will check motif GUI at work tomorrow, sorry don't have a gvim here right
now.
For the record, it does repro in MacVim with:
ben@BenMBP vim-clean % gvim --version
VIM - Vi IMproved 8.2 (2019 Dec 12, compiled Sep 28 2020 22:02:11)
macOS version
Included patches: 1-1768
Compiled by Homebrew
Huge version with MacVim GUI.  Features included (+) or not (-):
What are the answers to :set timeout? timeoutlen? ttimeout? ttimeoutlen?
[image: Screenshot 2020-09-28 at 22 21 56]
https://user-images.githubusercontent.com/10584846/94487504-09dde480-01d9-11eb-8c34-ec4fec370429.png

timeout
timeoutlen=1000
ttimeout
ttimeoutlen=100

Hm, with the above settings, Vim ought to be able to tell the difference
between an Esc key hit at the keyboard and a ^[ sent as part of a keycode,
so I suppose it isn't that. Also, if the problem happens in the MacVim GUI
I would expect it to happen also in an X11 or W32/64 GUI but I'm less sure
about that.

Best regards,
Tony.

Yes Tony I’m fairly sure that this is not a mapping issue. It’s as if something is calling stopinsert. I have a couple of theories of how to minimise the repro case. Will try after work hopefully.
Re the point about being not reported before, it seems that it’s only prompt buffers that are affected, which are not frequently used.

OK, this is easy to repro. Here's a trivial case.
set buftype=prompt

call prompt_setprompt( bufnr(), 'Enter some text: ' )

call job_start( [ 'uuencode', '/dev/urandom', '/dev/stdout' ], #{
      \ out_io: 'buffer',
      \ out_name: ''
      \ } )

vim -Nu NONE -S test.vim
enter insert mode i and type some characters - you're bumped out of insert mode

Here's a test that repros it:

function! Test_Prompt_While_Writing_To_Hidden_Buffer()
  call CanTestPromptBuffer()
  let scriptName = 'XpromptscriptHiddenBuf'
  let script =<< trim END
    set buftype=prompt
    call prompt_setprompt( bufnr(), 'cmd:' )
    let job = job_start( [ 'uuencode', '/dev/urandom', '/dev/stdout' ], #{
      \ out_io: 'buffer',
      \ out_name: '' } )
    startinsert
  END
  exec script->writefile( scriptName )

  let buf = RunVimInTerminal('-S ' . scriptName, {})
  call WaitForAssert({-> assert_equal('cmd:', term_getline(buf, 1))})

  call term_sendkeys( buf, 'test' )
  call WaitForAssert( {-> assert_equal('cmd:test', term_getline(buf, 1)) } )

  call StopVimInTerminal(buf)
  call delete(scriptName)
endfunc

|| command line..script /Users/ben/Development/vim/src/testdir/runtest.vim[459]..function RunTheTest[39]..Test_Prompt_While_Writing_To_Hidden_Buffer[17]..WaitForAssert[2]..6_WaitForCommon[11]..3 line 1: Expected 'cmd:test' but got 'cmd:t'

Been debugging this. I'm thinking that it's related to this:
    static void
leaving_window(win_T *win)
{
    // Only matters for a prompt window.
    if (!bt_prompt(win->w_buffer))
	return;

    // When leaving a prompt window stop Insert mode and perhaps restart
    // it when entering that window again.
    win->w_buffer->b_prompt_insert = restart_edit;
    if (restart_edit != 0 && mode_displayed)
	clear_cmdline = TRUE;		// unshow mode later
    restart_edit = NUL;

    // When leaving the window (or closing the window) was done from a
    // callback we need to break out of the Insert mode loop and restart Insert
    // mode when entering the window again.
    if (State & INSERT)
    {
	stop_insert_mode = TRUE;
	if (win->w_buffer->b_prompt_insert == NUL)
	    win->w_buffer->b_prompt_insert = 'A';
    }
}

    static void
entering_window(win_T *win)
{
    // Only matters for a prompt window.
    if (!bt_prompt(win->w_buffer))
	return;

    // When switching to a prompt buffer that was in Insert mode, don't stop
    // Insert mode, it may have been set in leaving_window().
    if (win->w_buffer->b_prompt_insert != NUL)
	stop_insert_mode = FALSE;

    // When entering the prompt window restart Insert mode if we were in Insert
    // mode when we left it.
    restart_edit = win->w_buffer->b_prompt_insert;
}

When using aucmd_prepwin we actually leave the window in order to write to the hidden buffer, and we're calling leaving_window(). . But it seems like  we're not calling entering_window() for the prompt buffer when reverting this temporary window.
For certain when we do call entering_window(), bt_prompt(win->w_buffer) is false. I'ma summing that's actually entering the temporary autocmd window.
Are we missing a call to win_enter in aucmd_restbuf() ? That seems intrusive, but I haven't fully groked this code yet.

I can't reproduce because "uuencode: Command not found".  Perhaps something more common (and not keeping the CPU busy)?

Oh, and there is no aucmd_prepwin(), you probably mean aucmd_prepbuf().  But it doesn't call leaving_window() directly.

Just need a job to write to a hidden buffer while in insert mode.
This repro's it too
set buftype=prompt

call prompt_setprompt( bufnr(), 'Enter some text: ' )

augroup TEST
  au InsertEnter call job_start( [ 'ls' ], #{
      \ out_io: 'buffer',
      \ out_name: ''
      \ } )
augroup END

this seems to resolve it:
ben@BenMBP vim-clean % git diff
diff --git a/src/autocmd.c b/src/autocmd.c
index d5c61ca6a..1789d0477 100644
--- a/src/autocmd.c
+++ b/src/autocmd.c
@@ -1530,6 +1530,7 @@ win_found:

        restore_snapshot(SNAP_AUCMD_IDX, FALSE);
        (void)win_comp_pos();   // recompute window positions
+       win_enter(aco->save_curwin, TRUE);
        unblock_autocmds();

        if (win_valid(aco->save_curwin))
ben@BenMBP vim-clean %

Oh, and there is no aucmd_prepwin(), you probably mean aucmd_prepbuf(). But it doesn't call leaving_window() directly.

Yeah I meant aucmd_prepbuf() - this calls win_split_ins(), which calls     win_enter_ext(wp, FALSE, FALSE, TRUE, TRUE, TRUE); ... and that calls leaving_window()

OK here's a test which repros it too; had to introduce some sleeps though :/
function! Test_Prompt_While_Writing_To_Hidden_Buffer()
  call CanTestPromptBuffer()
  let scriptName = 'XpromptscriptHiddenBuf'
  let script =<< trim END
    set buftype=prompt
    call prompt_setprompt( bufnr(), 'cmd:' )
    let job = job_start( [ '/bin/sh', '-c', 'while true; do echo line; done' ], #{
      \ out_io: 'buffer',
      \ out_name: '' } )
    startinsert
  END
  exec script->writefile( scriptName )

  let buf = RunVimInTerminal('-S ' . scriptName, {})
  call WaitForAssert({-> assert_equal('cmd:', term_getline(buf, 1))})

  call term_sendkeys( buf, 'test' )
  call WaitForAssert( {-> assert_equal('cmd:test', term_getline(buf, 1)) } )
  sleep 10m
  call term_sendkeys( buf, 'test' )
  call WaitForAssert( {-> assert_equal('cmd:testtest', term_getline(buf, 1)) } )
  sleep 10m
  call term_sendkeys( buf, 'test' )
  call WaitForAssert( {-> assert_equal('cmd:testtesttest', term_getline(buf, 1)) } )

  call StopVimInTerminal(buf)
  call delete(scriptName)
endfunc

I was wondering if this patch (that I just made myself when I first encountered the bug) is useful:
https://github.com/neovim/neovim/pull/12977
I have no idea if this is the "right" solution or not, just figured I'd show what I was thinking. I just expected :stopinsert to just completely shutdown everything that could be happening in insert mode.

Just so no one is confused about @puremourning 's test script, WaitForAssert is defined in https://github.com/puremourning/vimspector/blob/4ed915828285c067b7f4a35fecc7e0ed56fc9be8/tests/lib/plugin/shared.vim.

@Happy-Dude my test runs in Vim’s test suite. Paste it into test_promt_buffer.vim
Those functions are defined in vim’s shared.vim and friends.

Thanks for figuring this out and writing a test.  I'll clean it up a bit.

Thanks Bram. That's working nice now.


Merge Improved MPRIS support

Fleshes out the MPRIS integration so subscribers on the DBus channel get updates when the status changes. One result of this change is that the "now playing" indicator on my GNOME desktop correctly shows the current song and displays the album art!
@phmongeau, do you mind if I merge this in?
I also appreciate the / key bind for jumping to the search bar.

sure, no problem.


Importing references from other yml

I'm using flasgger with flask-restful and I'm wondering if its possible to import definitions from another file. This is so I can have ymls for each of my methods, while the common definitions can be in a separate definitions.yml. I'm getting a "Could not resolve reference error"
Other approaches that help improve the maintainability by not having to define the same schema multiple times are also welcome
Resource class
class CreateUser(Resource)
    @swag_from('create_user.yml', validation=true)
    def post(self):
    <code>

create_user.yml (working)
---
parameters:
    - in: body
      name: body
      schema:
          id: User
          type: object
          required:
          - name
         properties:
           name:
           type: string

create_user.yml (Not working, but preferred)
---
parameters:
    - in: body
      name: body
      schema:
          $ref: '#/definitions/User'
import: './definitions.yml'

definitions.yml (Not working, but preferred)
---
definitions:
    User:
        type: object
        required:
          - name
        properties:
           name:
           type: string

I'd be interested in this as well, for very large schemas it's not feasible to maintain separate copies everywhere it is referenced

To @Zerthick & @lohwanjing
There is a workaround to do it for now
By using template_file argument.
Swagger(app, template_file='./common_schemas.yml')
The drawback is you cannot use template_file and the common_schemas.yml would be huge.


GridSplitter incorrectly resizes absolute width controls if positioned after star width control

Describe the bug
GridSplitter incorrectly resizes absolute size controls if positioned after star sized control. This happens in both horizontal and vertical orientation. The GridSplitter itself does not move and the wrong panel moves in the wrong direction.
https://github.com/AvaloniaUI/Avalonia/assets/13269713/5f0e2db1-84d9-41cf-bce2-9353d5d5c467
To Reproduce
Add the following code:
  <Grid ColumnDefinitions="*, 4, 100, 4, 100">
    <Rectangle Grid.Column="0" Fill="Red"/>
    <GridSplitter Grid.Column="1"/>
    <Rectangle Grid.Column="2" Fill="Yellow"/>
    <GridSplitter Grid.Column="3"/>
    <Rectangle Grid.Column="4" Fill="Blue"/>
  </Grid>

Try to move the second GridSplitter.
Expected behavior
GridSplitter follows the cursor in the same direction when dragged and the control following it (to the right/below) changes size.
Avalonia version
11.1.0-beta2
OS
Windows
Additional context
No response

Was this working correctly before 11.1.0-beta2?


plot.overlay_href does not return the layer

Describe the bug
plot.overlay_href does not return the layer that was created (despite the docs saying it does).
To Reproduce
Steps to reproduce the behavior:
var layer = plot.overlay_href('dat/penny.prm', null, {});
console.log(layer); // => undefined

Expected behavior
plot.overlay_href should return the layer index for the layer that was created.
jsFiddle
N/A
Screenshots
N/A
Desktop (please complete the following information):
N/A
Smartphone (please complete the following information):
N/A
Additional context
        overlay_href: function(href, onload, layerOptions) {
            m.log.debug("Overlay href: " + href);
            try {
                this.show_spinner();

                var handleHeader = (function(plot, onload) {
                    return function(hcb) {
                        try {
                            if (!hcb) {
                                alert("Failed to load data");
                            } else {
                                var i;
                                if (href.endsWith(".mat")) {
                                    i = plot.overlay_matfile(hcb, layerOptions);
                                } else {
                                    i = plot.overlay_bluefile(hcb, layerOptions);
                                }
                                if (onload) {
                                    onload(hcb, i);
                                }
                            }
                        } finally {
                            plot.hide_spinner();
                        }
                    };
                }(this, onload));

                var reader;
                if (href.endsWith(".mat")) {
                    reader = new matfile.MatFileReader();
                } else {
                    reader = new bluefile.BlueFileReader();
                }
                reader.read_http(href, handleHeader);
            } catch (error) {
                console.error(error);
                alert("Failed to load data");
                this.hide_spinner();
            }
        },

After discussing this with @maihde, it appears this is intentional because of the asynchronous nature of file-loading.
For the time being, this issue can be solved by modifying the docs.
The longer term solution might include returning the layer index of where the layer will be once the file is loaded.

Would it be helpful for overlay_href to take an optional callback argument, triggered when the layer is added sometime in the future? Or maybe SigPlot could trigger some other event when a layer resolves?

overlay_href does take in an optional callback triggered when the layer is added.

overlay_href does take in an optional callback triggered when the layer is added and you have access to the layer index within the callback.

Then clearly it was a really good idea and all of us who thought of it independently are Quality People. I do like the idea of being able to record immediately where the layer will be, for future access; but given that you won't know the layer is really there until after the callback fires, I don't see any reason to hurry.

@sterre right -- and that's fair. This came up with bookkeeping within react-sigplot for the HrefLayer. I believe I've found a way around it (using the callback), but it is an open question.

Would it make sense to change all the overlay functions to return a promise? This would allow you to write await functions for all the overlay methods.

@desean1625 This would definitely be an API breaking change, but I agree it makes a lot of sense. For this big of a change, definitely going to want @maihde to weigh in.

Or a non breaking change only return the promise on overlay_href.On May 16, 2019 5:18 PM, Michael Recachinas<EMAIL_ADDRESS>wrote:@desean1625 This would definitely be an API breaking change, but I agree it makes a lot of sense. For this big of a change, definitely going to want @maihde to weigh in.
—You are receiving this because you were mentioned.Reply to this email directly, view it on GitHub, or mute the thread.

Given 45778ab20c9495d5334e1c97fd7e484e56b2267f, where multiple hrefs can now be plotted with overlay_href, should we return a list of promises (i.e., one promise per layer)? A promise where a parameter is a list of layers?

@mrecachinas @desean1625 @sterre great news...I actually got this implemented last night.  If users were treating the return value from overlay_bluefile and friends as an opaque value then there are no API breaks.  If someone was ignoring the return value and hardcoding layer numbers into their push or reload calls then they will need to change their code.  I'll submit a PR soon...but you can check out:
https://github.com/spectriclabs/sigplot/commit/3167fef123e8f2e1769ed657cb0f50b679448300
https://github.com/spectriclabs/sigplot/commit/52e8178d6d7345be6378d12fa87159cee9b2cb59
https://github.com/spectriclabs/sigplot/commit/a7d94bd77e4da8ac30b91460b10fa785020e3596

Here is a PR https://github.com/LGSInnovations/sigplot/pull/89

Fixed in #89.


Create Blog Strategy

Create blog strategy to define first steps for blog at docs.celo.org

Pause for hackathon


[AIRFLOW_EXPERIMENT] Run only GCP tests

Make sure you have checked all steps below.
Jira

[ ] My PR addresses the following Airflow Jira issues and references them in the PR title. For example, "[AIRFLOW-XXX] My Airflow PR"

https://issues.apache.org/jira/browse/AIRFLOW-XXX
In case you are fixing a typo in the documentation you can prepend your commit with [AIRFLOW-XXX], code changes always need a Jira issue.

Description

[ ] Here are some details about my PR, including screenshots of any UI changes:

Tests

[ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

Commits

[ ] My commits all reference Jira issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters (not including Jira issue reference)
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Documentation

[ ] In case of new functionality, my PR adds documentation that describes how to use it.

When adding new operators/hooks/sensors, the autoclass documentation generation needs to be added.
All the public functions and the classes in the PR contain docstrings that explain what it does

Code Quality

[ ] Passes flake8

Codecov Report

Merging #3 into master will decrease coverage by 46.98%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           master       #3       +/-   ##
===========================================
- Coverage   74.65%   27.67%   -46.99%
===========================================
  Files         430      430
  Lines       27978    27978
===========================================
- Hits        20887     7742    -13145
- Misses       7091    20236    +13145

Impacted Files
Coverage Δ

...low/contrib/operators/wasb_delete_blob_operator.py
0% <0%> (-100%)
:arrow_down:

airflow/contrib/sensors/emr_base_sensor.py
0% <0%> (-100%)
:arrow_down:

airflow/contrib/sensors/cassandra_record_sensor.py
0% <0%> (-100%)
:arrow_down:

airflow/www/blueprints.py
0% <0%> (-100%)
:arrow_down:

airflow/contrib/hooks/aws_firehose_hook.py
0% <0%> (-100%)
:arrow_down:

airflow/contrib/operators/s3_to_sftp_operator.py
0% <0%> (-100%)
:arrow_down:

...ib/operators/sagemaker_endpoint_config_operator.py
0% <0%> (-100%)
:arrow_down:

airflow/operators/postgres_operator.py
0% <0%> (-100%)
:arrow_down:

airflow/hooks/sqlite_hook.py
0% <0%> (-100%)
:arrow_down:

airflow/contrib/operators/adls_list_operator.py
0% <0%> (-100%)
:arrow_down:

... and 278 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 72fe43b...e244a0f. Read the comment docs.


Version 1.3.0

Changes

added the ability to load gradle based HiveMQ extensions
Array classes are no longer put into shrinkwrap archives
switched to jetbrains annotations

Tested on Windows 10


What Does "Intimate" Mean Here

I don't understand what the word "intimate" means in the context of this page/paragraph/sentence.

Apps must always intimate the user before downloading any file or executable on the user’s environment. Any call to action (CTA), either text based or otherwise, that makes it clear to the user that a file or executable is downloaded on user action is allowed in the app. [Mandatory Fix]

Did the author mean to use some other term?

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

ID: ff84fba8-b412-4c4a-3259-ae161d3523fd
Version Independent ID: dba5c88d-5bd4-b66c-921b-2670fe8cfa66
Content: Microsoft Teams store validation guidelines - Teams
Content Source: msteams-platform/concepts/deploy-and-publish/appsource/prepare/teams-store-validation-guidelines.md
Service: msteams
GitHub Login: @heath-hamilton
Microsoft Alias: surbhigupta

@surbhigupta12 - This question is more related to Teams Store validation guidelines document. Can you please help to check and update the documentation? Thanks.


Typo on kubectl describe documentation

https://github.com/kubernetes/kubectl/blob/0f88fc6b598b7e883a391a477215afb080ec7733/pkg/cmd/describe/describe.go#L65
is missing "ds".
It should read kubectl describe pods -l name=myLabel.

Hi @aaronlidman and thanks for your issue.
Actually the description is right, as "po" is a shorthand for "pods" in kubectl commands.
You can check it with kubectl describe po your-pod-name and kubectl get po your-po-name
I'm closing this issue, but feel free to re-open if still think this is wrong :)
/close


message_data ModuleNotFoundError leading to not unusable

Same as #37, but more fatal.
In my tests, the entire command line seemed to be unavailable due to the absence of the module message_data.
I have tried 'mix-models --help','mix-models cd-links --help'.
I think maybe some necessay comand is related to message_data, even defined in message_data.

even defined in message_data

This is correct; the CD-LINKS project codes are in the proprietary message_data repo.
Without message_data, one should see the following commands available:
$ mix-models
message_data is not installed or cannot be imported

  File "/home/khaeru/vc/iiasa/models/message_ix_models/cli.py", line 113, in <module>
    import message_data.cli

ModuleNotFoundError: No module named 'message_data'

Usage: mix-models [OPTIONS] COMMAND [ARGS]...

  Command-line interface for MESSAGEix-GLOBIOM model tools.

  Every tool and script in this repository is accessible through this
  CLI. Scripts are grouped into commands and sub-commands. For help on
  specific (sub)commands, use --help, e.g.:

          mix-models cd-links --help
          mix-models cd-links run --help

  The top-level options --platform, --model, and --scenario are used by
  commands that access specific message_ix scenarios; these can also be
  specified with --url.

  For more information, see
  https://docs.messageix.org/projects/models2/en/latest/cli.html

Options:
  --url ixmp://PLATFORM/MODEL/SCENARIO[#VERSION]
                                  Scenario URL.
  --platform PLATFORM             Configured platform name.
  --model MODEL                   Model name for some commands.
  --scenario SCENARIO             Scenario name for some commands.
  --version INTEGER               Scenario version.
  --local-data PATH               Base path for local data.
  -v, --verbose                   Print DEBUG-level log messages.
  --help                          Show this message and exit.

Commands:
  export-test-data  Prepare data for testing.
  res               MESSAGEix-GLOBIOM reference energy system (RES).
  techs             Export metadata to technology.csv.

These commands (e.g. mix-models techs) all do work and are usable.
With message_data, there is a larger number of commands available, e.g. mix-models cd-links. However, if one attempts to run those commands without message_data installed, one does get this "Error: No such command". In short, that is expected behaviour.
I do note that the documentation at https://docs.messageix.org/projects/models/en/latest/cli.html#top-level-options-and-commands gives the longer list (including message_data) instead of the shorter one. We should clearly explain that there in the documentation. However, improvements to the docs will be part of a fix for #37, so this issue is strictly a duplicate.

I also wanted to try out the reference energy system model but I have the same problem. This has also changed the output of the message-ix show-versions command as below:
message_data is not installed or cannot be imported

ixmp:        3.7.0
message_ix:  3.7.1.dev16+g6dee23a
message_ix_models: 2023.7.26
message_data: None

click:       8.1.3
dask:        2023.6.0
genno:       installed
graphviz:    None
jpype:       1.4.1
… JVM path:  C:\Program Files\Java\jre1.8.0_351\bin\server\jvm.dll
openpyxl:    3.1.2
pandas:      2.0.2
pint:        0.22
xarray:      2023.5.0
yaml:        6.0

iam_units:   installed
jupyter:     installed
matplotlib:  3.7.0
plotnine:    None
pyam:        1.9.0

GAMS:        43.4.0

python:      3.11.4 | packaged by conda-forge | (main, Jun 10 2023, 17:59:51) [MSC v.1935 64 bit (AMD64)]
python-bits: 64
OS:          Windows
OS-release:  10
machine:     AMD64
processor:   AMD64 Family 23 Model 17 Stepping 0, AuthenticAMD
byteorder:   little
LC_ALL:      None
LANG:        None
LOCALE:      ('Turkish_Turkey', '1254')

It would be nice to install message_data otherwise the output could be perceived as corrupt data.

It would be nice to…

@gorkemgungormetu I think you probably want to read and +1 the comment at https://github.com/iiasa/message-ix-models/issues/37#issuecomment-996803988, which says something similar. Notice that the current issue is closed.


Update write_throughput_benchmark.rst

Fix example

@steffenix thanks for the pull request. Is setrandom deprecated?

Got replaced in 9.6
https://www.postgresql.org/docs/9.6/static/release-9-6.html

Just reproduced the problem you reported. With postgres-contrib 10 I got the error insert.sql:4: invalid command in command "setrandom".
Your change looks good but there are a few other things to fix:

Our install pgbench instructions specify postgres 9.5. Following those instructions would make the benchmarking guide work without a problem. However I agree with you that we should use a newer version because it's more likely what people have on their machines already. Could you update the install instructions?
The update throughput section also has sql with setrandom.

Would you like to update your pull request with these additions?

OK I will have alook and update my pull request.

I have changed the version to 10.

I have done and cleanup the mess that was introduced by the merge.

Thank you!


How to create virtual devices

Hello,
I need to create virtual devices to emulate a BLE peripheral at run time (like lightblue app).
I have searched in documentation but I haven't found a solution.
Any advices? Thank you

If you want your app to become a central then this library does not yet support this functionality

Ok, @dariuszseweryn do you know any other RN library to do that?
Google is not helping me so much...
Thank you

No unfortunately. Nothing cross platform.

OK, thank you


Website/API

I repeat my comment here from HN:
This is really great. As someone who has done quite a few size-sensitive projects/experiments, have you considered providing them in a small website? So artists can contribute with more icons and developers who want to use them can modify them when downloading (border radius, background, etc). I could throw a quick prototype if that sounds good.

Go ahead :-)
There are already lots of Icon / SVG sites. I got many of the original vectors from https://www.iconfinder.com/ - but I do like the idea of being able to change the border radius and background programatically.
I'm not sure about having people submit designs. User Generated Content is very hard moderate.

That's really the main idea that I wanted for making it, to allow for user generated content to be uploaded. What would you do if people did a PR here with new logos?
However with a search I see that https://www.iconfinder.com/search/?q=facebook&price=free is really similar for instance (615 bytes one of them), so yeah it might not make sense to do that...
If we remove that functionality, it'd be only to modify the background+radius, which could (but maybe it shouldn't) just be statically generated and hosted in github. It'd be 51kb per logo folder approx: 1kb/logo * 50 (1-50%) + 1kb

I have made a small preview site:


Everytime Update whitelist on DockerHub Remote repository, password gets empty

I as a platform engineer, when I'm adding a new whitelisted image to dockerhub remote, the docker password always gets overwritten with empty value.
before apply:
dockerhub credentials are correctly set.
after apply:
dockerhub username is there but password is empty. if no manual intervention is done, remote gets unavailable (due to reaching dockerhub pull limit).
resource "artifactory_remote_docker_repository" "registry_1_docker_io" {
  key                           = "registry-1.docker.io"
  url                           = "https://registry-1.docker.io/"
  proxy                         = "Proxy"
  includes_pattern              = <<EOT
    alpine/git/**,
    alpine/helm/**,
   ...
    zricethezav/gitleaks/**
  EOT
  external_dependencies_enabled = false
  block_pushing_schema1         = false
  xray_index                    = false
  property_sets = [
    "artifactory",
  ]
  lifecycle {
    ignore_changes = [
      username,
      password
    ]
  }
}

provider version:

Installing jfrog/artifactory v6.15.1...
Installed jfrog/artifactory v6.15.1 (unauthenticated)

Is anything wrong with my config?

Please, check with the latest version v6.26.0

@EvertonSA thanks for the ticket! It's fixed in v6.26.1

this was issue for us. as a workaround we had to put the credentials in TF variables on the TF build server.


Send recovery alerts

when the problem that triggered the alert has recovered,Whether to support  sending a "resolve" message ?

why did you close this issue?

why did you close this issue?

look here：https://github.com/jertel/elastalert2/discussions/357


[top] Reduce async fifo depth

Fix issue identified in #14204
Signed-off-by: Timothy Chen<EMAIL_ADDRESS>

Wait... Did we support Depth 1 in Async FIFO? Did not know that..

LGTM with a question With this fix, the ibex D port can only have max 3 outstanding reqs, right?

yes that's right.

LGTM with a question With this fix, the ibex D port can only have max 3 outstanding reqs, right?

yes that's right.

Thanks @tjaychen

4 x 3depth of TL transaction removed -> one req/rsp pair size is around 150bit as far as I know. around 2000bits are saved. 16k ~ 20k gates are saved. yay!

ahhh... i always underestimate the size of these things...
On Wed, Oct 26, 2022 at 5:13 PM Eli Kim @.***> wrote:

4 x 3depth of TL transaction removed -> one req/rsp pair size is around
150bit as far as I know. around 2000bits are saved. 16k ~ 20k gates are
saved. yay!
—
Reply to this email directly, view it on GitHub
https://github.com/lowRISC/opentitan/pull/15766#issuecomment-1292799378,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAH2RSVKW3E77OGF6PSXMJDWFHCMLANCNFSM6AAAAAARPPVFJY
.
You are receiving this because you were mentioned.Message ID:
@.***>

Wait... Did we support Depth 1 in Async FIFO? Did not know that..

i'm...not actually sure how well verified depth 1 is...let's find out!

4 x 3depth of TL transaction removed -> one req/rsp pair size is around 150bit as far as I know. around 2000bits are saved. 16k ~ 20k gates are saved. yay!

wow, what a big save!

4 x 3depth of TL transaction removed -> one req/rsp pair size is around 150bit as far as I know. around 2000bits are saved. 16k ~ 20k gates are saved. yay!

wow, what a big save!

pretty cool ;)
@arnonsha @zi-v FYI, this should compensate for some of the other additions due to bugfixes and the version registers.


how control the FlexVolume mapping in a specific namespace

Describe the bug
Steps To Reproduce
Expected behavior
Control the Volume mapping in a desired K8S namespace
Key Vault FlexVolume version
Access mode: service principal or pod identity
service principal
Kubernetes version
1.15
Additional context
Dear team
using the instruction I was able to start a pod container and map the FlexVolume inside the pod using the service principal. Implicitly is working into K8S default namespace
How may I use the pods and deployments other then the default namespace , the only one available to mount the volume with the secrets from KeyVault at the moment
Kind regards
Silviu Chiric

Following the steps to use a service principal, before you deploy your pod/deployment to a namespace, make sure kubectl create secret generic kvcreds is created in the same namespace.

Closing this issue because of inactivity. Please feel to reopen if you are still having issues.


Sync to LLVM 18.1.3

Syncs to LLVM 18.1.3:

Adds support for COFF.
Adds support for Arm64EC.
Adds support for AIX symbol tables.

Other changes:

Move LLVM C++ files into reference directory, to make it clear that they aren't built.
Moved all object parsing into a new object_reader module, and replaced the single get_symbol callback with an ObjectReader struct that has all the callbacks we require for reading object files.
Bumped object to latest.
Synced round-trip tests with object.
Requires beta Rust toolchain (1.78) since this has LLVM 18.
Got clippy clean and added clippy to CI.

Fixes #9

I'm done with this review round.

Thanks a lot for this!

Anything else to do before I publish it to crates.io?

Anything else to do before I publish it to crates.io?

Nope, I think this is good to go!

Done. The rustc update to 0.2.0 got approved earlier today.


Installation keeps failing

Have been trying to compile this for my OrangePi PC using your guide on medium.com. Unfortunatly the creation of the image keeps failing (I think near the end) on the VirtualBox installation. Have tried several things but no success. Is this repo still working?
My command line: ./armbian-bitcoin-core/prepare-build.sh -g j4 -b 32 v0.20.1
I have tried with the '-l c' option but then it fails too.
latest error messages are:
[ error ] ERROR in function customize_image [ image_helpers.sh:119 ]
[ error ] customize-image.sh exited with error (rc:139)
[ error ] ERROR in function unmount_on_exit [ image-helpers.sh:66 ]
[ error ] debootstrap-ng was interrupted
I know for sure there are errors above that but I cannot seem to scroll up in the virtualbox installation.

I logged in through SSH and restarted everything and this is the point it crashes:
`[ o.k. ] Calling image customization script [ customize-image.sh ]
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
/tmp/customize-image.sh: line 26: 31990 Segmentation fault      (core dumped) sudo -s  <<'EOF'
User with sudo rights and initial password:
useradd bitcoin -m -s /bin/bash --groups sudo
echo "bitcoin:bitcoin" | chpasswd
echo "bitcoin ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/bitcoin
EOF
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
/tmp/customize-image.sh: line 38: 31994 Segmentation fault      (core dumped) sudo -s  <<'EOF'
git clone https://github.com/bitcoin/bitcoin.git /usr/local/src/bitcoin
cd /usr/local/src/bitcoin
git checkout v0.17.0
TODO: check signature commit hash
git clone https://github.com/bitcoin-core/packaging.git /usr/local/src/packaging
EOF
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
/tmp/customize-image.sh: line 40: 31998 Segmentation fault      (core dumped) sudo cp /tmp/overlay/bin/bitcoin* /usr/local/bin
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
/tmp/customize-image.sh: line 43: 32002 Segmentation fault      (core dumped) sudo cp /tmp/overlay/bin/bitcoin-qt /usr/local/bin
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
/tmp/customize-image.sh: line 63: 32006 Segmentation fault      (core dumped) sudo -s  <<'EOF'
mkdir /home/bitcoin/.bitcoin
mkdir /home/bitcoin/.bitcoin/wallets
cp /tmp/overlay/bitcoin/bitcoin.conf /home/bitcoin/.bitcoin
TODO: offer choice between mainnet and testnet
echo "testnet=1" >> /home/bitcoin/.bitcoin/bitcoin.conf
mkdir /home/bitcoin/.bitcoin/testnet3
Copy block index and chain state from host:
cp -r /tmp/overlay/bitcoin/chainstate /home/bitcoin/.bitcoin
cp -r /tmp/overlay/bitcoin/blocks /home/bitcoin/.bitcoin
cp -r /tmp/overlay/bitcoin/testnet3/chainstate /home/bitcoin/.bitcoin/testnet3
cp -r /tmp/overlay/bitcoin/testnet3/blocks /home/bitcoin/.bitcoin/testnet3
chown -R bitcoin:bitcoin /home/bitcoin/.bitcoin
EOF
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
/tmp/customize-image.sh: line 86: 32010 Segmentation fault      (core dumped) sudo -s  <<'EOF'
if ! su - bitcoin -c "gpg --keyserver pgp.surfnet.nl --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89" ; then
if ! su - bitcoin -c "gpg --keyserver pgp.mit.edu --recv A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89" ; then
exit 1
fi
fi
su - bitcoin -c "gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89" | apt-key add -
cat <> /etc/apt/sources.list
deb https://deb.torproject.org/torproject.org bionic main
deb-src https://deb.torproject.org/torproject.org bionic main
EOT
apt-get update
apt-get install -y tor deb.torproject.org-keyring
mkdir -p /usr/share/tor
cat <> /usr/share/tor/tor-service-defaults-torrc
ControlPort 9051
CookieAuthentication 1
CookieAuthFileGroupReadable 1
EOT
usermod -a -G debian-tor bitcoin
EOF
Created symlink /etc/systemd/system/multi-user.target.wants/first_boot.service → /etc/systemd/system/first_boot.service.
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
/tmp/customize-image.sh: line 114: 32020 Segmentation fault      (core dumped) sudo -s  <<'EOF'
apt remove -y nodm
apt-get install -y lightdm lightdm-gtk-greeter xfce4 onboard
cp /tmp/overlay/rocket.jpg /usr/share/backgrounds/xfce/rocket.jpg
mkdir -p /home/bitcoin/.config/xfce4/xfconf/xfce-perchannel-xml
cp /tmp/overlay/xfce4-desktop.xml /home/bitcoin/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml
cp /tmp/overlay/lightdm-gtk-greeter.conf /etc/lightdm/lightdm-gtk-greeter.conf
mkdir -p /home/bitcoin/Desktop
mkdir -p /home/bitcoin/.config/autostart
cp /usr/local/src/packaging/debian/bitcoin-qt.desktop /home/bitcoin/Desktop
chmod +x /home/bitcoin/Desktop/bitcoin-qt.desktop
cp /tmp/overlay/keyboard.desktop /home/bitcoin/.config/autostart
chown -R bitcoin:bitcoin /home/bitcoin/Desktop
chown -R bitcoin:bitcoin /home/bitcoin/.config
cp /usr/local/src/bitcoin/share/pixmaps/bitcoin128.png /usr/share/pixmaps
cp /usr/local/src/bitcoin/share/pixmaps/bitcoin256.png /usr/share/pixmaps
cp /tmp/overlay/scripts/first_boot_desktop.service /etc/systemd/system
systemctl enable first_boot_desktop.service
systemctl set-default graphical.target

EOF
[ error ] ERROR in function customize_image [ image-helpers.sh:119 ]
[ error ] customize-image.sh exited with error (rc: 139)
[ o.k. ] Process terminated
[ o.k. ] Unmounting [ /home/armbrian/build/.tmp/rootfs-current-orangepipc-bionic-yes-no/ ]
[ error ] ERROR in function unmount_on_exit [ image-helpers.sh:66 ]
[ error ] debootstrap-ng was interrupted
[ o.k. ] Process terminated
`

Hi @LouDnl sorry for pinging you 3 years later, but I would like to know if you figured it out.
Orange pi is much easier to access where I live, compared to raspberry, that's why I'm interested in this setup.

Oh wow, I cant even remember trying to build this 3 years ago.
I gave away my OrangePi in favor of RPi.


error.handling.log-levels property is not being overridden

I would like to override the default values of the log-levels to
error:
  handling:
    log-levels:
      4xx: WARN
      500: ERROR

but still the exception is being logged as ERROR
2023-02-02T22:55:43.450+04:00 ERROR 9014 --- [           main] i.g.w.e.LoggingService                   : checkEmail.email: Invalid email address

I tried debugging the LoggingService and the logLevels props is empty

I have also tried adding @EnableConfigurationProperties(ErrorHandlingProperties::class) but still not working
Spring Boot v3.0.1
Java 19
Error Handling Spring Boot Starter v4.1.0

Can you try using a properties file instead of yaml to see if that is the issue?

Fixed the problem. It turned out my properties file is not being picked up propertly.


Cross-version API compatibility tests - Filter the test results logs

What this PR does / why we need it

Using the default verbose flag and filter out the test results logs

Which issue(s) this PR fixes

Fixes #
Describe testing done for PR
make compatibility-tests to verify the new test results logs

Release note

Additional information
Special notes for your reviewer

Closing this PR. Handling changes in https://github.com/vmware-tanzu/tanzu-plugin-runtime/pull/53


Add user agent header to request#31

closes #31

May I suggest to make the syntax of the user agent similar to Input? so that the parsing code is simple...
input uses "client/version (platform/version)"  -> Input/0.4.90 (Android/6)


⚠ Samsung has degraded performance

In 8b5ddf3, Samsung (https://samsung.com) experienced degraded performance:

HTTP code: 200
Response time: 2459 ms

Resolved: Samsung performance has improved in e312378.


Implement checking for downloaded models/download if not already present

Issue moved to CosmiQ/solaris #32 via ZenHub


Add secret to .envrc to make running in dev easier

@bradparker Oh, I totally got distracted setting up home-manager (as the longest possible method of getting direnv setup, haha) and forgot about this PR. You may find the home manager stuff cool though: https://github.com/benkolera/nix/blob/master/home-manager/home.nix . Direnv, lorri (a direnv thing for nix-shells where it'll automatically rebuild direnvs when you change the nix files) and spacemacs all setup in a single nixfile. Pretty rad.

@benkolera I'm some of the way there :D https://github.com/bradparker/dotfiles/blob/master/nixpkgs/home.nix
I'm pretty curious about Lorri. I have gotten into the habit of nix-shelling without thinking too much about it, but miss the hooks of say nvm, chruby etc.
The shell.nix in this repo should give you direnv but ... not sure how automated it all is. You have to enter it and then explicitly allow the contents, it should at least automatically ask for a direnv allow now as a result of https://github.com/bradparker/servant-beam-realworld-example-app/commit/09a9e495388a0d37d5534800a640ae2e6e358d2e
All good about the PR, don't wanna distract you too much :)


Weird behavior of DataSet.where(... , drop=True)

What happened?
I work with an aircraft emission dataset that is freely available online: emission dataset
During my calculations I eventually convert the DataSet to a DataFrame. My motivation is to avoid unnecessary rows in the DataFrame. Doing some calculations my code returned unexpected results. Eventually I could narrow it down to a DataSet.where(... , drop=True) argument I added along the way, which introduces differences in the data. Here are two examples:
Example 1: Along some dimensions data points vanished if drop=True

Example 2: For other dimensions (these?) data points appeared elsewhere if drop=True

What did you expect to happen?
I expect for my calculations to return the same results, regardless of whether drop=True is active or not.
Minimal Complete Verifiable Example
!wget  "https://zenodo.org/records/10818082/files/Emission_Inventory_H2O_Optimized_v0.1_MR3_Fleet_BRU-MYA_2075.nc"

import matplotlib.pyplot as plt
import xarray as xr

nc_file = xr.open_dataset('Emission_Inventory_H2O_Optimized_v0.1_MR3_Fleet_BRU-MYA_2075.nc')

fig, axs = plt.subplots(1,2,figsize=(10,4))

nc_file.H2O.where(nc_file.H2O!=0, drop=True).sum(('lon','time')).plot.contour(x='lat',ax=axs[0])
axs[0].set_xlim(-50,90)
axs[0].set_title('With drop=True')

nc_file.H2O.where(nc_file.H2O!=0, drop=False).sum(('lon','time')).plot.contour(x='lat',ax=axs[1])
axs[1].set_xlim(-50,90)
axs[1].set_title('With drop=False')

plt.tight_layout()
plt.show()

fig, axs = plt.subplots(1,2,figsize=(10,4))

nc_file.H2O.where(nc_file.H2O!=0, drop=True).sum(('lat','time')).plot.contour(x='lon',ax=axs[0])
axs[0].set_title('With drop=True')

nc_file.H2O.where(nc_file.H2O!=0, drop=False).sum(('lat','time')).plot.contour(x='lon',ax=axs[1])
axs[1].set_title('With drop=False')

plt.tight_layout()
plt.show()

MVCE confirmation

[ ] Minimal example — the example is as focused as reasonably possible to demonstrate the underlying issue in xarray.
[ ] Complete example — the example is self-contained, including all data and the text of any traceback.
[X] Verifiable example — the example copy & pastes into an IPython prompt or Binder notebook, returning the result.
[X] New issue — a search of GitHub Issues suggests this is not a duplicate.
[ ] Recent environment — the issue occurs with the latest version of xarray and its dependencies.

Relevant log output
No response
Anything else we need to know?
No response
Environment

INSTALLED VERSIONS
commit: None
python: 3.10.9 | packaged by Anaconda, Inc. | (main, Mar  1 2023, 18:18:15) [MSC v.1916 64 bit (AMD64)]
python-bits: 64
OS: Windows
OS-release: 10
machine: AMD64
processor: Intel64 Family 6 Model 165 Stepping 2, GenuineIntel
byteorder: little
LC_ALL: None
LANG: None
LOCALE: ('en_US', 'ISO8859-1')
libhdf5: 1.14.0
libnetcdf: 4.9.2
xarray: 2022.11.0
pandas: 1.5.3
numpy: 1.23.5
scipy: 1.13.0
netCDF4: 1.6.5
pydap: None
h5netcdf: None
h5py: None
Nio: None
zarr: None
cftime: 1.6.3
nc_time_axis: None
PseudoNetCDF: None
rasterio: None
cfgrib: None
iris: None
bottleneck: 1.3.5
dask: None
distributed: None
matplotlib: 3.7.0
cartopy: 0.21.1
seaborn: 0.12.2
numbagg: None
fsspec: None
cupy: None
pint: None
sparse: None
flox: None
numpy_groupies: None
setuptools: 65.6.3
pip: 22.3.1
conda: None
pytest: None
IPython: 8.10.0
sphinx: None

To minimize the example, could you drill down to where the data is different between the two cases? What is being dropped such that the final result is different?

drop=True removes all-nan rows and columns - so your figures look plausible.
For the first one some rows on the top seem removed. For the second one there are probably all-nan columns in the center. Now matplotlib connecs the lines.
What did you expect to happen?

drop=True removes all-nan rows and columns - so your figures look plausible.
For the first one some rows on the top seem removed. For the second one there are probably all-nan columns in the center. Now matplotlib connecs the lines.
What did you expect to happen?

Thank you for your two comments. Both, in particular the reference to matplotlib, helped to understand that the visualization caused me to misinterpret the issue. I'll look further where the issue comes from. Apparently not from xr.where(..., drop=True).