Example/Sample for Spring Webflux and GraphQL SPQR

Hello, thank you for the work on this library, I've been looking for a code-first approach to graphql in Java and this library definitely accomplishes that. I was just wondering is there an example or sample that I can follow or reference for spring webflux and graphql-spqr? Because all the examples on https://github.com/leangen/graphql-spqr-samples are using spring web mvc. Or is it possible that all the approach for the spring web sample would also work for spring-webflux? Thank you!

Hello, thank you for the work on this library, I've been looking for a code-first approach to graphql in Java and this library definitely accomplishes that. I was just wondering is there an example or sample that I can follow or reference for spring webflux and graphql-spqr? Because all the examples on https://github.com/leangen/graphql-spqr-samples are using spring web mvc. And I know that spring starter is still considered Alpha so it shouldn't be used in production if I'm not mistaken. Or is it possible that all the approach for the spring web mvc sample would also work for spring-webflux? Thank you!

I have experimented, and by pulling in
        <dependency>
            <groupId>io.leangen.graphql</groupId>
            <artifactId>graphql-spqr-spring-boot-starter</artifactId>
            <version>0.0.4</version>
        </dependency>
        <dependency>
            <groupId>io.leangen.graphql</groupId>
            <artifactId>graphql-spqr-spring-boot-autoconfigure</artifactId>
            <version>0.0.4</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.module</groupId>
            <artifactId>jackson-module-jaxb-annotations</artifactId>
            <version>2.11.1</version>
        </dependency>

i managed to get it working for webflux.
But this project seems dead tbh.


Fix panic during the expansion of column!

Fixes #2379. Well, this isn't the "proper" fix but it doesn't hurt, IMHO.
The problem is that to_col_number, called by column_expand, receives a position number that isn't included in the text range of the file. My (very limited) understanding is that the text is the one of the original file, while pos is relative to something else, probably the text of the macro. Notice that in this case the column! expansion seems to be triggered by assert_eq!, so we're in the middle of another expansion. This PR simply avoids the panic by checking the length of the text.
r? @edwin0cheng

Yes, I think your explanation is correct. Maybe we could use the new Expansion api the remap the pos to original file but it is a little tricky since to_col_number is live behind the salsa DB firewall. But I think at this moment your bound check is okay..
But would you mind to fix to_line_number too? It has the same problem.

But would you mind to fix to_line_number too? It has the same problem.

I didn't fix it because it uses an iterator, so it shouldn't panic. It could have returned the wrong line number, tough... I've added the same check

I wonder, why are we even trying to expand this to the correct value? It doesn't make a difference, does it? Couldn't we just always put 0 there?

@flodiebold mmm ok, so you think it would be better to just return 0 both for column! and line!?

It's visible when using the new "expand macro" command, I guess.

It's visible when using the new "expand macro" command, I guess.

No, it isn't. I don't know why, but if you try to expand assert_eq! using the RA command you see $crate::column!() and $crate::line!().
I've modified the PR so that both line! and column! just return 0 in case of errors and I've added a FIXME.

It's still visible when using the new "expand macro" command, right?

If expanding column! it is. for assert_eq! there's some more work that needs to be done unrelated to line! and column!

and for line!, isn't it even harmful towards incrementality?)

@flodiebold If I understand correctly,  it should be no difference. Even in normal macro call, If the line number changed, MacroCallId will be changed too (i.e MacroCallId contains ast::MacroCall` which related to file position).

using the RA command you see $crate::column!() and $crate::line!()

Maybe we didn't handle Hygiene properly in SourceAnalyser yet ? I will investigate that later. :)
and LGTM now, thanks.
bors r+

@flodiebold If I understand correctly, it should be no difference. Even in normal macro call, If the line number changed, MacroCallId will be changed too (i.e MacroCallId contains ast::MacroCall` which related to file position).

It'd still make a difference for later steps like type inference though :slightly_smiling_face:

Oh... you are right But I can imagine some "good" c++ programmer to use the following trick to generate a compile time random number:
// pre-generate a list of  data/hash[*].txt  of random number
macro_rules compile_time_random {
  () => ( include_str!(concat!("data/hash", line!(), ".txt"))  }
}


Compiler: let a metaclass' metaclass be a new type instead of Class

This PR changes the language a bit regarding metaclasses. An explanation follows.
Every expression has a value and a type. For example:

1 has a value of 1 and a type of Int32. Methods for 1 are looked up in the Int32 type. These are denoted as Int32#method.
Int32 has a value of Int32 and a type of Int32.class. In the compiler this is called a metaclass. Methods for Int32 are looked up in the Int32.class type. These are denoted as Int32.method.

When we have a restriction like:
def capture(x : T) forall T
  T
end

capture(1)

what happens is that 1 is typed (as usual) and we get the Int32 type. Then when passed to the method this is matched against T and T becomes Int32.
When we have this (note it's T.class):
def capture(x : T.class) forall T
  T
end

capture(Int32)

what happens is that Int32 is typed and it gets the Int32.class type. Then matching against T.class we get Int32. Internally to implement this we go from the metaclass to the instance type (every metaclass has an instance type, in the case of Int32.class it's Int32 and so on).
So far, so good.
The problem comes when we want to pass Int32.class and capture that type. The current use case is using it in the be_a matcher in spec, but I stumbled upon this use case a few other types (but I can't remember now what they were):
def capture(x : T.class) forall T
  T
end

capture(Int32.class)

Here Int32.class is typed, and currently this gets a type of Class, because the type of a metaclass is always Class. And from there the compiler would go to the instance type, but the instance type of Class is Object, because a class is an object. (Note: in this point I'm a bit confused, but the important thing to know is that we go from Int32.class to Class and we lost the information of from which class we came from, to go back to it when matching against T.class).
This PR changes the above so that the type of Int32.class is a new metaclass called Int32.class.class, whose instance type is Int32.class (and this is repeated indefinitely, so you have Int32.class.class.class, they are created on the fly). The good thing about this is that it can go back to Int32.class via its instance type.
And so, the above matching works as expected, and we can write be_a as a method (an in general many macros that are based on types can be now always written as methods, which is always good).
I'm not sure which metamodel representation is better, but it might not matter much: one usually doesn't dabble at that level, and as long as it works as expected it's probably fine.
I also thought of an alternative: having the type of Int32.class be Class, but one whose instance type point to Int32.class. In that way we would have many Class types on the implementation side, but from the outside they would look like a single one. I think this is a bit harder to implement and at this point it might not be worth it, so I went with this simpler approach.

I love it.
But should it really be metaclass-ception and recurse indefinitely? There are use cases for X.class.class but X.class.class.class etc.?

We can probably stop at X.class.class. Let me try that...

Actually, what would you get from doing X.class.class.class? I'm not sure... So maybe for now we can do it like this and eventually, thinking it well, change it but still making it work with the T.class restriction.

@bew No

Hey, @asterite, quick question: is it possible to get instance type from a class in runtime? I'd like to init a Proc with a variable type. Tried this code (https://carc.in/#/r/5wyf):
type = Int32
pp Proc(type)

Prints Syntax error in eval:2: expecting token 'CONST', not 'type'.
Then I tried typeof (https://play.crystal-lang.org/#/r/5wye):
type = Int32
pp Proc(typeof(type))

Almost got there: Proc(Int32.class). So how to get Int32 from Int32.class without macros? Given that I cannot use 42 as type, only explicit class.

@vladfaust No, there's no way.


SignalR MassTransitHubLifetimeManager OnDisconnectedAsync doesn't remove a connection from Groups subscriptions

Is this a bug report?
Yes.
If a connection is added through GroupManagement (AddGroupAsyncCore / Groups.AddSubscription(groupName, connection); ) to a group, it isn't removed from it when a client disconnects.

Can you also reproduce the problem with the latest version?
Yes.
Environment

Operating system: Windows 10
Visual Studio version: 2016
Dotnet version: 2.2 core

Steps to Reproduce

One unit test fails if you add await Task.Delay(2000) to the line 138 below
https://github.com/MassTransit/MassTransit/blob/7f50f16e18d9e8ce164b668aa9c95f23e708b067/src/MassTransit.SignalR.Tests/HubLifeTimeManagerTests.cs#L137-L139
           await manager.SendGroupAsync("name", "Hello", new object[] { "World" }).OrTimeout();

           await Task.Delay(2000);

           Assert.Null(client.TryRead()); //fails!!!

Expected Behavior
Two classes below should be similar to my proposal
https://github.com/MassTransit/MassTransit/blob/7f50f16e18d9e8ce164b668aa9c95f23e708b067/src/MassTransit.SignalR/MassTransitHubLifetimeManager.cs#L60-L61
https://github.com/MassTransit/MassTransit/blob/7f50f16e18d9e8ce164b668aa9c95f23e708b067/src/MassTransit.SignalR/MassTransitMessageDataHubLifetimeManager.cs#L64-L65
            if (groups != null)
            {
                // Removes connection from all groups locally
                foreach (var groupName in groups.ToArray()) //needs proper safe ToArray implementation
                {
                    RemoveGroupAsyncCore(connection, groupName);
                }
            }

@maldworth thoughts?

Yep, this is definitely a bug. Don't know how I missed it, I guess a fact that the test for it had to be marked Flakey should have been a clue.
It's fixed, and the test category Flakey removed, so it should always run now.


Remove prettier from pre-commit

As suggested by @dopplershift, due to the continued aggravation of pre-commit opening PRs that include pre-release alpha versions of prettier, this PR just removes prettier entirely from our pre-commit config.

Other repos that suffer from the same issue include

Foundations
pythia-datasets
.github
Some (but not all) individual cookbook repos

@dopplershift are you aware of any issue tracking the problem with pre-commit and prettier releases that we can link here?
It would be great to get the functionality of prettier back once the headaches are resolved.

Let's just say upstream is less than interested about doing anything about this. "Working as intended" was one phrase I saw. 🙄

For the record, an attitude like that from upstream (not the first time I've seen it) has me reconsidering future use of pre-commit in my projects.

Good to know that there's essentially zero chance of an upcoming change in how pre-commit handles these cases.
Are we happy with the compromise of just removing prettier from the pre-commit list, and thus losing its functionality? Here and in several other of our repos?

There might be a viable alternative: keep using prettier, but exclude it from auto-updates (and thus need to manually update its version in .pre-commit-config.yaml when we are ready to upgrade.
If I'm interpreting these docs correctly, we should be able to do this just by adding this block to .pre-commit-config.yaml:
ci:
    skip: [prettier]

@dopplershift does that sound correct?

@brian-rose My read of those docs implies that this will only skip running prettier on the pre-commit CI service, not disable updating the version. I can find no way to dial back updates, only ways to store hashes for versions or use "bleeding edge": https://pre-commit.com/#pre-commit-autoupdate

@dcamron and I have also found that currently precommit-ci is only set to run on 7 of our own repositories, not any of the cookbook repos (and currently that list would have to be added to manually rather than having "all repositories" set). I think we need to think a little more about what we want the user experience to be, both locally and on GitHub.

Closes #186


[DEVOPS-50] Nixos tests

in job ‘tests.simpleNodeNixOps.x86_64-linux’:
file ‘nixops/nix/options.nix’ was not found in the Nix search path (add it using $NIX_PATH or -I), at /nix/store/7vx0zx8bnck08rkc2wmpbnqxiv90m7iz-git-export/tests/simple-node-nixops.nix:13:84

afaik cardano-node already produces JSON logs in /var/lib/cardano-node/

Invalid option --testnet-stake'`
something has changed in master, i'll need to update the genesis generation

@cleverca22 https://github.com/input-output-hk/cardano-sl/commit/657063362d#diff-f246ff0f5accac42081c32efcc2bb2e0R62

@kantp @adinapoli-iohk @edsko could you review the haskell part o the post-mortem?

this PR is currently on-hold and will be rewritten later to fix all of the conflicts

@cleverca22 What should we be doing with this bad boy? Close or revive? 😁


move operator_client.go to internal

Signed-off-by: Nandor Kracser<EMAIL_ADDRESS>

Q
A

Bug fix?
no

New feature?
no

API breaks?
yes

Deprecations?
no

Related tickets
N/A

License
Apache 2.0

What's in this PR?

Move the heavily internal operator_client.go to an internal package from the SDK.
Why?

It pulls in a lot of dependencies (and thus bloats the SDK package), and it contains, well, "internal" code.
Additional context

API breaks.
Checklist

[x] Code meets the Developer Guide

This will make a LOT of things easier on the dependency side.


Private Events

Update: https://sfdo-community-sprints.github.io/summit-events-app-documentation/docs/standard-features/private-events/
Review: No Previous Documentation
Intent:

What does having a Private Event means?
Where does it not display, how would you market and what are some examples of having private event?
How do you create a Private event and validate it isn't publicly visible.

Thank you Stefania!  Looks great - closing issue


Align circleci with MNE

Codecov Report

Merging #248 (5bd40a4) into master (aa1a42c) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #248   +/-   ##
=======================================
  Coverage   97.86%   97.86%
=======================================
  Files          41       41
  Lines        1076     1076
  Branches      154      154
=======================================
  Hits         1053     1053
  Misses          9        9
  Partials       14       14

Continue to review full report at Codecov.

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


Release v1.0.0

This PR bumps the version number to 1.0.0 for release.

Smoke tests run in 3.7.9 and 3.10.2 and both completed successfully


Incorrect platform detected during build step

I'm having an issue deploying to a static web app, where the build process is incorrectly detecting a Hugo platform. Really all we need to do is copy the content of the GitHub repo to the service
Detecting platforms...
Detected following platforms:
  hugo: 0.76.3

Source directory     : /github/workspace
Destination directory: /bin/staticsites/ss-oryx/app

Using Hugo version:
Hugo Static Site Generator v0.76.3-E9623459/extended linux/amd64 BuildDate: 2020-10-08T17:17:16Z

Error: module "themes/default/" not found; either add it as a Hugo Module or store it in "/github/workspace/themes".: module does not exist
Total in 3 ms

The site we are trying to deploy is a pre-built static pages app with some javascript and a few JSON files, I suspect the name of one of these files is what is causing the issue?
I've tried modifying the action with api_build_command and app_build_command set to echo skipping build but it continues the build anyway.
with:
azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_THANKFUL_SKY_0AD835903 }}
repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for Github integrations (i.e. PR comments)
action: "upload"
app_build_command: "echo skipping build"
api_build_command: "echo skipping build"
###### Repository/Build Configurations - These values can be configured to match you app requirements. ######
# For more information regarding Static Web App workflow configurations, please visit: https://aka.ms/swaworkflowconfig
app_location: "/" # App source code path
api_location: "" # Api source code path - optional
output_location: "" # Built app content directory - optional
###### End of Repository/Build Configurations ######

@miwebst do you know how to skip Oryx build if setting the build commands aren’t working?
https://github.com/Azure/static-web-apps/issues/248

As a quick work around, I've moved my web-app into a subfolder, and placed an index.html in the root folder that redirects to my app in the subfolder. This will deploy correctly without trying to build the non-existent Hugo app.
Would be nice to resolve this issue though.

Hi @Aegman , Oryx identifies hugo app by detecting if there has a config.toml/config.yml/config.json/config.yaml file at the root or a config/**/*.toml file inside config subfolder. So I  think you included such files in your app previously. You could use DISABLE_HUGO_BUILD to avoid any hugo platform detection and builds.

Closing due to no traction. Feel free to reopen if required!


Prads14 patch 2

- Summary

- Test plan

- Description for the changelog

- A picture of a cute animal (not mandatory but encouraged)

👷 Deploy Preview for data-analyst-prads processing.

Name
Link

🔨 Latest commit
77364fbc8e5708c114322587b4d7c8e2bd0b67ce

🔍 Latest deploy log
https://app.netlify.com/sites/data-analyst-prads/deploys/64ec92833f3c090008a6a9bf


TABLE - nested fields (feature request)

It would be nice to get value from nested fields :)
<b-table-column field="city.name"></b-table-column>
USER JSON
{
   name: "Joe",
   age: 34,
   city: {
        id: 12,
        name: "Paris"
    }
}

Currently i got it by using
<b-table-column field="city" :format="formatCity"></b-table-column>
formatCity(value) {
      return value.name
}

You can also use lodash.

Not that easy to do it without lodash, going to keep it this way, if someone has any simple solution please me a PR.

Somewhat related to #49

I'm having the same problem.. In my current project, I wanted to give buefy a try, and completed most of the project using it. Now, I'm stuck, I didn't know buefy was not able to accept nested props in data tables..
I really wonder if it is really hard to implement..

currently only  element-ui framework support nested syntax. But it is not responsive, neither "bulma friend" because it has own css.
Right now , for buefy, i think the workaround is "format" prop

Guys, take a look at the #49 as I said.

Hi @robsontenorio,
That workaround seems ok, but sorting doesn't work for such columns. I think, sorting is based on "field" not "format", so it can not figure out how to compare two objects..


SQLite import discards \ despite changing the escape character to an unused character

System information:

Operating system (distribution) and version Windows 10
DBeaver version Version <IP_ADDRESS>003021717
Additional extensions None

Connection specification:

Database name and version Sqlite
Driver name SQLite JDBC driver by Taro L. Saito (extension of Zentus driver)
Do you use tunnels or proxies (SSH, SOCKS, etc)? No - all local

Describe the problem you're observing:
When importing Windows UNC paths and filenames from a CSV file, the backslashes in the filename are lost. This is despite changing the default ëscape character from \ to an usused character (such as asterisk (*), bang (!), caret (^) and so forth
The import preview shows the data correctly but after the import the data in the table is missing backslashes.
Steps to reproduce, if exist:
Set up the import - note the change from \ to ! for the escape char

Preview the data - looks fine.

Confirm - precisely what I want...

Run the import and view the resulting table. Note the filepaths are now corrupted, with the backslash evidently still being interpreted as an escape character despite being set to "!" in the import dialog.

Include any warning/errors/backtraces from the logs
There are none. The import is reported as successful

I'm now not entirely sure that this is an import bug - I doubled up the backslahes in my source data (\\servername\folder\folder\folder\guid.doc, imported it and I still see the data inside the table with
blackslashes removed...

Do I need to do something special with data with backslashes within it?

I'm not sure that truncate table on import actually truncates.; I'll do some more testing to narrow my issue down.


Desktop: Tooltip cancel the timer instead of restarting

Describe the bug
When used with clickable widgets, TooltipArea does not generate a tooltip after the widget is clicked. It is a big problem for TextFields.
Affected platforms

Desktop (Windows, Linux, macOS)

Versions

Kotlin version: 1.9.22
Compose Multiplatform version: 1.6.0
OS version(s): MacOS 14.2
OS architecture (x86 or arm64): arm64
JDK (for desktop issues): 17

To Reproduce
import androidx.compose.desktop.ui.tooling.preview.Preview
import androidx.compose.foundation.ExperimentalFoundationApi
import androidx.compose.foundation.TooltipArea
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.offset
import androidx.compose.foundation.layout.size
import androidx.compose.material.Button
import androidx.compose.material.ExperimentalMaterialApi
import androidx.compose.material.MaterialTheme
import androidx.compose.material.Surface
import androidx.compose.material.Text
import androidx.compose.material.TextField
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
import androidx.compose.runtime.setValue
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.Window
import androidx.compose.ui.window.application
import kotlinx.coroutines.delay

@OptIn(ExperimentalFoundationApi::class, ExperimentalMaterialApi::class)
@Composable
@Preview
fun App() {
    Box(Modifier.fillMaxSize()) {
        var number by remember { mutableStateOf(0) }
        LaunchedEffect(Unit) {
            while (true) {
                delay(1000)
                number += 1
            }
        }
        TooltipArea(
            tooltip = {
                Surface(
                    onClick = {},
                    elevation = 6.dp
                ) {
                    Text("Green Box $number sec.")
                }
            },
            Modifier.offset(x = 100.dp, y = 100.dp)
        ) {
            var text by remember { mutableStateOf("") }
            TextField(
                value = text,
                onValueChange = { text = it },
                modifier = Modifier
                    .size(100.dp)
                    .background(Color.Green)
            )
        }
    }
}

fun main() = application {
    Window(onCloseRequest = ::exitApplication) {
        App()
    }
}

Steps and/or the code snippet to reproduce the behavior:

Click TextField
start typing.

Expected behavior
Tooltips are shown.
Actual behavior
Tooltips are not shown until the mouse pointer reenters tooltip area.
Screenshots
https://github.com/JetBrains/compose-multiplatform/assets/55230817/156b17dd-6663-444b-b861-25aa5f0d501e
Additional context
No workaround but creating own TooltipArea is found.

The fix is probably to restart the show-timer on mouse-move (with unpressed mouse).

Please check the following ticket on YouTrack for follow-ups to this issue. GitHub issues will be closed in the coming weeks.


Clarify questions related to customizable routing

Follow up issue of #2209

make server-side models without separate file possible
In documentation: should we focus on JSON format so that users of the web API can directly use it and only mention YAML for simpler creation of server-side models?
improve UI and auto complete feature
which points are missing for a production-state format?
If production format is decided, eventually move /route-custom into /route via a separate custom_model entry. This would also allow integration e.g. into /isochrone

improve UI and auto complete feature

I think this is the most important thing to improve by far. Users need to get proper feedback for their actions: Syntax checking is important to not get frustrated with annoying little errors, auto-completion is important to easily see what can be customized and interactively learn the custom model language. Ultimately we should also be able to 'understand' why some route was chosen over another. For this we will need to be able to visualize the edge weights and the edge properties (but this won't really happen without a proper rewrite of GH maps, so probably for another issue).

which points are missing for a production-state format?

I guess this becomes easier to find out the more people are use the feature (therefore the first point is so important IMO)

In documentation: should we focus on JSON format so that users of the web API can directly use it and only mention YAML for simpler creation of server-side models?

This is a tricky question. I expect most users to start with the GH maps UI and enter some custom models in the flex box to see how their example routes change. The format that is entered there should be the same as in the documentation. On the other hand I expect it will be easiest to give proper hints / provide some kind of 'autocomplete' if we use the YAML format (with one statement per line) in the flex box. When a user is satisfied with the result it should be easy enough to translate the YAML format to JSON. We could even offer this in the UI: 'show current model as JSON'.
So with this reasoning I would suggest to:

strictly enforce the (verbose) YAML format in the flex box, maybe allow pasting the more compact YAML format, but then convert it to the verbose format for editing. The fewer variations there are to enter stuff the easier it will be to learn what can be achieved with custom models.
implement syntax checking and 'autocomplete/hints' for this format specifically
offer a read only and copyable view of the flex box in JSON format (or something like 'copy JSON to clipboard'). Maybe also similar for the compact YAML format.

make server-side models without separate file possible

why?

If production format is decided, eventually move /route-custom into /route via a separate custom_model entry. This would also allow integration e.g. into /isochrone

Ok and at this point we should probably also remove the standard profiles/weightings and only use CustomWeighting.

improve UI and auto complete feature

I think this is the most important thing to improve by far. Users need to get proper feedback for their actions: Syntax checking is important to not get frustrated with annoying little errors, auto-completion is important to easily see what can be customized and interactively learn the custom model language. Ultimately we should also be able to 'understand' why some route was chosen over another. For this we will need to be able to visualize the edge weights and the edge properties (but this won't really happen without a proper rewrite of GH maps, so probably for another issue).

which points are missing for a production-state format?

I guess this becomes easier to find out the more people are use the feature (therefore the first point is so important IMO)

In documentation: should we focus on JSON format so that users of the web API can directly use it and only mention YAML for simpler creation of server-side models?

This is a tricky question. I expect most users to start with the GH maps UI and enter some custom models in the flex box to see how their example routes change. The format that is entered there should be the same as in the documentation. On the other hand I expect it will be easiest to give proper hints / provide some kind of 'autocomplete' if we use the YAML format (with one statement per line) in the flex box. When a user is satisfied with the result it should be easy enough to translate the YAML format to JSON. We could even offer this in the UI: 'show current model as JSON'.
So with this reasoning I would suggest to:

strictly enforce the (verbose) YAML format in the flex box, maybe allow pasting the more compact YAML format, but then convert it to the verbose format for editing. The fewer variations there are to enter stuff the easier it will be to learn what can be achieved with custom models.
implement syntax checking and 'autocomplete/hints' for this format specifically
offer a read only and copyable view of the flex box in JSON format (or something like 'copy JSON to clipboard'). Maybe also similar for the compact YAML format.

make server-side models without separate file possible

why?

If production format is decided, eventually move /route-custom into /route via a separate custom_model entry. This would also allow integration e.g. into /isochrone

Ok and at this point we should probably also remove the standard profiles/weightings and only use CustomWeighting.

I expect most users to start with the GH maps UI

I also expect hopefully many users to get started via the web API (via JSON). Also we should not forget that JSON is also valid YAML :)

which points are missing for a production-state format?
I guess this becomes easier to find out the more people are use the feature (therefore the first point is so important IMO)

IMO it is also a bit of an chicken and egg problem as people will hesitate to invest time into it when it is still subject to change.

maybe allow pasting the more compact YAML format, but then convert it to the verbose format for editing

Ah, yes. I like your ideas. And pasting as JSON and converting it to YAML would make it very simple to copy&paste it from the docs that are e.g. only in JSON (for the web API).

offer a read only and copyable view of the flex box in JSON format (or something like 'copy JSON to clipboard').

:+1:

make server-side models without separate file possible
why?

It is easier especially for short custom models (I implemented it already and tried it in production) and you requested it in #1841 I remember :)

Ok and at this point we should probably also remove the standard profiles/weightings and only use CustomWeighting

The reason for moving the custom_model into /route (and defining the format at some point as production state) is also that I would like to avoid too many changes to the web JSON API and to start delivering this without the "alpha notice" in 3.0, maybe only with a "beta notice" that is removed in 4.0 or 5.0. And removing the other weightings is IMO more an internal thing that we should do independently.

I expect most users to start with the GH maps UI

I also expect hopefully many users to get started via the web API (via JSON). Also we should not forget that JSON is also valid YAML :)

which points are missing for a production-state format?
I guess this becomes easier to find out the more people are use the feature (therefore the first point is so important IMO)

IMO it is also a bit of an chicken and egg problem as people will hesitate to invest time into it when it is still subject to change.

maybe allow pasting the more compact YAML format, but then convert it to the verbose format for editing

Ah, yes. I like your ideas. And pasting as JSON and converting it to YAML would make it very simple to copy&paste it from the docs that are e.g. only in JSON (for the web API).

offer a read only and copyable view of the flex box in JSON format (or something like 'copy JSON to clipboard').

:+1:

make server-side models without separate file possible
why?

It is easier especially for short custom models (I implemented it already and tried it in production) and you requested it in #1841 I remember :)

Ok and at this point we should probably also remove the standard profiles/weightings and only use CustomWeighting

The reason for moving the custom_model into /route (and defining the format at some point as production state) is also that I would like to avoid too many changes to the web JSON API and to start delivering this without the "alpha notice" in 3.0, maybe only with a "beta notice" that is removed in 4.0 or 5.0. And removing the other weightings is IMO more an internal thing that we should do independently.

It is easier especially for short custom models (I implemented it already and tried it in production) and you requested it in #1841 I remember :)

Ok ;) I just thought this doesn't seem so important right now and it might be better to reduce the number of ways the same things can be done to make it easier to understand instead of adding more possibilities for convenience.

The reason for moving the custom_model into /route (and defining the format at some point as production state) is also that I would like to avoid too many changes to the web JSON API

Ok

It is easier especially for short custom models (I implemented it already and tried it in production) and you requested it in #1841 I remember :)

Ok ;) I just thought this doesn't seem so important right now and it might be better to reduce the number of ways the same things can be done to make it easier to understand instead of adding more possibilities for convenience.

The reason for moving the custom_model into /route (and defining the format at some point as production state) is also that I would like to avoid too many changes to the web JSON API

Ok

Do want to allow users to target predefined areas(#2037) in the custom model?

Do want to allow users to target predefined areas(#2037) in the custom model?

Do you want to allow users to target predefined areas(#2037) in the custom model?

Probably only via encoded values like country for now.

Do you want to allow users to target predefined areas(#2037) in the custom model?

Probably only via encoded values like country for now.

#2201 might be relevant depending if we want to provide access to this kind of "dynamically" created EVs

#2201 might be relevant depending if we want to provide access to this kind of "dynamically" created EVs

Allow "else": "" not only "else": null (important for JSON)

Now we do not use yaml anymore I rather wonder if we should allow null (and not just "")

In documentation: should we focus on JSON format so that users of the web API can directly use it and only mention YAML for simpler creation of server-side models?

Yes! I think the custom model language should be described for JSON. Maybe in a separate .md file? It should maybe contain some special advice for REST and UI users. For the server-side configuration of custom profiles we can then refer to this custom model explanation (but not the other way around as we currently do in profiles.md).

I opened separate tickets for the remaining issues (#2275, #2276). Closing here.


Headphone sample rate

I've observed a 25Hz sample rate from Airpods Pro 2 and Airpods Max. Comments on StackOverflow suggest that this is the going rate for Airpods (vs ~100Hz for the phone's inertial sensors). Docs from Apple are not very clear on this. Have you been able to get 100Hz from headphones? Either way would be good to update documentation to reflect that the headphones fs may be different.

It is not configurable (and in fact variable). My experimentation is 25Hz on AirPods Pro 2 and 15Hz on older models. I will update the in-app description to include this information.


Corrupt subexpire entry in RDB skipping

Keydb started restarting(crashing?) about once a day after using expiremember for hash set. After restart all ttl are lost. When manually restarted, the behavior is the same. Ubuntu 16.04, KeyDB version = 5.3.2, bits = 64, commit = e523afa7. On 5.3.1 it was also, switched to 5.3.2.
3 bases, size 7-180MB. expiremember is set for a day and a month.
** Log Files **
20695:M 16 Mar 2020 19:02:07.036 * Background saving started by pid 2114
2114:C 16 Mar 2020 19:02:07.344 * DB saved on disk
2114:C 16 Mar 2020 19:02:07.349 * RDB: 1 MB of memory used by copy-on-write
20695:M 16 Mar 2020 19:02:07.439 * Background saving terminated with success
2125:C 16 Mar 2020 19:02:15.670 # oO0OoO0OoO0Oo KeyDB is starting oO0OoO0OoO0Oo
2125:C 16 Mar 2020 19:02:15.670 # KeyDB version=5.3.2, bits=64, commit=e523afa7, modified=0, pid=2125, just started
2125:C 16 Mar 2020 19:02:15.670 # Configuration loaded
2128:M 16 Mar 2020 19:02:15.697 * Running mode=standalone, port=6375.
2128:M 16 Mar 2020 19:02:15.697 # Server initialized
2128:M 16 Mar 2020 19:02:15.697 * Loading RDB produced by version 5.3.2
2128:M 16 Mar 2020 19:02:15.697 * RDB age 8 seconds
2128:M 16 Mar 2020 19:02:15.697 * RDB memory usage when created 35.73 Mb
2128:M 16 Mar 2020 19:02:15.699 # Corrupt subexpire entry in RDB skipping.
2128:M 16 Mar 2020 19:02:15.700 # Corrupt subexpire entry in RDB skipping.
... many-many ...
2128:M 16 Mar 2020 19:02:16.077 # Corrupt subexpire entry in RDB skipping.
2128:M 16 Mar 2020 19:02:16.077 # Corrupt subexpire entry in RDB.
2128:M 16 Mar 2020 19:02:16.077 * DB loaded from disk: 0.380 seconds
2128:M 16 Mar 2020 19:02:16.077 * Ready to accept connections
2128:M 16 Mar 2020 19:02:16.077   Thread 0 alive.
2128:M 16 Mar 2020 19:02:16.529 * Replica <IP_ADDRESS>:16375 asks for synchronization
2128:M 16 Mar 2020 19:02:16.529 * Partial resynchronization not accepted: Replication ID mismatch (Replica asked for 'a30776c95116669d03eac1fc42411d182d48547f', my replication IDs are 'c232f440f67d6a80175b731079980c05685de070' and '0000000000000000000000000000000000000000')
2128:M 16 Mar 2020 19:02:16.529 * Starting BGSAVE for SYNC with target: disk
2128:M 16 Mar 2020 19:02:16.531 * Background saving started by pid 2133
2128:M 16 Mar 2020 19:02:16.725 * Replica <IP_ADDRESS>:16375 asks for synchronization
2128:M 16 Mar 2020 19:02:16.725 * Partial resynchronization not accepted: Replication ID mismatch (Replica asked for 'a30776c95116669d03eac1fc42411d182d48547f', my replication IDs are 'ebf12647a855a42b1c756f71c45c5e30156be5f4' and '0000000000000000000000000000000000000000')
2128:M 16 Mar 2020 19:02:16.726 * Waiting for end of BGSAVE for SYNC
2133:C 16 Mar 2020 19:02:16.771 * DB saved on disk
2133:C 16 Mar 2020 19:02:16.774 * RDB: 1 MB of memory used by copy-on-write
2128:M 16 Mar 2020 19:02:16.799 * Background saving terminated with success
2128:M 16 Mar 2020 19:02:17.057 * Replica <IP_ADDRESS>:16375 asks for synchronization
2128:M 16 Mar 2020 19:02:17.057 * Partial resynchronization not accepted: Replication ID mismatch (Replica asked for 'a30776c95116669d03eac1fc42411d182d48547f', my replication IDs are 'ebf12647a855a42b1c756f71c45c5e30156be5f4' and '0000000000000000000000000000000000000000')
2128:M 16 Mar 2020 19:02:17.057 * Starting BGSAVE for SYNC with target: disk
2128:M 16 Mar 2020 19:02:17.059 * Background saving started by pid 2134
2128:M 16 Mar 2020 19:02:17.128 * Synchronization with replica <IP_ADDRESS>:16375 succeeded
2134:C 16 Mar 2020 19:02:17.263 * DB saved on disk
2134:C 16 Mar 2020 19:02:17.266 * RDB: 0 MB of memory used by copy-on-write
2128:M 16 Mar 2020 19:02:17.300 * Background saving terminated with success
2128:M 16 Mar 2020 19:02:27.029 * Synchronization with replica <IP_ADDRESS>:16375 succeeded
2128:M 16 Mar 2020 19:02:30.077 * Synchronization with replica <IP_ADDRESS>:16375 succeeded
2128:M 16 Mar 2020 19:04:58.049 * 10000 changes in 160 seconds.   Looks like there's a gremlin in the subkey expire datastructure.

Not a dupe, but I do have a repro.  Target for this fix is v5.3.3

This is a regression from change 06ad1c15d

OK This is fixed in change 528a43bd.  Fortunately the issue is in the load code so your RDB files are not corrupt.  The fix will be out in v5.3.3 in the next few days.  v5.3.1 is also not affected.

Round-trip persistence test added with change 4e572974


v4.1.2

Codecov Report

Merging #97 (d75c710) into master (67edd8e) will decrease coverage by 0.44%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #97      +/-   ##
==========================================
- Coverage   96.67%   96.23%   -0.45%
==========================================
  Files           4        4
  Lines         451      451
  Branches       68       68
==========================================
- Hits          436      434       -2
- Misses          4        5       +1
- Partials       11       12       +1

Impacted Files
Coverage Δ

src/lineage/__init__.py
94.62% <ø> (ø)

src/lineage/visualization.py
95.00% <0.00%> (-2.50%)
:arrow_down:

Continue to review full report at Codecov.

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


pango-sys: Drop v1_36_7 feature

It is not handled anywhere, so it would fall back into 1.36 which is default.

Restarting CI

@ignatenkobrain, @GuillaumeGomez I was careless when checking, it really used in PangoAnalysis for flags.
    <constant name="ANALYSIS_FLAG_IS_ELLIPSIS" value="2" c:type="PANGO_ANALYSIS_FLAG_IS_ELLIPSIS" version="1.36.7">
      <doc xml:space="preserve">This flag is used to mark runs that hold ellipsized text,
in an ellipsized layout.</doc>
      <type name="gint" c:type="gint"/>
    </constant>

As we don't define constants and use flags directly https://github.com/gtk-rs/pango/blob/master/src/analysis.rs#L38 IMHO we can just leave pango's fix and close this PR.


should adlfs be responsible for the event loop management for threads?

Here is an example where it fails with "there is no set event loop for thread: blablah"
import threading
from azure.identity.aio import DefaultAzureCredential

from adlfs import AzureBlobFileSystem

def main():
    fs = AzureBlobFileSystem(
        account_name='hey',
        credential=DefaultAzureCredential()
    )
    fs.ls('/')

thread = threading.Thread(target=main)
thread.start()

The cause of this issue is that, the thread doesn't have any event loop set but AzureBlobFileSystem.do_connect() tries to instantiate classes that requires access to set event loops (e.g AIOBlobServiceClient).
This is something that can be easily solved via asyncio.new_event_loop/asyncio.set_event_loop though I am a bit unsure about whether the client should manage this or should do_connect in AzureBlobFileSystem get a special condition for this case and manage event loop by itself for threads that don't have one.

@isidentical -- thanks for bringing this forward.  Do you know if it started after #198 ?  Tagging @martindurant to find out if this is just an issue with adlfs or if it impacts other packages that use fsspec.

@isidentical -- thanks for bringing this forward. Do you know if it started after #198 ?

I don't know for sure, but don't think so it is related with that.


Make Filings | View Case - UI

In View Case, following changes are needed:

View Case > Replace Make Submission with Make Filings with drop down of Raise Application & Submit Documents
View Case > Rename Submissions tab to Applications and Documents tab to Filings

Submissions PRD _ PUCAR.pdf

Tested in sol-dev env, working as expected.
Attaching screenshot for reference:

cc: @rajeshcherukumalli

Tested in uat env, working as expected.
Attaching screenshot for reference:

cc: @rajeshcherukumalli

Hi @ansh-egov, tested in uat, please provide your sign-off on this ticket.
cc: @Ramu-kandimala

HI @rajeshcherukumalli, @Ramu-kandimalla
This is deployed to Prod.


Request to have a minimum severity level for annotations

Right now, it does not seem that there is a way to, for instance, only show annotations for warnings and above.
Possibly this could be achieved by adding a new parameter to the action, and passing it to the --severity option of jb inspectcode.
Thanks for your consideration!

@ashek-simeon
Thank you for suggestion!
I add option minimumReportSeverity on version 1.7.0 .
So, you can specify minimum annotation level with version 1.7.0 or higher.
Regards.

It's not typo...
minimumSeverity is another option to specify action failure level.
You can use this option when annotation target is different from issue level what you want to fail job.
The following is example.

minimumSeverity

warning

minimumReportSeverity

info

Output

annotation

info or higher

inspection job failed

when warning or error is exists

I think it is too confusing, but for backward compatibility, I keep both option while 1.x.

I meant that it looks like minimumSeverity is listed twice

Oh, it's typo.
Thank you!


Mix test fails with esqlite

Trying to install IElixer per the directions.  All seems to go well.  However, mix test emits the following error:
** (Mix) Could not compile dependency :esqlite, "/Users/ghoetker/.mix/rebar3 bare compile --paths "/Users/ghoetker/Elixer Projects/IElixir/_build/test/lib/*/ebin"" command failed. You can recompile this dependency with "mix deps.compile esqlite", update it with "mix deps.update esqlite" or clean it with "mix deps.clean esqlite"

I have tried mix deps.update esqlite, followed by mix deps.compile esqlite, which generates the same message.  mix deps.clean, followed by mix deps.compile emits the same message too.
Please let me know what other debugging information I can provide. Thank you.

Here is the result of running that command.  Thank you!
ghoetker/Elixer Projects/IElixir% mix deps.compile esqlite
===> Compiling esqlite
===> Compiling /Users/ghoetker/Elixer Projects/IElixir/deps/esqlite/c_src/esqlite3_nif.c
===> clang: error: no such file or directory: '/Users/ghoetker/Elixer'
clang: error: no such file or directory: 'Projects/IElixir/deps/esqlite/c_src/esqlite3_nif.c'
clang: error: no such file or directory: 'Projects/IElixir/deps/esqlite/c_src/esqlite3_nif.o'
clang: error: no input files

** (Mix) Could not compile dependency :esqlite, "/Users/ghoetker/.mix/rebar3 bare compile --paths "/Users/ghoetker/Elixer Projects/IElixir/_build/dev/lib/*/ebin"" command failed. You can recompile this dependency with "mix deps.compile esqlite", update it with "mix deps.update esqlite" or clean it with "mix deps.clean esqlite"
ghoetker/Elixer Projects/IElixir%

@ghoetker my first guess would be to check if the problem is in directory name Elixer Projects because in further error lines you can see path which has trimmed first part of the whole path.
Secondly I would check if you have rebar and rebar3 available from the command line.

@pprzetacznik The space in the directory name was the issue.  After that, all worked wonderfully. As a bonus, installing the kernel also allows using Elixir with the newer Jupyter Lab.  Very cool and thank for you for such a great contribution to the ecosystem.

I have same issue but don't have space in directory name, can someone help, what else could cause it


importd.s()

Problem: Often I have to mirror on setting with another. Eg DEBUG and TEMPLATE_DEBUG are typically the same. Its not easy to say one setting should be equal to another when configuring setting via importd, but is easy when doing it via settings.py.
Solution:
from importd import d, s

d(
    DEBUG=True,
    TEMPLATE_DEBUG=s("DEBUG")
)

:+1:


[ERROR:flutter/lib/ui/ui_dart_state.cc(206)] Unhandled Exception: 'package:flutter/src/gestures/hit_test.dart'

Steps to Reproduce

Run flutter create bug.
Update the files as follows: ...
...

Expected results:
Actual results:

Logs

Hello @kaledai
can you please provide flutter doctor -v, flutter run -v, and minimal reproduction code?
Thanks

@kaledai
Please provide above requested details to properly address your issue. Only providing error as issue title without any description, code or logs doesn't help.

Without additional information, we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.
Could everyone who still has this problem please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.


Fix default celery queue

Purpose
Privacy requests are no longer running in the default queue.
Changes

Remove the leading space in the default fidesops queue name
Use apply_async to specify the default queue for running privacy requests

Before
worker_1            | -- ******* ---- .> task events: OFF (enable -E to monitor tasks in this worker)
worker_1            | --- ***** -----
worker_1            |  -------------- [queues]
worker_1            |                 .>  fidesops        exchange= fidesops(direct) key= fidesops
worker_1            |                 .> fidesops.email   exchange=fidesops.email(direct) key=fidesops.email

After
ebserver_1         | - ** ---------- .> app:         fidesops.ops.tasks:0xffffb1c4b640
webserver_1         | - ** ---------- .> transport:   redis://:**@redis:6379/0
webserver_1         | - ** ---------- .> results:     redis://:**@redis:6379/0
webserver_1         | - *** --- * --- .> concurrency: 2 (prefork)
webserver_1         | -- ******* ---- .> task events: OFF (enable -E to monitor tasks in this worker)
webserver_1         | --- ***** -----
webserver_1         |  -------------- [queues]
webserver_1         |                 .> fidesops         exchange=fidesops(direct) key=fidesops
webserver_1         |                 .> fidesops.email   exchange=fidesops.email(direct) key=fidesops.email

Checklist

[ ] Update CHANGELOG.md file

[ ] Merge in main so the most recent CHANGELOG.md file is being appended to
[ ] Add description within the Unreleased section in an appropriate category. Add a new category from the list at the top of the file if the needed one isn't already there.
[ ] Add a link to this PR at the end of the description with the PR number as the text. example: #1

[ ] Applicable documentation updated (guides, quickstart, postman collections, tutorial, fidesdemo, database diagram.
If docs updated (select one):

[ ] documentation complete, or draft/outline provided (tag docs-team to complete/review on this branch)
[ ] documentation issue created (tag docs-team to complete issue separately)

[ ] Good unit test/integration test coverage
[ ] This PR contains a DB migration. If checked, the reviewer should confirm with the author that the down_revision correctly references the previous migration before merging
[ ] The Run Unsafe PR Checks label has been applied, and checks have passed, if this PR touches any external services

Ticket
Fixes #

Closing, for example purposes while we diagnose where this extra space is coming from.


:bug: BufferedProcess.kill now fully kills any child-process-eption that happens

closes #7252

fixes :bug: where child processes spawned by spawned child processes on *nix systems were not getting killed correctly

relevant article cred for where this code comes from

@thomasjo It should be good to go now, checking to make sure changes still retain functionality

Also, I'm pretty sure psTree is asynchronous, meaning that it won't work to set it to something outside the callback. The forEach has to be handled inside the callback

Aha, that changes the lay of the land slightly. I guess this should work then
parentPid = @process.pid
psTree parentPid, (err, children) =>
  pidsToKill = children.map(child) -> child.PID

  for pid in pidsToKill
    try
      process.kill(pid)
  @killProcess()

Got it done, tested it so it should be good to go!

Great, the code looks good to me now. Although I haven't tested this yet, which brings me to the next point; it would be great if you could add a test for this to ensure we're protected against regressions in functionality.
Maybe we should add a separate describe block for "on Linux and OS X" (or some such name) along the lines of the "on Windows" block. And given the added functionality is dependent upon actually running on a *NIX system, the block should not run on Windows, so simply return if the platform is set to win32.
/cc @atom/feedback

@thomasjo to that effect, shouldn't the killOnWindows function also have a check to make sure it is windows?

also, I'm not 100% sure how to test for the behavior. I know the windows spec block tests to make sure the process is wrapped in a cmd.exe wrapper, but I'm not sure how to run a command that spawns another child process and keeps it running

to that effect, shouldn't the killOnWindows function also have a check to make sure it is windows?

I was specifically talking about specs in that context, so we are not changing e.g. killOnWindows or killOnNix to check for platforms. What we need to do though, is to ensure we don't try to run the specs covering killOnNix when we're on a Windows platform.

If you don't feel up to the challenge with regards to adding specs for this — I realize testing this is not trivial — perhaps one of folks from @atom/non-github-maintainers (or someone else) would like to assist. If nobody hops on this, I'll try to find some time by the end of the week.

Makes sense. I'll try and get this finished up over the next couple of days.

@thomasjo I've racked my brain trying to figure out a way to test this out. I can't think of any system commands that would spawn their own child processes (except maybe a fork bomb, but that's probably not a good idea :wink:). I'm not sure exactly where to go from here.

I can't think of any system commands that would spawn their own child processes

probably foreman, or perhaps a web server that does concurrency via child processes?

@thedaniel yeah that would work, the only issue is that the test suite would have to install foreman just for doing testing. There are a lot of npm packages as well that could work to test this behavior out, but to add another package solely for testing this one behavior seems like overkill to me.
I'm willing to write a test using an npm library to generate the child processes, but only if it's deemed worth adding.

ah, sorry, i just skimmed this and didn't get the full context.

Does this really work? This is just terminology ain't it. No killing


{Core} Print human readable message if catching UnicodeDecodeError while reading service principal certificate

Description
This PR is to fix #12673
When user specify --cert with a pfx (binary file), it will print the trace stack before. This is to fix this by printing a human readable message.
I'm open to any suggestion to give a better message.
Testing Guide

Generate a pfx file first, say it is certificate.pfx

Before:
az login --service-principal --username <YOUR_USER_NAME> --password ./certificate.pfx --tenant <YOUR_TENANT>
The command failed with an unexpected error. Here is the traceback:

'charmap' codec can't decode byte 0x90 in position 33: character maps to <undefined>
Traceback (most recent call last):
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-yf22vmg2\knack\knack\cli.py", line 215, in invoke
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\commands\__init__.py", line 654, in execute
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\commands\__init__.py", line 718, in _run_jobs_serially
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\commands\__init__.py", line 711, in _run_job
  File "C:\Users\VSSADM~1\AppData\Local\Temp\pip-install-yf22vmg2\six\six.py", line 703, in reraise
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\commands\__init__.py", line 688, in _run_job
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\commands\__init__.py", line 325, in __call__
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\__init__.py", line 545, in default_command_handler
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\command_modules\profile\custom.py", line 150, in login
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\_profile.py", line 208, in find_subscriptions_on_login
  File "D:\a\1\s\build_scripts\windows\artifacts\cli\Lib\site-packages\azure\cli\core\_profile.py", line 1142, in __init__
  File "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\lib\encodings\cp1252.py", line 23, in decode
    return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 33: character maps to <undefined>

After:
az login --service-principal --username <YOUR_USER_NAME> --password ./certificate.pfx --tenant <YOUR_TENANT>
Invalid certificate, please use a valid PEM file.

History Notes

[Component Name 1] BREAKING CHANGE: az command a: Make some customer-facing breaking change.
[Component Name 2] az command b: Add some customer-facing feature.

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR title and description has followed the guideline in Submitting Pull Requests.

[ ] I adhere to the Command Guidelines.

service principal certificate


Fix compatibility with Vaadin 7.7.0

Closes #31

This change is

Reviewed 3 of 3 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Same as #33 but for correct branch...


THREE.js is undefined

Hello, I've installed your package through npm, and I'm loading it as a es6 module, like this:
import * as THREE from 'three';
import vox from 'vox.js';

Unfortunately, it looks like THREE.js is not defined. The code fails when it calls the vox.MeshBuilder.build() method
    /**
     * Voxelデータからジオメトリとマテリアルを作成する.
     */
    vox.MeshBuilder.prototype.build = function() {
        this.geometry = new THREE.Geometry();
        this.material = new THREE.MeshPhongMaterial();

With the error THREE is not defined

Ok, I've solved this problem passing THREE like this:
import * as THREE from 'three';
let vox = require('vox.js')(THREE);

This worked in TypeScript:
import * as THREE from 'three';
(window as any).THREE = THREE;
const vox = require('vox.js');


[BUG]: Not loading linear-gradient CSS.

Application freeze and the debug log was:
The image linear-gradient(to right,var(--tw-gradient-stops)) could not be shown because it is not supported yet.

Hi! Unfortunately, linear-gradients are not supported. TkinterWeb supports CSS 2.1, which predates the addition of gradients.


FR: Add possibility to map platform

Hi Ricardo,
It would be nice to filter or map vms with defined platform.
We also want to support you in development, if you want.
Best regards,
David

Hi David,
Do you mean something similar to host_site_relation but vm_platform_relation? That you have a list of regex matches which assign a predefined platform to matching VMs?

We also want to support you in development, if you want.

Sounds great 😊, what do you have in mind?
The change should be pretty straight forward.

Add config option to sample config
Add this to the vmware source valid config options
Add to list of validated relations in config validation
Add match in add_vm to apply relation if set and fall back to current assignment of platform to VM.

Hi Ricardo,
you are right, similar to host_site_relation.
My collegue will try to change in code. If he will finish, we would like to push in extra branch.
David

Sounds great.

Hi Ricardo,
there are several questions, my colleque opened a pull request, maybe u can help him?
David

Hi, sorry for the late reply. I have seen it but need to change a few things around.
Thank your for the contribution and hopefully will be able to add it soon.

Hi Ricardo,
thanks for your answer. We got already another version of the connection.py we're testing with more changes, but it isn't finish yet. When you want I will open an extra pull request with our new file, but I guess it doesn't make much sense.
I'm really excited to see your solution.
Thanks for your help :)
Flo

This sounds like a challange 😀. I'm in. Will try to give it a go this afternoon.

Hi,
can you check out the branch "feature/add_vm_platform_relation"? -> https://github.com/bb-Ricardo/netbox-sync/tree/feature/add_vm_platform_relation
Thank you

Hi Ricardo,
I tested it. Your split solution is much smarter than we're had :) thanks... but maybe something is wrong at the variable declaration at the line 1942 of the connection.py file.
platform = None
       for platform_relation in grab(self, "vm_platform_relation", fallback=list()):
           object_regex = platform_relation.get("object_regex")
           print(name) ### this is the servername
           print(object_regex) ### thats the platform name
           if object_regex.match(name): ### the match tries to compare the vm name with the platform?
               platform = platform_relation.get("platform_name")
               log.debug2(f"Found a match ({object_regex.pattern}) for {name}, using platform '{platform}'")
               break

I'm not so much into like you but I see that the  If-Condition  not fulfilled and change the platform variable.
Is that correct?
Have a nice weekend so far
Flo

Hey,
Yes it tries to compare the VM name if it matches the regex expression. Wasn't this your intention?
If not what did you try to do and can you give some more precise examples?

Hi Ricardo,
the buildin VMWare Platform declaration for Windows is "Microsoft Windows Server 2016 or later (64-bit)" or for CentOS is "CentOS 8 (64-bit)". In our environment we change the platform of Windows  to "windows2016" and centos to "centos8" because we want to use shorter platform-names. Now we thought we use the vm_platform_relation like
vm_platform_relation = microsoft-windows-server-2016-or-later-64-bit.* = windows2016, centos-8-64-bit.* = centos8
I guess the compare should go against platform = get_string_or_none(grab(obj, "guest.guestFullName", fallback=platform)) not the Name of the VMs
something like
platform = get_string_or_none(grab(obj, "guest.guestFullName", fallback=platform))
        for platform_relation in grab(self, "vm_platform_relation", fallback=list()):
            object_regex = platform_relation.get("object_regex")
            if object_regex.match(platform):
                platform = platform_relation.get("platform")
                log.debug2(f"Found a match ({object_regex.pattern}) for {name}, using platform '{platform}'")
                break

I hope that make sense :)
Best
Flo

Changed it around. Does this work for you?

Hi Ricardo,
YES :) that’s it. I tested it and it looks fine so far.
Thanks for your help Ricardo nice work!
Flo

Great thank you for testing. Merge to dev branch


Display_list bug

https://share.sourceacademy.nus.edu.sg/a1mdc
My student, Terence Goh Yan Chen (e1490849) discovered the following bug. In particular, it should be list(1, 2, 3, 4) rather than [1, list(2, 3, 4)]. (see line 6)
He suggests the following:
from looking at the source code its because of the cycle detection, it catches all elements it has seen before and remembers them, even if it isnt nested in itself
it then looks in this cache before anything else, preventing loops when an element is nested in itself.
the fix would be to only store items you are nested in, that might reduce efficiency in some cases but will solve this i think either that or continue to process after hitting the cache, merging pairs into the list

Not frontend, but js-slang issue. Duplicate of https://github.com/source-academy/js-slang/issues/1124, do you mind posting your comment there?


ValueError: Invalid dir_browser htdocs_path

Describe the bug
wsgidav fails to start with the default configuration, probably because pip install does not install everything that's required.
To Reproduce

Install it by running

pip3 install --user --use-feature=in-tree-build --compile --no-binary ":all" .

Run

wsgidav --root=/usr/share/empty

Expected behavior
It should start.
Screenshots, Log-Files, Stacktrace
Running without configuration file.
Traceback (most recent call last):
  File "/home/ciupicri/.local/bin/wsgidav", line 8, in <module>
    sys.exit(run())
  File "/home/ciupicri/.local/lib/python3.10/site-packages/wsgidav/server/server_cli.py", line 803, in run
    app = WsgiDAVApp(config)
  File "/home/ciupicri/.local/lib/python3.10/site-packages/wsgidav/wsgidav_app.py", line 237, in __init__
    app = mw(self, self.application, config)
  File "/home/ciupicri/.local/lib/python3.10/site-packages/wsgidav/dir_browser/_dir_browser.py", line 60, in __init__
    raise ValueError(
ValueError: Invalid dir_browser htdocs_path '/home/ciupicri/.local/lib/python3.10/site-packages/wsgidav/dir_browser/htdocs'

Environment
WsgiDAV/4.0.1 Python/3.10.2(64 bit) Linux-5.15.15-200.fc35.x86_64-x86_64-with-glibc2.34
Python from: /usr/bin/python3

This worked for me:
cd test_pip
test_pip % python -m venv .venv
test_pip % source .venv/bin/activate
test_pip % python -m pip install -U pip
test_pip % python -m pip install wsgidav cheroot
test_pip % wsgidav --root . --auth anonymous --browse

It works for me too, but you should also try it with the bleeding edge version, i.e. d22ada5db70812ac9201c6861c53ce5cf2157342.
Also in case it matters,
$ pip3 --version
pip 21.2.3 from /usr/lib/python3.10/site-packages/pip (python 3.10)

The issue is simple: the htdocs_path folder is not included in the .tar.gz archive uploaded to PyPI.

It doesn't even get installed when running python setup.py install in the root of this repo. The folder is only correctly installed when using the wheel published to PyPI.

I've updated to c83c2bd91c1307e0c5115b9fa34c1241b2b52640 and reinstalled, but I'm still getting
Running without configuration file.
Traceback (most recent call last):
  File "/home/ciupicri/.local/bin/wsgidav", line 8, in <module>
    sys.exit(run())
  File "/home/ciupicri/.local/lib/python3.10/site-packages/wsgidav/server/server_cli.py", line 803, in run
    app = WsgiDAVApp(config)
  File "/home/ciupicri/.local/lib/python3.10/site-packages/wsgidav/wsgidav_app.py", line 237, in __init__
    app = mw(self, self.application, config)
  File "/home/ciupicri/.local/lib/python3.10/site-packages/wsgidav/dir_browser/_dir_browser.py", line 60, in __init__
    raise ValueError(
ValueError: Invalid dir_browser htdocs_path '/home/ciupicri/.local/lib/python3.10/site-packages/wsgidav/dir_browser/htdocs'

For what's worth, I am seeing the same issue on a Raspberry Pi. Is there a work-around?

Yeah, create a symlink where it's needed pointing to that directory in the source code, e.g.
~/.local/lib/python3.10/site-packages/wsgidav/dir_browser/htdocs ->
~/github-repos/wsgidav/wsgidav/dir_browser/htdocs
aa
bb

Thanks, Cristian!

I've just tested version 6c043393d58c1e045d1fe0ce7ea7b9fac2a63af3 and the issue is still present.

Can you give it another try?

Version 721d85c74b2f10f266571e85560d626d419c206f works fine.

Thanks

I have the same problem.
Please excuse my ignorance (I have no clue about git, pip etc): how can I use install this version? Thx.

sry, found it myself.
https://wsgidav.readthedocs.io/en/latest/installation.html#linux-macos

Or install the latest (potentially unstable) development version directly from GitHub:
$ pip install git+https://github.com/mar10/wsgidav.git


Subselection in ZarrTrajWriter not implemented

Spec contains instructions on how this should be implemented

Closing because spec has changed to the H5MD spec, so subselection is no longer relevant


Removing TIA from task for releases/m109

A newer version (major version change 1.* to 2.) of VsTest will have the TIA option (removed from preview) enabled. Removing from 1.

:clock1:


[FEATURE] upload files without login

Description
Hi,
I use this in an isolated network so I am not concerned with abuse. It would be ideal if an env variable can be set to allow file uploads without login just as text can be uploaded without login.
Screenshots
No response
Additional information
No response

@m-shaffer done

That is unfortunate. I notice the github action failed: https://github.com/HemmeligOrg/Hemmelig.app/actions/runs/6867813468/attempts/1
Rerunning for v5.14.0

Yes, now, this is strange.
 $ docker exec hemmelig printenv
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=e7bddd904f5d
SECRET_UPLOAD_RESTRICTION=false
NODE_VERSION=18.18.2
YARN_VERSION=1.22.19
NODE_ENV=production
HOME=/home/node

It is set to false: SECRET_UPLOAD_RESTRICTION=false
However, if I go to the frontend to view the window.__SECRET_CONFIG, it is set to true.
I do wonder if there is a bug with the configuration creation for the frontend.
Because if you exec into the container, run node then this:
> process.env.SECRET_UPLOAD_RESTRICTION
'false'

v5.15.2 solves this: https://github.com/HemmeligOrg/Hemmelig.app/commit/1404f0ac58e82f4e57b275aa0cbda57d89d6f26a

confirmed this is working. thanks!


Update tutorial with self-served feature

Our customers don't need to reach us out anymore to find out the Sign on URL, Reply URL and Identifier. Instead, they can do it from the FE of the TK app

@marta-colombas : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off

@ktoliver : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Reengineer CRO_Value to have only one value place.

CRO_Value should have all it's value components, for example stringValue or numberValue converted to a single void* typed 'value', which can be converted on the fly to what we need. Since a type is recorded as well, it should be pretty easy.

This will probably take place on a separate branch because its easily the largest change that will be made, however it will also break EVERY library made for it, so it should be done sooner rather than later.

Closed in #18


Fix typos: adjusting -> adjust

This change is

http://cockroach-docs-review.s3-website-us-east-1.amazonaws.com/b8fa85085f2d3c87e8c850b860cfacab016cab49/


Safari 9.0.3 not working

It doesn't work in Safari 9.0.3.

I had personally tested over various platforms with many browsers. It's working fine.
Platforms :
-Windows
-Ubuntu
Browsers :
-Google Chrome
-Mozilla Firefox
-IE and Edge
-Opera
-UC Browser
and obviously
-- Safari


[Flaky Test] DependenciesGraphProvider_GetChildrenAsync fails with no source changes

16:20:22 D:\j\workspace\windows_relea---c9724ea3\build\build.proj(80,5): error :     DependenciesGraphProvider_GetChildrenAsync [FAIL]
16:20:22         Assert.Equal() Failure
16:20:22         Expected: 1
16:20:22         Actual:   0
16:20:22         Stack Trace:
16:20:22           D:\j\workspace\windows_relea---c9724ea3\src\Microsoft.VisualStudio.ProjectSystem.Managed.VS.UnitTests\ProjectSystem\VS\Tree\Dependencies\DependenciesGraphProviderTests.cs(195,0):
                   at Microsoft.VisualStudio.ProjectSystem.VS.Tree.Dependencies.DependenciesGraphProviderTests.<DependenciesGraphProvider_GetChildrenAsync>d__3.MoveNext()
16:20:22           --- End of stack trace from previous location where exception was thrown ---
16:20:22              at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
16:20:22              at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
16:20:22           --- End of stack trace from previous location where exception was thrown ---
16:20:22              at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
16:20:22              at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
16:20:22           --- End of stack trace from previous location where exception was thrown ---
16:20:22              at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
16:20:22              at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)

Also, should probably add a message to this assert so it clear from the failure what went wrong

tag @abpiskunov

Had another failure on Jenkins: http://dotnet-ci.cloudapp.net/job/dotnet_roslyn-project-system/job/master/job/windows_release_prtest/384/console

PR #467

This is still failing: http://dotnet-ci.cloudapp.net/job/dotnet_roslyn-project-system/job/master/job/windows_release_prtest/396/artifact/bin/Release/Tests/TestResults.html.

This this again: http://dotnet-ci.cloudapp.net/job/dotnet_roslyn-project-system/job/master/job/windows_release_prtest/431/


Finally drop deprecated garden.sapcloud.io/role label

How to categorize this PR?

/area dev-productivity
/kind cleanup technical-debt
What this PR does / why we need it:
This PR mainly and finally abandons the deprecated garden.sapcloud.io/role label 🥳
It revises two more aspects along the way:

HA doc
Ref to etcd-druid PR that I filed when I was trying to solve the related TODO 😞

Release note:

The deprecated label `garden.sapcloud.io/role` was finally removed from all Gardener components and from the API constants.

/hold
because of https://github.com/gardener/gardener/pull/7036#pullrequestreview-1186198232

/test pull-gardener-integration

/test pull-gardener-e2e-kind-migration

Thanks for the cleanup! I guess this change is expected to roll the etcd Pods, right? Or will the etcd Pods anyways be rolled due to the new version of etcd-druid?

/test pull-gardener-e2e-kind

@ialidzhikov

Thanks for the cleanup! I guess this change is expected to roll the etcd Pods, right? Or will the etcd Pods anyways be rolled due to the new version of etcd-druid?

Yes, that's correct 👍

Thanks! My only idea was that if<EMAIL_ADDRESS>does not restart the etcd Pods, then we can combine this PR with an etcd-druid version bump that restarts the etcd Pods.


Much badges & metadata for project from badge.kloud51.com

http://badge.kloud51.com itself has been implemented in Python and it
would make sense to be used here since this project has been implemented in python as well.

Thank you for contributing to openstack/bandit!
openstack/bandit uses Gerrit for code review.
If you have never contributed to OpenStack before make sure you have read the
getting started documentation:
http://docs.openstack.org/infra/manual/developers.html#getting-started
Otherwise please visit
http://docs.openstack.org/infra/manual/developers.html#development-workflow
and follow the instructions there to upload your change to Gerrit.


🔧  Making GBD Cause Hierarchy private

Hey @lucasrodes - there's some unexpected stuff coming up in data-diff, just wanted to flag in case that's unexpected.


EMQX configuration not persistent after Home Assistant full backup / restore

EMQX configuration not persistent after Home Assistant full backup / restore
After system restore EMQX credentials are default, need to re-add users etc.

The issue is still happening on the latest release


Heavy And I Mean HEAVY Lag.


Screen sharing on Slack doesn't seem to work

Application version: 2.7.0-b1
OS: Arch Linux

Steps to Reproduce:

Go to a Slack instances
Start a huddle
Try to share screen
The icon activates, but no screen share or prompt happens.

Screenshots

seems to be the same #95

I've never been able to get it to work, either. I always assumed it was my fault and that it had to do with some arcane MacOS security model setting (I'm running Sonoma 14.1.2). Useful to know that it's happening for LInux, as well.

https://github.com/getstation/desktop-app/issues/95


logic regarding replacing default image

The order of the two if may need to be changed? When replace_default = true, and sysimage_path = nothing (default: sysimage_path should be nothing when replacing default)
https://github.com/KristofferC/PackageCompilerX.jl/blob/61791fdc8379881654c0175d68e65f92e46d1c8e/src/PackageCompilerX.jl#L228-L240
The first if will overwrite the sysimage_path variable:↓
https://github.com/KristofferC/PackageCompilerX.jl/blob/61791fdc8379881654c0175d68e65f92e46d1c8e/src/PackageCompilerX.jl#L228-L235
so the second if will always error out with replace_default = true:↓
https://github.com/KristofferC/PackageCompilerX.jl/blob/61791fdc8379881654c0175d68e65f92e46d1c8e/src/PackageCompilerX.jl#L236-L240

Oops, I added that recently without any local testing... Thanks for the report.


Margin added to images on history page

Purpose
On the history page, there are many images and text are very close to each other.
The purpose of this PR is to fix #264
Goals
To add the margin to each image
Approach
in the css added the margin to the img tag
Screenshots

Preview Link
https://killerkc12.github.io/sack-site/history/
Checklist

[x] This PR doesn't commit any keys, passwords, tokens, usernames, or other secrets.
[x] I have read and understood the development best practices guidelines
[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation

Test environment
OS: Windows
Browser : Chrome
Version : latest
Learning
Learn about margins

Hi @killerkc12, Thank you for getting this done. Custom CSS rules are added in the assets/css/custom.css file. Can you move this rule to the custom.css file? and also can you add a media query to set the margin of the image to 5px on mobile view, because with a 20px margin on mobile view some images won't align properly.

Done, added to custom.css and added media query as well


Cudnn tensor

probably not very optimal, feel free to change it

Will leave this one up for reference, but currently plan is to use sys/result directly in dfdx for testing until usage becomes more clear

ok, i'll close (or maybe draft) this PR

Glad to help. If you have any questions regarding cuDNN, feel free to ask me.


[Documentation] Going to production page

I want to know what changes I need to make to my project and/or workflows that should be changed when I am looking to take my app to production use. Some items that should be included (perhaps just a link to external resources):

Deploying to mainnet (if needed)
Version management (on and off-chain)

Workflows to upgrade over time in prod

#1658
disable devmode at compile time
optimizations to consider refactoring on
... more?

User's Request
A top-level page on the side-nav that encompass these tips and tricks, perhaps more sub pages if needed.

Note: I closed #1658 in favor of #1084 (they were redundant)


New Cookbook for supporting ops, monitoring, and logging agents

Full install, upgrade, uninstall, and custom config support for all Google agents on their respectively supported platforms.
Full CI testing against all supported operating systems.
Some notes:
SLES 15 & OpenSuSE Leap are currently skipped in CI for logging due to a known issue with the install.
Follows Chef recommended practices as much as possible
Has some hacks to work around bugs in CINC, the open source Chef clone.

@qingling128 Dylan is working on setting up his Google CLA.

@googlebot I signed it!

@googlebot I consent

Joe suggested I elaborate the hacks to work around the current CINC bugs.
Essentially, the service resource is supposed to support specifying which user is running the commands. In CINC this is broken, it tries to pass an empty username. This works in official Chef. The workaround is to shell out to bash with a sudo systemctl command instead of relying on the service resource at the moment. We should open an issue on the repo once this PR is merged to track the fixing of the bug on CINC (I'll be opening the bug report with them on Monday, so we can link to it for tracking purposes) so that we can remove the hack and use the proper service resource for idempotence.


Add support for libcurl's multi interface

Add support for libcurl's multi event interface
Description
EasyCurl.jl currently utilizes libcurl’s ‘easy’ synchronous interface. This implies that applications using EasyCurl.jl must follow a sequential request logic, which may not always be the most efficient approach.
To address this limitation, libcurl’s multi interface comes into play. It is built on top of the ‘easy’ interface and should be relatively straightforward to integrate with the existing EasyCurl.jl package.
Given our goal of creating event-driven systems, we are particularly interested in adding the event interface implemented by curl_multi_socket_action function.
Basic requirements

[ ] The methods must confirm to the library's existing structure
[ ] The methods must be tested to cover all possible use cases, errors and mistakes
[ ] The methods must be documented in accordance with the guidelines

Tasks

[ ] Research the existing implementation of the multi event interface at Downloads.jl
[ ] Implement a similar event based on top of the existing library.
[ ] Write tests.
[ ] Benchmark the solution.

Resources

Downloads.jl (core package)
libcurl multi event tutorial
libcurl multi tutorial

Would you consider joining the development of https://github.com/bluesmoon/CurlHTTP.jl instead. It already has support for CurlMulti.

Hi, @bluesmoon!
We already have a lot of packages (and many more coming) that already rely on EasyCurl.jl, so we can't switch easily. However, I think we could figure something out. Maybe you're willing to do sort of a merger and become one of the contributors? We can work out a plan and help with a rewrite to have this issue covered. What do you think?

CurlHTTP has been around for a while. We open sourced it 8 months ago, but it has been in use internally at my company for about 3 years, and it's quite mature at this point. We also have a lot of dependence on it as well as other open source packages.
One easy way to get all the functionality into EasyCurl would be to make a EasyCurl into a wrapper around CurlHTTP. I can look into what that would take.

Funnily enough, EasyCurl has been around for about 6 years in our company, used around in different internal projects. We've decided to open source it not that long ago, too.
I think it's possible to do a soft merger or something like that if you wish. Supporting both interfaces for some time. We shouldn't be clashing around this package though. Nobody wants to rewrite their code base. :)
Do you have any other projects you want to open source? We've made our own registry Green because of the General's rigid policies. We're more lax on naming conventions but more stringent on cod and docs.

Nice! Yes, there will be other code we open source over time. Will you be at JuliaCon this year? I'll be speaking there.

I can't say for sure right now, but I'll watch the talks for sure. What are you going to cover?

The motivation behind CurlHTTP & the capabilities.


Output variable request: Check if a tag is created upstream and run workflow only based on that

It'd be nice to be able to check if a tag is created upstream, and run the sync action only when it is created. The GitHub workflows syntax seem to allow checking of tags only in the current repository, not upstream, so that might need to be handled with an action.
Thus the feature request here.

Yeah, I think if you're trying to use a tag's creation on the remote branch as a workflow trigger, that doesn't sound feasible. You could try something like this in your workflow steps to run when a given tag is present (but I don't think it's what you're looking for). I don't think I can help much beyond that since I can't control workflow triggers.
      - name: List tags
        id: list_tags
        run: |
          git ls-remote --tags {remote_repo_url}
          git tag -l > tags.txt

      - name: Sync upstream changes
        id: sync
        if: contains(steps.list_tags.outputs.stdout, 'specific-tag').   # runs conditionally if tag is found
        uses<EMAIL_ADDRESS>          with: # etc.


Watchman pick string as entity when inside match or search template functions

I have some template sensor https://github.com/clempat/home-assistant/blob/main/configurations/heating/heating.yaml#L16
Like
        {%- set data = namespace(radiator_ids=[]) -%}
        {%- for switch in states.switch -%}
          {%- if switch.entity_id is match('switch.heating') and switch.state in ['unavailable', 'unknown'] -%}
            {%- set data.radiator_ids = data.radiator_ids + [switch.entity_id] -%}
          {%- endif -%}
        {%- endfor -%}
        {{ data.radiator_ids | list | count }}

or
        {%- macro getRoomTemperature(room) -%}
            {%- set data = namespace(temperatures=[]) -%}
            {%- set temperature_entities =  expand(area_entities(room)) | selectattr('attributes.device_class', 'eq', 'temperature') | rejectattr('state', 'in', ['unavailable', 'unknown']) -%}
            {%- for entity in temperature_entities -%}
            {%- set device_id = device_id(entity.entity_id) -%}
              {%- if device_attr(device_id, 'model') is search('weather', ignorecase=True) or device_attr(device_id, 'model') is search('sensor.ht', ignorecase=True) %}
                  {%- set data.temperatures = data.temperatures + [entity.state] -%}
              {%- endif -%}
            {%- endfor -%}
            {{ data.temperatures | map('float') | average | round(1) }}
        {%- endmacro -%}
        {{ getRoomTemperature("Salon") }}

I get from watchman:
| switch.heating                 | missing | configurations/heating/heating.yaml:16,25                    |
| sensor.ht                      | missing | configurations/heating/heating.yaml:63,79,95,111,127,143,159 |
|                                |         | ,175,191,207,223,239

I am uncertain if it makes sense to consider those as entity as they are in those templates function which allow having partial name.

Hey @clempat, as documentation mentions, watchman cannot determine if switch.heating is a real entity or just a part of a template. It assumes that all text sequences, encountered in configuration files, which start from switch. can be a real entity. To validate this hypothesis, watchman requests the state of switch.heating from the HA. If nothing is returned, watchman marks this entity as missing in the report.
To exclude these false positives from the report one can use "Ignored entities and services" setting which supports wildcards as well. Hope this helps.

Thanks, sorry I should have better check the documentation. It is already an awesome tool. It helped me a lot to discover some typo I never saw.


Fixing PTX-18156: nil pointer exception

https://jenkins.pwx.dev.purestorage.com/job/Torpedo/view/Torpedo NextPX/job/tp-nextpx-op-csi-security/798/console

I wonder how inspect ever worked before, if it never had token passed


LinearRegression

Not sure how this should be implemented yet, but we should have it

The more I look at this the more I wonder if I should defer this entirely to integration examples with statsmodels or scikit-learn. Easy to let modeling support totally overwhelm everything else.

See #255.


TypeError: (intermediate value).flat is not a function

When attempting to use eleventy-plugin-local-respimg, I am getting the following console error, followed by failure of Eleventy to write most of the pages in my repo, which currently is private:
`TypeError` was thrown:
     TypeError: (intermediate value).flat is not a function

... followed by a path that leads to the plugin's /lib/respimg.js:162:112. Lines 161 through 163 are as follows:
              if (optimize) {
                await Promise.all((await Promise.all(await resizeAndOptimize(sizes, type, src, file, config))).flat().map(f => writeFile(f.dest, f.buff)));
              }

My config for the plugin in .eleventy.js is:
  eleventyConfig.addPlugin(pluginLocalRespImg, {
    folders: {
      source: 'src',
      output: '_site',
    },
    images: {
      resize: {
        min: 300,
        max: 1500,
        step: 300,
      },
      gifToVideo: false,
      sizes: '100vw',
      lazy: true,
      additional: [
        'images/icons/**/*',
      ],
      watch: {
        src: 'images/**/*'
      },
      pngquant: {},
      mozjpeg: {},
      svgo: {},
      gifresize: {},
      webp: {},
      gifwebp: {},
    }
  })

Thanks in advance for any help you can provide about this; please let me know if you need additional information about the error I'm seeing.

Hey! Thanks for using the module and for filing a bug! That line of code is usually related to problems with the images itself; can you please put together a test repo for me to check out, or write a failing test for the repo, that reproduces this error for me to look in to?
Thanks!

@Snugug I have just made the following repo public so you can take a look:
https://github.com/brycewray/eleventy_solo
...and the branch you should check is called "unpacking" (I'm testing a non-webpack version of my site's current Eleventy/webpack repo). If you need more info, please advise, and thanks!

@Snugug Any development on this? (Pardon the semi-intentional pun.) Thanks.

Thanks for the repo! I'll look into this this week.

(intermediate value).flat is not a function
I'm getting this same error when Netlify tries to deploy my site ... it does work locally as expected.
5:05:35 PM: 2020-05-09T22:05:35.287Z Eleventy:EleventyErrorHandler Having trouble writing template: dist/posts/index.html
5:05:35 PM: TemplateWriterWriteError was thrown
5:05:35 PM: 2020-05-09T22:05:35.287Z Eleventy:EleventyErrorHandler (error stack): TemplateWriterWriteError: Having trouble writing template: dist/posts/index.html
5:05:35 PM:     at /opt/build/repo/node_modules/@11ty/eleventy/src/TemplateWriter.js:181:15
5:05:35 PM: 2020-05-09T22:05:35.287Z Eleventy:EleventyErrorHandler (intermediate value).flat is not a function
5:05:35 PM: TypeError was thrown:

Not an issue with your plugin but rather the node version Netlify uses when it deployments your site. In Netlify add an environment variable named "NODE_VERSION" and set to at least 12.16.1 as per this article i.e. https://community.netlify.com/t/npm-run-generate-runs-locally-but-not-on-netlify/10813/2?u=rickthehat

Thanks for the info, @RickTheHat! Works in my local testing with Node 14.2.0. After I revise my Markdown-based <img> content, will make a quick test in Netlify (where I've already adjusted the env var as per that link) and, if it works as I now feel it will, will be closing this issue.

Closing as mentioned earlier.


Format docstrings to facilitate reading

Reformatting the docstrings could make them easier to read. This is how the lineplot docstring renders in jupyterlab:

It is very difficult to read the "Arguments" section, mainly due to that the argument is indented rather than its description and that newlines are inserted in the middle of words so that they are split over two lines.
The image below shows what is the standard for many packages. Here, it is easy to skim the "Parameters" section to find the parameter name of interested, and the chunk of text describing that parameter is clearly indented. Words are never split over multiple lines.

I realize that the docstrings in plotly are not hardcoded for each function, like in other packages, so I don't know if a formatting change is possible, but it would greatly improve the reading experience if it was possible to change the docstring indentation.

Thanks for the feedback! I very much agree :)
Actually the docstrings for PX are auto-generated, so a fix might be pretty easy if you want to give it a shot... the relevant code is here: https://github.com/plotly/plotly.py/blob/master/packages/python/plotly/plotly/express/_doc.py#L376

Thanks for pointing me to the right direction! As you said the reformatting is pretty straightforward. Here are three suggestions I came up with, let me know what you prefer and I can create a PR.

Split the parameter name onto its own line. Although this is consistent with how the graph objects' docstrings are, there is an important difference: graph object don't have the parenthesis indicating type and default values, which does not look that neat having mixed into the text.

Add the parenthesized sentence on the same line as the parameter name. Since the parentheses are so long, this approaches loses the clear segmentation between parameters.

Only add the parameter type to the same line as the parameter name. The retains the clear parameter sections and formatting the parenthesis into a sentence makes it look tidier. This is consistent with the plotly.subplots.make_subplots docstring (and many other packages so readers would be familiar with it). This relies on docstrings being written the same way (which seems like a reasonable criteria) because I split on the : in the parenthesis (I still have to go through and see if there are any notable exceptions).

In both 2 and 3, I would remove the space after the parameter name, in front of the :. Spoiler, my favorite below:
 My choice would be number...
 3

Thanks for the analysis! Option 3 is probably the best, I agree, although some rewriting will be necessary for the ones that accept multiple types (like x in your screenshots) to make it clear which part of the description applies to which type (i.e. if it's a string or int then it's a name or index into data_frame, otherwise it's used as-is). Also note that the current set of docstrings isn't all that consistently written (sorry!) so something more complicated might be needed than a split on colon. You may want to make the lists in the big dict be a bit more structured i.e. the first element is the one that's on the same line, and the rest aren't.
Thanks for being willing to contribute, it's much-appreciated :)

Sounds good, thanks for letting me contribute! I'll make a PR tonight with
a suggestion including a minor rewrite of some docstrings and changed
formats in the source.
Do you want to keep the parentheses in the source or can I remove them? I
think I would ideally rewrite with the parameter types and default values
in the first list item and explain them in the folling list items similar
to what you indicated.
On Sat, Oct 19, 2019, 11:23 Nicolas Kruchten<EMAIL_ADDRESS>wrote:

Thanks for the analysis! Option 3 is probably the best, I agree, although
some rewriting will be necessary for the ones that accept multiple types
(like x in your screenshots) to make it clear which part of the
description applies to which type (i.e. if it's a string or int then it's a
name or index into data_frame, otherwise it's used as-is). Also note that
the current set of docstrings isn't all that consistently written (sorry!)
so something more complicated might be needed than a split on colon. You
may want to make the lists in the big dict be a bit more structured i.e.
the first element is the one that's on the same line, and the rest aren't.
Thanks for being willing to contribute, it's much-appreciated :)
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/plotly/plotly_express/issues/154?email_source=notifications&email_token=ABCZJOOMSBRUCQHGUMLDD4LQPNGCVA5CNFSM4JCNZXVKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBXZODY#issuecomment-544184079,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABCZJOLI7QSOZZ3HMBTN4KLQPNGCVANCNFSM4JCNZXVA
.

I’m not that attached to the parentheses so it makes sense to get rid of them to me. It’s important to keep some clear indication of the default value, but that can go into the main body block.
Thanks again!


⚠ Quirk Club Argentina (API endpoint) has degraded performance

In 3f37d5c, Quirk Club Argentina (API endpoint) (https://us-central1-quirkclub-dev.cloudfunctions.net/api/check/api) experienced degraded performance:

HTTP code: 200
Response time: 13088 ms

Resolved: Quirk Club Argentina (API endpoint) performance has improved in 575e7df.


Profile images not loading

Tried it on fresh install.
When i add profile images to sidebar in the admin area, they will not load in homepage.
When i delete them i get an error.

Thats happening only on localhost, so i guess it must be a config problem. I close the issue


UNDERTOW-612 Localeutils should not throw null pointer exception on i…

…nvalid empty locale
https://issues.jboss.org/browse/UNDERTOW-612

Can one of the admins verify this patch?


Manually modify existing token PR #22485

Hello, could you manually merge this token modification : Modify $YAKU Token address #22485
Thank you

merged


Default value and creation of new document

Guys,
From common logic perspective new ODocument(classA) should already have all fields with default values prepopulated, but OrientDB requires storing of ODocument for population of default values. And more over: this done in strange for this taks method ODocument.validateField().
I suggest:

Refactor ODocument.validateField() (might be in parallel with #3429)
Allow to prepopulate ODocument by default values on creation, but not onSave

So, what do you think?

IMHO pre-populating ODocument with default values is a good solution. I just have to check how it will affect backward compatibility.

:+1

Guys, please consider PR. All tests are OK.

The call to the populateDefaultValues() should be done also on setClass() and setClassname() right?

My idea was that once document created we can do with the object what ever we want, but fields values remains the same. Other wise there are lots of additional questions like: what to do with the a prepopulated field if super class was changed? Clean it or keep it? What to do if new class has the same property by with some default value? And so on.

The problem is that new ODocument() is semantically equivalent to: new ODocument()

My idea was that in case
new ODocument().setClassname(<class>);

document will not have default values, because class was defined after creation of a document, so population of default values should be explicitly invoked.
In case
new ODocument("ClassA").setClassname("ClassB");

document will have default values from ClassA and changing to ClassB will preserve already set values.
If you disagree: just let me know proper way to resolve that.

Seems to be fixed in #4552. Closing?