Automatically convert paths dropped on WSL instances

Drag and drop does not work for WSL because paths are pasted as windows
paths having incorrect path separator and path root.  This PR adds code
to correct the path in TerminalControl before pasting to WSL terminals.
One problem with this approach is that it assumes the default WSL
automount root of "/mnt". It would be possible to add a setting like
"WslDragAndDropMountRoot"... but I decided it if someone wants to change
automount location it would be simple enough just to create the "/mnt"
symlink in WSL.
Validation
Couldn't find an obvious place to add a test.  Manually tested
cut-n-paste from following paths:

"c:"
"c:\subdir"
"c:\subdir\subdir"
"\wsl.localhost<distro>"
\wsl.localhost<distro>\subdir"

Closes #331

Thanks for working on this, @petrsnm! Sorry for the delay in my reviewing it.
I love the direction it's headed, and this is definitely a feature that people will be happy about.
I'm a little iffy on the design, however, for one reason: TerminalControl was originally architected to be a reusable component that another app developer could take a dependency on. Through that lens, giving it knowledge of "profiles" and "sources" and how to translate paths--when the app developer using it may not have even connected it to a local process and likely doesn't have profiles or sources--falls short of that need. TC already has a few layers of indirection to support this which are visible in how we handle pastes, among other places.
I accept that this design is not obvious if you're jumping into the code out of nowhere, and that we should for sure make sure our documentation mentions our guiding principles. It's also a bit of a pain for a contributor to have to wrap their head around. Because of that, I'm not going to block your pull request over it. If you're not comfortable making those changes, or if me asking is overstaying my "maintainer welcome", or if you feel like you've done enough: what is here is perfectly acceptable and something that we can build on later.
Let me know :smile:

@DHowett,  I saw that there was already pre-paste fixup code for quoting paths with spaces in TerminalControl._DragDropHandler, so I assumed this was the right place to do pre-paste fixups.  It wasn't obvious to me that TerminalControl' was meant to be reusable.  Incidentally, would quoting paths with spaces belong in ControlInteractivity` also?
It looks like it would not be that difficult to move the fix to ControlInteractivity but I'm currently buried in projects that I have to complete before Thanksgiving, and I don't think I'll have time to make a new pull request until December.
I'm currently running a dev copy of Terminal because this PR makes a huge productivity difference for me.   Would it be possible to merge this PR , and then maybe I can come back and move the fix into ControlInteractivity when someone creates an issue that they can't reuse TerminalControl because they don't have "profiles" or "sources"?

Notes moved from PR body:
https://user-images.githubusercontent.com/6278445/139003088-f9d3e50b-f42a-4a96-a9ed-76ac91337cb7.mp4

Thanks so much for doing this! I'm writing up the overall architecture plan for another comment, but I wanted to make sure I said thanks foremost :smile:

My Terminal has 2 Ubuntu profiles. (I installed the Ubuntu app from Windows Store).
This fix works well with the Ubuntu profile that is Hidden" by default (profile with a Tux icon and a command line of wsl.exe -d Ubuntu) but not with the default Ubuntu profile (profile with the Ubuntu logo icon and a command line of ubuntu.exe`).
I haven't researched the concrete difference between wsl.exe -d Ubuntu and ubuntu.exe, but it would be nice if it worked with both, especially with the default profile. Anyone got that to work or knows what could be at play?

I haven't researched the concrete difference between wsl.exe -d Ubuntu and ubuntu.exe, but it would be nice if it worked with both, especially with the default profile. Anyone got that to work or knows what could be at play?

Basically, the ubuntu.exe profile is one that Canonical ships as a "fragment extension", while the wsl.exe -d Ubuntu one is one that comes with the Terminal itself. Terminal only knows how to translate paths for our own WSL profiles, and can't be sure for the Canonical ones.


Bug: Attribute "..." cannot target parameter (allowed targets: property)

Laravel Version
11.17
PHP Version
8.2.21
Database Driver & Version
No response
Description
The PR: https://github.com/laravel/framework/pull/52167 accidentally introduced what I think is a potential breaking change related to attribute usage through container. This bug was originally reported here: https://github.com/tallstackui/tallstackui/issues/567.

One of my open-source package contains an attribute that we use only to mark properties to skip certain conditions (see below). After upgrading any of my projects using this package to Laravel 11.17 this error happens:

The source of the error matches the changes made in the PR mentioned above:

Here: https://github.com/laravel/framework/pull/52167/files#diff-cc160328d7d447677b8d359453f4416c820a9117c5efd500a3f0361d1d5bab1a
Steps To Reproduce
IDK exactly how to reproduce this, but I guess it just try to use an attribute in a public parameter, like this:
<?php

namespace App\Attributes;

use Attribute;

#[Attribute(Attribute::TARGET_PROPERTY)]
class SkipDebug
{
    //
}

use App\Attributes\SkipDebug;

public function __construct(
    #[SkipDebug]
    public ?string $size = null,
) {
    //
}

The fix in my case seems easy:
#[Attribute(Attribute::TARGET_PROPERTY | Attribute::TARGET_PARAMETER)]
class SkipDebug
{
    //
}

... But I just want to confirm that this will not generate a breaking change in other applications using this new version of Laravel 🤔

While technically this was, in fact, a breaking change, you have to specify TARGET_PROPERTY and TARGET_PARAMETER if you are going to use an attribute on a parameter using property promotion. That's why newInstance throws here.
I'll see tomorrow if we can mitigate this breaking change by looking for the attribute targets before creating the instance (or rescuing the throw), because marker attributes that are not properly configured will all throw now.

Okay, I was trying to make a getTarget check, but the more I thought about it, the more I realized that this is just trying to work around userland bugs.
When using an attribute in a constructor, you need that attribute to have the right target for it. Otherwise it means that the attribute wasn't supposed to be used in that place.
The fact that this new version of Laravel throws because of that is just revealing of an issue in your code, and the breaking of the package is a side-effect of that.
I think this is not an actual issue with Laravel, and should be taken care of in userland packages.

Okay, I was trying to make a getTarget check, but the more I thought about it, the more I realized that this is just trying to work around userland bugs.
When using an attribute in a constructor, you need that attribute to have the right target for it. Otherwise it means that the attribute wasn't supposed to be used in that place.
The fact that this new version of Laravel throws because of that is just revealing of an issue in your code, and the breaking of the package is a side-effect of that.
I think this is not an actual issue with Laravel, and should be taken care of in userland packages.

I guess I disagree because it worked perfectly fine in Laravel 11.16, but not in the new version. Anyway, I will update it to the expected format. I believe that thousands of other applications and packages will have the same problem.

we reverted the causing PR.


Carin-BB: Implement Operation $assemble-eob

Is your feature request related to a problem? Please describe.
Carin-BB: Implement Operation $assemble-eob
This operation is used to return ExplanationOfBenefit resources related to a patient along with all the reference resources.
http://build.fhir.org/ig/HL7/carin-bb/OperationDefinition-Assemble-ExplanationOfBenefit.html
Requires Carin-BB 0.2.0 - STU1
Describe the solution you'd like

Implement Operation $assemble-eob
Add Operation Tests
Drive off of the Search API

Describe alternatives you've considered
None
Additional context
None
If the link does not work, refer to https://github.com/HL7/carin-bb/blob/master/input/resources/OperationDefinition-CARIN-BB-Assemble-ExplanationOfBenefit.json

Looks like it is dropped?
https://confluence.hl7.org/display/FM/2020-06-30+FM+Interim+Meeting
https://confluence.hl7.org/display/FM/2020-06-30+FM+Interim+Meeting


Flatten arrays

['div',
    [
        ['p', 'foo'],
        ['p', 'bar']
    ]
]

should yield the same html as
['div',
    ['p', 'foo'],
    ['p', 'bar']
]

Use es6 destructuring as a workaround:
let content = [
  ['p', 'foo'],
  ['p', 'bar']
]

['div', ...content]

Fixed in 43897db42fe2e2fec42592c21728545e703af78d


Rule proposal: Style/ElseAlignment but for blocks

$ cat /tmp/a.rb
foo =
  if bar
      1
    else
      baz
    end
puts foo

# Please complain about this block the same way as the first
foo =
  begin
      1
    rescue
      baz
    end
puts foo

$ rubocop /tmp/a.rb -D
Inspecting 1 file
W

Offenses:

/tmp/a.rb:3:3: C: Style/IndentationWidth: Use 2 (not 4) spaces for indentation.
      1
  ^^^^
/tmp/a.rb:4:5: C: Style/ElseAlignment: Align else with if.
    else
    ^^^^
/tmp/a.rb:6:5: W: Lint/EndAlignment: end at 6, 4 is not aligned with if at 2, 2.
    end
    ^^^

1 file inspected, 3 offenses detected

Thanks for spotting this problem. Here's what's wrong IMO:
The end keyword is not aligned with begin and we totally miss that. Calling ruby -wc on the code gives us a warning for it so this problem should be reported by a Lint cop, and I think a new cop would be in order, e.g. Lint/BeginEndAlignment.
The other lines inside begin/end are checked today. Their indentations are checked relative to the end keyword.

There hasn't been much activity on this ticket and our Core Team is spread too thin on so many tasks, so I'll just close it for the sake of having a cleaner lists of tasks to focus on. We'd gladly review a PR, but it's unlikely that'd we're going to tackle this ourselves in the foreseeable future.


Access Debian Server within a utm container via Chrome http -> ERR_SOCKET_NOT_CONNECTED errors

I run a Debian Server within a utm container on a M2 Apple Silicon, which works great for my purposes.
But sometimes (too often) I get an ERR_SOCKET_NOT_CONNECTED error for just about a second before a page loads. This is especially annoying as even when it the page loads after this second, form data is lost. I made a screen recording:
https://user-images.githubusercontent.com/7524621/218809474-85950387-b3a0-483a-acda-a202fec12dc2.mov
To be honest, I have no idea what causes this temporary timeout and I would much appreciate any help!

Same issue. Very annoying when testing heavy application. Ubuntu 22.04.1 LTS (GNU/Linux 5.15.0-75-generic aarch64)


Create greetings.yml

Description
This PR creates a github action that comments on first-time contributor's pull request or issue.
Checklist
Essentials
Please feel free to remove inapplicable items for your PR.

[x] Changes are complete (i.e. I finished coding on this PR)
[x] To the best of my knowledge, examples are either not affected by this change, or have been fixed to be compatible with this change

Changes

[x] a github action that comments on first-time contributor's pull request or issue.

@mxnet-bot run ci [unix-cpu]


How do I change the OpenAI model?

Hello! I love this project and it is honestly really useful. But the cost is a lot when using GPT-4. Is there a way to manually change the model from GPT-4 to GPT-3.5 turbo? I thought I had seen an issue about this before but I do not see it anymore (I did not see it in the closed issues as well). There might be a way to do this already, and if there is I have not found how to do so yet and am sorry.
Regarding the project, it is yet another example of what great things can be created when great developers and AI work together. Thanks for creating it!

Thank you so much! There currently is not a way to change the model to 3.5; reason being that 3.5 really isn't very good at this, haha. If you really want to try it, it's super easy to switch; just a one line change on line 45 in llm_api.py. I made a quick branch for you (branch gpt-3.5-turbo) that makes the change for you, if you want to pull it down and try it. It's just a quick hack though, so the costs and a few other things won't be accurate.

Thank you so much! There currently is not a way to change the model to 3.5; reason being that 3.5 really isn't very good at this, haha. If you really want to try it, it's super easy to switch; just a one line change on line 45 in llm_api.py. I made a quick branch for you (branch gpt-3.5-turbo) that makes the change for you, if you want to pull it down and try it. It's just a quick hack though, so the costs and a few other things won't be accurate.

I am so sorry for this late reply! Thank you so much for the information. Yeah, I imagined it would have been a performance/capability issue when not using GPT-4. Thank you for the support, and keep it up, I am loving mentat :)


CreateStyled doesn't override default theme when using ThemeProvider

Duplicates

[X] I have searched the existing issues

Latest version

[X] I have tested the latest version

Steps to reproduce 🕹
Link to live example: https://codesandbox.io/p/sandbox/affectionate-http-tq581y?file=%2Fsrc%2Ftheme.js&selection=[{"endColumn"%3A34%2C"endLineNumber"%3A29%2C"startColumn"%3A22%2C"startLineNumber"%3A29}]
Steps:

In pages/index.js there's a StyledDiv using customStyled which should use the themeV2 as theme
It's using themeV1 instead
Comment out the ThemeProvider on line 21 of _app.js
Results in the themeV2 being applied in the customStyled function that's made using createStyled

Current behavior 😯
The theme from the ThemeProvider is overriding the theme in the createStyled utility.
Expected behavior 🤔
The defaultTheme option in createStyled should override the theme from the ThemeProvider
Context 🔦
We're looking into migrating into Styled components gradually and using a new Theme. This requires us to support two different themes. Based on the docs the expected behaviour should apply. But maybe we're missing something?
Your environment 🌎

    "@emotion/cache": "latest",
    "@emotion/react": "latest",
    "@emotion/server": "latest",
    "@emotion/styled": "latest",
    "@mui/icons-material": "latest",
    "@mui/material": "latest",
    "@next/font": "latest",
    "next": "latest",
    "prop-types": "latest",
    "react": "latest",
    "react-dom": "latest"

@michielmetcake This is expected. Your customStyled will use themeV2 as a default theme when there is no ThemeProvider that wraps it.


fix: update llm_streaming_stream_method.ts doc

Removes unneeded comments that can cause confusion

.stream() works without the need to add streaming: true to the LLM constructor
Removes reference to handleLLMNewToken since handleLLMNewToken does not exist within this example

https://twitter.com/cjtantay

Thank you!


[BUG] {Incorrect spatial location for mobilenet detections}

Check if issue already exists
Already was resolved once here: https://github.com/luxonis/depthai/issues/693, but issue still exists when reproducing with this example code: https://docs.luxonis.com/projects/api/en/latest/samples/SpatialDetection/spatial_mobilenet/.
I believe the bug fix implemented in issue 693 is also in this example script (line 65) so not sure why it still does not work for me.
Describe the bug
The bounding box of the depth image is not on top of the object detected (a person) most of the time. I'm trying to get the spatial location of a person and the (X,Y,Z) coordinates given are usually inconsistent because the bounding box only lands on top of the person when he is very close to the camera.
To Reproduce
Steps to reproduce the behavior:

Get example script from https://docs.luxonis.com/projects/api/en/latest/samples/SpatialDetection/spatial_mobilenet/
Run the script

Only change to the script I made is changing line 67 to
spatialDetectionNetwork.setBlobPath(blobconverter.from_zoo("mobilenet-ssd", shaves=6)) and commenting out lines 16-22 because they are not needed then.
I also tried running the development branch script for tiny yolo spatial_tiny_yolo.py and the issue is reproduced here too.
Expected behavior
I expect the bounding box to be on top of the person.
Additional info
I'm running this with an M1 Macbook, and I built the wheels natively with this script: https://docs.luxonis.com/projects/api/en/latest/install/#m1-mac-build-wheels-natively

Just tried reproducing this with a Macbook that does not use the M1 chip. Not an issue then. Seems like building the wheel for the M1 natively for this library is not a perfect solution for M1 users :/

@Cupcee
Make sure you have updated the submodules recursively (git submodule update --recursive --init)
CC: @szabi-luxonis on depth issues in OP

The submodule update fixed the error when building develop wheels, however the issue still seems to persist even with the develop branch wheels.


Convert templates to use x:bind instead of Binding?

Any reason not to create a PR that converts the templates to use x:bind instead of Binding? There are 15 instances of Binding in the HM template, for example. I've successfully converted all of them to x:bind except for the two in splash.xaml, but I'm not smart enough to figure those out.

Regarding splash.xaml... I don't know if those bindings are wired up properly as is. If you search the repo for mycanvas, this is what it finds..

Check out the splash.xaml files in the templates, specifically. There's no element named mycanvas.
That's potentially a different issue altogether, but it might mean that we can do away with those bindings at least.

One limitation of x:Bind is that it doesn't support binding attributes such as ElementName which the binding in Splash.xaml is using, hence why x:Bind doesn't work in this case.
See comparison between dynamic and classical binding here.

Don't forget though that x:Name creates an instance variable in the View which is in scope for x:Bind:
    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
        <Canvas x:Name="MyCanvas"
                HorizontalAlignment="Stretch"
                VerticalAlignment="Stretch">
            <Viewbox x:Name="MyImage"
                     Width="{x:Bind MyCanvas.ActualWidth, Mode=OneWay}"
                     Height="{x:Bind MyCanvas.ActualHeight, Mode=OneWay}">
                <Image Source="/Assets/SplashScreen.png"/>
            </Viewbox>
        </Canvas>
    </Grid>

How has nobody discovered this yet?

As for the errors in the Samples, those just need to be cleaned up over time.

Splash has been corrected.


Init Polish localization

An initial config for Polish localization.

Am I right that this is a work-in-progress?

@mfilocha would you like help with, for example, getting a new branch made for the Polish work?

@sftim - @jimangel and @rlenferink asked me to reopen my previous PR against the master branch: https://github.com/kubernetes/website/pull/18254#issuecomment-569769916

@sftim, we want to have this merged to master (our latest) branch as described by Jim as well. Why do you want to add pl to the disableLanguages? This adds all the initial configs and it will be a lot easier to translate and review when this will be deployed for every PR.
As I understand @mfilocha processed all feedback from the previous pull request and created this one after processing the feedback. The only thing left to do is for @nvtkaszpir to request org membership (because OWNERS files are checked automatically) (@remyleone and me offered to sponsor).

@remyleone

This pull request does not yet add the minimum required content for a new localization. For that reason, it's not ready for approval.
According to the contribution guide, this new localization needs:

A translation of the CNCF code of conduct into Polish
A home page with all heading and subheading URLs
A setup section - https://kubernetes.io/pl/docs/setup/ - with heading and subheading URLs
The Kubernetes basics tutorial
The Hello Minikube tutorial
All site strings in a new localized TOML file

That's quite some work. So I'm recommending starting a new branch and working on making a series of changes to the new branch, until it is ready to merge into master.

@kubernetes/sig-docs-l10n-admins can you advise on whether I've [mis]understood?

I'll follow whatever is the recommended way.
My biggest concern is that the PR containing all translated minimum will be of XXL size. And who will review this PR for correctness/style of translation?

@mfilocha you're talking about the merge from the Polish localization dev branch into master? Because that XXL merge will consist only of already-approved changes, it won't need code review, just signoff.
For an example, see commit 487505d03883a73a00fa436e195b66a67d9090aa from PR #16551. I'm assuming that this single commit is the result of squashing a branch that includes many PRs (I haven't actually done one of these; that's what it looks like to me).

I think targetting master is the way to go to start a localization and can be proven by the following successfully merged init localization: https://github.com/kubernetes/website/pull/12548 https://github.com/kubernetes/website/pull/16965/files

@mfilocha got already a lot of content translated in Polish in his own fork ( https://github.com/mfilocha/website/tree/dev-1.16-pl.1 ).
My take would be to merge this initial PR as quickly as possible to make @mfilocha and the rest of the Polish translation team as autonomous as possible. Having this PR merged will make them able to quickly merge a lot of already made content that will be beneficial to the Polish-speaking users.
Slowing it down with extra requirements (that were not enforced for instance in the past of the Vietnamese translation) is not justified in this case IMHO.
@nvtkaszpir let me know when you open your org membership request, I will give my sponsoring to it.

Also see https://github.com/kubernetes/website/issues/17388
I agree: the current guidelines aren't clear, but there's a bug open to fix that.

@remyleone can I follow up on https://github.com/kubernetes/website/pull/18419#issuecomment-570273563 ?
#12548 looks like an example of a valid new localization, whereas it looks to me as if PR #16965 was merged too early (it should have waited on the changes that came in #17655). The Vietnamese localization team are doing a great job though, they've landed lots of good PRs since that first one.
@mfilocha I do not think that https://deploy-preview-18419--kubernetes-io-master-staging.netlify.com/pl/ looks good to merge; to me, this pull request looks like a strong work-in-progress. You can /retitle [WIP] Init Polish localization if you agree that there's more to do.

I wonder if dropping config.toml from this PR could help to avoid the scenario with the empty page as pointed by @sftim?
If I'm right this may allow us to follow the way set out by @remyleone  in https://github.com/kubernetes/website/pull/18419#issuecomment-570276761.

@sftim I disagree and think that a team should be able to show results as fast as possible and I'm not in favor of enforcing an arbitrary number of PR before they can have the gratification to see their work live. Wikipedia is a clear demonstration of this principle. Plus as you trust/empower a team as early as possible they have all agency to show other potential contributors that they can to quickly have an impact. All actions that delay the gratification of seeing your work in production should be removed in IMHO

PR to create a label for Polish language https://github.com/kubernetes/test-infra/pull/15684 is on hold waiting for this PR to be merged.

To make https://deploy-preview-18419--kubernetes-io-master-staging.netlify.com/pl/ look right you need at least an _index.html page and to localize all the strings it uses.
The way I see it, the minimum guidelines do indeed cover what's necessary to get a sensible-looking preview rendering OK for a new localization.
There are 2 “essential” pages in the minimum requirements; one is Hello Minikube and the other is the Kubernetes basics tutorial. I can see why those are included, they are really useful for people new to Kubernetes. It's OK to launch a localization once those 2 pages are ready, even before the remaining hundreds of pages are ready to publish.

@sftim All required translated content is ready at my branch: https://github.com/kubernetes/website/compare/master...mfilocha:dev-1.17-pl.1-master - I'm going to split it into smaller PRs for review.
But this should happen on a separate branch in the upstream repository, as soon as the localization team is established, I guess.

So it sounds to me that if an admin creates a new branch dev-1.17-pl.1 in this repo, @mfilocha you can send in pull requests that target that branch and that you're all ready to do that?
(and then those commits can merge into master in a single PR that does preview OK)
Have I got that right?

@sftim Yes, I'm ready to send PR to that branch. I hope I understand it right that the PR to add localization team (https://github.com/kubernetes/org/pull/1508) can be approved regardless of the status of this PR, so that new team can approve PRs in the newly created branch.

To better follow the process on the localization page and be able to split up content to review in smaller PRs I have just created the dev-1.17-pl.1 branch. Content to this branch can be added and reviewed in separate pull requests. When the minimum required content is in place a pull request from dev-1.17-pl.1 to master can be created which only needs sign-off because the actual content has already been reviewed at that point in time.
For this pull request I changed the base branch from master to dev-1.17-pl.1 as well.

Above PRs contain required minimum translated content, split by smaller pieces.

/milestone 1.17-pl.1

/assign @zacharysarah

@nvtkaszpir can you add /lgtm to this PR if you're happy with it? You're listed as a future reviewer.

/lgtm

/lgtm

2 times /lgtm by pl-reviewers. I think this is good to be merged @sftim 🎉

/lgtm
/approve

Congratulations! 🎉

/language pl


createBrowserHistory_1.default is not a function

Hi. I'm using history 1.17.0 and react-router 1.0.3.
I'm trying to reproduce the basic examples using:
/// <reference path="../../../../typings/tsd.d.ts" />
import * as React from 'react';
import * as ReactDOM from 'react-dom';
import createBrowserHistory from 'history/lib/createBrowserHistory';
import { Router, Route, Link, browserHistory } from 'react-router';

let history = createBrowserHistory();

ReactDOM.render  ... etc

I'm bundling with browserify 11.2.0
In chrome I get the error createBrowserHistory_1.default is not a function.
Am I using a wrong version somewhere? I think I'm following the latest docs closely, but they're a bit unclear on what supersedes what.

Thanks for your question!
We want to make sure that the GitHub issue tracker remains the best place to track bug reports and feature requests that affect the development of React Router.
Questions like yours deserve a purpose-built Q&A forum. Could you post this question to Stack Overflow with the tag #react-router? https://stackoverflow.com/questions/ask?tags=react-router.
We also have an active and helpful React Router community on Reactiflux, which is a great place to get fast help with React Router and with the rest of the React ecosystem. You can join at https://discord.gg/0ZcbPKXt5bYaNQ46

Fixed. Turns out I needed var createBrowserHistory = require('history/lib/createBrowserHistory');. Import doesn't work, even with latest tsd updates.

Thanks for following up!


NO-JIRA: disable ensurePSANotPrivileged test on <4.17

What this PR does / why we need it: disables the ensurePSANotPrivileged test on 4.16 as we use privileged instead of restricted ref https://github.com/openshift/hypershift/pull/4193
Which issue(s) this PR fixes (optional, use fixes #<issue_number>(, fixes #<issue_number>, ...) format, where issue_number might be a GitHub issue, or a Jira story:
Fixes #
Checklist

[ ] Subject and description added to both, commit and PR.
[ ] Relevant issues have been referenced.
[ ] This change includes docs.
[ ] This change includes unit tests.

/approve
/lgtm


Mismatch of css grid-column names after build

Have you read the Contributing Guidelines on issues?

[X] I have read the Contributing Guidelines on issues.

Prerequisites

[X] I'm using the latest version of Docusaurus.
[X] I have tried the npm run clear or yarn clear command.
[X] I have tried rm -rf node_modules yarn.lock package-lock.json and re-installing packages.
[X] I have tried creating a repro with https://new.docusaurus.io.
[X] I have read the console error message carefully (if applicable).

Description
The build process seems to rewrite css grid-column names to shorter names. But the according names from grid-template-column are not transformed. Since this optimisation is not done during development mode, it can only be seen on production builds.
.grid {
  display: grid;
  grid-template-columns:
    [kw] 2.5em
    [day] 3em
    [description] 10em;
}

.grid > .kw {
  grid-column: kw;
}
.grid > .day {
  grid-column: day;
}
.grid > .description {
  grid-column: description;
}

is optimised/compiled to
.grid {
  display: grid;
  grid-template-columns:
    [kw] 2.5em
    [day] 3em
    [description] 10em;
}

.grid > .kw {
+  grid-column: kw;
-  grid-column: c;
}
.grid > .day {
+  grid-column: d;
-  grid-column: day;
}
.grid > .description {
+  grid-column: e;
-  grid-column: description;
}

(see that the grid-template-columns still have their original names)
Demo (for dev mode) on Stackblitz: https://stackblitz.com/edit/github-eurpwa?file=src/components/TableGrid/styles.module.css
And a deployed version on Netlify: https://astounding-unicorn-4f925c.netlify.app/
Reproducible demo
https://stackblitz.com/edit/github-eurpwa?file=src/components/TableGrid/styles.module.css
Steps to reproduce

Add a css grid with named grid-template-columns
Assign elements to the grid by setting the according grid-column names
check in dev mode that everything is okay
build the page and see the broken behavior

Expected behavior

Actual behavior

Your environment

Public source code: https://github.com/lebalz/docusaurus-css-grid-template-bug
Public site URL:  https://astounding-unicorn-4f925c.netlify.app/
Docusaurus version used: 2.4.0
Environment name and version (e.g. Chrome 89, Node.js 16.4): Node.js 16.4

Self-service

[ ] I'd be willing to fix this bug myself.

Thanks for the report. This is an upstream issue with cssnano: https://github.com/cssnano/cssnano/issues/529 It will be fixed when we bump it to 6.0.0 (released 5 days ago).
For the time being, you can disable minification as instructed here: https://docusaurus.io/docs/cli#options-1

Can I check out this issue,please assign it to me

Can I check out this issue,please assign it to me

As @Josh-Cena mentioned, this is not something that can be fixed within docusaurus. As a workaround without disabling the cssnano minification, you can add the grid column directly to your tag over inline style. In the example above this woud be
1
 .

Something odd is going on, I cannot reproduce the issue on my local machine, only on the playground, but if also fails in Docusaurus it would seem the issue is not limited to the playground. All I can think of is that the Browserslist configuration is influencing whether this transformation happens, although this transformation never makes sense.


Stacks of Air

Issue description:
Multiple ItemStacks of Air in Storage
What happens:
Do not know what causes it but have been generating them semi often in my base.
What you expected to happen:
None to be generated
Steps to reproduce:
Do not know at this time
Version (make sure you are on the latest version before reporting):

Minecraft: 1.11.2
Forge:  13.20.02299
Refined Storage: 1.4.6

Does this issue occur on a server?  Yes

Which storages are you using? If you are using external storage(s) too, tell me to what they're connected.

1x 4k Storage Block
2x 64k Storage Disk
No external storage

Also getting this, and a crash when trying to remove the "air" from the system.
The game crashed whilst updating screen events
Error: java.lang.IllegalArgumentException: ItemStack value must not be empty. 0xtile.air@0 minecraft:air

@LittleODie what storages are you using?

My setup has 2 64k drives. I have a basic setup with one importer connected to a "quantum quarry" from extrautils2. Since the quarry mines so quickly the Importer has 1 stack upgrade and 1 speed upgrade. I thought that the setup might be inputting things too fast causing the issues so I took the speed upgrades out and problem still persisted.
By the way I am getting air & the other issue reported of items not showing up in real-time in the grid. However the real-time issue is intermittent and ceased to be an issue after a few minutes.

also got some air. Disappeared after sleeping  through the night though...
Only using a diskdrive with 4 8k drives.

Same problem, I have some external storage drawers connected, a few importers(mekanism machines, Environmental Tech miner) and one disk drive full of 64k disks.

refinedstorage 1.4.16
Minecraft 1.11.2
Forge <IP_ADDRESS>0

Same problem as well, though I am using a few external storage buses hooked up to storage drawer controllers.

I am getting the same thing. Air :) think that maybe Actually Additions  farmer harvested air from pams harvest craft mustard seed.

For me I didn't have AA auto importing into my system.
On Sun, Jun 25, 2017 at 8:13 PM, thejams13<EMAIL_ADDRESS>wrote:

I am getting the same thing. Air :) think that maybe Actually Additions
farmer harvested air from pams harvest craft mustard seed.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/raoulvdberge/refinedstorage/issues/1233#issuecomment-310941706,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACnJtkJlarczhSDDG6UZ6oVDXYrEpNnsks5sHwW-gaJpZM4NhNJo
.

From which machines/tiles are you guys importing? Perhaps some mod is inserting empty stacks in the system.

Potentially related. I had the same air stacks issue and recently used the disk manipulator to move some small disks into larger.  Afterwards the disks were not empty even though the RS system could see nothing on them. I dumped the nbt on the disk:
16k Storage Disk (refinedstorage:storage_disk - 9387:2) has NBT data

{Items:[],Stored:14,Protocol:1}

TAG_Compound (10) ('')
{
    TAG_List (9) ('Items') (0 entries of TAG_End (0))
    {
    }
    TAG_Int (3) ('Stored'): 14
    TAG_Int (3) ('Protocol'): 1
}

I have removed mods from this world, so could the air be from removed mod items that were in the system? That might explain the air (forge replacing removed items) and then the 'empty' disks.

I have removed mods from this world, so could the air be from removed mod items that were in the system? That might explain the air (forge replacing removed items) and then the 'empty' disks.

You might be on to something. Did you guys remove any mods?

No, RS specifically checks if the stack isn't empty before inserting..

I'm not sure about others but the air stacks were not always empty in my case.

Air stacks are empty by definition (see ItemStack#isEmpty).
https://github.com/raoulvdberge/refinedstorage/blob/mc1.12/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/storage/StorageDiskItem.java#L56-L76
If the item doesn't exist anymore Item.getItemById(tag.getInteger(NBT_ITEM_TYPE)) will return null, giving the ItemStack a null item.
Then, we only put the stack in the storage list if !stack.isEmpty().

Same for me, easy to reproduce
Minecraft: 1.11.2
forge-<IP_ADDRESS>6
fresh install
Mods:
refinedstorage-1.4.18.jar
OpenComputers-MC1.11.2-<IP_ADDRESS>.jar
Place controller, any grid, any storage. Open grid, put OpenComputers cable into network

Might be an issue in the StackListItem that it doesn't clean the items...

Is this still on open issue? I can re-pro this on 1.10 and 1.11 like clockwork. I have a system with some importers, external storage, and lots of auto-crafting for several mod's and machines. If I start off a fairly large auto craft to build me 20 64k storage drives (from ore to completed) I'll end up with pages of "air" in the system. I can also kick-off a large job to process a bunch of plates and machines for galacticraft and end up with the same thing. For what it's worth, I think its something to do with machines (and crafters) that have multiple output slots and you pull from all of the slots, some of which don't have anything, maybe air?

My drives managed to get some air in them as well... Don't quite know how to reproduce, but it sure as hell is in there...

The air isn't in your drive, it's just a rendering thing.

Well, I'm surprised it only got fixed by a server restart then. I tried relogging first and it was still like in the GIF :P

Obviously, the grid data isn't stored on your player data (so relogging won't do anything) but on the controller block. Break and replace would've done it.

Still can reproduce with OpenComputers cable.
I've found what special with those cables. The have weird damage value: 11250603 and maxDamage: 0.
Maybe other bug reports are related?

I'm in 1.12 and I've had my drive fill up today with air stacks. I'm using multiple external storages, some on 64k drive blocks, some on quantum storage blocks. I've also got a couple of builder quarrys running, and about 20 thermal expansion machines running/processing

Connect external storage to colossal chest, give it -1 priority, then put storage disks into disk drive on network and start craft something that takes items from both inventories (this reproduces issue randomly)
Connect External storage to a storage with variable number of slots (Item Interface from Actually Additions or EnderRift), and try to interact with storage through grid. This guarantees reproducing of Air#0000 issue

I'd like to chime in with the same problem, and add that my fps with too much air in the system goes to 0-1 when searching inside a grid. My system  constantly adds more and more air to the system, the only way to get rid of it is take out and replace disks.

MC 1.12, Forge 21.1.2443, RS 1.5.14, SSP

Suggestion: A new button with "Delete all Air in Inventories" on the grid which would purge the air-lines.

@raoulvdberge :

Air stacks are empty by definition (see ItemStack#isEmpty).
https://github.com/raoulvdberge/refinedstorage/blob/mc1.12/src/main/java/com/raoulvdberge/refinedstorage/apiimpl/storage/StorageDiskItem.java#L56-L76
If the item doesn't exist anymore Item.getItemById(tag.getInteger(NBT_ITEM_TYPE)) will return null, giving the ItemStack a null item.
Then, we only put the stack in the storage list if !stack.isEmpty() (and if the stack is null it will be empty).

I think that you can use: net.minecraft.inventory.ItemStackHelper.saveAllItems and net.minecraft.inventory.ItemStackHelper.loadAllItems

Well, that was fun, pardon the sarcasm. So, while autocrafting solar panels from Solar Flux Reborn I noticed the Crafting Monitor said there was 183 blocks of air missing. O.o
http://i15.photobucket.com/albums/a395/llloyd4/2017-08-10_04.00.54_zps7ijeitl2.png
Then I shut down to the main menu and tried to reload my world to try and fix the air block problem and the game froze solid, no crash log or anything, I had to force Java to close to fix. I will include the last bits of the console hoping it'll help. O.o Note, this is NOT the entire console log, just the last page or two from world shut down to attempt world start. I'm not that cruel. >.<
https://pastebin.com/xW4HREUj

I rewrite this: https://github.com/raoulvdberge/refinedstorage/blob/mc1.11/src/main/java/com/raoulvdberge/refinedstorage/RSUtils.java#L135-L146 for test:
    public static void writeItemStack(ByteBuf buf, ItemStack stack) {
        try {
            NBTTagCompound tag = stack.writeToNBT(new NBTTagCompound());
            System.out.print("WRITE_TAG:");
            System.out.println(tag);
            new Exception("WRITE BY").printStackTrace();
            ByteBufUtils.writeTag(buf, tag);
        }catch (Exception e){
            e.printStackTrace();
        }
    }

    public static ItemStack readItemStack(ByteBuf buf) {
        try {
            NBTTagCompound tag = ByteBufUtils.readTag(buf);
            ItemStack read = new ItemStack(tag);
            System.out.print("READ_TAG:");
            System.out.println(tag);
            new Exception("READ BY").printStackTrace();
            return read;
        }catch (Exception e){
            e.printStackTrace();
        }
        return ItemStack.EMPTY;
    }

result:
WRITE_TAG:[15:26:14] [Server thread/INFO]: [STDOUT]: {id:"opencomputers:cable",Count:0b,Damage:0s}
[15:26:14] [Server thread/INFO]: [STDERR]: java.lang.Exception: WRITE BY
[15:26:14] [Server thread/INFO]: [STDERR]: 	at com.raoulvdberge.refinedstorage.RSUtils.writeItemStack(RSUtils.java:145)
[15:26:14] [Server thread/INFO]: [STDERR]: 	at com.raoulvdberge.refinedstorage.RSUtils.writeItemStack(RSUtils.java:173)
[15:26:14] [Server thread/INFO]: [STDERR]: 	at com.raoulvdberge.refinedstorage.network.MessageGridItemUpdate.lambda$new$0(MessageGridItemUpdate.java:39)
[15:26:14] [Server thread/INFO]: [STDERR]: 	at com.raoulvdberge.refinedstorage.network.MessageGridItemUpdate.toBytes(MessageGridItemUpdate.java:74)
...
READ_TAG:[15:26:14] [Netty Local Client IO #0/INFO]: [STDOUT]: {id:"opencomputers:cable",Count:0b,Damage:0s}
[15:26:14] [Netty Local Client IO #0/INFO]: [STDERR]: java.lang.Exception: READ BY
[15:26:14] [Netty Local Client IO #0/INFO]: [STDERR]: 	at com.raoulvdberge.refinedstorage.RSUtils.readItemStack(RSUtils.java:164)
[15:26:14] [Netty Local Client IO #0/INFO]: [STDERR]: 	at com.raoulvdberge.refinedstorage.gui.grid.stack.GridStackItem.<init>(GridStackItem.java:26)
[15:26:14] [Netty Local Client IO #0/INFO]: [STDERR]: 	at com.raoulvdberge.refinedstorage.network.MessageGridItemUpdate.fromBytes(MessageGridItemUpdate.java:66)

ItemStack count is 0 in some cases, so item stack is empty/air.

@marcin212 Interesting, thanks for this, I need to figure out how there can end up be 0 of an item in the storage cache.

@raoulvdberge
    /**
     * Write the stack fields to a NBT object. Return the new NBT object.
     */
    public NBTTagCompound writeToNBT(NBTTagCompound nbt)
    {
        ResourceLocation resourcelocation = (ResourceLocation)Item.REGISTRY.getNameForObject(this.item);
        nbt.setString("id", resourcelocation == null ? "minecraft:air" : resourcelocation.toString());
        nbt.setByte("Count", (byte)this.stackSize);
        nbt.setShort("Damage", (short)this.itemDamage);

        if (this.stackTagCompound != null)
        {
            nbt.setTag("tag", this.stackTagCompound);
        }

        if (this.capabilities != null)
        {
            NBTTagCompound cnbt = this.capabilities.serializeNBT();
            if (!cnbt.hasNoTags()) nbt.setTag("ForgeCaps", cnbt);
        }

        return nbt;
    }

Look at Minecraft writeToNBT. It casts itemDamage to short and stackSize to byte. That's why my test had zero for itemstack. If you change the buf.writeInt(stack.getItemDamage()); to buf.writeInt((short)stack.getItemDamage()); then everything works(but requires more testing).

Sure, that might fix part of the issue.
But there is still one part that doesn't make sense: when breaking + replacing the controller the issue is fixed. That means the issue is not damage-related in some cases, since the entire cache is refreshed when you break + replace.

@raoulvdberge breaking controller for OC cables doesn't work. https://img.bymarcin.com/2017-08-11_10-43-28_5KSWFmlNl67M2gSM.gif

@raoulvdberge I found issue. You are writting ItemDamage here but ItemStack constructor need metadata ItemStack(Item itemIn, int amount, int meta). Metadata not equal itemDamage. Example for OC cables:
System.out.println("DAMAGE:" + stack.getItemDamage() + "|" + stack.getItem().getMetadata(stack) + "|" + stack.getMetadata() );
//result [10:53:40] [Server thread/INFO]: [STDOUT]: DAMAGE:11250603|0|0

That is just for OC cables. There is a seperate bug that happens on more than just OC cables, and it's fixed by breaking and replacing the controller.

I've seen this happen in 1.12.1, was in the one drive and simply removing it and putting it back into the drive rack removed them...

Should also be fixed with 571c2b18afdb9680ea1a4eb0383ea3410c81e403


add metabase support for the project

This PR adds Metabase support for the project, to facilitate data exploration and as possible solution to https://github.com/elixir-europe-training/ELIXIR-TrP-Training-Metrics-Database-Tango/issues/5.
Note: this PR requires #28 to be merged first.

The current code doesn't set up Metabase directly connecting with the data in Tango - some UI setup is required before that. However, the volume storage is meant to be permanent, so unless the Docker volumes are permanently deleted, the setup does not need to be repeated.

As per the Metabase documentation, setup from configuration files is a paid feature and therefore cannot be enabled for this project - manual setup will be required.

This PR also resolves #31.


Unobservable behavior in TCK test

As a university project (under the supervision of @szarnyasg and @jmarton), I tried to implement the TCK tests on Neo4j. My first approach was to use Cypher queries to get the side-effects, but this turned out to be unfeasible, e.g. CREATE (n) DELETE n does not result in any observable behaviour. I then switched to using the QueryStatistics class, which works fine for nodes using the getNodesCreated() and getNodesDeleted() methods. However, it does not provide method for retrieving properties.
  Scenario: Non-existent values in a property map are removed with SET =
    Given any graph
    And having executed:
      """
      CREATE (:X {foo: 'A', bar: 'B'})
      """
    When executing query:
      """
      MATCH (n:X {foo: 'A'})
      SET n = {foo: 'B', baz: 'C'}
      RETURN n
      """
    Then the result should be:
      | n                         |
      | (:X {foo: 'B', baz: 'C'}) |
    And the side effects should be:
      | +properties | 2 |
      | -properties | 1 |

So, basically, our question is twofold:

what is the recommended approach for testing such behaviour?
what is the precise semantics of the +properties and -properties side effects?

For question 1, I believe we should only test side effect that can be observed with running standard openCypher queries. For example, I think if a user runs the query CREATE (n) DELETE n and the database does nothing, that classifies as a correct behaviour. Even if it does create and delete a node, the user has no way of telling whether this happened or not (except for extracting internal ids and making assumptions based on their values, but that is bad practice in general).
For question 2, I do not have an answer that is in sync with the test case:

If properties means property keys, then it should be +1, -1, as the bar key is dropped, while the baz key is added (and the foo key is kept).
If properties means property key-value pairs, then it should be +2, -2, as the foo: 'A' and bar: 'B' are dropped, while foo: 'B' and baz: 'C' are added.
If properties means property values, then it should be +1, -1, as the 'A' is dropped, while 'C' is added (and 'B' is kept).

For question 2:
The TCK was designed around Neo4j's capabilities with respect to reporting side effects. The QueryStatistics interface is indeed the model used for that. I modelled the properties symmetrically to the other elements in the TCK, but Neo4j can unfortunately not distinguish between removing and setting properties, because removing properties is implemented as setting them to null.
What we are doing is just adding the two property side effect values and comparing to the value returned from QueryStatistics#getPropertiesSet. You'll find the code for this in QueryStatisticsMatcher.
So the interpretation in the TCK currently is a variant on your third bullet-point:

properties means property values, without checking the value before writing (overwrite semantics)

Question 1 is more difficult. I'm not sure whether doing nothing is correct for MATCH (n) DELETE n -- possibly. For MATCH (n) DELETE n RETURN n it certainly is not. There's no specification currently on reporting of side effects, other than the GraphStatistics interface already mentioned. All TCK tests are modeled to fit that interface -- of course, this is certainly subject to change (or at least to specification).

Thanks for your response.
For question 1, we thought about this test:
Scenario: Create and delete in same query
    Given an empty graph
    And having executed:
      """
      CREATE ()
      """
    When executing query:
      """
      MATCH ()
      CREATE (n)
      DELETE n
      """
    Then the result should be empty
    And the side effects should be:
      | +nodes | 1 |
      | -nodes | 1 |

The main problem is that I checked its internal id in Neo4j too, but it didn't change. Unfortunately from the outside it seems like nothing changed at all, although the Neo4j WebUI says that we created 1 node and deleted 1 node.
My current solution to check side effects:

After the "And having executed" part I store the nodes in a List. (in our example: node<0>)
Affer the "When executing query" part I store the nodes in a List. (in our example: node<0>)
I check the positive and the negative differences between the two lists.

As you can see my lists consist the "same" elements according its internal ids. What is the recommended approach for testing such behaviour?

@zsambek I think that Neo4j will reserve an internal id. I just tested it quickly and it seems to check out. Try MATCH (n) RETURN max(id(n)) followed by CREATE (n) DELETE n CREATE () then find ids again, and you'll see it will have 'jumped' one id.
Now, I'm not saying that the current approach to reporting side effects is a done deal. I think this is an interesting point that does warrant a wider discussion on what the best way of doing this is. Counting every creation/deletion of all the things that can be created/deleted in a Cypher statement is the naive approach that we currently are using, but perhaps changing the model to count the impact on the graph, as a kind of delta-report, would be more fitting?

@Mats-SX great idea. However, it does not work perfectly: for CREATE (n) DELETE n (without an additional CREATE ()), the returned value will not be increased, as we have just deleted the node with the maximum id.
As a hackish workaround, the following would work - run this query each time and subtract one from the difference.
CREATE (n) DELETE n RETURN id(n)

This allows us to observe the effect of CREATE (n) DELETE n.
I believe changing the model to only check "observable deltas" would be easier to comprehend and more straightforward to implement. I think this would be a good topic for discussion in OCIM2's "openCypher Artifacts" session.

I'm working on clearly defining this in an upcoming PR. One question that is not obvious to me is whether to link modification of properties to the containing entity. Consider this scenario:
Scenario: moving property between entity
  Given an empty graph
  And having executed:
    """
    CREATE ({prop: 1})
    """"
  When executing query:
    """
    MATCH (old)
    CREATE (new)
    SET new.prop = old.prop
    DELETE old
    """
  Then the result should be empty
  And the side effects should be:
    | +nodes | 1 |
    | -nodes | 1 |

Should the side effects regarding properties here list nothing, or plus one and minus one, since the property was copied from one entity to another?

To further illustrate my argument, consider this scenario, where I've noted the side effects in alignment with my thinking.
Scenario: Copying property between entities
  Given an empty graph
  And having executed:
    """
    CREATE (:HasProp {prop: 1}), (:NoProp)
    """
  When executing query:
    """
    MATCH (h:HasProp)
    MATCH (n:NoProp)
    SET n.prop = h.prop
    REMOVE h.prop
    """
  Then the result should be empty
  And the side effects should be:
    | +properties | 1 |
    | -properties | 1 |

#236 closes this issue, doesn't it?

@szarnyasg Yes, that was the idea. Thanks!


Error run tf-mlir-translate

when i run bazel-bin/tensorflow/compiler/mlir/tf-mlir-translate  --graphdef-to-mlir hand_detect_global.pb -o /tmp/mlir_hand_detect.mlir
it says
2021-05-26 17:00:11.917161: E tensorflow/core/framework/op_kernel.cc:1693] OpKernel ('op: "Fact" device_type: "CPU" label: "sergey"') for unknown op: Fact
2021-05-26 17:00:11.917564: E tensorflow/core/framework/op_kernel.cc:1693] OpKernel ('op: "Fact" device_type: "CPU" label: "Sergey"') for unknown op: Fact
2021-05-26 17:00:11.917573: E tensorflow/core/framework/op_kernel.cc:1693] OpKernel ('op: "Fact" device_type: "GPU" host_memory_arg: "fact"') for unknown op: Fact
but , i print the op in the pb, can't find Fact op, so i dont know why give me this error

@mittkongg
We see that the issue template has not been filled, could you please do so as it helps us analyse the issue [tf version, steps followed before you ran into this error or stand alone code to reproduce the issue faced]Thanks


coqtail not loading

I'm receiving the following error message when I run :CoqStart:
Error detected while processing function coqtail#start:
line   45:
E121: Undefined variable: b:coqtail_version
E116: Invalid arguments for function s:call('start', 'sync', { 'version': b:coqtail_version, 'coq_path': expand(coqtail#util#getvar([b:, g:], 'coqtail_coq_path', '')), 'coq_prog': coqtail#util#getvar([b:, g:], 'coqtail_coq_prog', ''), 'args': map(copy(l:proj_args + a:000), 'expand(v:val)')})
E15: Invalid expression: s:call('start', 'sync', { 'version': b:coqtail_version, 'coq_path': expand(coqtail#util#getvar([b:, g:], 'coqtail_coq_path', '')), 'coq_prog': coqtail#util#getvar([b:, g:], 'coqtail_coq_prog', ''), 'args': map(copy(l:proj_args + a:000), 'expand(v:val)')})

Looking at it briefly, it seems to be that coqtail#panels#init or coqtail#panels#open is maybe switching to a different buffer, causing the buffer-local b:coqtail_version to go out of scope.
I'm using the vim-gnome package that's included with ubuntu; here's the output of :version
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Mar 18 2020 18:29:15)
Included patches: 1-1453
Modified by<EMAIL_ADDRESS>Compiled by<EMAIL_ADDRESS>Huge version with GTK3 GUI.  Features included (+) or not (-):
+acl               +cryptv            -footer            +mksession         +path_extra        +syntax            +viminfo
+arabic            +cscope            +fork()            +modify_fname      +perl              +tag_binary        +vreplace
+autocmd           +cursorbind        +gettext           +mouse             +persistent_undo   +tag_old_static    +wildignore
-autoservername    +cursorshape       -hangul_input      +mouseshape        +postscript        -tag_any_white     +wildmenu
+balloon_eval      +dialog_con_gui    +iconv             +mouse_dec         +printer           +tcl               +windows
+balloon_eval_term +diff              +insert_expand     +mouse_gpm         +profile           +termguicolors     +writebackup
+browse            +digraphs          +job               -mouse_jsbterm     -python            +terminal          +X11
++builtin_terms    +dnd               +jumplist          +mouse_netterm     +python3           +terminfo          -xfontset
+byte_offset       -ebcdic            +keymap            +mouse_sgr         +quickfix          +termresponse      +xim
+channel           +emacs_tags        +lambda            -mouse_sysmouse    +reltime           +textobjects       +xpm
+cindent           +eval              +langmap           +mouse_urxvt       +rightleft         +timers            +xsmp_interact
+clientserver      +ex_extra          +libcall           +mouse_xterm       -ruby              +title             +xterm_clipboard
+clipboard         +extra_search      +linebreak         +multi_byte        +scrollbind        +toolbar           -xterm_save
+cmdline_compl     +farsi             +lispindent        +multi_lang        +signs             +user_commands
+cmdline_hist      +file_in_path      +listcmds          -mzscheme          +smartindent       +vertsplit
+cmdline_info      +find_in_path      +localmap          +netbeans_intg     +startuptime       +virtualedit
+comments          +float             +lua               +num64             +statusline        +visual
+conceal           +folding           +menu              +packages          -sun_workshop      +visualextra
   system vimrc file: "$VIM/vimrc"
     user vimrc file: "$HOME/.vimrc"
 2nd user vimrc file: "~/.vim/vimrc"
      user exrc file: "$HOME/.exrc"
  system gvimrc file: "$VIM/gvimrc"
    user gvimrc file: "$HOME/.gvimrc"
2nd user gvimrc file: "~/.vim/gvimrc"
       defaults file: "$VIMRUNTIME/defaults.vim"
    system menu file: "$VIMRUNTIME/menu.vim"
  fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -DFEAT_GUI_GTK  -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -Wdate-time  -g -O2 -fdebug-prefix-map=/build/vim-dfCUyu/vim-8.0.1453=. -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1

init and open do switch buffers but they're supposed to switch back. Does this happen consistently, or just with certain files, or randomly?
As a temporary workaround rolling back to ab7cc9b7ae5988ab5fbc1fd5526f4fbec6cadb2d should avoid this problem.

It happens consistently when I open a new gvim instance and type
:set filetype=coq
:CoqStart

From: Wolf Honore<EMAIL_ADDRESS>Sent: Thursday, August 27, 2020 9:38 AM
To: whonore/Coqtail<EMAIL_ADDRESS>Cc: Michael David George<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [whonore/Coqtail] coqtail not loading (#136)
init and open do switch buffers but they're supposed to switch back. Does this happen consistently, or just with certain files, or randomly?
As a temporary workaround rolling back to ab7cc9bhttps://github.com/whonore/Coqtail/commit/ab7cc9b7ae5988ab5fbc1fd5526f4fbec6cadb2d should avoid this problem.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/whonore/Coqtail/issues/136#issuecomment-681954537, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAJ2CMKCFKRVVZL5POCBEW3SCZOVZANCNFSM4QM7IIWA.

Oh, interesting, I've never tried starting from an empty buffer instead of a .v file. I can reproduce this now so I'll look into how to fix it. Thanks for reporting.

#137 contains a potential fix. Could you try it out and see if it works for you?


Add NIFI to TDP

Add the installation of nifi to TDP

@GuillaumeHold do you have an update as to why the associated PR was closed and if we should close this issue?


Make sense of .util.shape.*

Some of the classes are in, but I'm not sure what the DoubleLists are for. Can someone with a better working knowledge of the area chime in?

I can help with these.  These look to be new so prior exposure to MCP names shouldn't exclude me.
I built my own routines for Octree & voxel-based procedural collision box generation.  They aren't doing the same thing here but similar domain.
Will take me a while to get to it.  Want to grok the new render changes first.

Also, to answer your question directly, DoubleList is clever hack to index the division coordinates of a volume that is equally subdivided into an arbitrary number of slices.  Mojang really likes collections.


Windows 7

Does this work with Win 7?
Thanks

I can't test W7 is deprecated since a while. In any case ppInk is x64. be sure you are using the good version: have a try and share your experience 😉

@harryray33
Can you provide update ?

I close it without feedbacks feel free to complete your statement


Understand Azure Data Explorer Dashboard Usage (Number of Users, etc.)

Is there a way to find out what the usage of Azure Data Explorer Dashboards by users by Subscription?
Would like to provide a usage report to influence the ongoing use of this feature across the broader team.
Some metrics we would be after:

number of dashboards created
number of users w/ dashboards (by time period [day, month])
daily users of dashboards (by time period)

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

ID: a4be1640-3699-8fdf-07a2-c9b922499c90
Version Independent ID: 55027537-6af4-541d-da8d-e2cdc2b5fa92
Content: Visualize data with the Azure Data Explorer dashboard
Content Source: data-explorer/azure-data-explorer-dashboards.md
Service: data-explorer
GitHub Login: @orspod
Microsoft Alias: orspodek

+1

Thanks for the question! We are taking a look into this and will get back to you soon.

@Gabilehner - can you assist with this question?

Hi, unfortunately we don't have a trivial way to offer this today.
As workaround, assuming you have admin permissions on the DB where the data of the dashboards is stored, you can use .show queries command to extract all the data about the queries that were sent to the relevant DB. Assuming you have a way to identify the queries sent from the dashboard (in the query text column) you'll be able to find data on users, apps, etc.
The issue with building a dashboard that is built on a control command (like .show queries) is that you cannot use parameters with it.
Please vote for it on our user-voice.
Thanks,
Gabi

@Gabilehner - Thanks for sharing the details along with workaround and limitation.
@gibron - As recommended, kindly post an idea in feedback forum which is closely monitored by our product team to implement in future releases. I will proceed with closing the issue now, please feel free to post for any queries.


[FEAT] Support multiple tsconfigs

closes #21
Adds support for multiple tsconfigs.
This enables aliasing via compilerOptions.paths for monorepos with multiple tsconfigs
Should also improve performance because the mappers are cached.
Includes a new test and updated docs.
I have also tested the new changes in my own typescript monorepo and everything works as expected.

closes #18 too the options obj now defaults to {}
Reference:
https://github.com/alexgorbatchev/eslint-import-resolver-typescript/blob/ad337809a5c287f795e328cbc7a1eeefdfbe0ad9/index.js#L20

@bradzacher Can you take a look at this PR? It implements the same functionality as typescript-eslint/typescript-eslint#806
Thanks! :)

Would it be possible to review this @alexgorbatchev or @bradzacher

Hi @Teoxoy , it seems @alexgorbatchev has 'disappeared' for a few months, or he just forgot this project, so I'm going to fork this repository and republish it as eslint-import-resolver-ts to npm, I'm here to ask that are you will to make a separate PR to the new repository? Or can I cherry pick your commit into my repository?

@JounQin I think you can just merge it from upstream.

@Teoxoy Your PR has some conflicts with #20 what makes merging from upstream a bit painful.

I will start a PR on your fork then. Let me know when it's ready.

It's already for a while.


Doesnt appear the IP to transfer

Do you already have an issue opened with F5 support?
Github Issues are consistently monitored by F5 staff, but should be considered as best effort only and you should not expect to receive the same level of response as provided by F5 Support. Please open an case with F5 if this is a critical issue.
Description
We have an error with the cfe where computers A (active) & B (Passive) show this configuration when running this command
curl -su admin: -X POST -d '{“action”: “dry-run”}' http://localhost:8100/mgmt/shared/cloud-failover/trigger | jq .
{
"addresses": {
"publicAddresses": {},
"operations": {
"toStandby": [
{
"networkInterface": "eni-04f8fa2ec5458c7b6",
"addresses": []
}
],
"toActive": [
{
"networkInterface": "eni-0d6d2956ca05fbeb8",
"addresses": []
}
]
},
"loadBalancerAddresses": {}
},
"routes": {
"operations": []
}
}
According to external tests, when running the same command in the same environment of the cloud provider and virtual machines with the same version of the machines, we should get the following answers.
{
"addresses": {
"publicAddresses": {
"<IP_ADDRESS>": {
"current": {
"PrivateIpAddress": "<IP_ADDRESS>",
"AssociationId": "eipassoc-05426f3a4048f8f73"
},
"target": {
"PrivateIpAddress": "<IP_ADDRESS>",
"NetworkInterfaceId": "eni-02e08ff72bb7a37f1"
},
"AllocationId": "eipalloc-014c47f1f0865b2f9"
}
},
"operations": {
"toStandby": [],
"toActive": []
},
"loadBalancerAddresses": {}
},
"routes": {
"operations": []
}
}
However, in the first case, the IP that will be transferred to the secondary Big IP does not appear.
Environment information
For bugs, enter the following information:

Cloud Failover Extension Version: 2.1.3
BIG-IP version: <IP_ADDRESS>
Cloud provider: AWS

Severity Level
For bugs, enter the bug severity level. Do not set any labels.
Severity: <Fill in level: 1 through 5>  3
Severity level definitions:

Severity 1 (Critical) : Defect is causing systems to be offline and/or nonfunctional. immediate attention is required.
Severity 2 (High) : Defect is causing major obstruction of system operations.
Severity 3 (Medium) : Defect is causing intermittent errors in system operations.
Severity 4 (Low) : Defect is causing infrequent interuptions in system operations.
Severity 5 (Trival) : Defect is not causing any interuptions to system operations, but none-the-less is a bug.

@Arcedes Please open a case with F5 if this is still an issue.


What's the difference between 0 and 1?

What's the difference between wgail_info_0 and wgail_info_1?

wgail_info_0 contains the setup and hyperparameters for pass, while wgail_info_1 is for turn.

lol software engineering at its best huh? ^^


bug: Blank parts of Cody Response in Chat

Version
1.12.0
Describe the bug
Customer 8857 is reporting an issue where the response from Cody has noticeable blank portions in the response.
Slack thread for reference

Expected behavior
The response from Cody should be able to render HTML elements as code blocks rather than leaving it blank.
Additional context
No response

@abeatrix @philipp-spiess I took a quick look at this, I think this is quite tricky to implement. Do we massage the output from the LLM at all to insert
 blocks into the markdown? If so it will be hard to tell the difference between the LLM output and ours. If not, what is the correct behaviour for us to do? Show
 in code blocks, or to escape them? Right now
 tags are explicitly allowed in our dompurify config.
In the meantime I created a test on the actual markdown renderer we use at https://github.com/sourcegraph/cody/pull/3908. The test case we could use is something like
it('escapes div tags', () => {
    // https://github.com/sourcegraph/cody/issues/3844
    const input = '- Browsers will interpret a self-closed
 the same as

.'
    expect(renderCodyMarkdown(input)).toBe('TODO')
})

FYI the output from the LLM I got from my chatlog looks like the following gist. Notice how the LLM is just straight up saying
. I also include it as a markdown file so you can see that github renders it in the same way we do. https://gist.github.com/keegancsmith/254d07bbde5b250ec8979b5033c9a0b5

@keegancsmith This is definitely a game of whack-a-mole (in the beginning we tried a lot of ways to defend against this but everything has downsides).
I’m not sure why we would not want to escape
 BUT I do think we sometimes inject error messages into the chat widget using the same fields. That would require a cleanup if that's still the case so we have either a markdown (which we escape) or a message from us (which we know is safe).
The other issue we ran into previously (which might be related here?) is that if tags are inside code blocks, we actually might not want to escape them (since otherwise it will render as >div<). I think this code is the spiritual success of trying to do this.
The other catch is that ideally all of this would work while streaming which creates another layer of complexity.
I wonder if there are open-source solutions to this whole "stream markdown from LLM" by now 🤔

@keegancsmith thanks for the gist example!

If so it will be hard to tell the difference between the LLM output and ours. If not, what is the correct behaviour for us to do?

Not sure if this is what you're referring to but we render human messages and bot messages differently, where right now we don't render markdown for human messages.

Show  in code blocks, or to escape them? Right now  tags are explicitly allowed in our dompurify config.

Can we disallow
 or other tags inside  tags, except ?

If so it will be hard to tell the difference between the LLM output and ours. If not, what is the correct behaviour for us to do?

Not sure if this is what you're referring to but we render human messages and bot messages differently, where right now we don't render markdown for human messages.

The ours I am refering to is if we mutate the LLM output at all. An example from the past was I remember hacking in something for guardrails attribution. Not sure if we have anything else like that.

Show  in code blocks, or to escape them? Right now <\div> tags are explicitly allowed in our dompurify config.

Is it possible to disallow
 or other tags inside  tags (except ) via the config? or enclose all <Tags> with backticks inside codeblocks ? 🤔 (if possible)

I did explore that briefly. It didn't look like dompurify had a nice way to do that. It has some sort of custom hooks for tags, which is maybe the way we can do it?
Basically is there any good reason for us to have a
 inside of markdown that needs to be preserved? If not I'm sure we can think up something which quotes it.

Basically is there any good reason for us to have a  inside of markdown that needs to be preserved?

Not that i can think of! The only thing inside the LLM response view that contains a
 is the "action menu bar" we inject during stream, but through HTML and not markdown, so I don't think there are
 within markdown we need to preserve.

An example from the past was I remember hacking in something for guardrails attribution. Not sure if we have anything else like that.

Ah gotchat! I guess that's the "action menu bar" i'm referring to above then. I think that's where the guardrails attribution is now reside as well


feat(bigquery): add data_policy resource

Description of your changes
Add resources for the following terraform resources:

google_bigquery_datapolicy_data_policy
google_bigquery_datapolicy_data_policy_iam_binding

Fixes #
I have:

[x] Read and followed Crossplane's [contribution process].
[x] Run make reviewable to ensure this PR is ready for review.
[x] Added backport release-x.y labels to auto-backport this PR if necessary.

How has this code been tested

--- PASS: kuttl (47.06s)
    --- PASS: kuttl/harness (0.00s)
        --- PASS: kuttl/harness/case (45.68s)
PASS
14:36:28 [ OK ] running automated tests

/test-examples="examples/bigquery/v1beta1/datapolicydatapolicy.yaml"

/test-examples="examples/bigquery/v1beta1/datapolicydatapolicyiambinding.yaml"

/test-examples="examples/bigquery/v1beta1/datapolicydatapolicy.yaml"

/test-examples="examples/bigquery/v1beta1/datapolicydatapolicyiambinding.yaml"

/test-examples="examples/bigquery/v1beta1/datapolicydatapolicy.yaml"

@turkenf, could you help with reviewing this pls?


Globally register validators

I use vue-form in several projects, and it's great. So first: thanks for the good work !
Often, I need to use custom validators and I think it could be very nice to be able to register them globally.
So I started to work on a PR. My idea is to use it like this:
// Globally register some validators
Vue.registerFormValidator('slug', function(val) {
    return /^[a-z0-9-]*$/.test(val);
});
Vue.registerFormValidator('between', function(val, range) {
    range = range.split(',');
    return val >= +range[0] && val <= +range[1];
});

// Create your Vue app as usual
var vm = new Vue({ ... });

Then, use them in templates
<input type="text" v-form-ctrl slug />
<input type="number" v-form-ctrl between="3,15" />

What do you think ?

Closing Vue 1 compatible version issues. Global custom validators available in version 2


BUSY FOR COMING MONTHS

Apologies for delay in sorting out the tickets (most of them are straightforward!), and most important of all Ansible 2.8 support, I'm on another project for the coming months. Please continue filing tickets as normal and try to include as much detail as possible! Thanks

Hello, I am just newbie at devops and at ansible.
Wanted to stop by to thank you for making mitogen.
Besides performance improvement (which at this point of learning, are not that important to me),
mitogen helped me to understand and reason about Ansible's execution flow at a more intuitive leve.
For example, in test env I have many hosts pointing to the same machine.
One of roles is to update package /distro on all the machines.
Without Mitogen, I was getting constant 'dpkg lock errors' because ansible
was reaching out to logically different, but physically same hosts concurrently.
With mitogen, it seems to 'normalize' and reduce hosts and tasks to properly
constrained minimum and execute hosts tasks related for one host in proper sequence.
may be this is a small example of mitogen capabilities, but to me it was
it was refreshing.
thx again.

Thanks for clarifying the situation.
Just to be extra-super-duper clear: will you still be able to dedicate some time to mitogen while you're busy with the other project(s)? Especially about releasing new versions to maintain compatibility with the latest ansible.
If not, will you delegate?

@xcambar basic support for 2.8 is probably easy, and almost certainly PRable for a new contributor -- just knock down the exceptions using any means necessary, even if it means making a temporary mess. A hacky master branch is better than a nonexistent release ;) Real support for 2.8 requires non-trivial knowledge of the Ansible tree and Mitogen tree, because we need to add a whole new mechanism to let become plugins operate remotely. I know how this needs to work, but I want to land async connect first -- itself a major piece of functionality. Quite happy to see contributions for the former approach ,but the latter approach requires a more context and comms than I have resources to support
As for 'will you delegate', the better question to ask is probably 'will you at least review the diffs before clicking merge' ;)  The trouble is finding willing and capable resource!


Added SelfFixer

The fixer converts class names to self (if possible).
class Foo {
    public function baz($a = Foo::BAR) // self::BAR
    {
        if ($b instanceof Foo) { // $b instanceof self
            new Foo(); // new self();
            Foo::baz(); // self::baz();
        }
    }
}

We need a test for cases when we're using the php 5.5 class name constant on itself too. :)

It will pass because I don't look behind ::. But of course, test case for that is good, I will add it.

:)

please add a test with an interface, and a test (running only on 5.4+) with a trait

@GrahamCampbell done
@stof done

symfony pr -> https://github.com/symfony/symfony/pull/14123

Merged, please move to SYMFONY level.
Any other thoughts ?

done

:+1:

Thank you @gharlan.


passing a version field to action update overwrites the version field in the db

if i use the API to update an action, and the action object i pass in has a version field, the backend will accept whatever i give, and record it in the database.
this doesn't seem like the desired outcome?

The version is not user programmable.


Structured Generation Support for vLLM Deployment

Summary:
This PR introduces structured generation capabilities in the vLLM deployment, allowing LLM to produce outputs that conform to a specified JSON schema or regular expression pattern. Currently, this feature is exclusive to the vLLM deployment.
Key Changes:

Structured Generation with SamplingParams: Added support for generating structured data by passing either a JSON schema or regular expression pattern to the SamplingParams object.

Documentation and Tutorials: Documented the feature including a detailed tutorial in the Structured Generation notebook.

Testing for Structured Generation: Implemented tests to validate the functionality of structured generation, including tests for both JSON schema and regular expression patterns.

Closes: https://github.com/mobiusml/aana_sdk/issues/172

I ran tests with GPU as well to test all the deployments and there is an issue with Idefics2 model.
The issue is related to the latest release of transformers and not our code. I reported the issue: https://github.com/huggingface/transformers/issues/33752
My suggestion is to merge it. If we use Idefics2 in the project we should set project dependency to transformers==4.44.2 until the issue is fixed in the new release.


create AWS NLB for each cluster

We want to use Network Load Balancers on AWS so that we can trust an address will always resolve to a target VM, even if the Public IP address of that EC2 instance changes.

[x] Determine the correct Terraform resource definitions
[ ] Make a JSON representation of the resources if we started with HCL
[ ] Update overwrite.ts to have it generate these resources

This config works for hcl and creates a nlb
https://github.com/polyseam/terraform-configuration/tree/main/HCL-configuration


W3C logo SVG.

It would be nice if we could simply inline the W3C logo SVG, or include an absolute URL at https://github.com/tabatkins/bikeshed/blob/master/bikeshed/include/stylesheet.include#L120, rather than asking everyone to grab a file and put it in a subdirectory. That would be annoying busywork. :)

Thanks for pointing it out - that doesn't actually belong in the generic Bikeshed stylesheet at all!  I've removed it, and put in a note to help me remember to kill it again whenever I copypaste from the TR stylesheet.


Update startercode branch to v2.0.0

Bump #79 to v2.0.0

I'm seeing the following error on the current nightly:
error[E0282]: type annotations needed
    --> /home/zbraniecki/.cargo/registry/src/github.com-1ecc6299db9ec823/sp-arithmetic-2.0.0/src/fixed_point.rs:541:9
     |
541  |                   let accuracy = P::ACCURACY.saturated_into();
     |                       ^^^^^^^^ consider giving `accuracy` a type
...
1595 | / implement_fixed!(
1596 | |     FixedI64,
1597 | |     test_fixed_i64,
1598 | |     i64,
...    |
1601 | |     "_Fixed Point 64 bits signed, range = [-9223372036.854775808,<PHONE_NUMBER>.854775807]_",
1602 | | );
     | |__- in this macro invocation
     |
     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)

I am merging this for now, because it is better than the previous version.
But @zbraniecki, I think another upgrade to v2.0.1 will fix the issue you have.


Properly trigger state updates whenever keys is updated

It's only the polite thing to do.
I use this practice all the time, it's a perfectly safe and correct method.
PR Checklist
Please check if your PR fulfills the following requirements:

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?
[x] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

What is the current behavior?
Downstream users of useHotkeyState only get the updated keys the next time they render.
Issue Number: N/A
What is the new behavior?
Downstream users of useHotkeyState get re-rendered immediately every time keys changes.
Does this PR introduce a breaking change?
[x] Yes
[ ] No

Components that call useHotkeys with an object that changes on every render will cause an infinite update loop.
Other information
This change is for correctness, but it will require downstream components to pay more attention to how they use useHotkeys.

If this breaking change is to be published I'd like to replace ref in the public API with a straight HTMLElement reference

Also, this needs to be tested before publishing because I'm not sure if it'll cause an infinite loop anyway in useHotkeys

LOL - I already published. Can you give it a quick run? 1.2.4 is version

LOL - I already published. Can you give it a quick run? 1.2.4 is version

It actually seems to work just like I thought. Any component in the entire app that calls useHotkeys without a useMemo instantly brings down the whole app. But as soon as that's resolved, everything is smooth sailing.

reverted and released - https://github.com/reaviz/reakeys/pull/10

Sorry about that. You should know by now I am a chronic "web ui committer"... xD


Fix md.read_csv for Ray executor

What do these changes do?

This PR did a few things.

Fix md.read_csv for Ray executor
Disable numexpr fuse for Ray executor
Optimize performance of RayStorage

Related issue number

Fixes #1542 .

I rerun the benchmark(https://github.com/mars-project/mars/pull/1508#issuecomment-677459064) on this branch.

Mars on local cluster

In [4]: %%time
   ...: import mars.tensor as mt
   ...: N = 1_000_000_000
   ...: state = mt.random.RandomState(0)
   ...: a = state.uniform(-1, 1, size=(N, 2))
   ...: print(((mt.linalg.norm(a, axis=1) < 1).sum() * 4 / N).execute())
   ...:
   ...:
3.141532176
CPU times: user 15.2 ms, sys: 5.67 ms, total: 20.9 ms
Wall time: 29.6 s

Mars on Ray

In [5]: %%time
   ...: import mars.tensor as mt
   ...: N = 1_000_000_000
   ...: state = mt.random.RandomState(0)
   ...: a = state.uniform(-1, 1, size=(N, 2))
   ...: print(((mt.linalg.norm(a, axis=1) < 1).sum() * 4 / N).execute())
   ...:
   ...:
2020-09-02 10:47:03,647	WARNING import_thread.py:136 -- The remote function 'mars.ray.core.remote_runner' has been exported 100 times. It's possible that this warning is accidental, but this may indicate that the same remote function is being defined repeatedly from within many tasks and exported to all of the workers. This can be a performance issue and can be resolved by defining the remote function on the driver instead. See https://github.com/ray-project/ray/issues/6240 for more discussion.
3.141532176
CPU times: user 7.26 s, sys: 1.21 s, total: 8.47 s
Wall time: 31 s

The time seems close now.

I rerun the benchmark(https://github.com/mars-project/mars/pull/1508#issuecomment-677459064) on this branch.

Mars on local cluster

In [3]: %%time
   ...: import mars.tensor as mt
   ...: N = 1_000_000_000
   ...: state = mt.random.RandomState(0)
   ...: a = state.uniform(-1, 1, size=(N, 2))
   ...: print(((mt.linalg.norm(a, axis=1) < 1).sum() * 4 / N).execute())
   ...:
   ...:
3.141532176
CPU times: user 14.5 ms, sys: 4.47 ms, total: 19 ms
Wall time: 30.3 s

Mars on Ray

In [5]: %%time
   ...: import mars.tensor as mt
   ...: N = 1_000_000_000
   ...: state = mt.random.RandomState(0)
   ...: a = state.uniform(-1, 1, size=(N, 2))
   ...: print(((mt.linalg.norm(a, axis=1) < 1).sum() * 4 / N).execute())
   ...:
   ...:
2020-09-02 10:47:03,647	WARNING import_thread.py:136 -- The remote function 'mars.ray.core.remote_runner' has been exported 100 times. It's possible that this warning is accidental, but this may indicate that the same remote function is being defined repeatedly from within many tasks and exported to all of the workers. This can be a performance issue and can be resolved by defining the remote function on the driver instead. See https://github.com/ray-project/ray/issues/6240 for more discussion.
3.141532176
CPU times: user 7.26 s, sys: 1.21 s, total: 8.47 s
Wall time: 31 s

The time seems close now.


Fix reader/writer support for BigDecimal and BigInteger.

Support for BigDecimal and BigInteger is broken.  BasicReader and BasicWriter should be updated to properly convert those object to/from binary.
Once that is done, both readers/writers should be added to the default reader/writer maps within FieldUtils.

Fixed in #259


Sublime Text Snippets

Hi John Papa,
first congradulações for your work! Excellent, he follow in my work and is very good.
Based on it, I created snippets for Sublime Text you would like to share with you:
https://github.com/alsfurlan/ng-snippets
I thought better than those on the page and I am constantly updating including ngdocs for documentation.
If you find interesting and want to reference in your page, it would be an honor!

Interesting :d
You can maybe translate your README file into english, in order to help english-speaking people ;)
Manu

I translated today :+1:

@johnpapa why do you push a ZIP archives ? why not directly the sublime templates ? in order to ease the update directly from Github.

sounds like a great idea for a Pull Request. hint hint

this PR sent.

Ok John Papa, I do a Pull request sun! ;). Thanks!

accepted @Gillespie59 's PR , added bindToController to the directive, and then added a new one for service. thanks

@johnpapa Do you said to @Gillespie59  do the pull request or for me?

They are merged.
But we could use a constant and a value snippet if you want to add those.


Mining Stats showing NMC shares and not BTC shares

This was working, but now the stats reset when a NMC block is solved.  I'm mining  NMCBit.com  (MergeM-Prop) configured worker via NMCBit.com dashboard.

Thats on purpose with dual nmcbtc pools. There's no easy way to show the correct share and while we could show both its a low priority. Plus since you mine those pools for the nmc it makes more sense to show and hop nmc than btc.

Masterpool and simplecoin are configured to display btc, so I was expecting displaying btc as the precedent in merged mining.  In fact, isn't that the standard in merged mining and the route that all other merged mining pools have adopted?  Why list it as merged mining then?  Seems irrational to me.

align="right">NMC Current round started at:Oct 13th, 01:14:18 pmNMC Current round duration:02:16:00 hoursValid shares for current round:151,737Shares for current round:152,790BTC Current round started at:Oct 13th, 10:37:18 amBTC Current round duration:04:53:00 hoursValid shares for current round:293,646Shares for current round:295,877<table
The second instance of "Valid shares for current round" which would be for "BTC" would make this Prop pool hoppable with the "mine" role.

Wait it says coin:btc and its displaying nmc shares? Thats wrong.

yeah, dunno what's best, change coin type or scrape btc shares... hmm

indeed, until a good way for scraping btc shares is found there is no other option i guess

Ok, i can understand that.  Thanks Bro!


shift and del keys on wrong row on 4-row layout

Should be on the lowest letter row, where tehre is space for the keys, not on the second lowest.

Fixed by https://github.com/giellalt/keyboard-sjd/commit/b9b2b4424f0686351d3ec8f040189b115b9c8b26


Similar project: Enlarge Your Password!

Hi @joseph346,
I have developed something similar in JavaScript for use as a Web page:
http://enlargeyourpassword.com/
This definitely works, but not for all websites, as some have Byzantine requirements.
In addition, a difficult problem, each time I subscribe to a new service, is to determine what is the maximum length of passwords supported by the website; many websites still store passwords in plain text, and truncated, at a different length than the one they allow for input in the form to create an account or modify a password. This results in the right password being rejected when compared with the truncated password.

Hi @eric-brechemier, thanks for letting me know. Yes, these and other design challenges are something we've been thinking about. Some other issues we've considered:

How to support changing a user's password on one site only
How to ensure that a user enters their correct master password when creating a new password


Enable additional tests

Fixes # [insert GH or internal issue number(s)].
What this PR solves / how to test:
Associated docs issue(s)/PR(s):

[insert associated docs issue(s)/PR(s)]

Author has included the following, where applicable:

[ ] Tests
[ ] Changeset (Changeset guidelines)

Reviewer is to perform the following, as applicable:

Checked for inclusion of relevant tests
Checked for inclusion of a relevant changeset
Checked for creation of associated docs updates
Manually pulled down the changes and spot-tested

Note for PR author:
We want to celebrate and highlight awesome PR review! If you think this PR received a particularly high-caliber review, please assign it the label highlight pr review so future reviewers can take inspiration and learn from it.

These are flaking for me locally and on CI: https://github.com/cloudflare/workers-sdk/actions/runs/6026001214/attempts/1.
Can we revert?


Sortable Items not working

The menu no longer sorts by weight, or at least I can't get it to. Is this by design in the revised version as I can't seem to find anywhere in the source code that it checks the weight attribute?

Ignore me ... I've worked it out apologies I was applying the weight to the items not the group :-/


Oracle Linux support add

It was added support for Oracle Linux 7 & 8. I've checked it works.

@georgylazarev Seems its not working for me!! VPN is able to connect and ping & dns is working but not the browser traffic. Any hints? I've even disabled  firewall & the required ports are already open in my security groups.

Given the uncertainty surrounding RHEL clones, I do not want to commit support for any which is not already supported.


When I perform a Hot Restart operation, any of my controls will execute build?

The problem is the title
This is my code,I printed my log in my build and executed it twice when I was executing hot-restart, which is inconsistent with the situation when I recompiled and opened the app. I want to know why
`void main() async {
runApp(App());
}
class App extends StatelessWidget {
@override
Widget build(BuildContext context) {
print("app build");
return MaterialApp(
    title: 'Flutter Demo',
    home: Scaffold(
      body: Text('hello'),
    ));

}
}`

Hi @taohonghui ,
see https://github.com/flutter/flutter/issues/57353#issuecomment-629569076,
closing as duplicate,
if you disagree please write in the comments and I will reopen it


Eval CLI included files as scripts

After 8cd59bf7c439e3370143924813ad6684918795c5 any file included by qjs with -I that would parse as a module is eval'd as so, which is usually not the intent, but rather to define some global functions.

Updated, PTAL!


Multi process support

Context
We are are very happy with Lita, and we are using it very extensively. So much that per moment it receive too much traffic and end up being limited by the CPU (parsing JSON webhooks mostly).
When this happen, HTTP and Chat requests start to be queued and Lita becomes unresponsive. So much that a simple ping can sometimes takes minutes.
Proof of concept
As a PoC I implemented https://github.com/Shopify/lita-external. It's basically an abstract adapter that uses 2 Redis queues as communication mechanism.
Here's what it looks like conceptually:
             +------------+
             |            +-------------+
     +------->  Worker 2  |             |
     |       |            <--------+    |
     |       +------------+        |    |
     |                             |    |
+----+--+    +------------+   +----+----v----+    +-------------+    +------------+
|       |    |            +--->              +---->             |    |  Chat      |
| Nginx +---->  Worker 1  |   |    Redis     |    |   Master    <---->  Service   |
|       |    |            <---+              <----+             |    |            |
+-------+    +------------+   +--------------+    +-------------+    +------------+

All the workers accepts HTTP requests
Technically, the master also accept HTTP, but we simply don't send anything to it.
We can add as many workers as we want, on multiple servers if needed.
Incomming chat messages are serialized with Marshal and pushed in lita:messages:inbound
All the workers maintain a BLPOP on lita:messages:inbound. When they are dispatched a message they process it in a thread pool.
When workers need to send a chat message (or change topic or whatever), they push it in lita:messages:outbound.
The master maintain a BLPOP on lita:messages:outbound, and simply send them to the chat service.

Status
Since very recently we are running lita-external in production, without any problems so far (again it's very recent).
Additional benefits
Beyond giving us more CPU capacity and horizontal capacity, it also allow give us:

Multi server capability which is not enough but a requirement for high availability of Lita. (It also require Redis failover and master election)
Zero downtime deploys. We can now restart lita without droping HTTP requests. We still have a very small chat downtime when restarting the master but that's more acceptable.

Question
@jimmycuadra is this something would would like to see in Lita core? Or do you think this should stay an adapter? I know most people probably don't need all this complexity, but if you need only a single process, then just running the master works just as well.
If you don't want to support this use case in core, then maybe we could move the discussion on how the offered API to the adapters could make things like this: https://github.com/Shopify/lita-external/blob/39d2520de2e8ba9ece06743bae1103607d61be11/lib/lita/external.rb#L19-L22 a bit less of a hack.

Thanks for digging into this so deeply, and for sharing your work and your use case. I haven't had enough time to give this the proper look that it deserves, but I wanted to at least acknowledge it and let you know I've seen it. Without digging into the details, my initial reaction is that this probably doesn't belong in the core, but that the core should make it possible to do with extensions without having to resort to monkey patching or other unsafe hackery.

I've implemented this in a way with ruby-concurrent and having routes pass of execution to a work pool -

fancy_route to route chat handlers to a specific pool: https://github.com/elastic/jarvis/blob/add-some-commands/lib/jarvis/mixins/fancy_route.rb
delegating to a pool: https://github.com/elastic/jarvis/blob/add-some-commands/lib/jarvis/mixins/pool_delegate.rb
pool implementation: https://github.com/elastic/jarvis/blob/add-some-commands/lib/jarvis/workpool.rb

This is all very much work-in-progress and exploratory code, but it works for me and is the path I'm likely to continue on to allow multiple handlers invoked simultaneously.

@jordansissel not sure I follow. You implementation seems to use a threadpool, which is what Lita already does (at least the multithreading part).

@byroot my casual observation was that my lita bot was only capable of doing one thing at a time.
I can reproduce this by doing a simple sleep handler:
      route(/^sleep$/) do |req|
        req.reply("Sleeping")
        sleep(5)
        req.reply("Sleep done")
      end

# output, using Lita's Shell adapter
Jarvis > jarvis sleep
Sleeping
jarvis sleep
jarvis sleep
Sleep done
Jarvis > jarvis sleep
Sleeping
Sleep done
Jarvis > jarvis sleep
Sleeping
Sleep done

From the above, I notice that:

Handler execution is serial and single-worker.
The adapter doesn't come back until after the handler has completed its execution (notice Jarvis > bot prompt not returning until the sleep finishes.

Am I missing something? The behavior doesn't appear to be multithreaded to me based on this above example and my casual observations in other places, such as a git command run via a custom handler getting stuck (blocked) and that freezes the entire bot. :)

It's the adapter (IRC / Slack / HipChat / Shell / Etc) responsibility to handle the message in a new thread. See https://github.com/kenjij/lita-slack/pull/21 for example.
You seem to be using the shell adapter, so it's kinda normal it doesn't support concurrency since it's for development purpose. But you wouldn't have this issue if you were to use IRC for instance.

My experience is that the hipchat adapter does this. The shell example was
simply as a demonstration of the effect.
I suppose I will just have to accept that some adapters don't implement
threading and continue using my thread pool solution (works for me in shell and
hipchat).
On Wednesday, November 18, 2015, Jean Boussier<EMAIL_ADDRESS>wrote:

It's the adapter (IRC / Slack / HipChat / Shell / Etc) responsibility to
handle the message in a new thread. See kenjij/lita-slack#21
https://github.com/kenjij/lita-slack/pull/21 for example.
You seem to be using the shell adapter, so it's kinda normal it doesn't
support concurrency since it's for development purpose. But you wouldn't
have this issue if you were to use IRC for instance.
—
Reply to this email directly or view it on GitHub
https://github.com/litaio/lita/issues/150#issuecomment-157934138.

Took a look at this again. It's very cool and I want to thank you again for sharing this publicly. My thoughts are the same as my initial reaction, however. I think functionality like this should live outside of the lita gem, but Lita should offer appropriate extension APIs to make implementing it possible without having to hack around anything by bypassing Ruby's visibility rules or anything like that. If there are extension points you can think of that would allow you to do something you can't currently do, or would allow you to improve the code in lita-external, please open new issues for each of them. I'll close this issue for now, as I think I've answered the general question this issue is asking.