Convert Config fields from Option<...> to use #[serde(default="...")]

Across several config objects, whereever we have a truly non-optional field (ie has a default) then we can apply a #[serde(default="...")] annotation to reduce boilerplate.

@sacherjj @Fraser999, I wanted to ask your opinion on this one - it shouldn't change the behavior wherever there are defaults, and where there aren't it's not appropriate.

Alternatively, consider making all config fields non-optional, so they have to be specified in the toml files.  This avoids making default values or even entire fields opaque to end users.
We should discuss with @sacherjj before making a decision here.

@Fraser999 @dwerner as in standup - discuss further to close or not


Some streets not rendering

In this area https://www.openstreetmap.org/edit#map=17/62.77698/27.50262 some of the roads do not render (latest FF) for no apparent reason (editing in other editors seems just fine).
Reported here: https://forum.openstreetmap.org/viewtopic.php?pid=796045#p796045

This appears on other places in the world as well. Sometimes the points of the roads and polygons are rendered, sometimes nothing at all. Curious: Some roads from the outside of the actual area are rendered. Changing the zoom level jumps around and does not effectively change the zoom, in the end the background image is shifted.
The iD editor cannot be used currently.

even more strange - click on the nodes that are showing and things appear?

Obviously some areas in the world are affected, other not.

Obviously some areas in the world are affected, other not.

While just idle (not quite) speculation it seems to be triggered by a specific data situation that causes rendering to abort at that point, the console output does report an error, but best leave tracking that down to the devs.

@simonpoole Thanks for reporting. I'm seeing console errors like e.uid is undefined and entity n231109719 not found, which are usually pretty serious errors which will exit the rendering code and leave an incomplete map. I'll work on debugging further.

Some more examples:
https://www.openstreetmap.org/edit#map=15/51.2277/13.6119
https://www.openstreetmap.org/edit#map=19/51.16365/13.56454

Looks like this was happening since iD wasn't accounting for the possibility of undefined uid on entities returned by the JSON endpoints of the OSM API. Simple fix for a nasty bug.

Ah revenge of the anonymous users :-)

Looks like I encountered this editing in Devon a day or so ago. I made a screen grab but hadn't followed it up as I moved to using other editors.  I guess the S Devon coastal areas were mapped fairly early on. Glad there's an explanation.

Argh, too bad I missed this, I should’ve known better. 🙄

Are we going to get a new build with this at some point? I held off rolling back yesterday assuming we would get a quick fix but if that's not going to happen I probably will need to roll back to a working version.

By the way, both uid and user fields would be absent for anonymous users. Would you need an empty string as fallback for „user“ as well?

I'll release a patch today.

@quincylvania : did you read my last post? You didn’t change the user bit before releasing the new version. Just wanted to be sure there’s no further issue here.

did you read my last post? You didn’t change the user bit before releasing the new version.

@mmd-osm Yes, sorry. It should be fine for user to be undefined rather than an empty string since the XML parser worked the same way. For instance, iD properly displays an "Unknown" label in the UI for features last edited by anonymous users.


Support for array as argument to FenwickTree#new

[x] Tests pass
[x] Appropriate changes to README are included in PR

I've made it so that FenweickTree#new can take an array as an argument.
Before: 292ms
https://atcoder.jp/contests/practice2/submissions/22893243
After: 268ms
https://atcoder.jp/contests/practice2/submissions/22895055

@google-cla  I signed it!


[help] How to compile CS344 in Ubuntu?

Thank you for providing us a way to program GPU using Zig. I try to compilte CS344 in Ubuntu but got following error. Look like it cannot find nvidia-ptxjitcompiler. What is it and how can I get it? Thank you :)
cudaz/CS344$ zig build
error: ld.lld: unable to find library -lcuda
error: ld.lld: unable to find library -lnvidia-ptxjitcompiler
error: hw1...
error: The following command exited with error code 1:
/home/t/repos/zig/build/stage3/bin/zig build-exe /home/t/repos/.save/cudaz/CS344/src/hw1.zig -lc -needed-lcuda -needed-lnvidia-ptxjitcompiler -cflags -DLODEPNG_COMPILE_ERROR_TEXT -- /home/t/repos/.save/cudaz/CS344/lodepng/lodepng.c --cache-dir /home/t/repos/.save/cudaz/CS344/zig-cache --global-cache-dir /home/t/.cache/zig --name hw1 --pkg-begin cudaz /home/t/repos/.save/cudaz/CS344/cudaz/src/cuda.zig --pkg-begin cudaz_options /home/t/repos/.save/cudaz/CS344/zig-cache/options/Q3gflWFB41wSGI-78tI7r_a7FAK9JJ_LYgtalrTnc6nZmCHrXifyAk-7wXS2I96n --pkg-end --pkg-end -I /home/t/repos/.save/cudaz/CS344/cudaz/src -I /usr/local/cuda/include -I /home/t/repos/.save/cudaz/CS344/src -I /home/t/repos/.save/cudaz/CS344/lodepng -L /usr/local/cuda/lib64 --enable-cache
error: the following build command failed with exit code 1:
/home/t/repos/.save/cudaz/CS344/zig-cache/o/4a4e2b6f6f25d0514921a24713b15618/build /home/t/repos/zig/build/stage3/bin/zig /home/t/repos/.save/cudaz/CS344 /home/t/repos/.save/cudaz/CS344/zig-cache /home/t/.cache/zig

Congrats on being the first user!
Where is Cuda installed on your system?
You should have directory with all the libcuda.so
The path is currently hardcoded here: https://github.com/gwenzek/cudaz/blob/68638782c52035c572af61db346082732ffb7014/CS344/build.zig#L3
You should change it to the value on your system.

I'm using Window  Linux Subsystem (wsl) and it's in /usr/lib/wsl/lib/libcuda.so and Cuda is installed in /usr/local/cuda/

Now I run into another problem:
~/repos/cudaz/CS344$ ./zig-out/bin/hw1
info: ***** HW1 ******
info: Loaded Image (rgb24)557x313<EMAIL_ADDRESS>warning(Cuda): Loading Cuda module from local file /home/t/repos/cudaz/CS344/zig-out/bin/hw1.ptx
error(Cuda): CUDA_ERROR_UNSUPPORTED_PTX_VERSION(222): the provided PTX was compiled with an unsupported toolchain.
thread 24513 panic: Something looks wrong with compiled device code
cudaz/src/cuda_errors.zig:102:12: 0x2899d1 in silent_check (hw1)
        => @panic("Something looks wrong with compiled device code"),
           ^
cudaz/src/cuda_errors.zig:53:24: 0x2800a4 in check (hw1)
    return silent_check(result);
                       ^
cudaz/src/cuda.zig:453:49: 0x28387a in defaultModule (hw1)
        check(cu.cuModuleLoad(&_default_module, @ptrCast([*c]const u8, file))) catch |err| {
                                                ^
cudaz/src/cuda.zig:489:64: 0x2836e9 in init (hw1)
            var code = cu.cuModuleGetFunction(&f, defaultModule(), @ptrCast([*c]const u8, name));
                                                               ^
src/hw1.zig:38:66: 0x28598b in main (hw1)
    const kernel = try cudaz.CudaKernel("rgba_to_greyscale").init();
                                                                 ^
/home/t/repos/zig/build/stage3/lib/zig/std/start.zig:614:37: 0x286d97 in main (hw1)
            const result = root.main() catch |err| {
                                    ^
Aborted

What's your nvcc version? In SDK.zig I'm targetting a recent PTX version and maybe you have an older toolchain that can't compile it. Note you can manually edit the ptx files and compile them with 'nvcc' to see what version your Cuda version supports.
You can either upgrade your compiler or downgrade the ptx version in https://github.com/gwenzek/cudaz/blob/68638782c52035c572af61db346082732ffb7014/cudaz/sdk.zig#L87
You can also lookup Dev branch

Thank for pointing out. After switching to dev branch I can run hw5, (the others still having insupported ptx error).
Is below normal behavior of hw5?
/repos/cudaz/CS344$ ./zig-out/bin/hw5
warning(Cuda): Loading Cuda module from local file /home/t/repos/cudaz/CS344/zig-out/bin/hw5_kernel.zig.ptx
info(hw5): ***** HW5 ******
info(hw5): atomicHistogram of 10240000 array took 4.471e+00ms
info(hw5): atomicHistogram bandwith: 9.162e+03MB/s
index 119 incorrect. expected 1, found 0
info(hw5): bychunkHistogram of 10240000 array took 4.454e+00ms
info(hw5): bychunkHistogram bandwith: 9.195e+03MB/s
info(hw5): fastHistogram of 10240000 array took 0.000e+00ms
info(hw5): fastHistogram bandwith: infMB/s

So historically I wrote hw{1..4} using C kernels and nvcc you can still run those with zig build run_nvcc.
They seems to work, except I have a bug in nvcc/hw2.zig which leads to a truncated image (probably X,Y confusion).
Then I wrote hw5 fully in Zig. This one used to work but seems to compute invalid results now with last Zig and LLVM. The LLVM backend that compiles to PTX has changed in the meantime and some possible sloppy code now get's compiled into something wrong I need to investigate.
Then I rewrote hw{1,2,3} kernels in Zig. hw1 works, hw2 produces an totally incorrect image, and hw3 is not finished and currently panics due to an out of bound memory access.
So I have some more work to do here.
For you I'd focus on making zig build hw1 working, this is the simplest kernel and it produces correct results. (It's was commented in the dev branch, I'm pushing a commit to re-enable it)
Maybe start with zig build run_nvcc so we can understand if you're CUDA toolchain works as expected.
If you want more help, I'll need at least the output of:
which nvcc
nvcc --version
nvidia-smi
zig env

Do you have .ptx appearing in zig-out/bin ? can you compile them with ptxas ? (this tool should be in you cuda installation dir next to nvcc)

Nice, I follow your guideline at https://github.com/gwenzek/cudaz/blob/main/cudaz/sdk.zig#L141 and it solved.

I should probably print this to the console on failure, but not sure how to do this.

Thank you. I'm trying with different cuda toolkit version. We let you know when I'm done.

After reinstall Nvidia driver to make it match with latest cuda-12, I can run both hw* and hw*_nvcc. Thanks for you help 💯


chore(deps): update dependency rimraf to v5

This PR contains the following updates:

Package
Type
Update
Change

rimraf
devDependencies
major
^4.4.0 -> ^5.0.0

Release Notes

isaacs/rimraf
v5.0.0
Compare Source

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

lgtm


incorrect nesting

Hello,
when nesting attached SVG file with default-settings the"wrong placed " elements will not be recognized.
even increasing  space between parts and curve tolerance shows "wrong placed" elements.
any ideas ( is the input svg not correct )?
thx in advance
Francois
nest_test3.svg.zip

working on a fix for this issue. Could you try using this: http://svgnest.com/test

hello,
thx for the new link - better - but still "wrong placed" elements
Regards Francois

hm.. could you post your settings?

actually I see what the issue is. Try here: http://svgnest.com/test2/
I tested it a few times and it seems fine now.
was a bug in the svg parsing that didn't handle holes in a single path object properly

hello,
i found "wrong placed" elements when "Explore concave areas"
Regards Francois

sorry for the delay.. unfortunately there is a chance of that happening with the "explore concave areas" option. I would recommend leaving it off unless it's really necessary.
to fix this I think it would need an exact computation kernel like CGAL or a refactor to use integers only.


Unable to install packages because /var/lib/dpkg is deleted

In the cleanup /var/lib/dpkg is deleted. This means that you cannot do any apt-get commands like update or install. We are unable to install any other dependencies. Is there a reason this is done?
It shows up with this error:
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

I have the same problem.
apt-get update

gives error
...
Get:35 http://archive.ubuntu.com/ubuntu xenial-backports/universe amd64 Packages [6354 B]
Fetched 26.3 MB in 11s (2328 kB/s)
Reading package lists... Error!
E: flAbsPath on /var/lib/dpkg/status failed - realpath (2: No such file or directory)
E: Could not open file  - open (2: No such file or directory)
E: Problem opening
E: The package lists or status file could not be parsed or opened.


PD Change Pipettes: Pipette Editor

As a user, I would like to be able to change my protocol’s pipettes.
Acceptance Criteria

[ ] Clicking ‘Edit’ button in the ‘Pipettes’ card opens up the Pipette editor
[ ] Pipette editor has copy explaining what happens when you change pipettes (see below)
[ ] Pipette editor has the following fields (same as file creation modal);

Left Pipette (dropdown)
Left Tiprack (dropdown)
Right Pipette (dropdown)
Right Tiprack (dropdown)

[ ] Pipette editor displays selected pipette images (same as file creation modal)
[ ] Pipette editor has button ‘Cancel’ and close modal
[ ] Pipette editor has ‘Save’ button (button functionality and warning modal in separate ticket.

Design and Copy
Below is a rough wireframe

Copy
"Please note this will affect any protocol steps you have already created"

Closed in #2548


consume result not match Seek()

When the consumer seek one position, the next consume result do not match what it Seek().
It return the result of another partition.
var consumeResult = _consumer.Consume(_pollInterval);
if(consumeResult == null)
{
_consumer.Seek(consumeResult.TopicPartitionOffset);
var consumeResult = _consumer.Consume(_pollInterval);
}

[x] Confluent.Kafka nuget version: beta2
[x] Client configuration: auto.commit = true, auto.offset.store=false

that is not un-expected - the consume method can return messages from any partition that it is assigned to. the next message to be read from the offset on the partition you seeked to will be at the position you specified.

If the next message consumed is not guaranteed to what I Seek(), then what is the meaning of Seek() method?


Bugsnag is not working with webpacks source maps and its hot-loader

After adding bugsnag all logs and errors are coming from bugsnag.js?d6b6:628
  function enhance(object, property, newFunction) {
    var oldFunction = object[property];
    object[property] = function() {
      newFunction.apply(this, arguments);
      if (typeof oldFunction === "function") {
        oldFunction.apply(this, arguments);
      }
    };
  }

Also webpacks hot reload is throwing this error
bugsnag.js?d6b6:628 [HMR] Update check failed: Error: Manifest request to http://localhost:8080/client-assets/6737aaffea21c52cb7c6.hot-update.json timed out.
    at XMLHttpRequest.request.onreadystatechange (http://localhost:8080/client-assets/app.6737aaffea21c52cb7c6.js:62:22)

That's no good. We'll have to look into this closer, but in the meantime you might try doing this when running in the development environment to see if it solves the immediate problem:
// Disable all automatic breadcrumbs
Bugsnag.disableAutoBreadcrumbs();

that solved the problem with the manifest but the hot reloader is still not working

Hi @pdiniz13 did you find a solution to your problem? If not could you provide an example repo where the problem can be reliably reproduced? I'm closing the issue but feel free to reopen :)


Specify license on package.json

By specifying the license on package.json, then automated tools such as https://github.com/pivotal/LicenseFinder can easily display which license your module is using.

5ca093b310b84661fc551085f0be520f3d72daf0


docker/linux: Add ESP32-S2 toolchain and binaries.

Summary
Add ESP32-S2 toolchain and binaries.
Impact
Fix the broken build.
Testing
I didn't build locally, I'm relying on the CI job.

Build is broken because of a renaming in an LVGL example, fix is here: https://github.com/apache/incubator-nuttx-apps/pull/744

Let's merge this immediately to unblock CI.


Ensure we didn't remove tests that are not present in rust-mode

It's possible that we've changed the tests that were once pulled from rust-mode during the last years. We removed those tests in #290, maybe there were changes in rustic that are worth restoring in rustic or rust-mode.

@tarsius it seems you've applied some changes to test files that we removed. Do you think it makes sense to merge those changes into rust-mode ?

Where did I do that?
I probably won't be able to help you with this and similar decision. I don't remember such details as it has been such a long time and because I ended up not using rust (for the time being at least) I am also not particularly motivated to dig in again at this time.
But point me to the changes you are talking about and I will have a look. Who knows, maybe it rings a bell after all.

It doesn't look important, but thanks for the quick reply. I'll keep it open, maybe I'm motivated to take a look some day =)
And hopefully you get a good reason to take a look at rust again ;)

If you are talking about the tests branch in my fork, then I know nothing about it.
In fact I would like prune these branches now. So please take a look at all the branches in my fork and move those that you would like to keep over to your repository and then tell me that you are done with that.

If you are talking about the tests branch in my fork, then I know nothing about it.

I mean changes that were merged and afterwards removed.
It seems you already deleted the fork ? I can't find it under your repositories.
I only know that you were working on a transient pr. But I don't know which other feature branches you have. It would certainly be interesting to see that. And I especially would like to have the transient branch. I just noticed that @sehnsucht13 also started working on it two years ago #55

It seems you already deleted the fork ? I can't find it under your repositories.

It's at https://github.com/tarsiiformes/rustic.

I only know that you were working on a transient pr.

I actually just started wrapping that up. Would you be interested in that?

But I don't know which other feature branches you have.

I don't have any. Its just very old branches you authored. There's close to zero chance you would want to recover those, but because of my confusion about what test-changes you were talking about, I though I would mention them.

Please checkout the improved transient branch. I have completed the list of changes. I have also outlined how I think this should be further improved and added a proof-of-concept implementation of a "transified" cargo subcommand. It should be fairly easy to take it from here, and I can help with any transient-related issues (but not with the cargo-specific ones). Do you want me to open a pull-request?

Sure, thanks.

https://github.com/rust-lang/rust-mode/issues/421


Mongodb version of it?

Thanks for the great app, just wondering is it possible to support mongodb too?

I don't think I'd bake multiple-db support into one app, but its possible that I or someone could reuse the basic app code/layout to display mongodb documents. To be totally honest its not something I'm likely to tackle any time soon. There are many many features left to finish in this first :)
For my purposes, I've found RoboMongo to be a pretty functional MongoDB gui, when the command line doesn't suffice.


Feature: Add tabs and footer

Adds new header/footer layout and content. Also adds new tabs functionality, not currently enabled when using the panel in production.
Removed edge files from prettier format run because using the html parser breaks components and includes based on incorrect formatting of tags.

Were we just waiting on animations? Can merge now and do that separately anyway.

Were we just waiting on animations? Can merge now and do that separately anyway.

Were we just waiting on animations? Can merge now and do that separately anyway.

I believe so, I've taken this for a spin again and it all looks good (+ tests are passing) so should be safe to merge.

Were we just waiting on animations? Can merge now and do that separately anyway.

I believe so, I've taken this for a spin again and it all looks good (+ tests are passing) so should be safe to merge.

Sorry guys, in the throws of break/back to work. Yeah loading animation can wait 👍🏼

Sorry guys, in the throws of break/back to work. Yeah loading animation can wait 👍🏼


Discovering information explaining API types using text classification

http://dl.acm.org/citation.cfm?id=2818859&CFID=550839757&CFTOKEN=78411605

As discussed with Tim, the tutorials (the dataset) are well organized, thus they are not included in the repository.


Getting error when hitting preview button

When I try to show a preview of my LaTex file I get the following error message:
Running the contributed command:'vscode.previewHtml' failed. Illegal argument 'column' - (optional) Column in which to preview.

Same for me. When I click the Open Preview button, it just shows "command 'vscode.previewHtml' not found"

I get the same error command 'vscode.previewHtml' not found

Same for me command 'vscode.previewHtml' not found

I have the same problem. Seems like VSCode deprecated the command recently: c.f. their Github Issue

I have the same error command 'vscode.previewHTML not found'

How to fix the problem?  'command 'vscode.previewHTML not found'

I have the same problem too!! And I don't know whether there is other extensions which can preview with the updated or cursor position! So crashing...


Support NEQCycling protocol in ASAP Alchemy

We should add support for the NEQ Cycling protocol in ASAP Alchemy.
I will leave @jthorton @ijpulidos  @dotsdl to enumerate what is required on this issue, as you have a better overview of the blockers.

I have been looking into this and I see a few dependency issues:

we need feflow on conda-forge
update to alchemiscale client to work with gufe and openfe >=1
...
Internally we need to rethink how the current FEC factory works, I think each protocol like NEQ/SepTop/ATM will need to have its own factory and corresponding network which contains the specific options for that protocol where common options can be shared like the forcefield settings and the solvation and solvent. We could then also expose the protocol type at the CLI level with a protocol flag. I'll try and put together a mock of how this would look.

@ijpulidos would you be able to assist in shepherding this to completion? You probably have a good overview of some of the upstream issues as well.

As I understand from my conversations with @jthorton there are some issues with file sizes until https://github.com/OpenFreeEnergy/alchemiscale/issues/220 is merged on alchemiscale (slated for next major release). We will drop NEQ from the 0.5.2 milestone until we can revisit this.


Fix CI

I've updated the test runner as the recently introduced test.8th file broke things: https://github.com/exercism/8th-test-runner/pull/10
CI still fails though:
{
  "version": 1,
  "status": "error",
  "message": "test-words.8th\nsolution.8th\nException: cannot include solution.8th: at line 3 byte 101 in /solution/test.8th: f:include: task REPL"
}

The reason for that is that test.8th assumes that the current directory is always the exercise's name, which is won't be in the test runner (it'll be some unique dir name based on the solution's UUID and other things). For this reason, the test runner gets passed the exercise's slug.
There are a couple of ways we can solve this:

Change the test runner to copy the solution to a different directory with the exercise slug as its name
Change test.8th to not infer the exercise slug from the directory name, either by hardcoding the test file or by searching in the current directory for files

Would it help to go back to the previous regime of tester.bst and tester.sh?

Well we could, but that would be the same solution as option 2, but in a different format. Would you be opposed to option 2?

I am not averse to either option. My difficulty is that I don't fully understand what's going on and don't have a working environment in which to check/test my code. At present feel like I'm wandering around the top of Vaalserberg in the middle of the night with a blindfold on.

I'll do the legwork, you can then see if you like it

@axtens I'm merging this, as the basic CI is now working! The trick is to use explicit file names, see https://github.com/exercism/8th/pull/67/commits/798e5153390cbaec73d35da5696c480a2c5b0c27
There is one thing that needs to be fixed: the example implementation of the raindrops exercise does not pass the tests:
{
  "version": 1,
  "status": "error",
  "message": "test-words.8th\nraindrops.8th\nraindrops-tests.8th\nException: Expected String but got Number: at line 1 byte 51 in raindrops-tests.8th <- user:raindrops: task REPL"
}

https://github.com/exercism/8th/pull/68 fixes it. The .meta/example.8th becomes
: raindrops \ n -- s
   >r ""
   r@ 3 n:mod !if "Pling" s:+ then
   r@ 5 n:mod !if "Plang" s:+ then
   r@ 7 n:mod !if "Plong" s:+ then
   s:len !if drop r> G:>s else rdrop then
;


Unmanaged-cluster delete does not ask for confirmation

Feature Request
it would be great if tanzu unmanaged cluster was similar to managed clusters where deletion asks for confirmation.

Describe alternatives you've considered
be careful when deleting the cluster

Additional context

I believe a simple This will delete the current working cluster and possibly cause loss of data. Confirm: [y/n] or similar wouldn't hurt. Alternatively a -y (or similar) argument could be passed to avoid the check in case this is being run by a script.
What are the arguments against, @seemiller?

One argument against doing this is backwards compatibility. Now that unmanaged cluster support has been out for a couple releases, it's safe to assume at least a few people are using it in scripts and automation for CI or other purposes.
It would be a simple change to add a -y switch to the CLI for someone to allow this automation to still work without hanging on waiting for input. But it's that transition from the currently released versions to this new version that would support the -y that would be the problem.
If someone were to add -y to their existing automation, the current releases of TCE would fail with "Error: unknown shorthand flag: 'y' in -y". So if their automation automatically picked up the new version it would hang on waiting for that confirmation. If they tried to be proactive by adding the -y to their scripts and it was using the old version it would fail on unknown input.
You could argue that the person would just need to control the upgrade and make sure the proper updates are done at the right time, which is very fair. But I do know of at least two instances now where this is being done in systems where that's not as straightforward as it sounds.
Just a data point to consider.


Failed to update a ServiceWorker for scope

I've been having countless errors of this sort:
Failed to update a ServiceWorker for scope ('https://www.kenmei.co/') with script ('https://www.kenmei.co/sw.js'): An unknown error occurred when fetching the script.

which appears as unhandled in Sentry, but it doesn't seem to be an actual issue on the site. While I could just ignore this error, I also want to understand why it happens, to make sure it's nothing more serious. I wasn't able to reproduce or even find an understand what is the cause for this error.
Update Prompt with SW registration
<script setup>
  import { useRegisterSW } from 'virtual:pwa-register/vue';

  const intervalMS = 1800000; // 30 minutes in milliseconds

  /* eslint-disable no-unused-vars */
  const { needRefresh, updateServiceWorker } = useRegisterSW({
    immediate: true,
    onRegistered(r) {
      // eslint-disable-next-line no-unused-expressions
      r && setInterval(() => { r.update(); }, intervalMS);
    },
  });

  const close = async () => { needRefresh.value = false; };
  const updateWorker = async () => {
    close();
    updateServiceWorker();
  };
  /* eslint-enable */
</script>

<template lang="pug">
.prompt(aria-live='assertive')
  .w-full.flex.flex-col.items-center.space-y-4.sm_items-end
    transition(
      enter-active-class='transform ease-out duration-300 transition'
      enter-from-class='translate-y-2 opacity-0 sm_translate-y-0 sm_translate-x-2'
      enter-to-class='translate-y-0 opacity-100 sm_translate-x-0'
      leave-active-class='transition ease-in duration-100'
      leave-from-class='opacity-100'
      leave-to-class='opacity-0'
    )
      .prompt-wrapper(v-if="needRefresh")
        .p-4
          .flex.items-start
            .flex-shrink-0
              icon-download-outline.icon(aria-hidden='true')
            .ml-3.w-0.flex-1.-mt-1
              p.text-sm.text-gray-500.dark_text-white
                | New app update is available. Update to get the newest
                | features and improvements.
              .mt-3.flex.space-x-7
                button.button--primary(
                  v-if='needRefresh'
                  type='button'
                  @click="updateWorker"
                )
                  | Update
                button.button--secondary(type='button' @click='close')
                  | Close
</template>

<style lang="scss" scoped>
  button {
    @apply bg-white rounded-md text-sm font-medium;
    @apply focus_outline-none focus_ring-2 focus_ring-offset-2;
    @apply focus_ring-blue-500;

    @apply dark_bg-transparent;
  }

  .button--primary {
    @apply text-blue-600 hover_text-blue-500;

    @apply dark_text-blue-500 dark_hover_text-blue-400;
  }

  .button--secondary {
    @apply text-gray-700 hover_text-gray-500;

    @apply dark_text-white dark_hover_text-gray-200;
  }

  .prompt {
    @apply fixed inset-x-0 top-0 flex items-end px-4 py-6 pointer-events-none;
    @apply z-50;
    @apply sm_p-6 sm_items-start;
  }

  .icon {
    @apply h-6 w-6 text-green-400;

    @apply dark_opacity-90;
  }

  .prompt-wrapper {
    @apply max-w-sm w-full bg-white shadow-lg rounded-lg pointer-events-auto;
    @apply ring-1 ring-black ring-opacity-5 overflow-hidden;

    @apply dark_bg-gray-700;
  }
</style>

Vite Config
import path from 'path';
import { defineConfig, splitVendorChunkPlugin } from 'vite';
import vue from '@vitejs/plugin-vue';
import vueI18n from '@intlify/vite-plugin-vue-i18n';
import { VitePWA } from 'vite-plugin-pwa';

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    splitVendorChunkPlugin(),
    vueI18n({
      include: path.resolve(__dirname, './src/locales/**'),
    }),
    VitePWA({
      includeAssets: ['favicon.ico', 'robots.txt', 'apple-icon-180.png'],
      workbox: {
        globPatterns: [
          // all packaged resources are stored here
          'assets/*',
          // add HTML and other resources for the root directory
          '*.{svg,png,jpg}',
          '*.html',
          'manifest.webmanifest',
        ],
      },
      manifest: {
        short_name: 'Kenmei',
        name: 'Kenmei | Cross-site manga tracker',
        icons: [
          {
            src: 'any_icon_x192.png',
            sizes: '192x192',
            type: 'image/png',
            purpose: 'any',
          },
          {
            src: 'maskable_icon_x192.png',
            sizes: '192x192',
            type: 'image/png',
            purpose: 'maskable',
          },
          {
            src: 'any_icon_x384.png',
            sizes: '384x384',
            type: 'image/png',
            purpose: 'any',
          },
          {
            src: 'maskable_icon_x384.png',
            sizes: '384x384',
            type: 'image/png',
            purpose: 'maskable',
          },
          {
            src: 'any_icon_x512.png',
            sizes: '512x512',
            type: 'image/png',
            purpose: 'any',
          },
          {
            src: 'maskable_icon_x512.png',
            sizes: '512x512',
            type: 'image/png',
            purpose: 'maskable',
          },
          {
            src: 'any_icon.png',
            sizes: '1024x1024',
            type: 'image/png',
            purpose: 'any',
          },
          {
            src: 'maskable_icon.png',
            sizes: '1024x1024',
            type: 'image/png',
            purpose: 'maskable',
          },
        ],
        start_url: '/dashboard',
        background_color: '#FFFFFF',
        display: 'standalone',
        scope: '/',
        theme_color: '#FFFFFF',
        description: 'Cross-site manga tracker, that lets you read and track manga across websites',
      },
    }),
  ],
  server: {
    port: 8080,
  },
  build: {
    sourcemap: true,
  },
  resolve: {
    alias: {
      '@': path.resolve(__dirname, './src'),
    },
  },
});

The SW itself works fine and updates without issues, so right now these errors just seem to be noise. There are also some similar errors that I can observe:

Failed to update a ServiceWorker for scope ('https://www.kenmei.co/') with script ('https://www.kenmei.co/sw.js'): A bad HTTP response code (504) was received when fetching the script.
AbortError: Failed to update a ServiceWorker for scope ('https://www.kenmei.co/') with script ('Unknown'): The Service Worker system has shutdown.
Failed to update a ServiceWorker: An unknown error occurred when fetching the script.
AbortError: Failed to update a ServiceWorker for scope ('https://www.kenmei.co/') with script ('https://www.kenmei.co/sw.js'): The Service Worker system has shutdown.
Failed to update a ServiceWorker for scope ('https://www.kenmei.co/') with script ('https://www.kenmei.co/sw.js'): A bad HTTP response code (400) was received when fetching the script.
Failed to update a ServiceWorker for scope ('https://www.kenmei.co/') with script ('https://www.kenmei.co/sw.js'): A bad HTTP response code (403) was received when fetching the script.

@doutatsu what browser is complaining? On Windows Chrome is ok: try to include id: '/' in the manifest.

All of them - but 71% is Chrome / Chrome Mobile, followed by Safari, Edge Firefox. I'll try the fix you are suggesting 👀

@doutatsu also working on Android 9 Tablet with Chrome (screenshot using USB degugger):

@userquin as mentioned - the worker is working, there are no issues there. It's just this error that happens for some reason. I've deployed the ID, so will be monitoring whatever the error comes back or not

Unfortunately the ID change did nothing - still getting the error and rate doesn't seem to have changed

@doutatsu file an issue in workbox repo, maybe Jeff can help you.
Try removing the start url or using Just dashboard or ./dashboard (relative to the scope).

@piotr-cz It didn't work out for me - I had the scope set to / and I am still seeing this error

@doutatsu maybe you can try this approach: https://github.com/antfu/vite-plugin-pwa/issues/366#issuecomment-1235780068

Keeping logs on the progress to address this issue in here - https://github.com/antfu/vite-plugin-pwa/issues/366


ClamAV 0.100.1 fixes 2 DoS vulnerabilities

Classification

[X] Vulnerability

Reproducibility

[X] Always

Description
ClamAV 0.100.1 has been released fixing two DoS vulnerabilities (CVE-2018-0360 and CVE-2018-0361).

I think it depends on debian.
https://packages.debian.org/stretch/clamav

ClamAV 0.100.1 should be available in APT stable-p-u :
https://tracker.debian.org/news/974819/accepted-clamav-01001dfsg-0deb9u1-source-into-proposed-updates-stable-new-proposed-updates/
Building in progress for 1.1-latest 1.1-stable 1.1-stable-fallback.
1.0-legacy is no longer maintained, this tag is freezed and will not receive the update.


[fuzzer] $INCLUDE hanging indefinitely

The fuzzer identified more errors with the FuzzNewRR entry point (which is much better than if it was the main Fuzz one.
TL;DR scan can hang indefinitely if passed a file like /dev/stdout or stderr
diff --git a/fuzz_test.go b/fuzz_test.go
index d597f41..742dd7e 100644
--- a/fuzz_test.go
+++ b/fuzz_test.go
@@ -252,6 +252,10 @@ func TestNewRRCommentLengthCrasherString(t *testing.T) {
                                ";;;;;;;;;;;",
                        `dns: bad HINFO Fields: "comment length insufficient for parsing" at line: 1:1951`,
                },
+               {
+                       "$GENERATE 1-99 $$iNCLUDE /proc/self/fd/1 \xcb.",
+                       "a",
+               },
        }

        for _, tc := range tests {

or anything with $INCLUDE /proc/self/fd/1
Basically, parsing tokens will hang.
Using stdin would crash:
$ go test -run TestNewRRCommentLengthCrasherString
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
        panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x7395ca]

goroutine 7 [running]:
testing.tRunner.func1(0xc000100300)
        /usr/lib/golang/src/testing/testing.go:792 +0x387
panic(0x7a27c0, 0xacceb0)
        /usr/lib/golang/src/runtime/panic.go:513 +0x1b9
github.com/miekg/dns.TestNewRRCommentLengthCrasherString.func1(0xc000100300)
        /home/chantra/go/src/github.com/miekg/dns/fuzz_test.go:267 +0x6a
testing.tRunner(0xc000100300, 0xc000048d40)
        /usr/lib/golang/src/testing/testing.go:827 +0xbf
created by testing.(*T).Run
        /usr/lib/golang/src/testing/testing.go:878 +0x35c
exit status 2
FAIL    github.com/miekg/dns    0.011s

Maybe a simple approach would be to enforce a regular file. e.g
diff --git a/fuzz_test.go b/fuzz_test.go
index d597f41..b11fcf3 100644
--- a/fuzz_test.go
+++ b/fuzz_test.go
@@ -252,6 +252,14 @@ func TestNewRRCommentLengthCrasherString(t *testing.T) {
                                ";;;;;;;;;;;",
                        `dns: bad HINFO Fields: "comment length insufficient for parsing" at line: 1:1951`,
                },
+               {
+                       "$GENERATE 1-99 $$iNCLUDE /proc/self/fd/2 \xcb.",
+                       "dns: not a regular file `/proc/self/fd/2': <nil>: \"/proc/self/fd/2\" at line: 1:25",
+               },
+               {
+                       "$iNCLUDE /proc/self/fd/0",
+                       "dns: not a regular file `/proc/self/fd/0': <nil>: \"/proc/self/fd/0\" at line: 1:24",
+               },
        }

        for _, tc := range tests {
diff --git a/scan.go b/scan.go
index 0f9361a..df08c2f 100644
--- a/scan.go
+++ b/scan.go
@@ -489,6 +489,26 @@ func (zp *ZoneParser) Next() (RR, bool) {
                                msg := fmt.Sprintf("failed to open `%s'%s: %v", l.token, as, e1)
                                return zp.setParseError(msg, l)
                        }
+                       s1, e1 := r1.Stat()
+                       if e1 != nil {
+                               var as string
+                               if !filepath.IsAbs(l.token) {
+                                       as = fmt.Sprintf(" as `%s'", includePath)
+                               }
+
+                               msg := fmt.Sprintf("failed to get stats `%s'%s: %v", l.token, as, e1)
+                               return zp.setParseError(msg, l)
+                       }
+
+                       if !s1.Mode().IsRegular() {
+                               var as string
+                               if !filepath.IsAbs(l.token) {
+                                       as = fmt.Sprintf(" as `%s'", includePath)
+                               }
+
+                               msg := fmt.Sprintf("not a regular file `%s'%s: %v", l.token, as, e1)
+                               return zp.setParseError(msg, l)
+                       }

                        zp.sub = NewZoneParser(r1, neworigin, includePath)
                        zp.sub.defttl, zp.sub.includeDepth, zp.sub.osFile = zp.defttl, zp.includeDepth+1, r1

The above test would only work on Linux, replacing with /dev/stdin, /dev/std{out,err} should do BSDs + Linux

This looks reasonable to me.

$INCLUDE /proc/self/fd/1 looks valid to me. If you want to shoot yourself in the foot, we should allow it. /dev/stdin looks like it can be very useful.
Hanging on a FD that's not sending data look WAI to me?

/dev/stdin definitely could be valid. When I introduced the ZoneParser type, I specifically disabled $INCLUDE’s by default (see SetIncludeAllowed). If someone is processing untrusted user data, they should be using ZoneParser without allowing $INCLUDE.
os.File has a SetReadDeadline method so perhaps we could call it automatically with some reasonable upper bound (say 1 or several minutes).

Don't think that effort is required, if you want it to hang, it will hang.
If that's the case here I think this is working as intended. If we actually
crashing on something that should be fix l, of course.
On Wed, 9 Oct 2019, 08:08 Tom Thorogood<EMAIL_ADDRESS>wrote:

/dev/stdin definitely could be valid. When I introduced the ZoneParser
type, I specifically disabled $INCLUDE’s by default (see
SetIncludeAllowed). If someone is processing untrusted user data, they
should be using ZoneParser without allowing $INCLUDE.
os.File has a SetReadDeadline method so perhaps we could call it
automatically with some reasonable upper bound (say 1 or several minutes).
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/miekg/dns/issues/1025?email_source=notifications&email_token=AACWIW3D53NHQEDYWFHI2Y3QNV7QRA5CNFSM4I62WW62YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEAW4CGY#issuecomment-539869467,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AACWIWYJGTU53S4DSK2XHODQNV7QRANCNFSM4I62WW6Q
.

Yep. That annoying, but this is all perfectly fine from a Unix perspective.
You can disable includes on the fuzz parser
On Wed, 9 Oct 2019, 15:31 chantra<EMAIL_ADDRESS>wrote:

Don't think that effort is required, if you want it to hang, it will hang.
If that's the case here I think this is working as intended.
While I agree with this, the fuzzer will keep on generating this type of
timeouts.
I don’t use the zone parser, so I do t really know what is a legit use
(like I would have expected INCLUDE to only read from regular files rather
than stdin), in which case erroring on non-regular file would have been
simple.
Now I need to appease the fuzzer in some ways. I could either timeout the
call within the fuzzing function and make it behave as a OK (which would be
reflected in NewFuzzRR), or filter out anything containing $include, or
disable it if I can’t make it ignore those type of errors.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/miekg/dns/issues/1025?email_source=notifications&email_token=AACWIW7L5JWZXK7MUI6EMVLQNXTNRA5CNFSM4I62WW62YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEAYC2RI#issuecomment-540028229,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AACWIW37N3RZMHLW4PFVCTLQNXTNRANCNFSM4I62WW6Q
.

Something like the patch below may do. Return -1 if anything contains "$include" in the byte array. WDYT?
diff --git a/fuzz.go b/fuzz.go
index a8a0918..104dae9 100644
--- a/fuzz.go
+++ b/fuzz.go
@@ -2,6 +2,8 @@

 package dns

+import "bytes"
+
 func Fuzz(data []byte) int {
        msg := new(Msg)

@@ -16,6 +18,9 @@ func Fuzz(data []byte) int {
 }

 func FuzzNewRR(data []byte) int {
+       if bytes.Contains(bytes.ToLower(data), []byte("$include")) {
+               return -1
+       }
        if _, err := NewRR(string(data)); err != nil {
                return 0
        }

From https://github.com/dvyukov/go-fuzz#usage
The function must return 1 if the fuzzer should increase priority of the given input during subsequent fuzzing (for example, the input is lexically correct and was parsed successfully); -1 if the input must not be added to corpus even if gives new coverage; and 0 otherwise; other values are reserved for future use.

With an appropriate comment that lgtm
On Wed, 9 Oct 2019, 19:14 chantra<EMAIL_ADDRESS>wrote:

From https://github.com/dvyukov/go-fuzz#usage
The function must return 1 if the fuzzer should increase priority of the given input during subsequent fuzzing (for example, the input is lexically correct and was parsed successfully); -1 if the input must not be added to corpus even if gives new coverage; and 0 otherwise; other values are reserved for future use.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/miekg/dns/issues/1025?email_source=notifications&email_token=AACWIW5KTQMD33HDNCHX3JDQNYNQJA5CNFSM4I62WW62YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEAY2CEA#issuecomment-540123408,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACWIWZV57IEOVUAYVCWVXDQNYNQJANCNFSM4I62WW6Q
.

With an appropriate comment that lgtm

sure, I will go ahead and make a PR.

Apparently parentheses are ignore because this is causing hangs :)
$(INcLUDE )dev/random

[ Quoting<EMAIL_ADDRESS>in "Re: [miekg/dns] [fuzzer] $INCLUDE h..." ]

Apparently parentheses are ignore because this is causing hangs :)

yes you may include them anywhere in a zonefile. I don't think anyone
considered this case though.
/Miek
--
Miek Gieben


Segmentation overay

exact-browser-sync.js

Display the segmentation images list.
Split the segmentation overlay and registration handlers.

exact-overlay-opacity.js

Event handlers related to the segmentation overlay.

annotate.html

Include the newly added exact-overlay-opacity.js file.

model.py

Modify to allow uploading .hdf5 files.

requirements.txt

Add the h5py package
Update Django version. In the latest version of Django, no errors occur with CharFields.

Hey @lullulalal. Thanks for the contributions. I think we need to briefly discuss the architectural change here, since it changes the way EXACT handles files.
Maybe we can nicely merge this with other efforts that also changed how EXACT handles files provided by my recent PR (#109).
Some questions from the top of my head:

Is hdf5 the right file format for masks, as it is very general-purpose? Shouldn't we go for something that is more in the direction of sparse matrices?
Additionally, HDF5 might be too general and might yield to complications if people use the internal file structure differently.

Regardless, I think the handler for segmentation masks could ne neatly integrated into the new getSlideHandler() mechanism.
@FraukeWilm: Since I think you are also involved: Could we briefly meet to discuss this?


local data sources

I would like to embed a browser configured with data sources from local javascript objects. Is something like this possible?
var features = [
  {chr: '1', start: 123, end: 234, label: 'foo'},
  {chr: '1', start: 333, end: 444, label: 'bar'},
  {chr: '3', start: 111, end: 222, label: 'baz'}
];
var styles = [
{
    type: 'default',
    style: {
       glyph: 'PLIMSOLL',
       HEIGHT: '12',
       STROKECOLOR: 'black',
       FGCOLOR: 'red'
    }
},
{
    type: 'nasty',
    style: {
        glyph: 'CROSS',
        FGCOLOR: 'green'
    }
}
];
browser.addTier({
    name: 'MyData',
    desc: 'I have these features in memory',
    localData: features,
    localStyleSheet: styles
});

After reading some of the code, I decided to modify MemStoreFeatureSource to add an option to bypass the parsing. It will be a less ugly hack if the features can be checked for validity with the source.payload parser. Does this make sense to you? I'll submit a pull request when I get it working.

@ajo2995  is "localData" supported in the current release ?
I tried it and it doesn't seem to work,
it's definitely a worthwhile feature...

It has not been merged in to the dasmoth/dalliance AFAIK.
I haven't used it yet but the idea was to embed a protein browser in the search.gramene.org results list and display domain annotations as tracks. I already had the positions of the domains on the protein sequence, but I needed to modify things to allow for a protein sequence source adaptor (via ensembl REST) and massage the domain annotations into an acceptable format. I recall getting a small test instance working, but the protein browser feature was postponed.

If you're using the trunk version of Biodalliance, then for small numbers of features, you can use the "test-source" store, as per:
 https://github.com/dasmoth/dalliance/blob/master/test/render-test.html#L146-L151

For a larger number of features, something closer to what @ajo2995 suggests is probably a better bet.  Although I'd be curious to know more about the use case -- in general, I've found that making a bigBed file or similar is usually the easiest solution.

@dasmoth  the use case I have is that I need to show a small number of trancsripts, proteins, peptides (never more than a dozen at a time), but the data feeds from a database with hundreds of thousands of them, and the small selected subset is deternined by a search result from a database.
Currently I produce a set of huge bed files, and move the view so a specific set of segments can be seen (transcripts, peptides).  The problem is that I only want to show a tiny subset of the segmets, and if I load the browser with my bedfiles, everyhing gets displayed (not only the small subset).
If I could "turn off" (erase visually) all the segments in a bed file except for the few desired ones, I wondered at one point if I could achieve this with a rendering callback, it seems not.
One thing I have tried is to create small bed files with only the tiny set I need to show, but this tiny set is the result of a database search (driven by a UI), so it's not so practical to pre generate all of them them (there would be millions), it would be better if I could hand them to the browser in the form of JSON rows from the client in javascript.
A third alternative Is to serve dynamically generated bed files, I have tried that, but it seems the browser doesn't like uncompressed bed files https://github.com/dasmoth/dalliance/issues/206   I could convert them to bigbed, but for such small files it's unfortunate if I have to call bedToBigBed...

@max-l I have a similar use case. On top it can be useful to compute some features on the fly in the web application and directly show them in a then dalliance sequence browser.
@dasmoth Is there something wrong with the pull request. If so maybe we can edit it so it can get merged.

Sorry, I rather lost track of this one :blush:
I'll hopefully have time this weekend to take a look.  Moritz -- if you get a chance, splitting the "pre-parsed features" stuff out of the larger pull request would make it that bit easier to consider in isolation.

I'll try to work on it during the weekend.

Just wanted to point out one other alternative:
    {name:      'Inline BED test',
     tier_type: 'memstore',
     payload:   'bed',
     uri:        URL.createObjectURL(
                     new Blob([
                         ['22 30000000 30010000',
                          '22 30050000 30060000'].join('\n')
                     ])
                 )
     }

(It should be possible to use a data: URL instead of a blob: if that's easier for specific cases...)
This may seem a little more complex, but it does have a couple of advantages:

Clear separation between "external" data model's and Biodalliance's internal "feature" type
It preserves the possibility of identifying source configs by the URI of the data they point to (this isn't an absolutely hard requirement, but does avoid needing special case code in a few places...)

The reason you're getting a "bad magic" error is that the Blob constructor doesn't treat arrays of ints as bytes in the way you might hope -- It's actually converting them to strings!
The solution to this is to do:
          new Blob([new Uint8Array([38, 252, 143, 136, ...])])

There are potentially a couple of other issues here.  The first is that Biodalliance needs random access to the file, which won't necessarily work with blob: URLs.  There's actually an easy way around this:
           sources: [
                {
                      name: 'User Data',
                      bwgBlob: new Blob(...)
                }
          ]

This was originally an internal mechanism which is used when you create a track from a local file (files appear inside the browser as Blobs), but does work with arbitrary Blobs, so I'll add this to the docs next time I'm in the area.
This got your example mostly working for me.  I did run into a problem when browsing beyond the end of the data.  I need to look into this more closely -- it might imply a truncated bigWig file, but it's not impossible that it could be a Biodalliance error.  I'll investigate further...

Okay, there was a boundary-condition bug which could affect a few very small bigwig files (including yours).  Fixed now.

Wow that's brilliant, thank you.
The reason I find the ability to inline some of these things desirable, is because I'm building a package https://github.com/BioJulia/GenomeBrowsers.jl/tree/updates, so our users can see their results in Dalliance in Jupyter.
By default a local https server gets spun up in the background, keeping the data, like the array above in memory, and serves it to the Dalliance instance in the notebook. This is fine until you want to look at the notebook in a viewer, or if the notebook is convered to reveal.js slides.
Then you need to either, recreate the server that got spun up (my expeirence with fellow biologists with no interest in computers is they won't bother), or have it read data from local files, or inline all the data.

Thanks Ben, sounds like a great project, and some extra encouragement for me to give Julia a try one of these days.
If there's anything we can do Biodalliance-side to better support this sort of use case, please do shout.  I certainly agree that avoiding server restarts and the like is very worthwhile.  For more general discussion about this kind of thing, the mailing list<EMAIL_ADDRESS>might be a better format.

Thanks @dasmoth, one of the things I'm curious of is support for custom genomes.
I work at an instituter that does genomic sequencing and research of some interesting organisms.
Say I have a FASTA file of some reference genome, and then some BAMs, some SAMs and so on, and I want to visualise them, I know I can enter the BAM, SAM and other track datasets.
I know that Dalliance will accept a TwoBit URI or Blob for the actual sequence itself, but I was wondering about the other parameters like: "coordSystem":{"taxon":9606,"ucscName":"hg38","speciesName":"Human","auth":"GRCh","version":"38"}. Sometimes genomes we sequence and species we work on might not nessecerily have a version, a ucscName or taxon code if it's not a model organism that has been worked on a lot or isn't on the DAS registry and other hubs and databases and so on. Would this be an issue for someone who just wanted to load their FASTA reference sequence and some alignment / annotation files?


Fixes import error when experimental package not installed

🚀 🚀 Pull Request
Checklist:

[ ]  My code follows the style guidelines of this project and the Contributing document
[ ]  I have commented my code, particularly in hard-to-understand areas
[ ]  I have kept the coverage-rate up
[ ]  I have performed a self-review of my own code and resolved any problems
[ ]  I have checked to ensure there aren't any other open Pull Requests for the same change
[ ]  I have described and made corresponding changes to the relevant documentation
[ ]  New and existing unit tests pass locally with my changes

Changes

No longer needed, fixes made on deeplake branch already


There is a difference between [] and None

I have a Model:
class foo(EndpointsModel):
    bar = NDB.KeyProperty(kind='baz', repeated=True)

@foo.method(...)
def update(self, f):
   f.put()
   return f

when I use the API explorer and enter { bar: [...]}everything works and bar is set correctly.
but when I do not set bar in the request , bar is implicitly set to [] and my previous data is lost.
I would like the data to be lost only when I explicitly set {bar: []}

Sorry I was traveling internationally when you filed this. Great point!

@matantsu I fixed in #140.
Note that the semantics of PATCH and PUT (patch vs. update) are a bit subtle and to actually get PATCH semantics, you'd need to use
@MyModel.method(request_message=MyModel.ProtoModel(), ...)

and then directly update the entire ndb entity from the ProtoRPC message.


Refactor: Improve constants definition

Background
We are using POJO (Plain Old JavaScript Object) instead of TS enums to define constants which is good! But the issue is a little bit verbose because the key itself is the value. I can imagine that RETURN_VALUE_ERROR_CODES will get big while the package is growing and adding more error types!
Solution
Create a util function toObject that takes an array of values and returns an object in which the key is the value while keeping type safety.
Checklist

[ ] Have you added any new returned codes to the README file?

Hi @AhmedIbrahim336 !
Thanks for the effort of making this PR. However, it's not clear to me how is this adding any value (plus it also increases a bit more package size). I think having the flexibility of remapping errors codes / keys in the future is fine and this abstraction is not really necessary.
I would prefer to keep it as it is. Thanks.


(FACT-826) Use /opt/puppetlabs/facter/facts.d

Previously, facter would load external facts from
/opt/puppetlabs/agent/facts.d, but this was wrong for two reasons. The
agent directory was renamed to puppet in AIO. Also, it was
conflating facter's facts.d directory, with puppet's facts.d
directory. Puppet pluginsyncs external facts in modules to the latter
directory, which defaults to $vardir/facts.d
This updates facter to use /opt/puppetlabs/facter/facts.d. This
directory is private to facter.

ah rebase issues, fixing

Can you retarget at 2.x branch and we'll merge up?

Btw, somehow the spec file picked up execute permissions.


DOCS-489-fix-command

Fix command for OSS Windows
Product Version(s):
OSS 3.25, 3.26, 3.27
Issue:
https://tigera.atlassian.net/browse/DOCS-489
Link to docs preview:
SME review:

[ ] An SME has approved this change.

DOCS review:

[ ] A member of the docs team has approved this change.

Additional information:

Merge checklist:

[ ] Deploy preview inspected wherever changes were made
[ ] Build completed successfully
[ ] Test have passed

LGTM


Update your author profile on the blog

https://blog.meilisearch.com/ghost/#/staff/carolina/

Thanks

Thanks


Added TextChannel#deleteMessages()

Added TextChannel#deleteMessages() https://github.com/hammerandchisel/discord-api-docs/issues/40
Added project files specific to Netbeans (harmless)
Fixed a typo because I am a nazi

looks good!
Waiting for DV8 before merging tho

you could (if you want) properly link the deleteMessage method ( {@link net.dv8tion.jda.entities.Message#deleteMessage})

Thanks Kant. Went ahead and committed that.

Code looks good. Please compress the commits into a single commit considering many are for simple changes.
If possible, cleanse the first commit which is a merge and unneeded. If you can't, that's fine. Just compress and drop a message when done and I'll merge it

DV8 you can just squash all the commits into one when merging this PR. This will produce a single commit for this entire PR.

Actually, I missed something: Line 376 of TextChannelImpl, please change the if statement to use ! instead of == false

And add a newline at the end of the .gitignore file

Okay, I didn't know github had that functionality now. Dope. Other changes still stand.

:+1:

Looks good. Question: what happens if you pass ids for messages sent in a different channel? What about if you pass it messages built with the message builder? We might want to add catches for those situations.
Otherwise, this is mergable.

The endpoint doesn't care if the message belongs in another channel or if it doesn't exist. However, if you use an unsent message from a builder the message array will contain a "" which is invalid formatting, causing a silent fail. Will fix.

Unsent messages will now be ignored

You ready to merge @Frederikam ? BTW: i find it funny how you use the lastProcessedMessage var instead of just using ids.get(0) xD

Ready to merge.
lastProcessedMessage exists because ids.get(0) is only the id (String) of the message. It seems dirty to convert the id to a Message object or just do a delete directly using REST.

oh right... kk

Im concerned that silently removing and returning when dealing with messages built from MessageBuilder may prove to cause hidden problems for some users not knowing why their messages aren't being deleted because that are attempting to delete a MessageBuilder built message, however, I'll leave it for now.

I don't see the problem. The desired result is to not have the message exist in the given channel. If the message is never sent this goal is already fulfilled.


Fix left-shift signed overflows (UB)

In both cases pm may be negative, and left shifting a negative value is signed overflow (undefined behavior). The destination is 16-bit, and 8-bit pm is always left-shifted by 8, shifting any sign extension of pm beyond the destination. Therefore its signedness plays no practical role in these operations.
These shift operands are first promoted to int, and so it's still signed left-shifts of non-negative operands. 32-and 64-bit host have plenty of overhead. On 16-bit hosts this shifts into the sign bit, and no farther, a well-defined special case in C++ (CWG 1457).
Removing the explicit int8_t casts isn't necessary, but they no longer make sense with this change.
I discovered these via Undefined Behavior Sanitizer on x16emu.

It's not exponent that's negative but value. There's an implicit int16_t
cast on the return, but casting the intermediate to int16_t instead of
uint32_t (if that's what you're proposing) won't help because that leaves
it negative. In any case, the right shift result must be made non-negative
before the left shift in order to avoid UB.

Still confused here. The sanitizer is saying that you cannot left shift a negative value ever? Exponent is guaranteed to be in the range 0..6 by the logic above, so we're not talking about a large shift range.

I'm all for silencing warnings, but the uint32_t cast is just a head-scratcher when looking at the code, so I'm reluctant to add that. I'd rather find an alternate solution that doesn't make me go WTF?

Yes, before C++20 it is undefined behavior to left shift a negative value
by any amount, even zero. See the "Shift operators" (expr.shift) section
in the C++ standard. Both GCC and Clang instrument this case for UBSan,
which is how I found it. It's not simply implementation defined, but that
compilers may assume roundtrip_fp is never called with negative arguments
and generate code accordingly.
After double-checking the C++ standard, I didn't realize until now that
left-shifting a negative is well-defined as of C++20. However, README.md
says ymfm works in "any environment that has C++14" which means it's still
undefined.

An alternative would be to mask out "exponent" bits from the bottom:
int16_t mask = (1 << exponent) - 1;
return value & ~mask;

Clang even compiles this to the identical x86 instructions as the uint32_t
cast version.

Is it true that the C++14 standard says that right-shifting a negative number is implementation-defined, as well? So value >> exponent could be inconsistent between different compilers (even if, in practice, it isn't)?
If this is just about masking the exponent, especially if Clang already compiles it that way, then it seems like performing the mask like that is the best solution.

Implementation-defined is different than undefined, and you get at least a
meaningful numeric result without nasal demons. The only sensible behavior
for right-shifting a negative is arithmetic right-shift, and that's been
the behavior across all practical C++ implementations. You're right that
the mask also eliminates implementation-defined behavior, but there remain
negative right-shifts elsewhere anyway (which is fine).

Despite what the standard says, the behavior of shifts can be safely relied on in practice. I've yet to find any compiler implementation that does other than the expected, and even if I did, I'm not sure I care.
I'm 99% sure that there are other places in my code where I rely on shifting behavior, and which aren't flagged by these sanitizers, and I'm definitely not going to go out of my way to identify and fix all of them, so it's a waste to bend over backwards to address these.
That said, I'm ok with the masking implementation as it is indeed equivalent and doesn't raise more questions when I read it.

I've updated the commit to use the mask operation as well as the commit
message to reflect the new version.

Thanks, Aaron!


[Bug]: How to change Error format to "default" format Nodejs uses when logging to the console.

🔎 Search Terms
Errror format, error logging
The problem
how do I log Errors in the console in their default format that Nodejs uses to show errors in the console?
Currently, It logs into the console a JSON object and within that object, I see the Error "message", "stack", "trace", "file", "line", etc.. the usual information that is printed in the "default" format when Nodejs logs an error.
What version of Winston presents the issue?
v3.8.2
What version of Node are you using?
v19.1.0
If this worked in a previous version of Winston, which was it?
No response
Minimum Working Example
import * as dotenv from "dotenv";

process.env.NODE_ENV
	? dotenv.config({ path: `./environment/.env.${process.env.NODE_ENV}` })
	: dotenv.config({ path: `./environment/.env` });

import winston from "winston";
import morgan from "morgan";

const productionLogFormat = {
	format: winston.format.combine(
		winston.format.timestamp(),
		winston.format.errors({ stack: true }),
		winston.format.json()
	),
};

const developmentLogFormat = {
	format: winston.format.combine(
		winston.format.colorize(),
		winston.format.timestamp({ format: "YYYY-MM-DD HH:mm:ss" }),
		winston.format.printf(({ timestamp, level, message, stack }) => {
			return `${timestamp} ${level} ${stack || message}`;
		})
	),
};

const logger = winston.createLogger({
	level: process.env.LOG_LEVEL,
	productionLogFormat,
	transports: [
		new winston.transports.File({ filename: "./src/logger/logs/errors.log" }),
		new winston.transports.File({ filename: "./src/logger/logs/combined.log", level: "debug" }),
	],
	exceptionHandlers: [
		new winston.transports.File({ filename: "./src/logger/logs/exceptions.log" }),
	],
	rejectionHandlers: [new winston.transports.File({ filename: "./src/logger/logs/rejections.log" })],
	exitOnError: false
});

if (process.env.NODE_ENV !== "production") {
	logger.add(
		new winston.transports.Console({
			developmentLogFormat,
			handleExceptions: true,
			handleRejections: true,
		})
	);
}

Additional information
I don't think this is related but I would like to know why is that, "	exitOnError: false" is not working, after logging the Error details in the console, it still exists the process.
After some more searching, I've come across these two issues that are addressing the same problem, #1479 and #1693

I don't see anything getting logged in the example code above, but there is a difference between log('my string describing a problem') and log(new Error('my string describing a problem')) and that difference might be relevant here.

Sorry for the late response. Using winston.transports.cli() gets me the closes to the default format that Nodejs uses for logging the errors.
if (process.env.NODE_ENV !== "production") {
	logger.add(
		new winston.transports.cli({
			developmentLogFormat,
			handleExceptions: true,
			handleRejections: true,
		})
	);
}```

I'll close this issue because `cli` function is already available and it's very close.


DOM elements example

Is it possible to add to echarts.volkovlabs.io a simple example with select element?

@DMFST We have another Issue opened for the same. I will look into it.

@mikhail-vl silly question (Python coder here, just starting with JS/React), is it possible to create a Grafana element from the javascript code somehow?
You have an example here to add a button, https://volkovlabs.io/plugins/volkovlabs-echarts-panel/instance/
Is it possible to add somehow a button like this one: https://developers.grafana.com/ui/latest/index.html?path=/story/buttons-confirmbutton--delete ?

@nicolaerosia ECharts has toolbox (https://echarts.apache.org/en/option.html#toolbox) with all kind of buttons, which I think is configurable as well.
Grafana button is just a button with a styling, you can create a button as in our documentation and add a Grafana style. Should be possible.


chore: disable mixpanel SDK

Type of Change

[ ] Bugfix
[x] New feature
[ ] Enhancement
[ ] Refactoring
[ ] Dependency updates
[ ] Documentation
[ ] CI/CD

Description

Motivation and Context

How did you test it?

Checklist

[x] I ran npm run re:build
[x] I reviewed submitted code
[ ] I added unit tests for my changes where possible

Already merged with some other branch.


Comment continuation isn't working anymore?

I'm just getting everything set up on my new machine and noticed that on_enter isn't adding // or /// in the editor even though I have both settings set to on.

@sdankel not sure if this is happening for you also?

This is happening for me too! Doc comment continuation is still working, but not comment continuation. Looking into it.


feat: renewed build

solves #16

Coverage remained the same at 57.447% when pulling 3028790fb7233eabfafe90b6ccb0522e310e6849 on feat/renew-build into 0bbbd223e3828365a9adcf580dfcc5ccc98b250b on develop.


Enable use of 'unset' values in prepared statements by default

We have support for the use of 'unset' values to reduce the number of prepared statements as of commit b432a08dad2816273184cab54c5ccbef4e7e14dd. However, user needs to explicitly enable that with the -u command line option, which they will easily forget to do.
We should make this enabled by default just like we do for prepared statements and batching since commit b382110eb962d2ff7d3b32d2c0fa626c08a18f25. @haaawk did want us to check the performance impact of  'unset' before we do that, though.

It would probably be good as the default option should be the one that performs better. I won't insist though :)

@haaawk No, I think it's a reasonable requirement before defaulting to the new option.

@penberg @elcallio I would wait with enabling this by default. I was testing sstable loader with data generated by cassandra stress. Default schema is:
CREATE KEYSPACE keyspace1 WITH replication = {'class': 'SimpleStrategy', 'replication_factor': '1'}  AND durable_writes = true;
CREATE TABLE keyspace1.counter1 (
key blob,
column1 text,
"C0" counter static,
"C1" counter static,
"C2" counter static,
"C3" counter static,
"C4" counter static,
value counter,
PRIMARY KEY (key, column1)
) WITH COMPACT STORAGE
AND CLUSTERING ORDER BY (column1 ASC)
AND bloom_filter_fp_chance = 0.01
AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
AND compression = {'enabled': 'false'}
AND crc_check_chance = 1.0
AND dclocal_read_repair_chance = 0.1
AND default_time_to_live = 0
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair_chance = 0.0
AND speculative_retry = '99PERCENTILE';
CREATE TABLE keyspace1.standard1 (
key blob PRIMARY KEY,
"C0" blob,
"C1" blob,
"C2" blob,
"C3" blob,
"C4" blob
) WITH COMPACT STORAGE
AND bloom_filter_fp_chance = 0.01
AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
AND compression = {'enabled': 'false'}
AND crc_check_chance = 1.0
AND dclocal_read_repair_chance = 0.1
AND default_time_to_live = 0
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair_chance = 0.0
AND speculative_retry = '99PERCENTILE';
and running sstable loader like this: ./bin/sstableloader -u -d <IP_ADDRESS> /home/haaawk/.ccm/loader-1/node1/data0/keyspace1/standard1-c17511f0bb2111e8ac3f47eff2803657/
generates lots of errors:
com.datastax.driver.core.exceptions.InvalidQueryException: Unknown identifier column1


Adds dashboard url validaton and updates default auto repo configure value

Fixes #954

Submitter Checklist

[ ] ♽  Run make test lint before submitting a PR (ie: with pre-commit, no need to waste CPU cycle on CI
[ ] 📖 If you are adding a user facing feature or make a change of the behavior, please verify that you have documented it
[ ] 🧪 100% coverage is not a target but most of the time we would rather have a unit test if you make a code change.
[ ] 🎁 If that's something that is possible to do please ensure to check if we can add a e2e test.
[ ] 🔎 If there is a flakiness in the CI tests then don't necessary ignore it, better get the flakyness fixed before merging or if that's not possible there is a good reason to bypass it. (token rate limitation may be a good reason to skip).

@chmouel tested on openshift cluster, fixes the issue
we can merge it

we need to kubectl delete pod --all -n pipelines-as-code on ci cluster when the image has rebuilt to test if it works


Feature Request: Blutooth connectivity for simple telemetry data

I politely apologize if this is not the appropriate place for an idea, suggestion or feature request.
I've been wishing since my first DJI FPV flights that I could see the quad's telemetry data directly on my smartphone. More specifically, the serial quad data packages (srt file data) coming into the goggles would be passed through to a simple Bluetooth module, and the Bluetooth module would send that data to a connected Android  or Apple smartphone. The data could be received and stored there with a simple smartphone app.
Use case:s

GPS data would be displayed in real time on the smartphone: Where exactly is the quad at the moment? The GPS data could be forwarded directly to Google Maps. The flight path could be displayed as well. Where exactly is the last received GPS coordinate and where is it likely to have crashed based on the flight path? So: no more copying coordinates from your glasses and typing them into Google Maps.
Lost eye on Li-Ion voltages? Configure an acoustic alarm on your smartphone.

Would that be possible?

We've discussed this idea quite a bit. A few notes:

Goggles V2 support USB OTG, so this could be done by plugging in a USB Bluetooth adapter, IF we could get the Linux kernel drivers for one to work. Unfortunately we have not yet been successful building kernel modules for the DJI kernel.
Goggles V1 do not support USB OTG, so that's a dead end for Goggles V1 and an alternative route would need to be pursued, for example soldering to an internal debug UART or some kind of trick with the audio out jack.

This is also a fairly niche use case as most DIY users get these same functions through their radio Tx, but that doesn't mean it's not still worth pursuing.


Android NDK: Aborting    .  Stop.

Hi! I can't build project. When i run app, i've some error messages :
Error:(115) *** Android NDK: Aborting    .  Stop.
Error:Execution failed for task ':epub3:buildMk'.

Process 'command 'C:\Users\marzic\AppData\Local\Android\Sdk\ndk-bundle/ndk-build.cmd'' finished with non-zero exit value 2

Hello, what is the NDK version? Do you use Android Studio, or do you invoke the Gradle build from the command line? Have you tried activating the non-stable Gradle version, which supports better NDK integration? (add readium.ndk_experimental in local.properties) https://github.com/readium/SDKLauncher-Android/blob/develop/SDKLauncher-Android/build.gradle#L29

Hello!
Same here. I've activated the experimental version as @danielweck said and it's ok now.

Hello, I have encountered the same translation compiler, how can you give specific advice?

For your information, I have just upgraded versions in the build scripts (to match the Android Studio auto-updates):
https://github.com/readium/SDKLauncher-Android/commit/d8c7c44baa48bb17a73d3e5c3d3b6e25c73225b2
https://github.com/readium/readium-sdk/commit/e9e89aaeaaa4e49ab85c5238d20efb615e3bdc41
https://github.com/readium/readium-lcp-client/commit/40e53ad3c1435cb80a596387bab15cd7ef4c95bd
... and I have successfully built (NDK 15 GCC, not Clang) and launched (i.e. debugged in dual Java / C++ mode) the ReadiumSDK launcher app on my Android phone (ARM device, Oreo API-26).
local.properties
ndk.dir=/Users/danielweck/Library/Android/sdk/ndk-bundle
sdk.dir=/Users/danielweck/Library/Android/sdk
readium.ndk_experimental=true
readium.ndk_clang=false
readium.ndk_skipARM=false
readium.ndk_skipX86=true

Note that with readium.ndk_experimental=false in local.properties, I had to downgrade APP_PLATFORM to android-19 as the latest NDK(s) do not support android-25:
https://developer.android.com/ndk/guides/stable_apis.html
https://github.com/readium/readium-sdk/commit/965fbb666c27ef76462dbfb379abb7c4e4015b5a

guy im sorry but im still not able to compile the sample code im using NDK 15.2.
What im doing is clicking on . de SDK LAUNCHER with the gradle logo and gives me this erro

@blennerSilva see https://github.com/readium/SDKLauncher-Android/issues/125
please try NDK 14.


Holding down space causes repeated play/pause

It would be more beneficial to only trigger play/pause when the key is released.

This behavior is coming from Google's end of things (you can see the same behavior happening in Chrome or Safari).  You may want to send this suggestion to them as feedback - to do so, click the menu icon at the top left, choose Help and Feedback from the menu, then choose Send Feedback (it'll be at the bottom of the help dialog).


UI: Using Godot on a secondary monitor makes dropdowns and context menus not appear (DisplayServer regression)

Godot version
4.0.1 Stable
System information
Arch Linux, Nvidia RTX 2070 Super, Vulkan Forward+ Renderer
Issue description
When using a secondary monitor for editor use, using context menus or menu bar dropdowns provide this error in a terminal window:
ERROR: Window 5 spawned at invalid position: (2046, 1080).
   at: popup (scene/main/window.cpp:1557)
ERROR: Window 6 spawned at invalid position: (2208, 1080).
   at: popup (scene/main/window.cpp:1557)
ERROR: Window 7 spawned at invalid position: (2388, 1080).
   at: popup (scene/main/window.cpp:1557)

Steps to reproduce
Open Godot Editor
Open a project
Drag the window to the secondary monitor
Do one of the following
- Left click on Scene Menu
- Right click on an open space in Scene or FileSystem group areas.
Minimal reproduction project
N/A

Can't reproduce on Manjaro with KDE on X11 with NVidia 1050TI. Are you using X11 or Wayland? What DE are you running?

I'm currently running X11 KDE on Arch Linux.  I think it has something to do with my monitor layouts since I have my monitors aligned vertically and my top monitor has a lower resolution than my bottom monitor, like so.

Version information and system information screenshots as follows:

Can you try #75359 and see if it fixes the issue?


Barebone work order form

Still needs state management implemented

Added form state for work orders using useState react hook.
Still need to figure out what we are going to do with attachment section and how the Back-end will like to receive that data

 As a Property manager/IT, I want to have a form to fill in work order info so I have a clear idea of the work order that needs to be done


Add different file types

I do not understand why only PDF files are allowed.
Could you provide an option to select any type of file (any file ending or specified file ending)?

That’s one of the future features. So far PDF was the only file supported (besides gallery and camera) since the reason why this plugin was created was the fact that I need a native file explorer for PDF files. Anyone is, however, free to submit a PR with more supporting types (on both iOS and Android).


Error in calculating 5 cube to check weather 153 is armstrong number or not

Type: Bug
I wrote a code to check weather 153 is a armstrong number or not(It is an armstrong number) as per a question in vs code . when i print cube of every digit using pow it show 5 cube as 124 instead of 125.while same code run perfectly on Devc++ software. but other cubes are correct
Code is provided below for your ease to confirm my problem
#include<stdio.h>
#include<math.h>
int main(){
int i=153,a,ans=0,n=0;
a=i;
while(a>0){
n=pow((a%10),3);
printf("cube  of each digits \n%d",n);
ans+=n;
a/=10;}
if(i==ans){
printf("\n%d",ans);}
return 0;}
VS Code version: Code 1.81.1 (6c3e3dba23e8fadc360aed75ce363ba185c49794, 2023-08-09T22:22:42.175Z)
OS version: Windows_NT x64 10.0.23536
Modes:

System Info

Item
Value

CPUs
11th Gen Intel(R) Core(TM) i3-1115G4 @ 3.00GHz (4 x 2995)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
7.75GB (1.19GB free)

Process Argv
--crash-reporter-id 10b0f727-de92-42e6-8eb1-a3bfc470a2bb

Screen Reader
no

VM
0%

Extensions (9)

Extension
Author (truncated)
Version

code-runner
for
0.12.0

c-cpp-runner
fra
8.1.0

python
ms-
2023.14.0

vscode-pylance
ms-
2023.8.50

cmake-tools
ms-
1.15.31

cpptools
ms-
1.17.5

cpptools-extension-pack
ms-
1.3.0

cmake
twx
0.0.17

vscode-lldb
vad
1.9.2

(1 theme extensions excluded)

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vswsl492cf:30256860
vslsvsres303:30308271
vserr242cf:30382550
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vsdfh931cf:30280410
vshan820:30294714
vstes263cf:30335440
vscoreces:30445986
vscod805:30301674
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593cf:30376535
pythonvs932:30410667
py29gd2263:30792226
vsclangdf:30486550
c4g48928:30535728
dsvsc012cf:30540253
pynewext54:30695312
azure-dev_surveyone:30548225
vsccc:30803844
282f8724:30602487
f6dab269:30613381
showlangstatbar:30737416
03d35959:30757346
pythonfmttext:30731395
fixshowwlkth:30771522
showindicator:30805244
pythongtdpath:30769146
i26e3531:30792625
pythonnosmt12:30797651
pythonidxpt:30805730
pythonnoceb:30805159
dsvsc013:30795093
dsvsc014:30804076
diffeditorv2:30821572

We closed this issue because it is a question about using VS Code rather than an issue or feature request. Please search for help on StackOverflow, where the community has already answered thousands of similar questions. You may find their guide on asking a new question helpful if your question has not already been asked. See also our issue reporting guidelines.
Happy Coding!


Login/signup without connecting to github to use visualizer

Bug or feature request?
Feature request
Description:
Instead of having to authorize xstate to your github account it would be nice to have another option. For example:

logging in with email and password
logging in with a google account

(Feature) Potential implementation:
oauth

What the API would look like
If this is a breaking change
If this is part of the existing SCXML specification

Added to roadmap!


Challenge http://www.freecodecamp.com/challenges/waypoint-check-radio-buttons-and-checkboxes-by-default has an issue

Adding checked does not let me progress. Looks like a bug as it's a simple task.

Unable to reproduce. Ensuring both a regular checkbox and a radio button are both checked produces the expected behavior.

Must have been a bug with the browser as it has worked today. Thanks.


Fixed sanitization when shims are in use

See issue #42 for details

Thank you @eidloi

You can now use the version 1.6.5!

Excellent! Thank you for the quick response!


It is better to update 'API Version' to 'API version' on 'Shared Access Signature' dialog

Storage Explorer Version: 1.29.0-dev
Build Number: 202300418.4
Branch: main
Platform/OS: Windows 10/Linux Ubuntu 22.04/MacOS Ventura 13.3.1 (Apple M1 Pro)
Architecture: ia32/x64/arm64
How Found: From running test case
Regression From: Not a regression
Steps to Reproduce

Right click one storage account -> Click 'Get Shared Access Signature...'.
Observe the 'Optional parameters' part on the dialog.

Expected Experience
It is better to update 'API Version' to 'API version'.
Actual Experience
It shows 'API Version'.

Verified this issue on the build main 20230419.4. Fixed. So, we are going to close it.


Label nodes should respect their content when using the shrink size flags.

When using a Label control node, none of the shrink* options for the size flag respect the text content of the node.
For comparison, here's what a label and a button look like with Fill:

now with shrink_center:

I would expect something maybe like that instead:

Godot version
Godot 3.0beta2

I would still like to see this for Godot 4! Is this still a valid ticket?

In Godot 4 there are various autowrap modes for label, including word one.

I would expect something maybe like that instead:

That's unfeasible. The Label would have to magically know what width do you expect. Shrink always uses the minimum possible size.
Closing, open a proposal if you are still interested.


runtime_init e2e restarts once before stabilizing

In what area(s)?

/area runtime

/area operator
/area placement
/area docs
/area test-and-release

What version of Dapr?
master
0.11.3
Expected Behavior
There are no unexpected restarts of Pods in E2E tests.
Actual Behavior

runtime_init fails to start properly initially, then restarts and then stabilizes.
runtime-init-788f64849d-jl4cv            0/2     Error               0          8s
runtime-init-788f64849d-jl4cv            1/2     Error               0          10s
runtime-init-788f64849d-jl4cv            2/2     Running             1          10s

Steps to Reproduce the Problem

Run the runtime E2E test following the steps https://github.com/dapr/dapr/blob/master/tests/docs/running-e2e-test.md
Release Note

RELEASE NOTE:

checked with 0.11.3 also ... fails, pod restarts and then stabilizes
2020/11/10 00:17:06 Publishing to http://localhost:3500/v1.0/bindings/runtime-bindings-http
2020/11/10 00:17:06 Publishing to http://localhost:3500/v1.0/publish/runtime-pubsub-http
2020/11/10 00:17:06 Error publishing messages to pubsub: Post "http://localhost:3500/v1.0/publish/runtime-pubsub-http": dial tcp <IP_ADDRESS>:3500: connect: connection refused

cc @yaron2 @youngbupark

I think this is the potential reason ... the runtime_init application immediately tries to publish to pubsub/bindings in main() function ....
https://github.com/dapr/dapr/blob/master/tests/apps/runtime_init/app.go#L68-L87
the blockUntilAppReady() call is being made in 0.11.3 before initializing daprd components
still in master that call is being made before input bindings are initialized and before subscription is started ...
I think https://github.com/dapr/dapr/issues/1933 should fix this ... But this issue is needed to fix the e2e

@wcs1only @mukundansundar  - Can you comment more on this for v1.0?

@wcs1only @mukundansundar  - Can you comment more on this for v1.0?

Ideally we should have only expected pod restarts in e2e tests. One fix will be to only start publishing after dapr sidecar is ready. Could potentially be based off of the health check, or could just retry instead of directly trying to publish in the main method of the application.

Ideally we should have only expected pod restarts in e2e tests. One fix will be to only start publishing after dapr sidecar is ready. Could potentially be based off of the health check, or could just retry instead of directly trying to publish in the main method of the application.


Debian 8.0 Support

Debian 8.0 Jessie is considered Stable.  https://www.debian.org/releases/stable/
Will easyengine update to support it?

@sonontse ,
Hi, We now added Debian 8 support with EasyEngine 3.1.6


invalid key: fzf_opts

Using the official config, --disabled flag is just to test if it works:
-- Hotkeys
vim.keymap.set(
  "n",
  "<C-f>",
  "<cmd>FzfxFiles<cr>",
  {
    silent = true, noremap = true, desc = "Search files",
    fzf_opts = { "--disabled" }
  }
),

As per documentation:

each commands group also has a 'fzf_opts' field that can overwrite this.

Am I missing something? Clearly, passing this as a parameter for vim.keymap.set() is a bad idea... What's the right way?

hi @savchenko, please refer to issue #495


profile page overview card

This code change turned out to be a lot more than intended:

Overview card (and hence BarWithHelp and LabelAndText components)
Mapping for "Meet up" status to text
Constants for static strings

Just a quick question: I believe package-lock.json is an NPM thing, right? I think most people up to now have been using Yarn. I don't care what people use, but I'm just wondering if this could cause inconsistencies in environments, i.e. if someone installs from yarn.lock, and someone else from package-lock.json, they might end up with a different set of packages?


Regent picking up CUDA target when Legion is not built with CUDA

We have Regent picking up CUDA target when underlying Legion is not built using CUDA ON. This results in segfault and needs to be addressed.
Stack Trace:
#0  0x0000000000000000 in ?? ()
#1  0x0000155522310067 in $main ()
#2  0x0000155522310032 in $wrapper ()
#3  0x000055555b738af3 in lj_vm_ffi_call ()
#4  0x000055555b6f4687 in lj_ccall_func ()
#5  0x000055555b6d8add in lj_cf_ffi_meta___call ()
#6  0x000055555b7366b6 in lj_BC_FUNCC ()
#7  0x000055555b6e4d09 in lua_pcall ()
#8  0x000055555687a242 in docall(lua_State*, int, int) ()
#9  0x000055555687982b in main ()

@elliottslaughter @lightsighter please add information I might've missed. Thank you!

Please post the original stack trace so that users can find this via a search if they hit the same issue.

I think I understand some more about this failure now.
If you just build without CUDA (on a machine that has CUDA installed), e.g.:
$ module load cuda
$ CC=gcc CXX=g++ USE_GASNET=0 DEBUG=1 USE_CUDA=0 ./scripts/setup_env.py

Then running Regent will give you:
$ ./regent.py examples/circuit_sparse.rg -fcuda 1
GPU code generation failed since the cuInit function is missing (Regent might have been installed without CUDA support)

Regent has correctly identified that CUDA is not enabled, but as the message says, it does so by actually looking for cuInit via dlsym lookup in the current global namespace. This means that if anything loads CUDA, Regent will assume that CUDA is there, and then Regent will attempt to build GPU kernels.
(The reason for -fcuda 1 here is to force the error, otherwise Regent will happily shut off CUDA codegen and you'll never know anything happened.)
It turns out that once you turn on GASNet, GASNet auto-detects CUDA and this causes CUDA to get linked into the process even when Legion has CUDA disabled.
$ CC=gcc CXX=g++ USE_GASNET=1 CONDUIT=ibv DEBUG=1 USE_CUDA=0 ./scripts/setup_env.py
$ ./regent.py examples/circuit_sparse.rg -fcuda 1
[(nil)]
/scratch/eslaught/legion-setup-env/language/terra/bin/terra(+0x61d291c) [0x56430b48191c]

You can see that Regent is no longer rejecting to perform CUDA code generation. You can also clearly see that we have linked CUDA into Legion:
$ ldd ../bindings/regent/libregent.so | grep cuda
        libcuda.so.1 => /lib/x86_64-linux-gnu/libcuda.so.1 (0x00007ffbbc9e8000)
        libicudata.so.66 => /lib/x86_64-linux-gnu/libicudata.so.66 (0x00007ffbba1be000)

So, I suppose that Regent should NOT consider whether or not CUDA is available in a process to be a reliable indication of whether or not Legion was actually built with CUDA, and we should investigate another mechanism.

The other reason why this was really difficult to track down was that the backtraces we started with just pointed to somewhere in main:
(gdb) bt
#0  0x0000000000000000 in ?? ()
#1  0x0000155554e52066 in $main () at /home/scratch.mbauer_research/legion/language/src/regent/std.t:3847
#2  0x0000155554e52032 in $wrapper () at /home/scratch.mbauer_research/legion/language/src/regent/std.t:4715
#3  0x000055555b738af3 in lj_vm_ffi_call ()
#4  0x000055555b6f4687 in lj_ccall_func ()
#5  0x000055555b6d8add in lj_cf_ffi_meta___call ()
#6  0x000055555b7366b6 in lj_BC_FUNCC ()
#7  0x000055555b6e4d09 in lua_pcall ()
#8  0x000055555687a242 in docall(lua_State*, int, int) ()
#9  0x000055555687982b in main ()

And initial debugging from @lightsighter pointed to a failure so early in main that I didn't see a way for this to be anything except bad code generation or memory corruption:
Dump of assembler code for function $main:
   0x0000155554e52040 <+0>: push   %rbp
   0x0000155554e52041 <+1>: push   %r15
   0x0000155554e52043 <+3>: push   %r14
   0x0000155554e52045 <+5>: push   %r13
   0x0000155554e52047 <+7>: push   %r12
   0x0000155554e52049 <+9>: push   %rbx
   0x0000155554e5204a <+10>:    sub    $0x808,%rsp
   0x0000155554e52051 <+17>:    mov    %edi,0x34(%rsp)
   0x0000155554e52055 <+21>:    mov    %rsi,0x38(%rsp)
   0x0000155554e5205a <+26>:    movabs $0x0,%rax
   0x0000155554e52064 <+36>:    call   *%rax
=> 0x0000155554e52066 <+38>:    mov    %rax,%rbp
   0x0000155554e52069 <+41>:    movabs $0x900000000,%rax
...
(gdb) p $rax
$1 = 0
(gdb) p $rbp
$2 = (void *) 0x7fffffffc820

I still don't know exactly why this is the failure that results from doing CUDA code generation in a process where Legion has been built without CUDA, but we went through a bunch of rabbit holes that didn't ultimately go anywhere until we stumbled on the fact that the issue does not reproduce without GASNet (which led to wondering what that was actually changing).

The most immediate workaround for this issue is just passing -fcuda 0 when Legion does not have CUDA enabled.
In terms of a longer-term solution, I'm trying to figure out how to detect whether Legion has been built with CUDA or not. Unfortunately, Regent does not seem to be picking up any LEGION_USE_* variables:
$ cat test_legion_defines.t
import "regent"
for k, v in pairs(regentlib.c) do print(k, v) end
$ ./regent.py test_legion_defines.t | grep LEGION_USE
$ ./regent.py test_legion_defines.t | grep REALM_USE
REALM_USE_CACHING_ALLOCATOR     0
$ ./regent.py test_legion_defines.t | grep REGENT_USE
REGENT_USE_HIJACK       0

I believe the reason why we only find the two symbols is because Terra only parses defines with constant values. If you just #define VAR with no value, we won't parse it.
I suppose that, like REGENT_USE_HIJACK I could establish a new Regent-specific variable for CUDA:
#ifdef REALM_USE_CUDA
#define REGENT_USE_CUDA 1
#endif

Just to give me something to look up. Or we could define the Legion/Realm variable to have a 1 value so I can check it. @lightsighter do you have a preference?

Just to give me something to look up. Or we could define the Legion/Realm variable to have a 1 value so I can check it. @lightsighter do you have a preference?

I said this in zullip, but posting it here too. I think it would be better to use the new Realm machine configuration API to programmatically detect if Realm has been built with CUDA support or not. You can do that be checking to see if there is a "cuda" module:
https://gitlab.com/StanfordLegion/legion/-/blob/master/runtime/realm/runtime_impl.h?ref_type=heads#L370
If you pass in "cuda" there and get back a null pointer then there's no CUDA support.

Here's a potential fix. It does not use the machine configuration API, but establishes a define inside the regent.h header like we did for the hijack.
https://gitlab.com/StanfordLegion/legion/-/merge_requests/1222
If we move to a mode in which Realm has truly dynamic modules, we may need something fancier, but for now this seems fine.

@reazulhoque can you confirm the patch works for your case?

This has been merged to master. @reazulhoque Please confirm the fix.


Add a filter to the resource action endpoint to only select resource actions that have a change (#6837)

Pull request opened by the merge tool on behalf of #6837

Merged in<PHONE_NUMBER>7369548d9e7aee46f925b2e5b6227f


/compile.sh: line 27: play: command not found - Any help ?

Hi ,
I am very new to github site.  I  download the zip file "dr-elephant-master.zip" and trying to install in my YARN cluster.   Do I need to install dr-elephant on RM node or I can install in spare node which is part of our hadoop cluster ?
Secondly, when I try to compile it complaining  below errors, any help is appreciated.
./compile.sh
Using the default configuration
Hadoop Version : 2.3.0
Spark Version  : 1.4.0
Other opts set :
./compile.sh: line 27: play: command not found
./compile.sh: line 94: cd: target/universal: No such file or directory
inflating: dr-elephant-master/.gitignore
inflating: dr-elephant-master/LICENSE
inflating: dr-elephant-master/NOTICE
..
..
inflating: dr-elephant-master/test/rest/RestAPITest.java
chmod: cannot access dr-elephant-master/bin/dr-elephant': No such file or directory sed: can't read dr-elephant-master/bin/dr-elephant: No such file or directory cp: cannot create regular file dr-elephant-master/bin/': Is a directory
cp: cannot create regular file `dr-elephant-master/bin/': Is a directory
adding: dr-elephant-master/ (stored 0%)
..
..
adding: dr-elephant-master/conf/evolutions/default/1.sql (deflated 72%)
adding: dr-elephant-master/conf/log4j.properties (deflated 45%)
adding: dr-elephant-master/conf/routes (deflated 64%)

Are you install play framework?

@babmails : You'll need to install play on box. The logic checks for activator or play command.
Please execute following commands on your local:
activator type
play

If these are not installed, follow Play installation doc. And then execute compile.sh that should resolve the issue.