Muti series and Y Axes, how to use map and scale

Hi, I have 2 line series and 2 Y axes, but I don't know how to bind each line series to different Y axes
Here is my code
<XYPlot
    width={1000}
    height={600}>
    <HorizontalGridLines />
    <LineSeries data={this.props.temperature} />
    <XAxis title="Time" tickFormat={tickFormatter} />
    <YAxis title="Temperature" />
    <LineSeries data={this.props.pressure} />
    <YAxis title="Pressure" orientation="right" />
</XYPlot>

Hey @nichliu
Unfortunately there isn't a straight forward way to bind axes to series. The core thing to know about the XYplot is that is projecting a coordinate system underneath your data and all marks made in it will adhere to that coordinate system. Said XY coordinate system is formed by looking at the domain of the data for each of the series. In order to make your data appear as you wish in a multiple y-axis type series you will have to modify your data and specify the tick values for each YAxis. Here is a rough sketch on the technique:

"Non-dimensionalize" your data: begin by rescaling your data so that y values exist in the range that you wish to shows them. Eg if you have temperatures that go from [50, 97], and pressures that go from [1, 10], you might rescale them to [0, 1]. This will allow them to be expressed in a common zone. (we are referring to this as nondimensionalization, in a hand-wavy kind of way because you are stripping the variables of their hypothetically physical meaning in order to manipulate them computationally). Once all of your yValues exisit in this band [0, 1], it will be easy to compare them.

Specify your YAxis tick values: The new artificial coordinate domain will not be meaningful to your reader, so you project the values into your desired coordiantes (temperature, pressure, etc).

<YAxis tickValues={[0, 1, 2, 3, 4]}>

Alternatively if you used a function to rescale your data you can also invert it and use tickFormat.
I am assuming your data sets are properly formatted for LineSeries ([{x: 1, y: 1}, ...] etc). There is some additional discussion in #131. Now that we've said all that, indulge me in a Data Visualizationist Nit Pick: Dual y-axis charts are bad news, they obscure information and can easily be replaced by small multiples.

I'm gonna close this, but feel free to re-open if this doesn't address you question

Hi, @mcnuttandrew
I did rescale all my data range from 0-1,  the chart scale still min/max of my readings value provided, not from 0-1

then I setup
<YAxis tickValues={[0, 1, 2, 3, 4]}>
But on chart, the new tickValues never show up,

Can you provide a sample of your data? Also can you provide your updated code?

@mcnuttandrew
Here is my code
<XYPlot width={1000} height={600} yDomain={[0,70]} legends={["Test2","Test1"]}  >

My data just like
[{x:<PHONE_NUMBER>,y:23},{x:<PHONE_NUMBER>,y:21.5}]
Right now the chart scale is working, tickValues on left side yAxis is working, but tickValues on second yAxis, right side of the chart are not show up. Here is my screen shot

So my comment about rescaling your data is a little bit different. Because your two data sets are unrelated, it is necessary to move them into a common domain. This can be anything, as long it looks correct to you. Specifically, I am suggesting your data should be formatted like:
data = [{x:<PHONE_NUMBER>,y:1},{x:<PHONE_NUMBER>,y:0}]

then your whole chart should look something like
<XYPlot width={1000} height={1000} >
<XAxis />
<YAxis tickFormat={tick => RESCALING_FUNCTION_FOR_PRESSURE(tick)}/>
<YAxis tickFormat={tick => RESCALING_FUNCTION_FOR_TEMPERATURE(tick)} right={10}/>
<LineSeries data={data1} />
<LineSeries data={data2} />
</XYPlot>

@mcnuttandrew
I got error said
Uncaught ReferenceError: RESCALING_FUNCTION_FOR_PRESSURE is not defined

Instead of rescaling all my data, I just made two graphs and positioned them over top of each other with one YAxis on the left and the other YAxis on the right.  Only one has an XAxis.  Essentially the following:

    <XYPlot height={400} width={730} margin={{ left: 90, right: 90, bottom: 70 }}>
      <VerticalGridLines />
      <HorizontalGridLines />
      <XAxis />
      <YAxis />
      <LineSeries data={this.props.data1} color="green" />
    </XYPlot>

    <XYPlot height={400} width={730} margin={{ left: 90, right: 90, bottom: 70 }}>
      <YAxis orientation="right"/>
      <LineSeries data={this.props.data2} color="blue"/>
    </XYPlot>

You can see it live here: https://goo.gl/o8YC7Y

Excellent answer by @mcnuttandrew. However, you don't necessarily have to take away the dimension from your original y-axis.
Let's assume you have to y-axes, and one x-axis. We will display our original y-axis on the left and call this range yDomain. The y-axis on the right we call cDomain (c = custom).
Each of our domains have a start and end value. We'll refer to them as yDomain.start, cDomain.end, etc. Each domain also represents a range which can be calculated by yDomain.start - yDomain.end ( = yDomain.range ) resp. cDomain.start - cDomain.end ( = cDomain.range ).
We also have a factor which represents the relationship between the two ranges = yDomain.range / cDomain.range.
As Andrew mentioned, the graph has a coordinate system which is based on our yDomain, and xDomain. And we will keep it like that. With the variables above, we can translate values from yDomain > cDomain, and visa versa:
yDomain.value > cDomain.value
cDomain.value (m) = yDomain.start + ((yDomain.value - cDomain.start) * factor)
And the other way around:
cDomain.value > yDomain.value
yDomain.value (n) = ((cDomain.value - yDomain.start) / factor) + cDomain.start
Make sure to:

translate your original cDomain values to yDomain values with the n-formula, before passing them as data to your chart
translate the tickFormat ( = React component property) of the cDomain y-axis values with the m-formula.

And you're good to go :+1: PS draw the above on paper and it will make more sense!

Excellent answer by @mcnuttandrew. However, you don't necessarily have to take away the dimension from your original y-axis.
Let's assume you have to y-axes, and one x-axis. We will display our original y-axis on the left and call this range yDomain. The y-axis on the right we call cDomain (c = custom).
Each of our domains have a start and end value. We'll refer to them as yDomain.start, cDomain.end, etc. Each domain also represents a range which can be calculated by yDomain.start - yDomain.end ( = yDomain.range ) resp. cDomain.start - cDomain.end ( = cDomain.range ).
We also have a factor which represents the relationship between the two ranges = yDomain.range / cDomain.range.
As Andrew mentioned, the graph has a coordinate system which is based on our yDomain, and xDomain. And we will keep it like that. With the variables above, we can translate values from yDomain > cDomain, and visa versa:
yDomain.value > cDomain.value
cDomain.value (m) = yDomain.start + ((yDomain.value - cDomain.start) * factor)
And the other way around:
cDomain.value > yDomain.value
yDomain.value (n) = ((cDomain.value - yDomain.start) / factor) + cDomain.start
Make sure to:

translate your original cDomain values to yDomain values with the n-formula, before passing them as data to your chart
translate the tickFormat ( = React component property) of the cDomain y-axis values with the m-formula.

And you're good to go :+1: PS draw the above on paper and it will make more sense!

@gerardvanderput , do you have an example for the solution you have mention?

@gerardvanderput , do you have an example for the solution you have mention?

@ayepRahman Sorry, I don't. However, the comment I wrote earlier is very detailed so you should be able to create a solution yourself?

@ayepRahman I've just made this work and uploaded the gist here:
https://gist.github.com/rvodden/dc841928d8c24ef28026395a88ff63d3
Note that this assumes that the minimum of the 2nd y-axis is zero.

@ayepRahman
I made an example following @gerardvanderput tip
import React from 'react';

import { XYPlot, XAxis, YAxis, VerticalBarSeries, LineSeries } from 'react-vis';
import 'react-vis/dist/style.css';

export const Example = (props) => {

  // Line data
  const avgPriceMonthly = [
    {x: 'June', y: 45},
    {x: 'July', y: 24},
    {x: 'August', y: 30},
    {x: 'September', y: 40},
    {x: 'October', y: 33}
  ]

  // Bar data
  const monthlySales = [
    {x: 'June', y: 1200},
    {x: 'July', y: 650},
    {x: 'August', y: 1100},
    {x: 'September', y: 750},
    {x: 'October', y: 1470}
  ]

  // Function to convert scale to another axis Y
  const handleCustomScale = (tick) => { // Can be add a customStart parameter to sum with total
    //                                     if scales doesn't start at same point
    const maxSalesValue = Math.max(...monthlySales.map(item => item.y)); // Get max value from sales data
    const maxPriceValue = Math.max(...avgPriceMonthly.map(item => item.y)); // Get max value from prices data
    const factor = maxSalesValue / maxPriceValue; // Calculate factor to convert sales tick to price tick
    return Math.round(tick / factor); // Return result as a integer
  }

  return (
    <XYPlot
      margin={{bottom: 70, left: 70, right: 70}} // Need to add margin to make space for the scale
      xType="ordinal"
      width={600} height={300}>
      <VerticalBarSeries
        barWidth={0.5}
        data={monthlySales}
        color='#15b7f7'
      />
      <LineSeries
        yDomain={[0, Math.max(...avgPriceMonthly.map(item => item.y))]} // Get the max value of the line data
        data={avgPriceMonthly}
        color='#df4747'
        />
      <XAxis tickLabelAngle={-45} />
      <YAxis />
      <YAxis orientation='right' tickTotal={5} tickFormat={v => handleCustomScale(v)} />
    </XYPlot>
  );
}

export default Example;

Result is:


THRIFT-5488: Define PY_SSIZE_T_CLEAN to fix error with using PyObject_CallFunction in python 3.10

THRIFT-5488
Description
When using the refill  python functions for the fallback scenario in ProtocolBase<Impl>::readBytes (protocol.tcc), a SystemError is raised in python 3.10 (this was only a warning till python 3.9) due to the use of #yi for the output buffer argument. The removal of the warning and dropped support is described in Python issue 40943.
Extra test cases have been added to cover serialization/deserialization both with compact & binary protocol both with and without the c-extension
Testing

Run the added unit tests and verify they pass for both python 3.9/3.10: cd lib/py
 make && python test/thrift_TSerializer.py

Comment out the PY_SSIZE_T_CLEAN define in lib/py/src/ext/binary.cpp & lib/py/src/ext/compact.cpp
Re-build and re-run the tests with python 3.9 - verify that the tests pass, but a warning is displayed
Re-build and re-rerun the tests with python 3.10 - verify that the tests: test_TBinaryProtocolAccelerated & test_TCompactProtocolAccelerated fail.

Additionally make cross can also be used to exercise the failure by settings warnings to errors by setting the environment variable PYTHONWARNINGS=error

[x] Did you create an Apache Thrift ticket?  (not required for trivial changes)
[x] If a ticket exists: Does your pull request title follow the pattern "THRIFT-NNNN: describe my issue"?
[x] Did you squash your changes to a single commit?  (not required, but preferred)
[x] Did you do your best to avoid breaking changes?  If one was needed, did you label the Jira ticket with "Breaking-Change"?
[x] If your change does not involve any code, include [skip ci] anywhere in the commit message to free up build resources.

I realized I hadn't added any details about using the unit tests to verify the behavior before and after the patch - added now.
Regarding the CI -  the build is failing at the moment due to a rust dependency issue (clap: use of unstable library feature 'matches_macro') which I also get locally. However, I didn't see the where the python unit tests would be run. Adding -Werror does sound like a good direction though!

@fishy I just verified that after getting the cross tests to run after patching the rust version issue in #2488 the issue can be reproduced by a failure in the cross tests for py3-threader_unframed_binary & compact. Using PYTHONWARNINGS=error make cross with python 3.9 also reproduces the same failures without this patch (albeit also for py2) - but is cleared when the patch is applied.

Are there any specific changes I should make to this patch?
Since the cross tests are now running on master (still one pending erlang related failure), I could also figure out how to add the -Werror or PYTHONWARNINGS=error in that CI step?

Turns out adding environment variables for specific targets for the cross tests was already built in :tada:. I've created a PR against master with just the PYTHONWARNINGS set to error to compare against this branch at #2490

Unfortunately the error couldn't be reproduced on CI since the python version (3.6.9) doesn't actually contain the warning. Regardless, I think having warnings as errors should be beneficial - especially once the CI pythons are updated.

Unfortunately the error couldn't be reproduced on CI since the python version (3.6.9) doesn't actually contain the warning. Regardless, I think having warnings as errors should be beneficial - especially once the CI pythons are updated.

In that case, I'd prefer to revert the CI changes. I don't want the CI to start fail suddenly when Ubuntu decided to upgrade python3 in their version from 3.6 to 3.7.
We might want to consider the CI change in a separated PR so it can be reverted, but that still sounds quite risky to me, as when that upgrade in ubuntu actually happens no one would remember this is the commit to be reverted.
Sorry about the back-and-forth.

In that case, I'd prefer to revert the CI changes. I don't want the CI to start fail suddenly when Ubuntu decided to upgrade python3 in their version from 3.6 to 3.7.

That's a very good point that I hadn't considered at all.

Sorry about the back-and-forth.

No worries at all! Thank you for the review.

@alisaifee Can you rebase your branch on top of the latest master (with your CI fix for rust merged), so that the CI output of this PR would be more meaningful?

@alisaifee Can you rebase your branch on top of the latest master (with your CI fix for rust merged), so that the CI output of this PR would be more meaningful?

I already did that! Sadly there's still one erlang test case failing which I couldn't figure out. The difference between the CI failure now versus before the rust fix, is that the tests actually run now (previously they were failing in the test compilation stage)


Why  and  different in size?

[x] This is not a v0.x issue.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Expected Behavior

Current Behavior

Examples

Context

When I mix them together, that make my layout a bit awkward, and I have to use exact value to keep them consistent. Can provide 'icon' variant or other ways to be consistent?

The components respect the spec. Apply appropriate margin or space with flex box if you wish to mix them.


System.InvalidOperationException: Neither DBus nor GTK are available on the system

Describe the bug
Hi,
I'm running NixOS unstable on Hyprland - when installing OpenUtau (built on Avalonia 11.0.4) and opening any FileBrowserDialog like "File --> Open/Save/Import Audio...." etc. it crashes with the error in title.
Stacktrace:
Unhandled exception. System.InvalidOperationException: Neither DBus nor GTK are available on the system
   at Avalonia.X11.NativeDialogs.CompositeStorageProvider.EnsureStorageProvider()
   at Avalonia.X11.NativeDialogs.CompositeStorageProvider.OpenFilePickerAsync(FilePickerOpenOptions options)
   at OpenUtau.App.FilePicker.OpenFile(Window window, String titleKey, String startLocation, FilePickerFileType[] types) in /build/source/OpenUtau/FilePicker.cs:line 61
   at OpenUtau.App.FilePicker.OpenFile(Window window, String titleKey, FilePickerFileType[] types) in /build/source/OpenUtau/FilePicker.cs:line 53
   at OpenUtau.App.Views.MainWindow.OnMenuImportAudio(Object sender, RoutedEventArgs args) in /build/source/OpenUtau/Views/MainWindow.axaml.cs:line 298
   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state)
   at Avalonia.Threading.SendOrPostCallbackDispatcherOperation.InvokeCore()
   at Avalonia.Threading.DispatcherOperation.Execute()
   at Avalonia.Threading.Dispatcher.ExecuteJob(DispatcherOperation job)
   at Avalonia.Threading.Dispatcher.ExecuteJobsCore(Boolean fromExplicitBackgroundProcessingCallback)
   at Avalonia.Threading.Dispatcher.Signaled()
   at Avalonia.X11.X11PlatformThreading.CheckSignaled()
   at Avalonia.X11.X11PlatformThreading.RunLoop(CancellationToken cancellationToken)
   at Avalonia.Threading.DispatcherFrame.Run(IControlledDispatcherImpl impl)
   at Avalonia.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
   at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken)
   at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args)
   at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime(AppBuilder builder, String[] args, ShutdownMode shutdownMode)
   at OpenUtau.App.Program.Run(String[] args) in /build/source/OpenUtau/Program.cs:line 77
   at OpenUtau.App.Program.Main(String[] args) in /build/source/OpenUtau/Program.cs:line 42

To Reproduce
NixOS Unstable, Hyprland.
Install OpenUtau with home-manager like:
{ config, pkgs, ... }:

{
  home.packages = [
    pkgs.openutau
  ];
}

run it, open FileBrowserDialog / FilePicker.
Expected behavior
FilePicker opens as expected and lets me select a file to open/save to etc.
Avalonia version
11.0.4
OS
Linux
Additional context
Dependencies from nixpkgs
It seems to work on a test VM with NixOS Stable Gnome (Boot upo ISO, Install, nix-shell -p OpenUtau), so it could be only related to Hyprland, maybe? Or some Nix-Packages/Dependencies for FilePicker I'm missing?

Avalonia attempts to use xdg-desktop-portal DBUS protocol provided by any normal modern Linux distro
Avalonia attempts to load GTK using default library load path (which works with anything except for gobolinux and its spiritual followers)

If both of those fail, Avalonia will not be able to show the system file dialog.
Please, adjust your environment in a way that either (1) or (2) will be available.

Thanks for your replies, I was able to find a solution thanks to this upstream issue
Moving my xdg-portal configuration from homemanager to /etc/nixos/configuration.nix did the trick.


Horizontal line is overflow

Using autolayout, I set the graphview 8px trailing and leading space to its view container. However the graph line is overflow. Please take a look at the picture: https://gyazo.com/4d0bfee262e9977983c568b8943c6d17

Try clipping to bounds to prevent the line overflow

This should now be fixed.


Pre-release (v0.8.0)

Confirmed that tests ran successfully on last non-automated commit (1d07e5c). The automated commits only add documentation and wheels, no new features.


Added pages-footer component

Added the pages-footer component and made the changes suggested from the last pull request.

Okay, I updated it!

Congrats @AlexErling

close #211


Create a new pull request by comparing

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.07%) to 95.618%

Totals

Change from base Build<PHONE_NUMBER>:
0.07%

Covered Lines:
1962

Relevant Lines:
2015

💛  - Coveralls


No display

Not displaying anything even though its launched and everything

What do you mean by modifying the "EmitData()" I have only one thing in game.hpp that says "void EmitData()"

Still works ? can u give ur discord ?

apex0609

apex0609

I add u... Marchosia
Pls accept

Apex pls awnser me on discord


Feature request: live agenda

Is it possible to create an list of times and events then get the signage to refresh every minute to keep the display up to date. We have some meeting rooms at our charity that get booked for various events. Currently we have a static image showing what is in each room at the time. But an agenda would be better. Example:
Now - 10:00 - Discussion
10:00 - 11:00 - Meeting
11:00 - 12:00 - Review
12:00 - 13:00 - Lunch
etc
The list would keep updating and change automatically at the required times.

There is a way to schedule slides for a specific time. You can just have all the slides in one queue and have only one of them enabled at a time. Display clients update queues periodically, so any changes are automatically fetched from the server. Queues aren't updated every minute but quite often anyway. I think the update interval is 10 minutes. Is this what you meant?

Kinda. The main thing is having the all times and events in one list, that way someone can update just that seperate list and the signage can evaluate the list and display the correct text on screen.
So with the above example, at 11:00 the display would stop showing the previous events and show "Now - 12:00 - Review" plus the rest of the list without anyone having to make a new slide. The same list is used and no one has to make a series of slides.
The ladies at the charity are not technical and even struggle with creating stuff from a simple template. I am thinking of the simplest way to achieve the solution with the minimum of time and input from them.

Ah that is unfortunately not supported out of the box but it'd definitely be possible via the LibreSignage API. I don't think it's really worth it to include such functionality in LibreSignage itself since it's probably not something most people would use. However, if you know JavaScript you could write a program that does exactly what you are looking for.

Cool, thanks, something for me to investigate. Is there a copy of the API documentation to study? And some example projects that include javascript?

Docs for API endpoints are inclueded in the PHP source files. The endpoint files are in src/api/endpoint or if you're viewing the next branch then it's src/public/api/endpoint. The docs are also compiled into HTML versions that can be viewed in the LibreSignage web interface.
I'd recommend you use the JavaScript API library used by LibreSignage itself from src/node_modules/ls-api. The library is a node.js package and also works standalone in node. It makes authentication and calling endpoints quite simple.
Right now there are no example projects but you can obviously check some of the LibreSignage web interface JS files for a working example. The general procedure is as follows:

Import the required modules:

var APIInterface = require("ls-api").APIInterface;
var APIEndpoints = require("ls-api").APIEndpoints;

Create a new APIInterface object with eg. let API = new APIInterface("<server hostname>");
Init the APIInterface: await API.init();
Login with await API.login("user", "pass", false);
Call endpoints with await API.call(endpoint, data);. 'endpoint' is one of the endpoints from the imported module APIEndpoints. 'data' is the data object to send to the server.

Wow, that is a lot to take in! Thanks for the detailed explanation. Looks like I have a lot to learn to accomplish my goal (I am not a programmer but can muddle my way through).
Does the code go into the LibreSignage editor markup window or elsewhere? Once I get it installed and working on my Debian system then I shall ask less questions - promise.

You'll need to write an external JavaScript node.js program to do what you want. Basically you bypass the web interface completely and access the bare API from the external program to create the slides.
It might not be the simplest thing to do but once you figure out how to set everything up it's really quite straightforward. Questions are ok, I'm happy to help if you get stuck.

Lastly (I hope), where are the .js files placed and how does one call them?

Build LibreSignage on your system by following the instructions in the readme. If you want to use the Docker images instead, at least clone the LibreSignage repo and install npm and node.js. They are needed later.
Create a directory for your project, let's use lsagenda for example. Move into the new directory. Run npm init. Answer the questions asked by npm init.
Open package.json with your text editor of choice and add the following field into it but replace
[LibreSignage_repo] with the path where you cloned LibreSignage.

"dependencies": {
    "xmlhttprequest": "^1.8.0",
    "ls-api": "file:[LibreSignage_repo]/src/node_modules/ls-api",
    "ls-assert": "file:[LibreSignage_repo]/src/node_modules/ls-assert",
    "ls-cookie": "file:[LibreSignage_repo]/src/node_modules/ls-cookie",
    "ls-user": "file:[LibreSignage_repo]/src/node_modules/ls-user"
}

Run npm install.
Create a new directory src and move into it.
Open a new file index.js with you text editor and import the required modules:

var APIInterface = require("ls-api").APIInterface;
var APIEndpoints = require("ls-api").APIEndpoints;

Start writing code.

Whoa, I never would have worked all that out by myself. Many thanks :)

No problem :)


🐛 Fixed 3.0 migration for SQLite

closes #11263

The issue here is with hitting SQLite's internal SQLITE_LIMIT_VARIABLE_NUMBER limit when updating with large amount of posts having metadata fields set (ref.: https://sqlite.org/limits.html#max_variable_number)
Transforming migration to iterative method avoided inserting lots of records at once

It's touching migration code :building_construction: I would love your 2 :heavy_check_mark:  for this. Thaaanks!

 Thanks for the report! It has to do with a different migration script, so will open up a separate PR with a fix.


[feature request] google frequency list as an output option

When I translate
https://translate.google.pl/?hl=pl&tab=wT#view=home&op=translate&sl=auto&tl=pl&text=conclude
I get this output:
trans conclude
conclude
/kənˈklo͞od/

wyciągnąć wniosek

conclude – definicje
[ English -> Polski ]

czasownik
    zakończyć
        end, complete, finish, terminate, conclude, wind up
    wnioskować
        conclude, reason, gather, argue, collect
    wywnioskować
        deduce, conclude, infer, understand, gather, induce
    sfinalizować
        finalize, conclude, sign, settle, button up
    konkludować
        conclude, infer
    dokończyć
        complete, finish, end, finish up, conclude, do away
    finalizować
        conclude, settle

conclude
    wyciągnąć wniosek, wnioskować, zakończyć, wywnioskować, sfinalizować

This:
wyciągnąć wniosek, wnioskować, zakończyć, wywnioskować, sfinalizować
differs from this (frequency list):
     zakończyć
        end, complete, finish, terminate, conclude, wind up
    wnioskować
        conclude, reason, gather, argue, collect
    wywnioskować
        deduce, conclude, infer, understand, gather, induce
    sfinalizować
        finalize, conclude, sign, settle, button up
    konkludować
        conclude, infer
    dokończyć
        complete, finish, end, finish up, conclude, do away
    finalizować
        conclude, settle

The question is why?
Is there any way (a small change in coding) that can create something like this:
zakończyć / wnioskować / wywnioskować / sfinalizować / konkludować / dokończyć / finalizować
from the above (frequency) list:
https://i.imgur.com/idMbMKa.png
Actually, frequency list has more meanings. Could you add it as an option?
Basically I would like to have all meanings in one line separated by /.
I really badly need it for my Anki flashcards:
https://i.imgur.com/hsZvTOX.png
Or maybe someone can tell me how to do it as a script.

The last line of the output
wyciągnąć wniosek, wnioskować, zakończyć, wywnioskować, sfinalizować

is not related to frequency at all. It's the "suggestions for alternative translation" you will get when you click on the translation on Google's web interface, in the original order given by Google Translate:

There is currently no plan to add an extra option for printing the /-separated frequency list, because the dictionary output already has everything in order and can be filtered by an external script (written in shell, sed, awk, etc.) easily. You may also use the -dump option to get the raw JSON output (which can be processed in pretty much any way as you like).


Populate Auth providers dynamically

Currently, UI has hardcoded list of auth providers - https://github.com/trustbloc/hub-auth/blob/main/cmd/auth-vue/src/pages/SelectProvider.vue#L19-L21; we can’t scal/ add providers dynamically. To support that, we would need to fetch the provider list dynamically from the backend and show it in the UI.

This has been implemented. Closing the issue.


Events do not occur when linking images to iOS.

When marking up img tag with anchor link, hyperlink event is canceled only on iOS, is this in the  specifications?
// Example
<Slider>

</Slider>

The following if statement is seemed to be the cause of the problem.
https://github.com/akiran/react-slick/blob/90bc26c52ca8cb879f26214b9a9a9cd6621b10d7/src/utils/innerSliderUtils.js#L307
In the current situation, not only image links but also onClick events can not be used, so we want at least a click event to be allowed.

Have you tried setting pointer-events: none on the images? It might help.

@marzelin unfortunately if you want to assign a click handler directly to the img then this is still an issue

I ran into this issue.
It seems this line:
https://github.com/akiran/react-slick/blob/90bc26c52ca8cb879f26214b9a9a9cd6621b10d7/src/utils/innerSliderUtils.js#L307
Stops the user from clicking a link that wraps an image. I originally removed the line as  pointer-events: none  made no difference.
By taking that line out you loose the ability to scroll the slider using the mouse pointer.
So my next solution which seems to have worked is to detect if it's not a mobile device to run this line  e.target.tagName === 'IMG' && e.preventDefault()
const isMobileDevice = () => {
  return (typeof window.orientation !== "undefined") || (navigator.userAgent.indexOf('IEMobile') !== -1);
};

if (!isMobileDevice()) {
    e.target.tagName === 'IMG' && e.preventDefault()
  }

Had the same issue. Instead of dealing with react-slick code I replaced my img elements with div elements with background-image. There's a need to have specific styling in order to make the div emulate the img behavior in terms of sizing.

.slick-slider__img {
  width: 95%;
  height: 0;
  padding-top: 95%;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

Thanks everyone by having the time to debug and identify the root cause!

I changes the code by removing e.target.tagName === "IMG" && e.preventDefault(); on swipeStart function and changes swipeMove to always call e.preventDefault(). This will make sure that the click event will pass through if we are not swiping.
Diff of my code change here: https://github.com/CodeDeFury/react-slick/commit/fdd3f9ee84bd4eab69bdc5359bfe5da777e2952c

Have you tried setting pointer-events: none on the images? It might help.

I used this to fix the iOS-issue. However, this has the exact opposite effect on Internet Explorer 11, unfortunately.


WIP: Samples 2

This is like #719, but is not based off of #716 (and therefore not blocked by its mergeability (or lack thereof).

Note: this code is under active development and is likely to be rebased a few times. Please do not fork off of this branch at this time.

[ ] Samples

[x] authentication
[x] ~single party calling (deprecated)~
[x] single party calling (with group calling enabled)

[ ] demonstrate how to split tracks in chrome

[ ] multi party calling

[ ] Tooling

[x] publish samples via netlify
[x] rename all sample-related npm scripts to start with (instead of end with) "samples:"

hmm, ok, yea. the redirect uri and generated index.html don't work for the auth sample.


meteor add typ:accounts-ldap not working

I can use the command
meteor add typ:accounts-ldap
and it seems to work.
However,  the symbols LDAP_DEFAULTS are undefined. Or if I try to use the method Meteor.loginWithLDAP, it is also undefined.
I am using the latest meteor <IP_ADDRESS>
How do I import?

A good place to define LDAP_DEFAULTS would be in server/main.js:
Meteor.startup(()=>{
    LDAP_DEFAULTS.url = ....
}

I'm getting this same issue, but following Meteor's guide on application structure. I've cloned the repo to a local package and have the following:
server/main.js
import '../imports/startup/server';

imports/startup/server/index.js
// ...
import './ldap-config';
// ...

imports/startup/server/ldap-config.js
import {Meteor} from 'meteor/meteor';

Meteor.startup(function() {
    LDAP_DEFAULTS.url = 'ldap://company.domain.com';
    // ...
});

Yet, I'm still getting LDAP_DEFAULTS is not defined on that line in ldap-config.js.

I completely forgot - having the package locally doesn't just work, you still must meteor add typ:accounts-ldap (if you left the package name the same). After I did that, everything worked.
Still can't get a successful log-in, but that's another issue!

For your log-in issue, look at PR #19.

@chazsolo Have finally merged #19. If this is still relevant to you, you should be able to update to master.


Menu open/close (hamburger) icon is misaligned and has white circle background on mobile

Overview
The button used to open and close nav menu on mobile has white circle background and misaligned icon

The menu drawer icon (hamburger) button has been centered.
Background color and color behavior is changed so that background is transparent when drawer is closed and button is not selected or hovered over. When hovered over, background changes to color matching other menu icon hover backgrounds. When drawer is open, background should be the same color as the text.
The default background flashing that occurs on mobile with buttons and links is removed on chrome/android for the buttons and links in header


"enum Format" doesn't have export keyword

I think we need to replace the declare keyword to export to declare enum Format in index.d.ts
I try convert svg to jpeg:
import { default as svg2img, Format, ResvgRenderOptions, svg2imgOptions } from "svg2img";
svg2img(pathToSvgFile, { format: Format.jpg, 'quality': 75 }, saveCallback);

But I can't do it, because I get error from tsc on import { Format } from "svg2img";:
Module '"svg2img"' has no exported member 'Format'.

Also, I can't use string for format option:
svg2img(pathToSvgFile, { format: 'jpg', 'quality': 75 }, saveCallback);

Because I get this error:
Type '"jpg"' is not assignable to type 'Format | undefined'. Did you mean 'Format.jpeg'?

It looks like the issue was resolved some 9 months ago by converting it to a type, but that change never made it to npm.


Merge Pike related change into master

And bump the version so we can use the old version for older products.

Bump to new version might not be needed if the Pike driver patch is backwards compatible...

Did you test this? I thought there were other breaking changes in Pike but I don't recall what they were.

@cmurphy do you think it works in Newton as well? That way I would not need to play with the version

Released on PyPI https://pypi.org/project/keystone-json-assignment/0.0.3/


Update tests to use go 1.11

What this PR does / why we need it: Keeps the codebase using the latest version of Go

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

Sorry this PR got lost to the ages! Our CI is now using Azure Pipelines with go 1.13, soon to be go 1.14. As for the build dockerfile, we're no longer using that command, and it probably should be removed :)


Weighted loss function?

Hello All,
In order to segment unbalanced dataset, a class-weighted loss function is a must have requirements. Do you have plans to implement class-weighted loss functions? Any hint about how to go for implementing it by myself?
Best,

Hi @rnditdev,
Thanks for the question.
Unfortunately, we currently do not have any plan to support class-weighted loss function.
However, you could refer to our TensorFlow1 implementation for the support.
If you are interested in contributing to this, it is very welcome, and we will be happy to review the PR.
Cheers,

Closing the issue since it is not active for a long time.
Please feel free to reopen it if needed.


cannot change locale (UTF-8)

Hi!
I installed bash-it on server, and it is wonderful. However a small bug persists. On each log I get this warning:
-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory
It seems the problem is somewhere in bash_it.sh, but i do not know there.
the output of locale gives me
LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8" LC_COLLATE="en_US.UTF-8" LC_MONETARY="en_US.UTF-8" LC_MESSAGES="en_US.UTF-8" LC_PAPER="en_US.UTF-8" LC_NAME="en_US.UTF-8" LC_ADDRESS="en_US.UTF-8" LC_TELEPHONE="en_US.UTF-8" LC_MEASUREMENT="en_US.UTF-8" LC_IDENTIFICATION="en_US.UTF-8" LC_ALL=en_US.UTF-8

This is weird - your settings look right. Do you only get this when logging in for the first time, or every time you hit Enter?
Do you set any of these variables in your Bash configuration (~/.bashrc or ~/.bash_profile)? If so, before or after you load Bash-it?

sorry, it seems the error is not on the side of bash-it


You forgot that in psych 0.5+ u dont need source code to create a custom difficulty

What needs to be documented?
I doens't use Soure but its still have a custom diff, u just need to add  "CustomDiffname' in week difficulties in da week editor (also sorry i wrote "doens't" bad im

brazilian)

dvae


mypy: pglookout/logutil.py [BF-1560]

Codecov Report
Patch coverage: 69.23% and project coverage change: -0.28 :warning:

Comparison is base (305df9d) 68.00% compared to head (4f13472) 67.72%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #97      +/-   ##
==========================================
- Coverage   68.00%   67.72%   -0.28%
==========================================
  Files          10       10
  Lines         972      976       +4
  Branches      170      161       -9
==========================================
  Hits          661      661
- Misses        253      257       +4
  Partials       58       58

Impacted Files
Coverage Δ

pglookout/logutil.py
54.83% <69.23%> (-2.86%)
:arrow_down:

... and 2 files with indirect coverage changes
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

This PR and the other ones related to type hinting will be handled in https://github.com/aiven/pglookout/pull/106.


gh-110 - added timezone to DateUtil

Codecov Report

Merging #111 into develop will decrease coverage by 0.04%.
The diff coverage is 65.51%.

@@              Coverage Diff              @@
##             develop     #111      +/-   ##
=============================================
- Coverage       72.3%   72.26%   -0.05%
- Complexity       870      882      +12
=============================================
  Files            128      128
  Lines           2553     2578      +25
  Branches         267      268       +1
=============================================
+ Hits            1846     1863      +17
- Misses           582      589       +7
- Partials         125      126       +1

Impacted Files
Coverage Δ
Complexity Δ

...c/main/java/uk/gov/gchq/koryphe/util/DateUtil.java
82.35% <100%> (+4.57%)
13 <7> (+5)
:arrow_up:

...yphe/impl/predicate/range/AbstractInTimeRange.java
82.75% <12.5%> (-11.25%)
17 <1> (+1)

.../impl/predicate/range/AbstractInTimeRangeDual.java
87.5% <75%> (-1.49%)
37 <5> (+4)

...chq/koryphe/tuple/predicate/KoryphePredicateN.java
33.33% <0%> (+16.66%)
2% <0%> (+1%)
:arrow_up:

...chq/koryphe/tuple/predicate/KoryphePredicate2.java
100% <0%> (+50%)
2% <0%> (+1%)
:arrow_up:

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 552d8d4...a07a8af. Read the comment docs.


work with egui

Now i want to do mouse selection with this mod and bevy_egui. When i clicked the egui window, the entity is deselected. I know the NoDeselect component is designed to solve this, but the egui windows dont exist in the ecs world. Is there any workaround?

An idea comes out: An invisible plane with PickableBundle and NoDeselect component, which has same translation and size as the egui window and located just behind the window.

We use mod_picking with egui by disabling this plugin when egui wants pointer input

Thank you for the solution.


[release-1.2] Manual backport of implement retries in export server

What this PR does
This is a manual backport of https://github.com/kubevirt/kubevirt/pull/11911.
Couldn't create an automatic cherry-pick since I had to address some conflicts with older vmexport flags.

Fixes # https://issues.redhat.com/browse/CNV-43123
Release note

Bugfix: Implement retry mechanism in export server and vmexport

/retest

/retest-required

/test pull-kubevirt-unit-test-arm64-1.2

/test pull-kubevirt-unit-test-arm64-1.2

/test pull-kubevirt-unit-test-arm64-1.2

/lgtm
/approve


Undefined variable $isDownloadDisabled

I am facing Undefined variable $isDownloadDisabled when trying to use the package.

This seems to be coming from the function defined in the blade template "./filament-signature-pad/resources/views/forms/components/fields/signature-pad.blade.php" line 32. Update the function isDownloadDisabled() to isDisabledDownload as defined in "./filament-signature-pad/src/Forms/Concerns/HasSignaturePadAttributes.php" line 105 and it should be sorted.

will there be an official fix ?

The above merge is the fix and is released in v1.2.0


[parser tests] fix assertion that an array is empty

if you had a hardcoded parser test like
'foo': {
  'errors': [],
}

then we were not actually asserting that there were no errors in the ML version of the test runner. the JS version catches it, though.

@facebook-github-bot import


Not found because of proxy error: Error: getaddrinfo ENOTFOUND ****** with https://cors-anywhere.herokuapp.com

Hi!
I'm working on angular project and from there I'm trying to post some logs to a server, but while hitting that server I got CORS error, and on searching I found that if I append https://cors-anywhere.herokuapp.com with my URL it'll work.
So after adding it my CORS error gone but now I'm getting proxy error like this:- Not found because of proxy error: Error: getaddrinfo ENOTFOUND ..com.
This is my code snippet
const response: any = await axios.post(LOGNESS_LOG_EVENT_URL, event, {
headers: EVENT_HEADERS(bearer),
});
and my LOGNESS_LOG_EVENT_URL is as :- https://cors-anywhere.herokuapp.com/https://********.
Please provide soln to this as I got stuck here.

I can't help you with this - there are not enough details here. In any case it's not an issue with CORS Anywhere. I suggest that you read up about CORS to solve the issue from your server's end.


Addition: Color based on Node I/O type

Add an option to color ProtoFlux nodes based on their I/O type. For example, int nodes could be green, float nodes cyan, etc. This would make it easier to identify node types at a glance in complex setups. instead of semi random colors for each node type

What if they have multiple inputs and outputs?
Also you might be able to get something similar to this if you set the Selected Node Factor to Name or FullTypeName


Long-read usage

I read in Lior's preprint X thread that splitcode would work well with long-reads, do you have any example of how to implement it for this case?
I would like to test it to demultiplex single-cell long-reads based on sample-specific sets of barcodes.

Ooh, thanks for checking out splitcode! I don’t have any examples because I’m assuming what you’d see in long reads would be the same as what you’d see in short reads (maybe just being more generous with the error tolerance)?


Returning []

When I try to create a proxy, the api returns [].

It looks like you are sending a GET request instead of POST thus it will return available proxies which are none.

I send POST

You'll need to provide a code example.

I used the insomnia

Try again and screenshot the program and result

https://i.imgur.com/sginmpX.png


AppCode Support

I'm aware of the fact that AppCode's InjectionIII plugin is available separately. But, I wish I can use HotReloading project directly due to the fact that it is super easy to integrate with Swift Package Manager.
After importing HotReloading via SPM, the app launches but hot reloading doesn't seem to work. I'm guessing the intermediate path used by AppCode is different. (just guessing...) Anyway, I wish HotReloading works with AppCode too.
Thanks for this awesome project.

When you say "doesn't seem to work" what happens/doesn't happen. Does the menu bar app run? Does it connect (icon goes orange)? Is there an error message you could tell me?

@johnno1962 Sorry about the confusion. It was simply that my code change didn't get updated right away when I tried with AppCode. But, I realized that I didn't set up the injected function nor notification. It is working now.

@johnno1962 Ha.. I'm getting confused with the whole thing. I thought HotReloading was working but it was a separate issue that caused a confusion for me. I see this error message when I save the Swift file from AppCode:

Oh.. Before this, I also had to not only link but also embed HotReloading library to make a crash go away. That crash didn't happen for Xcode.

Here's the message from the crash
dyld: Library not loaded: @rpath/HotReloading.framework/HotReloading
Referenced from: /Users/saim/Library/Developer/CoreSimulator/Devices/017B587A-8521-429E-9203-E48076FA33D4/data/Containers/Bundle/Application/698190B8-4336-4109-AA04-F1DE6DEB2A7B/MN Staging  Navigation.app/MN Staging  Navigation
Reason: image not found

My issue was linker flag misconfiguration. Sorry about the noise!

👍

Ah, I see. You can ignore the ld warning until they actually deprecate it but in fact, since Xcode 14 I've not seen an instance where you need to use -undefined dynamic_lookup which was a workaround for another problem so you can remove that from your "Other Linker Flags" now.

Well, I'm not sure I can tweak this flag, I didn't set it up.

It's a warning.


[sysrst_ctrl][ULP] pwrb_in_i transition not detected

Description
pwrb_in_i transition( H->L followed by continuous assertion for 57 cycles) is not detected in ULP block. Issue observed in  sysrst_ctrl_ultra_low_pwr test.
Following are the register settings for ultra low power detection logic in sysrst_ctrl
ULP_PWRB_DEBOUNCE_CTL   'd57
ULP_CTL 'h1
Issue can be reproduced by
util/dvsim/dvsim.py hw/ip/sysrst_ctrl/dv/sysrst_ctrl_sim_cfg.hjson -i sysrst_ctrl_ultra_low_pwr --tool xcelium --waves shm --fixed-seed<PHONE_NUMBER>

Thank you for reporting this issue.
Is this the error message you see?
UVM_ERROR @<PHONE_NUMBER> ps: (sysrst_ctrl_ultra_low_pwr_vseq.sv:157) [uvm_test_top.env.virtual_sequencer.sysrst_ctrl_ultra_low_pwr_vseq] Check failed cfg.vif.z3_wakeup == 0 (1 [0x1] vs 0 [0x0])
UVM_ERROR @<PHONE_NUMBER> ps: (csr_utils_pkg.sv:457) [csr_utils::csr_rd_check] Check failed obs == exp (1 [0x1] vs 0 [0x0]) Regname: sysrst_ctrl_reg_block.wkup_status reset value: 0x0 UVM_ERROR @<PHONE_NUMBER> ps: (sysrst_ctrl_ultra_low_pwr_vseq.sv:157) [uvm_test_top.env.virtual_sequencer.sysrst_ctrl_ultra_low_pwr_vseq] Check failed cfg.vif.z3_wakeup == 0 (1 [0x1] vs 0 [0x0])
UVM_ERROR @<PHONE_NUMBER> ps: (csr_utils_pkg.sv:457) [csr_utils::csr_rd_check] Check failed obs == exp (1 [0x1] vs 0 [0x0]) Regname: sysrst_ctrl_reg_block.wkup_status reset value: 0x0

@cindychip , Yes, I have also observed same error. There are two things here.

@cindychip , Thanks for looking in to this. There are two things here.

The scenario you have observed is valid, the ultra low power block triggers debounce timer on a L->H transition of cio_lid_open_i. So, the design should reset the debounce timer, once there is a second L->H transition.
The sequence needs update, in cases like these, where wakeup signal is not expected to assert

@cindychip , Thanks for looking in to this. There are two things here.

The scenario you have observed is valid, the ultra low power block triggers debounce timer on a L->H transition of cio_lid_open_i. So, the design should reset the debounce timer, once there is a second L->H transition.
The sequence needs update, in cases like these, where wakeup signal is not expected to assert

Thanks for your comments. I guess the discrepency here is how we understand the functionality of "debounce time" :)
I guess we can check with some designers.

@cindychip I am seeing similar error messages to the ones you report:
UVM_ERROR @<PHONE_NUMBER>804 ps: (sysrst_ctrl_ultra_low_pwr_vseq.sv:157) [uvm_test_top.env.virtual_sequencer.sysrst_ctrl_ultra_low_pwr_vseq] Check failed cfg.vif.z3_wakeup == 0 (1 [0x1] vs 0 [0x0])
UVM_ERROR @<PHONE_NUMBER>994 ps: (csr_utils_pkg.sv:459) [csr_utils::csr_rd_check] Check failed obs == exp (1 [0x1] vs 0 [0x0]) Regname: sysrst_ctrl_reg_block.wkup_status reset value: 0x0
UVM_INFO @<PHONE_NUMBER>994 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER]

@crteja and I had another look at this and it seems like the discrepancy is because of a 2 cycle delay introduced by u_prim_flop_2sync_input in the system reset control.

There was a reason this was added to synchronize to the AON clock: https://github.com/lowrisc/opentitan/commit/80b2ce5f6e3d1e39540f3b46b885991d7382c47b
I think this is probably fine, but we should specify in the documentation that there might be a two cycle delay due to the 2 flops that are in the sync unit.

I was thinking about this a bit more, and the two cycle delay applies to both the falling and rising edge, so this does not explain our behavior. Looking at the end of the trace you can see that the detection logic goes into the detection state after the debounce timer has exceeded. So to trigger the output the input must exceed the debounce timer by at least 1 cycle:

One solution is to change the count done logic to work off of cnt_d instead of cnt_q:
https://github.com/lowRISC/opentitan/blob/b7a49d72d9a32747309739a18bf67ea5d126aa20/hw/ip/sysrst_ctrl/rtl/sysrst_ctrl_detect.sv#L101
However, I prefer not to make any RTL changes and so propose to change the documentation to say debounced signals must exceed the debounce time.

The actual error that caused the assert to fail is due to the debounce not working correctly in my opinion:

I think that the debounce should go back to the idle state if the trigger_activegoes low. I will open a PR for us to discuss.

This issue ended up having two issues. The first was that debounce detection needs an extra cycle as clarified in: https://github.com/lowRISC/opentitan/pull/17290 I will mark that PR as addressing this issue fully.
The second is about a quirk in the debounce logic for which this PR was closed with useful discussion: https://github.com/lowRISC/opentitan/pull/17288 and a PR got merged to change the description of debouncing: https://github.com/lowRISC/opentitan/pull/17309 This second part is thus fully resolved.

Closing the issue based on conclusion from #17290

Effort estimates for M2.5

estimate 32
remaining 2023-02-22 0


Update pre-commit

Update ruff in precommit
Lint

Closes #3387
Annoying to have some many updates, but it's fine I guess :D

Hi, thanks for contributing to Strawberry 🍓!
We noticed that this PR is missing a RELEASE.md file. We use that to automatically do releases here on GitHub and, most importantly, to PyPI!
So as soon as this PR is merged, a release will be made 🚀.
Here's an example of RELEASE.md:
Release type: patch

Description of the changes, ideally with some examples, if adding a new feature.

Release type can be one of patch, minor or major. We use semver, so make sure to pick the appropriate type. If in doubt feel free to ask :)
Here's the tweet text:
🆕 Release (next) is out! Thanks to @patrick91 for the PR 👏

Get it here 👉 https://strawberry.rocks/release/(next)

Apollo Federation Subgraph Compatibility Results

Federation 1 Support
Federation 2 Support

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲

@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Learn more:

Apollo Federation Subgraph Specification
Compatibility Tests


CI.yml: Login to bcinsider

When going for the "nextminor" version, the pipeline throws an error on the 'Login to bcinsider repository':
##[error]docker : WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Is there a workaround?
Additionally, having the version variable in the yaml prevents setting it to something else on build time.
I want to run regularly scheduled builds for nextminor and nextmajor. Is there a different solution then having three (including normal CI) pipelines that differ only in the version variable?

I ended up doing this in my BingMaps sample:
    - task: CmdLine@2
      displayName: 'Login to bcinsider repository'
      condition: and(succeeded(),or(eq(variables['version'],'nextminor'),eq(variables['version'],'nextmajor')))
      inputs:
        script: 'echo $(bcinsiderPassword) | docker login "bcinsider.azurecr.io" -u "$(bcInsiderUsername)" --password-stdin'
        failOnStderr: false

and having bcInsiderPassword and bcInsiderUsername as variables.
I think that works. Will move that to the helloworld repo as well.

Thanks, that works. Usage of CmdLine instead of PowerShell tripped me up for a minute, though.
Do you have thoughts on the rest of my question?

Additionally, having the version variable in the yaml prevents setting it to something else on build time.
I want to run regularly scheduled builds for nextminor and nextmajor. Is there a different solution then having three (including normal CI) pipelines that differ only in the version variable?

In the bingmaps sample (https://dev.azure.com/businesscentralapps/BingMaps) i also use 3 different pipelines. I think you can include yaml files in yaml files to minimize double work (basically only having a few things in the main .yml file) I haven't looked into that.
Not sure I understand why you would set the build to something else at build time - build version should always increase.
Alternatively you can set things in a PowerShell script.

I was trying to use the same yaml file for different pipelines and just setting the version to 'current', 'nextminor' or 'nextmajor' in the variable of each pipeline. The line version: "current" in the yaml file prevents that variable to be set.

You could move that to a variable and make it settable at build time I guess.

Including .yml files is quite easy:
CI.yml:
stages:
- stage: Build
  jobs:
  - job: Build
    variables:
      build.clean: all
      platform: x64
    steps:
    - template: steps.yml

steps.yml:
steps:
- task: PowerShell@2
  displayName: 'Reading Settings'
  inputs:
    targetType: filePath
    filePath: 'scripts\Read-Settings.ps1'
    arguments: '-appVersion "$(appVersion).$(appBuild).$(appRevision)"'
    failOnStderr: true
- task: CmdLine@2
  displayName: 'Login to bcinsider repository'
  condition: and(succeeded(),or(eq(variables['version'],'nextminor'),eq(variables['version'],'nextmajor')))
  inputs:
    targetType: inline
    script: 'echo $(bcinsiderPassword) | docker login "bcinsider.azurecr.io" -u "$(bcInsiderUsername)" --password-stdin'
    failOnStderr: false
[...]

You can even have the steps as a template in another repo.
CI.yml:
resources:
  repositories:
    - repository: templates
      type: git
      name: OtherRepo

stages:
- stage: Build
  jobs:
  - job: Build
    variables:
      build.clean: all
      platform: x64

    steps:
    - template: steps.yml@templates

If you want to have the scripts in another Repo as well, you have to copy them during the build in order to use them.
steps.yml
steps:
- task: PowerShell@2
  displayName: Get Scripts from Template
  inputs:
    targetType: inline
    script: |
      try { git clone -b master<EMAIL_ADDRESS>$(Build.SourcesDirectory)\scripts\external } catch {}
      copy-item -path .\scripts\external\*.ps1 -destination .\scripts
      exit 0
  env:
    token: $(System.AccessToken)
- task: PowerShell@2
  displayName: 'Reading Settings'
  inputs:
    targetType: filePath
    filePath: 'scripts\Read-Settings.ps1'
    arguments: '-appVersion "$(appVersion).$(appBuild).$(appRevision)"'
    failOnStderr: true

(For some reason git clone throws an error but the script files are there. To make the task succeed I use a try/catch and exit 0)

I solved the same problem by adding this task to my YML
    - task: Docker@2
      displayName: Login to ACR
      inputs:
        command: login
        containerRegistry: YourAzureRegistryServiceConnection

you need to create YouAzureRegistryServiceConnection first under your project settings
https://your.visualstudio.com/DefaultCollection/your_project_name/_settings/adminservices
It's secure and simple

Nice one, @gintuoklis - will try that.


Is there a way to figure out who is currently talking?

Hi! First of all, thanks for making this library; it's working great so far!
I've done a bit of looking through the API and there doesn't seem to be a way of getting a list of everyone currently transmitting audio (my goal is to have a little web-based widget that will show all the people currently talking). The way I've thought of going about it is to get the audio streams of each user in a channel, then check if the volume is above a certain level. The problem with this is I'd then have to keep track of everyone joining and leaving, and also open a lot of streams at the same time.
I'm just wondering if there's an easier way I've overlooked, or if something could be implemented. Or is this just a Mumble limitation?

Glad to hear!
Just checked - seems this part is badly documented and probably needs some enhancements.
You have two options. Either listen to 'voice-start' and 'voice-end' events or alternatively use the 'voice-frame' event. Looking at the documentation, these don't seem to be documented there, but they do exist and can be seen in the code.

voice-start and voice-end are sent when a user starts and stops talking. The parameter contains the user session ID.
voice-frame contains all the voice packets that are about to be processed. These packets contain user info that further contains the user.session.

The first one will give you quick event based access that should make "display icon"/"hide icon" actions easy to implement, but it won't let you query the connection for a snapshot of "Who is talking at the moment?".
You can also take a look at the following project, which should implement something similar:
https://github.com/Rantanen/mumble-debugger
Specifically it seems to be using a hybrid approach where voice-frames are used to flag the user as talking and voice-end events are used to clear that flag. This was probably to make sure that users are shown as talking even if a certain web client joins the session halfway into a conversation and misses on the voice-start event.

Thanks, that worked perfectly! :+1:

Hmm... it seems like there's either a bug or I'm doing something wrong. Whenever I do some kind of action (mute / unmute, move channel, etc.), the name value in each event suddenly becomes null. If either I rejoin the server or I reconnect the bot it seems to fix itself. Any idea what might cause that?

Which event are you using?

Currently voice-start to show the name in the list and voice-stop to remove it. There are another couple of layers of event passing as well but I'm guessing they're not the problem since I'm just directly copying fields from one object to another.

So, I kind of forgot all about this for a while, but I just tried switching to the voice-frame method and apparently the null username issue is still persisting (although it's better anyway so it wasn't waste of time). It would be great to figure out any kind of workaround for this. I've pretty much no idea what's causing this to happen.

Dammit. :)
I think there's been multiple people reporting this now, but I've yet to be able to replicate it myself. I'd love a piece of code and instructions to reproduce this issue.

So, I've been doing other things for the last couple of days; I have no attention span... but anyway...
I've actually been trying to make a NodeCG bundle. I've not really done much of it yet so the whole thing is a bit messy and probably half-broken, but the bit that's giving me trouble is something to this effect:
mumble.on("voice-frame", function(frames) {
    for (var f in frames) {
        if (frames[f].user) {
            // When stuff starts to break, this will start dumping stuff to the console.
            // Interestingly, most of the data is intact, just none of the ID/name related stuff.
            if (frames[f].user.name === null) {
                console.log(frames[f].user)
            }

            // This is the actual code that I'd use assuming I can help solve this issue :)
            if (frames[f].user.talking) {
                nodecg.sendMessage("user-talking", {name: frames[f].user.name, state: true})
            }
        }
    }
})

Hopefully this helps to some extent! :pray:

Ended up testing status messages, ie. self mute/deaf/etc.
Those reset the names and such. This issue is now fixed - hopefully I didn't introduce other issues in its place.

Yay! Thank you. :+1:
On 13 Apr 2016 21:25, "Mikko Rantanen"<EMAIL_ADDRESS>wrote:

Ended up testing status messages, ie. self mute/deaf/etc.
Those reset the names and such. This issue is now fixed - hopefully I
didn't introduce other issues in its place.
—
You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub
https://github.com/Rantanen/node-mumble/issues/88#issuecomment-209631751


Action buttons text letters has some issues (?)

I've been using materialdialogs in every application I developed and recently I found something that is giving me some headache
When I show a dialog on a device (I tried both, tablet and cell phone) the "E"  letter in the button is weird, and I cannot explain it better than showing you a picture

And I don't find the problem on another app

As you can see over here the bug is not happening, it's something really hard to describe, I should do a more deep testing and investigate more (And maybe provide something more detailed than "Bug on some devices without version of lib and os" hahah)
I know, so far we know nothing about this potential issue but I just wanted to start up something to warn you about the possible existence of it. The user impression when it reads the text with the weird "E" is not good, because you can view the height padding between letters and it results something imprecise and buggy.
Maybe (And I hope that) is something that isn't determined by this library, and it would be nice, but I'm curious about that fact and I think that spending 5 minutes on it will be worth
More details upcoming, if you have some time check it out and let me know
Sent using FastHub

Hmmm. I've never seen that.
Unfortunately I can almost guarantee it's a device or OS issue, probably something I cannot fix.


version 1.4.3

📚 Installation
Hi, I cannot find version  1.4.3.

What do you mean? It should exist, see https://github.com/rusty1s/pytorch_geometric/releases/tag/1.4.3. Installable via
pip install torch-geometric==1.4.3

sorry, if it's not a real issue.
I was trying
pip install --no-index torch-scatter -f https://pytorch-geometric.com/whl/torch-1.4.3+${CUDA}.html
pip install --no-index torch-sparse -f https://pytorch-geometric.com/whl/torch-1.4.3+${CUDA}.html
pip install --no-index torch-cluster -f https://pytorch-geometric.com/whl/torch-1.4.3+${CUDA}.html
pip install --no-index torch-spline-conv -f https://pytorch-geometric.com/whl/torch-1.4.3+${CUDA}.html
I didn't know how to get compatible packages.

As far as I know, there is no PyTorch 1.4.3 version. You should just try the wheels for torch-1.4.0.


Update python-sdk-azure-operation-config.md

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/python-sdk-azure-operation-config.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Filter reads against stable rRNA database

I've created a parameter in the nextflow_schema.json for a fasta file name: params.rrnafasta.

I guess that this filtering should be done on trimmed reads before assembly, so that this should be step 5?
Do we want to set a default database for this, e.g. silva/gtdb or something like that? And should we do the filtering by mapping with bowtie2, or do you have some other suggestion?

I guess that this filtering should be done on trimmed reads before assembly, so that this should be step 5?

I think it would be easiest -- for the pipeline flow as it's conditional -- to do as a first step. Anything works technically.

Do we want to set a default database for this, e.g. silva/gtdb or something like that?

My intention was to start with a fasta file that the user supplies or a preindexed mapping database (possibly later). If a user wants to use a SILVA file, one can just specify the url.

And should we do the filtering by mapping with bowtie2, or do you have some other suggestion?

That would be best, if you can get the samtools trick to get the non-mapping out in fastq format to work. My recipe below doesn't work, I think.
samtools view -b -f 12 $< | samtools fastq -1 $(basename $@).r1.fastq.gz -2 $(basename $@).r2.fastq.gz $<
($< is the input file, $@ is a part of the output filename.)
Another option is to use the ERNE aligner that has a mode for this.

Two alternatives to the bowtie2 approach:

bwa might be better because it allows gaps. Essentially the same procedure with samtools to get fastq files with non-matching.
BBDuk is kmer based and might be much faster.

The BBTools might be useful for various things...


Swift Version not set

Each time I install the pod I have to manually set this in the Build Settings. Can we have this set by default?

Oops, wrong Github project. Sorry.


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_147f1ahcyq/clone/recipe/meta.yaml:16: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_147f1ahcyq/clone/recipe/meta.yaml:21: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_147f1ahcyq/clone/recipe/meta.yaml:37: missing_dev_url: The recipe is missing a dev_url
WARNING: /tmp/abs_147f1ahcyq/clone/recipe/meta.yaml:37: missing_description: The recipe is missing a description
ERROR: /tmp/abs_147f1ahcyq/clone/recipe/meta.yaml:37: missing_license_family: The recipe is missing the about/license_family key.
ERROR: /tmp/abs_147f1ahcyq/clone/recipe/meta.yaml:37: missing_documentation: The recipe is missing a doc_url or doc_source_url
Errors were found


[Improvement-16516] Uniformly name process in backend code as workflow

Purpose of the pull request

Brief change log
close #16516
Verify this pull request

This pull request is code cleanup without any test coverage.
(or)
This pull request is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:

(or)
Pull Request Notice
Pull Request Notice
If your pull request contain incompatible change, you should also add it to docs/docs/en/guide/upgrede/incompatible.md

Huge improvement! Glad to see this PR merged. Thx @SbloodyS !


Add memo in pinot

What changed?
Add memo in pinot:
When write, add memo into search attribute
When read, get memo from search attribute and cleanup that field
NOTE: don't merge it until our customer test it in staging

Why?
memo was stored in ES but can't be indexed(not in ES schema). We made the pinot schemas according to ES's schema, so we thought that we did't need memo in Pinot, but one customer was complaining about that.

How did you test it?
unit test

Potential risks
not risk since Memo is not a functional attribute.

Release notes

Documentation Changes

Pull Request Test Coverage Report for Build 018ecf32-69ce-47c1-abe5-88db8805d6d6
Details

32 of 40 (80.0%)  changed or added relevant lines in 3 files are covered.
22 unchanged lines in 8 files lost coverage.
Overall coverage increased (+0.04%) to 67.399%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

common/persistence/pinot/pinot_visibility_store.go
10
12
83.33%

common/pinot/response_utility.go
16
18
88.89%

common/persistence/data_store_interfaces.go
6
10
60.0%

Files with Coverage Reduction
New Missed Lines
%

service/history/task/transfer_standby_task_executor.go
2
88.25%

common/task/fifo_task_scheduler.go
2
87.63%

service/history/task/transfer_active_task_executor.go
2
72.7%

service/matching/matcher.go
2
90.72%

service/matching/taskListManager.go
3
79.7%

common/persistence/statsComputer.go
3
96.07%

service/history/task/task_util.go
4
69.43%

service/history/task/fetcher.go
4
86.08%

Totals

Change from base Build 018ecf22-e960-4e04-b6ff-2f5b7cc1fd47:
0.04%

Covered Lines:
98272

Relevant Lines:
145806

💛  - Coveralls


Align swiftc flags between Bazel and Xcode in XCHammer

Requires:

https://github.com/bazel-ios/xchammer/pull/37
https://github.com/jerrymarino/xcbuildkit/pull/54

Also, changes the global index store path for ObjC to match Swift's. Open to suggestions here if anyone sees this as a potential breaking change, alternative is to conditionally set this when using XCHammer and let the current value be the default.

Our internal CI is 🟢 with this, also ran some tests simulating someone using the legacy generator and moving from a previous SHA to this one and didn't hit any issues.
For other contributors, if you hit any issue due to the fact that the path to the global index store has changed let me know and I can revert / help troubleshoot.


Model separation

all metadata fields view model
snapshot index view model
solid state view model
all viewmodels require branch + trunk so it branching is possible
need to figure out a way to do conditionals inside #define so we can have DECLARE_PACK_SINGLE_GEN that base on provided load_model_t arg decides which specific macro to call and generate iota_stor_pack

reopened as #598

Closing in favour of #598


TypeError: init() missing 1 required positional argument: 'on_delete'

Python 3.7.3
django version 2.2.1
I'm getting this error after running
python3 manage.py migrate
TypeError: init() missing 1 required positional argument: 'on_delete'
How to fix it?

@aksthelion I believe, since django 2.0, the on_delete parameter for foreign keys is required (whereas in earlier versions the default was models.CASCADE. This makes migrations created in earlier versions of django throw the error on the required argument.
To fix this, add on_delete = models.CASCADE in all migrations causing the error.
Good luck!

It is models.CASCADE. I tried few solutions suggested on stackexchange but none worked.

I am not sure if your problem is solved. Did on_delete=models.CASCADE help?

No it didn't solve. I gave up.

After adding on_delete=modelsCASCADE it throws:
lib\site-packages\djangocms_blog\models.py", line 13, in <module>
    from django.core.urlresolvers import reverse
ModuleNotFoundError: No module named 'django.core.urlresolvers'

@aksthelion @antnieszka which version of django CMS blog are you using?
1.0beta1 is compatible with Django 2.0 and up, earlier version are not

@yakky it might have been 0.9.9. I just installed latest from pypi at the time. I'll check 1.0beta1 in my spare time, thanks!

1.0beta1 seems to work fine for me. One thing to get this working was to remove cmsplugin-filer as stated somewhere in README

@antnieszka thanks for the feedback :+1:
I am closing this


GitFlow options does not appear on TGit menu on VS2019

GitFlow is the work flow we are using so we need it urgently.
CPU:  Intel(R) Core(TM) i7-6650U CPU @ 2.20GHz   2.21 GHz
RAM: 16,0 GB
Architecture: 64 bit OS, x64 based
Edition: Windows 10 Pro
Version: 21H1
IDE: VS2019 Pro version 16.10.4

What is the output of git config --get-regexp \"gitflow\" when run in the repository root?


Data Explorer

fixes #108

implements query builder feature
added link to header navbar

I would love to review this but unfortunately I can't until March 15th. 😞

It'll likely be shipped by then but I'll be happy to respond to a retroactive review


Automatically track the ability Inner Focus

Currently when the enemy's Inner Focus ability triggers, it is not tracked. Ideally this should be tracked automatically.
Here are the list of moves that can cause a flinch:

Stomp
Rolling Kick
Headbutt
Bite
Bone Club
Sky Attack
Rock Slide
Hyper Fang
Snore
Twister
Fake Out
Secret Power (Cave)
Needle Arm
Astonish
Extrasensory

Issue has been fixed, just leaving a note here that only moves with a guaranteed secondary effect proc will trigger relevant ability messages.
I.e. zap cannon will cause limber's message to display, but thunderbolt never will. Ability Tracking doesn't care about the moves used anyway though so all bases should be covered

Closing as resolved in v6.5.0


[Google Translate] Can simultaneous multiple translations be added for quick translate? Possibly also with voice listen?

Extension
https://www.raycast.com/gebeto/translate
Description
Can multiple translations be added for quick translate? Possibly also with voice listen?
Who will benefit from this feature?
No response
Anything else?
No response

what do you mean by multiple translations? quick translate can already translate the entered text to selected multiple languages.

yeah, quick translate can do this already, you just need to adjust the languages you want to translate to using the top right dropdown.

I see you can set multiple languages sets in the right dropdown, but I can't see any option to translate multiple languages simultaneously and view them all together.

Sorry I finally found the way to add them, thanks. Regarding translations voice listen is there any chance you can add that feature?

I'm not interested in implementing such feature, sorry

@jewenso do you mean text to speech? or speech to text?
Few days ago text to speech was added by @strikerlulu , so I'll be able to add this feature to quick translate on this weekends

Thanks for the reply. Yes, I meant text to speech feature for the translations. But are you talking about the extension Google Translate or another?


[Feature] Use Pure JavaScript Function To Add Custom Search Functionality

This should be fairly easy and could be a simple drop-in replacement before adding #61.
Reference: https://www.w3schools.com/howto/howto_js_filter_table.asp

Confirmed to work on caa6ef12c2f172329fc0aecc0434428ed91d454d .


[SCB-950] modify consumer producer metrics and add edge metrics

Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Make sure there is a JIRA issue filed for the change (usually before you start working on it).  Trivial changes like typos do not require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Format the pull request title like [SCB-XXX] Fixes bug in ApproximateQuantiles, where you replace SCB-XXX with the appropriate JIRA issue.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Run mvn clean install to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Coverage decreased (-0.04%) to 86.16% when pulling 7daee583414f656307a9b730c2a8e896d64a97b0 on heyile:metrics_apm into 6aadae0de82b3b3940f0c163b815d6675aedc2bc on apache:master.


Add support for tags

Hello!

Vote on this issue by adding a 👍 reaction
If you want to implement this feature, comment to let us know (we'll work with you on design, scheduling, etc.)

Issue details
It would be helpful to include first-class tag support as part of the ESC definition. I'm picturing something like a tags section that supports key/value pairs.
Example:
imports:
  - foo
  - bar

tags:
  org: acme-corp
  environment: staging

values:
  object:
    array: [ "hello", "world" ]

Affected area/feature

Assuming we will also support group by tags option in the Environments UI similar to stacks?

@arunkumar611 I believe this has shipped. Right?


Unit 2 Correct FrozenLake's observation space

There was an error in Farama's documentation about the agent's position / the observation space of FrozenLake's environment. The issue in Farama's documentation is described here and corrected in this PR.
In one word, the agent's position was described as:

current_row * nrows + current_col (where both the row and col start at 0)

It actually should be:

current_row * ncols + current_col (where both the row and col start at 0)

As this formula remains correct for generalization to non-square matrices.
The present PR brings the same correction to HF's Unit 2.

Awesome thanks your help. I merge it 🤗

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


config / setup

Wanting to try this extension out - but (embarrassingly) I can't find any way to configure or get the extension to load
There is no pro-bro commands in the palette . However, the extension says that it is enabled

Hi, sorry to hear that.
Can you see the Icon in the left Activity Bar (1)? After selecting it you should be able to se "Plus" button (2) which opens the connection setup window.

@jmls we had an issue with opening setup window on 1.73 VSCode version. We fixed it with 1.0.1 patch. Please, let me know if you get any other issues.

I'm afraid that I'm getting the same issue. Unless I'm doing something very wrong :)

@jmls But can you see this ProBro icon (1) on the activity bar? You should be able to use the plugin without commands. I see that we didn't implement correct names for commands, so it is hard to use them. I will fix this issue in an upcoming release.

Hi, sorry to hear that. Can you see the Icon in the left Activity Bar (1)? After selecting it you should be able to se "Plus" button (2) which opens the connection setup window.

I can see (1) but when pressing (2) I get

@jmls Ok, I see. Tts hard to say what could cause it. Could you send me more details:

OS,
VSCode version,
Developer tools console output (ctrl-shift-I)

Hi @jmls, I managed to reproduce you issue on Ubuntu. Apparently there were some issue with packaging the extension. We released the fix with version 1.1.0. Also, you can consult setup guide: https://github.com/BalticAmadeus/ProBro/blob/develop/resources/markdown/setup.md

Closing this ticket as we plan to go deep in configuration issues for Q3 release. The main idea is to aim for simple and configuration free access while using gitpod or codespaces, having multiple different version DBs or multiple socket servers on remote machines.


4.24 version ?

Can we expect a 4.24 version ? I've tried to rebuild it but it seems API have changed

Here are the updated 4.24 version

Can this work for 4.25.1?

Its updated to work with 4.25.1


Add Gitpod support

Hey @simonprickett & @SuzeShardlow! 👋🏼
As we discussed, super excited to collaborate. I've added Gitpod support to this repo. 🎉
Why not give it a spin yourself?
Prefix this PR URL with gitpod.io/# or install the Gitpod extension onto your Chrome/Firefox browser.
As part of the config file, I've loaded the data from src/resources/data/sites.json but you can always remove that if you don't want that part automated. But I hope it shows you what is possible!
Next steps
Once this PR is merged, you have full Gitpod support. Yay! 🙏🏼
What students would need to do to get a Gitpod workspace up and running is to:

Fork the repo onto their GitHub account
Prefix the fork URL with gitpod.io/# or install the browser extension
Start coding!

If you'd (or students) like to deep-dive more into Gitpod, these are good places to go to:

https://www.gitpod.io/docs
https://www.gitpod.io/screencasts
https://www.gitpod.io/chat - our community Discord!

Let me know if you have any questions or comments (and that this is what you expected 🤞🏼) Looking forward to our live stream!

@pawlean thanks I'll test this on Monday!


update tests for digest-algorithms

What test style do you prefer for testing digest algos in FileUtil?

nested class with several methods for each digest algo (present tests)
one parameterized method to test all digest algos (part of this PR)

For the tests, so far, I am veeeery flexible :)
Feel free to choose what you feel it is the best. I haven't yet used Junit5 features (besides migrating to it) so I don't have strong opinion on this question.

Again - live the naming of the methods!


Bundle does not include 3rd party lib after ng-build --prod

Bug Report or Feature Request (mark with an x)
- [X] bug report
- [ ] feature request

Versions
Angular CLI: 6.0.8
@angular/compiler-cli: 6.0.7
@types/jasmine: 2.8.8
@types/jasminewd2: 2.0.3
@types/node: 10.5.1

Angular: 6.0.7
Node: 8.10.0
OS: Windows 10

Package                           Version
-----------------------------------------------------------
@angular-devkit/build-angular     0.6.7
@angular/cli                      6.0.7
rxjs                              6.2.1
typescript                        2.7.2
webpack                           4.8.3

Repro steps
1 - Created I lib in a different workspace from the main project.
2- Published to a private npm.
3 - Installed the lib in the same workspace with a test project, npm install @org/my-lib, ng serve works and ng-build works, (it has the lib code in the bundle file)
4 - Installed the lib in my main project (that will consume the lib), its in another workspace.
5- ng serve works, ng build --prod does not include the lib code into the bundle.
Mention any other details that might be useful
The main project was upgraded from angular 5 to 6 one month ago using angular cli.
If I install the lib using the tgz file directly "my-lib": "file:../../my-project/dist/my-lib", ng-build --prod works and the code in included in the bundle.
If I install the lib using the tgz file from cloud "my-lib": "https://myserver/my-lib.0.0.1.tgz", it does not include the lib code into the bundle file
If I install the lib using "@org/my-lib":"0.0.1" , ng build --prod does'n include the lib code into the bundle

This appears to be a bug but we will need to look at a reproduction to find and fix the problem. Can you setup a minimal reproduction please?
You can read here why this is needed. A good way to make a minimal reproduction is to create a new app via ng new repro-app and adding the minimum possible code to show the problem. Then you can push this repository to github and link it here.

I've setup a repo, but unfortunately, it works on the repo. So maybe is some configuration created when using the angular migration command that is different from when you start a fresh project.
I compared all files from the fresh and my main project, all the same. I deleted node_modules and installed everything again, no lucky

Probably this is related: #6195

It is something with cache, I created one repro app and a repro-lib, did a few tests and it works, it updates the code normally. Is there any cache with angular-cli or webpack? I saw in some issues here about angular-cli relying on a symlink on dist folder. I have different folder names on my main project. Im not using src and dist folders. Do you think its related?

When I delete my node_modules folder and all dist folder, npm instal and ng build --prod again, it brings the last lib code to the vendor file

The only way I found to make my build to include updates on my lib is to
delete node_modules folder
npm cache clean --force
npm install
Then, if I build, it includes the last code

I posted this issue on webpack repo. No solution until now...

I'm also having the same issue and running a npm cache clean --force worked for me as well.
I had also tried making changes to my tsconfig.json by adding the 3rd party path directly to the config, this did not work. Errors showed that it was looking directly at the installed module in node_modules but that it still couldn't find it. https://github.com/angular/angular-cli/issues/11835 also did not include the fix for this.
Just to clarify, I have 3 sub-packages that are getting built locally and I was using an npm link to point to them from the main project. Each sub-package had several 3rd party dependencies (angular, rxjs, etc).
After linking the other local sub-packages, I run ng test in the main package. This resulted in Module not Found errors for almost all the 3rd party dependencies because it could not resolve the sub-package 3rd party dependencies.

Using the latest version of everything mentioned above and it does not happen anymore.


Optimize color selection of labels used in repository

Search before asking

[X] I searched in the issues and found nothing similar.

Motivation
Today's color selection for labels in Pulsar's repository is not this intuitive to give a good overview.
The main reasons:

very different types use similar or near similar colors, e.g. type/bug and type/enhancement
color section does not follow the typical/most used color theme, e.g. type/bug is in most repositories red background and white font color

in this repository it looks like this and people already ad a prefix like [Bug] to the title to have a better orientation...

typical color scheme in most repositories:

Solution
a good write up with some good ideas/principles for label design:
https://seantrane.com/posts/logical-colorful-github-labels-18230/
following this, it may look like this way:

=> as a first quickfix on could at least recolor some of the negatively important ones to
red background and white font color

type/bug
release/blocker
component/security

Alternatives
No response
Anything else?
No response
Are you willing to submit a PR?

[ ] I'm willing to submit a PR!

Will update soon

thanks for this first step! Looks pretty  ...red now..

Related: https://github.com/apache/pulsar/issues/22277#issuecomment-2002553745


Signin - Custom Check before continue with the authorization

Hello Roberto,
First of all thanks for your contribution! I find its code really great and clean.
I am developing an app which follows your authentication and spa design approach. It needs to perform some custom checks once the user starts the signin proccess in order to know if its user email has not been deleted/blocked from the organization Active Directory in order to let him authorize via /connect/token or not.
Where do you consider I should better place this custom bussiness-logic layer?
My first approach has been to create a new backend API Controller which takes the user signin decision, so I could consume it from the client (signin.ts), before calling the 'this.authenticationService.signin(...)' . So if the API Controller did find the user within the Active Directory and it has not been blocked, the authentication will continue. At the same time, if the users email has been deleted/blocked I will remove it also from the Identity database in order to guarantee he wont be able to access anymore.
The problem is that I find this approach easily hackeable just by using the developer tools. Is there any way I could centralize the sigin token login within the backend to make it more secure?
Thanks really much for your time,
Andrés.

Hi Andrés,
I think you could use Resource Owner Password Validation: http://docs.identityserver.io/en/release/topics/resource_owner.html and its GrantValidationResult. Unfortunately there is not much documentation about it. Try to see also this question, that contains some example of its use: http://stackoverflow.com/questions/35304038/identityserver4-register-userservice-and-get-users-from-database-in-asp-net-core.
In theory, in this way, you could give up calling your service from the client, and call only the token endpoint that will contain the validation logic you decide.
Greetings,
Roberto

Dear Roberto,
ResourceOwnerPasswordValidator and ProfileServer finally did the trick!
All I needed to completely customize the authorization flow from the backend was to inject such services at the startup.cs:

Within the services declaration:
   Services.AddTransient<IResourceOwnerPasswordValidator, ResourceOwnerPasswordValidator>(); Services.AddTransient<IProfileService, ProfileService>();

And after the Identity Server creation "services.AddIdentityServer()":
AddProfileService<ProfileService>(); AddResourceOwnerValidator<ResourceOwnerPasswordValidator>();

And I Finally was able to include both classes ResourceOwnerPasswordValidator.cs and ProfileService.cs which let you customize the login authentication(ResourceOwner) and the Claims logic(ProfileService).
Here you can find a good example of both classes: https://github.com/IdentityServer/IdentityServer4/tree/dev/src/IdentityServer4/Test
This way it is possible to include additional checks (like if the user has been blocked within my app or the organization Active Directory) before continue with the login in a secure way.
Thanks very much for your tips,
Andrés.

Hi Andrés,
I'm glad to know it! And thanks for sharing the solution. Actually, it's a scenario that can often occur: I think I could add it as an option to this project.
Greetings,
Roberto

Hello Roberto,
Sure It would be great if you include such option, at least commented.
The only thing you need to take into account is that once you add the custom ResourceOwnerValidator its default behaviour (such as failed login attemps etc.. ) will be overriden with the custom new code so It is required to manually codify this logic by using the different UserManager methods.
Let me know if I could help you with my already developed code.
Regards,
Andrés.


Nested modals

Coverage increased (+0.01%) to 98.742% when pulling 2efdfa9a746b695d07278ad02bc8f0bb95db19ec on nested-modals into e207480111158b7ba2097e3225bdc093e557445c on master.


[WIP] [match] add new option to recreate deleted profiles in dev portal

⚠ Tests are missing but want to get some thoughts on this before I go any further 😊
Wut

match will error out if provisioning profile was deleted from the dev portal but remained in the match repo
This can be a bit cumbersome for users as they either need to:

delete the profile manually from the repo
run nuke

This proposed feature will automatically recreate the deleted profile

The deleted profile essentially behaves like an "invalid" profile

Additional Thoughts?

I currently set the new option to default to false  as to not change existing behavior under current users BUT this could be set to default to true as it could prevent some confusion for new users

          1 Warning

:warning:
Pull Request is Work in Progress

  Generated by :no_entry_sign: Danger

Is there a match init? If yes, it could set it to true for new inits. Maybe by simply adding it here: https://github.com/fastlane/fastlane/blob/master/match/lib/assets/MatchfileTemplate.

Any update on this PR?

@janpio That is correct! It errors out if not remote copy which always felt a little bit weird 😖 This will allow match to recreate a new profile if it isn't found remotely (like expected).

Would the now deleted profile be of any use of another development machine? So if my colleague still has it, do I harm him in any way when my own match creates a new one? Or is this broken for him anyway already?
What happens if my colleague still has the old one on his machine and runs match after it recreated the profile when I ran it - will this recognize that the remote one is a new one and not the one they still have on their machine?

I'd also be ok setting this on by default, and making sure to monitor GH issues after shipping

this should be on by default (can’t think of a good reason to have it off — I almost think it shouldn’t even be an option)
@janpio no, once deleted the profile is of no use on another dev machine. And the new profile would replace the old one 👍🏼

Yah I'm ok with what @getaaron said, let's make it the default, and not even an option

🛳

@getaaron WOOAAAAHH DDUUUDDEEEEE, that was quick!


gutil.template requires a file attribute

Why wrap lodash's template function in such a way?
> var t = gutil.template('<%= test %>', { test: 'something' });
// Error: Failed to provide the current file as "file" to the template

> var t = gutil.template('<%= test %>', { test: 'something else', file: 'what?' });
console.log('t:', t); // something else

Because this is meant to be used in file streams, which always have a file. This is so the user has a constant variable they can expect when giving template strings to different plugins

Makes sense. Thanks.


[BUG] DaffProduct.image should not be nullable

:bug: Bug report
Current Behavior
DaffProduct.image is nullable.
Expected Behavior
DaffProduct.image should not be nullable. It should be an empty array if it doesn't have images.
Minimal reproduction of the problem with instructions

What is the motivation / use case for changing the behavior?

Environment

Daffodil version: X.Y.Z
Angular version: X.Y.Z

For Tooling issues:
- Node version: XX
- Platform:

Others:

@xelaint I'm not sure in which PR this was resolved, but it seems it was done at some point. Please verify and then close this issue if it's resolved.


Don't promote layout property values to local values in DevTools.

What does the pull request do?
When DevTools was opened, all layout property values were being promoted to LocalValues because the _updatingFromControl flag was not being set during initialization, causing the initial values to be written back out to the control as local values.
You can see this by opening DevTools and looking at e.g. HorizontalAlignment - it will be set as LocalValue priority even when only set via style.

You can test this PR using the following package version. 0.10.999-cibuild0021434-beta. (feed url: https://nuget.avaloniaui.net/repository/avalonia-all/index.json) [PRBUILDID]

You can test this PR using the following package version. 0.10.999-cibuild0021509-beta. (feed url: https://nuget.avaloniaui.net/repository/avalonia-all/index.json) [PRBUILDID]


feat(launcher): Log server stdout

@OlivierDehaene fair enough, sounds fine to me, thanks! I guess I just like to make sure all output is captured/relayed, in case some library is writing stuff to stdout or stderr (e.g. output from bitsandbytes or pytorch cuda errors etc). The gRPC interceptor only covers raised exceptions.
But it's a good point re using separate containers, so far I have been running all in one container to keep things simple but had intended to experiment with that.

I have been running all in one container

In what context do you use this repo btw? I'm curious of your use case.

@OlivierDehaene for efficient mutli-user/application sharing of large models, mostly experimentation so far.