vrpy 0.5.1 :snowflake:

vrpy 0.5.1 :snowflake:
Destination channel: Snowflake
Links

PKG-4791
dev_url (pypi): https://github.com/Kuifje02/vrpy
conda-forge: feedstock not found on conda-forge
pypi: https://pypi.org/project/vrpy/0.5.1
pypi inspector: https://inspector.pypi.io/project/vrpy/0.5.1

Explanation of changes:

new feedstock
patch for readme utf-8 (and the version they forgot to update it)
patch to fix an import for an old version of networkx
skip all the tests that use the solve method because it uses the default solver from pulp which is not available

Depends on

AnacondaRecipes/cspy-feedstock#1

Notes for the Reviewers

The default solver for pulp is unavailable in the package pulp in our defaults channel. Therefore the package vrpy is useless unless one of the two other solvers is installed (gurobi, cplex ). See: https://vrpy.readthedocs.io/en/latest/solving_options.html
See also this discussion: https://anaconda.slack.com/archives/C02K52E033M/p1721238331333339

The contents of the sdist on pypi and the github archive is different. With the sdist including verypy. But this is only used in the examples. LGTM

Good point, I missed that. Let me have a look at this.

The contents of the sdist on pypi and the github archive is different. With the sdist including verypy. But this is only used in the examples. LGTM

@cbouss I can see the difference with the sdist, but there is no verypy in the repository. I think it might come from https://github.com/yorak/VeRyPy as also referenced in a comment by the author: https://github.com/Kuifje02/vrpy/issues/123#issuecomment-1047277407
if verypy is needed, we'll build another package for that.


Renaming a single argument breaks all other field arguments

Describe the bug
The Rename Transform functionality to rename arguments is broken in wrap mode.
If you want to rename a single argument it does rename it as desired, but it will also mess up with other arguments available on the same field.
It mostly removes other arguments available, but the one renamed. In some instances, it also renames a random argument to the same name of the field.
I suspect the issue comes from graphql-tools.
To Reproduce
This behavior should be tested by the available test should only affect specified field argument, however, the test is faulty, because the field tested has only a single argument.
I have improved the test in a branch on my fork to add another argument and the test is failing.
This can be used to duplicate the issue, check the diff here.
Expected behavior
Only the targeted argument is changed; other arguments must not be affected in any way.

Hi @santino!
You are right, I found the following typo in wrapRename.ts: https://github.com/Urigo/graphql-mesh/blob/master/packages/transforms/rename/src/wrapRename.ts#L94
I'll work on a fix ASAP, thanks!


Why scroll is not smooth when webapp run in android 4.1 or 4.2?the webapp used Frameworrk7 Plus.

Why scroll is not smooth when webapp run in android 4.1 or 4.2?the webapp used Frameworrk7 Plus.

I guess because Android is slow. But anyway, ask this question in Framework7 Plus repo, i am not related to it

thx for you answer,but I write a simple demo by myself,the scroll is smooth; Is it proves the reason what makes scroll be not smooth isn't slowly Android?

@ada90 can you please post the code you wrote for smooth scrolling?


CandleChart - Tooltip

Really appreciate your work. I am working on some financial project which I have some candle charts and need some help to achieve below

How can I show the open, close, high, low with date on the mouseover each candle?
How I can make the the X-axis as date from database instead of numbers?
Based on the volume, can I control the size of the candle?

Hi @satyat110
DateTime

How I can make the the X-axis as date from database instead of numbers?

Inspired by your comment I made a few small improvements to OHLC charts which make it easier to display dates. When constructing an array of OHLC objects, each OHLC now accepts a DateTime (which makes a lot more sense than a double). You can then formal the horizontal axis to display tick labels in date format with:
plt.Ticks(dateTimeX: true);

I updated the examples in the cookbook:

https://github.com/swharden/ScottPlot/tree/master/cookbook#candlestick
https://github.com/swharden/ScottPlot/tree/master/cookbook#ohlc

I also updated the financial plot demo:

MouseOver events

How can I show the open, close, high, low with date on the mouseover each candle?

The demo application (advanced tab, interactivity section, "show value on hover" button) shows how to do this with scatter plots. It should be straightforward to add code to the OHLC plot to allow it to perform a similar behavior, but that support is not currently present.

Based on the volume, can I control the size of the candle?

Not currently. The best way you could do this is to create a new type of plottable object which has price information including volume. Perhaps call it PlottableOHLCwithVolume. It would inherit from Plottable. Its code would be mostly identical to PlottableOHLC, except it would also include volume and render the width of each bar accordingly. ScottPlot has been designed to be pretty easy to add custom plot types to for highly specific applications like yours.

Thanks for your quick response. Let me try your recommendations and update you on this.

Thanks for your quick response. Let me try your recommendations and update you on this.

Sure thing! Also note that my code suggestion uses features in the latest (source) version of ScottPlot. It's not on NuGet yet, but I'm going to release a new package on NuGet later today.

I added some code to the finance demo which shows how to get the DateTime of the point under the mouse. This should be a pretty strong start!

Thanks Scott. I can able to add the OHLC values on candle hover over. This works!!!!!
If we could able to change the background color of the whole text will differentiate and look nice :-)
Any suggestions...

Hey that looks great!
Would you be up for modifying the code of the finance demo so it does this (with pull request), then I can use that as a starting point for improving the styling?

Absolutely. I am more than happy to share the code what I am adding. Give me couple of days....

Give me couple of days....

Sounds good! As soon as this is finished I'll combine your changes with #182 and release a new NuGet package whose improvements focus on OHLC/candlestick.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace ScottPlotDemos
{
    public partial class FormFinancial : Form
    {
        public FormFinancial()
        {
            InitializeComponent();
            Button1_Click(null, null);
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void GenerateNewData()
        {
            Random rand = new Random();

            int pointCount = 100;

            ScottPlot.OHLC[] ohlcs = ScottPlot.DataGen.RandomStockPrices(rand, pointCount);

            double[] volumes = ScottPlot.DataGen.Random(rand, pointCount, 500, 1000);
            double[] timestamps = new double[ohlcs.Length];
            for (int i = 0; i < timestamps.Length; i++)
                timestamps[i] = ohlcs[i].day;

            formsPlot1.plt.Clear();
            formsPlot1.plt.YLabel("Share Price");
            formsPlot1.plt.Title("ScottPlot Candlestick Demo");
            if (rbCandle.Checked)
                formsPlot1.plt.PlotCandlestick(ohlcs);
            else
                formsPlot1.plt.PlotOHLC(ohlcs);
            formsPlot1.plt.Ticks(dateTimeX: true);
            formsPlot1.plt.PlotText("", timestamps[10], ohlcs[10].low, bold: true, fontSize: 10, color: Color.Black);

            //Add an idication in the candle like Stock bought at this day...
            formsPlot1.plt.PlotText("B", timestamps[10], ohlcs[10].high, bold: true, fontSize: 10, color: Color.Blue);
            formsPlot1.plt.AxisAuto();

            formsPlot2.plt.Clear();
            formsPlot2.plt.YLabel("Volume");
            formsPlot2.plt.PlotBar(timestamps, volumes, barWidth: .5);
            formsPlot2.plt.AxisAuto(.01, .1);
            formsPlot2.plt.Axis(null, null, 0, null);
            formsPlot2.plt.Ticks(dateTimeX: true);

            formsPlot1.plt.MatchLayout(formsPlot2.plt, horizontal: true, vertical: false);

            formsPlot1.Render();
            formsPlot2.Render();

            lblHover.Text = "";
        }

        private void Button1_Click(object sender, EventArgs e)
        {
            GenerateNewData();
        }

        private void RbCandle_CheckedChanged(object sender, EventArgs e)
        {
            GenerateNewData();
        }

        private void RbOHLC_CheckedChanged(object sender, EventArgs e)
        {
            GenerateNewData();
        }

        private void formsPlot1_AxesChanged(object sender, EventArgs e)
        {
            formsPlot2.plt.MatchAxis(formsPlot1.plt, horizontal: true, vertical: false);
            formsPlot2.Render();
        }

        private void formsPlot2_AxesChanged(object sender, EventArgs e)
        {
            formsPlot1.plt.MatchAxis(formsPlot2.plt, horizontal: true, vertical: false);
            formsPlot1.Render();
        }

        private void formsPlot1_MouseMoved(object sender, EventArgs e)
        {
            Point mouseLoc = new Point(Cursor.Position.X, Cursor.Position.Y);
            mouseLoc.X -= this.PointToScreen(formsPlot1.Location).X;
            mouseLoc.Y -= this.PointToScreen(formsPlot1.Location).Y;

            PointF mouseCoordinate = formsPlot1.plt.CoordinateFromPixel(mouseLoc);
            DateTime dt = DateTime.FromOADate(mouseCoordinate.X);
            lblHover.Text = dt.ToString("dddd, MMM dd, yyyy");

            var plottables = formsPlot1.plt.GetPlottables();
            var scatterPlot = (ScottPlot.PlottableOHLC)plottables[0];
            var highlightText = (ScottPlot.PlottableText)plottables[1];
            var DDhighlightText = (ScottPlot.PlottableText)plottables[2];

            // determine which scatter point is closest to the mouse
            int closestIndex = 0;
            string location = string.Empty;
            double closestDistance = double.PositiveInfinity;
            for (int i = 0; i < scatterPlot.pointCount; i++)
            {
                //Added all 4 points to make sure tooltip covers all the size of the candle
                //@ High
                double dx = mouseLoc.X - formsPlot1.plt.CoordinateToPixel(scatterPlot.ohlcs[i].day, 0).X;
                double dy = mouseLoc.Y - formsPlot1.plt.CoordinateToPixel(0, scatterPlot.ohlcs[i].high).Y;
                double distance = Math.Sqrt(Math.Pow(dx, 2) + Math.Pow(dy, 2));
                if (closestIndex < 0)
                {
                    closestDistance = distance;
                }
                else if (distance < closestDistance)
                {
                    closestDistance = distance;
                    closestIndex = i;
                }

                //@ Low
                 dx = mouseLoc.X - formsPlot1.plt.CoordinateToPixel(scatterPlot.ohlcs[i].day, 0).X;
                 dy = mouseLoc.Y - formsPlot1.plt.CoordinateToPixel(0, scatterPlot.ohlcs[i].low).Y;
                 distance = Math.Sqrt(Math.Pow(dx, 2) + Math.Pow(dy, 2));
                if (closestIndex < 0)
                {
                    closestDistance = distance;
                }
                else if (distance < closestDistance)
                {
                    closestDistance = distance;
                    closestIndex = i;
                }

                //@ Open
                dx = mouseLoc.X - formsPlot1.plt.CoordinateToPixel(scatterPlot.ohlcs[i].day, 0).X;
                dy = mouseLoc.Y - formsPlot1.plt.CoordinateToPixel(0, scatterPlot.ohlcs[i].open).Y;
                distance = Math.Sqrt(Math.Pow(dx, 2) + Math.Pow(dy, 2));
                if (closestIndex < 0)
                {
                    closestDistance = distance;
                }
                else if (distance < closestDistance)
                {
                    closestDistance = distance;
                    closestIndex = i;
                }

                //@ Close
                dx = mouseLoc.X - formsPlot1.plt.CoordinateToPixel(scatterPlot.ohlcs[i].day, 0).X;
                dy = mouseLoc.Y - formsPlot1.plt.CoordinateToPixel(0, scatterPlot.ohlcs[i].low).Y;
                distance = Math.Sqrt(Math.Pow(dx, 2) + Math.Pow(dy, 2));
                if (closestIndex < 0)
                {
                    closestDistance = distance;
                }
                else if (distance < closestDistance)
                {
                    closestDistance = distance;
                    closestIndex = i;
                }
            }

            highlightText.x = scatterPlot.ohlcs[closestIndex].day;
            highlightText.y = scatterPlot.ohlcs[closestIndex].close;
            if (closestDistance < 20)
            {
                highlightText.text = string.Format(
                        "{0} \nHigh : {1}\nOpen : {2}\nClose: {3}\nLow  : {4}",
                        dt.ToShortDateString(),
                        Math.Round(scatterPlot.ohlcs[closestIndex].high, 2),
                        Math.Round(scatterPlot.ohlcs[closestIndex].open, 2),
                        Math.Round(scatterPlot.ohlcs[closestIndex].close, 2),
                        Math.Round(scatterPlot.ohlcs[closestIndex].low, 2)
                    );
            }
            else
            {
                highlightText.text = "";
            }
            formsPlot1.Render();
        }

        private void btnHline_Click(object sender, EventArgs e)
        {
            //Adding a Hline to provide the chart analyser to review the range.
            var plottables = formsPlot1.plt.GetPlottables();
            var scatterPlot = (ScottPlot.PlottableOHLC)plottables[0];
            formsPlot1.plt.PlotHLine(scatterPlot.ohlcs[0].high, lineWidth: 2, draggable: true);
            formsPlot1.Render();
        }
    }

}

Hi, do you have some example code for this for plotting volume on a candlestick chart to an image? (ScottPlot v4.0)
e.g.
var klines = client.SpotApi.ExchangeData.GetKlinesAsync(
symbol: "BTCUSDT",
interval: Binance.Net.Enums.KlineInterval.OneHour,
startTime: DateTime.Now.AddDays(-1),
endTime: DateTime.Now,
limit: 24);
List<ScottPlot.OHLC> ohlcs = new List<ScottPlot.OHLC>();
foreach (var price in klines.Result.Data)
{
var ohlc = new ScottPlot.OHLC(
(double)price.OpenPrice,
(double)price.HighPrice,
(double)price.LowPrice,
(double)price.ClosePrice,
(DateTime)price.OpenTime,
timeSpan: 1.0 / 60 / 24);
                ohlcs.Add(ohlc);
            }

var plt = new ScottPlot.Plot(1600, 1024);
plt.PlotCandlestick(ohlcs.ToArray()); // works fine!
plt.PlotBar( // not sure how to do it to match above candlestick times and positions. <---------------
plt.SaveFig("c:\test.png")
Thanks very much for your help.


(packaging) Bump ezbake to 0.3.13

Fixes for service restart on upgrade.

:+1: , pending Travis.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://jenkins.puppetlabs.com/job/platform_puppetdb_intn-sys_pr/1617/


Changeset is always pristine when invalid

While working on my project I noticed that isPristine returns true when isValid is false. This is definitely not  expected. Is there any story behind this? Here is full, working example.

It is the opposite of isDirty. pristine changeset is one with no changes. But you can have an attribute of model that is required, the model behind changeset may be a new or empty and therefore does not have any value (valid or invalid). If you do need a button that is disabled until a value is filled, you can add disable={{changest.isPristine}}. Changeset starts with isPristine=true and isValid=false.

But pristine changeset is clearly not one with no changes. Look at this example.
const model = this.get('model'); //model.name === 'valid-name'
// name: [validateLength({max: 100, min: 2})]
const changeset = new Changeset(model, lookupValidator(validations), validations);
const log = function() {
  console.log(`isPristine: ${changeset.get('isPristine')}, isValid: ${changeset.get('isValid')}, orig: '${model.get('name')}', new: '${changeset.get('name')}'`);
};

log(); // isPristine: true, isValid: true, orig: 'valid-name', new: 'valid-name'
changeset.set('name', 'valid-but-different');
log(); // isPristine: false, isValid: true, orig: 'valid-name', new: 'valid-but-different'
changeset.set('name', 'x');
log(); // isPristine: true, isValid: false, orig: 'valid-name', new: 'x'

When the value is not valid isPristine returns true.

Do you have a working example? It works differently for me. Without call any method on changeset, isPristine will be false when I type anything to my form.

Just quick check - do you have v1.2.0?

Anyway here is full, working example. Just clone, ember serve, open http://localhost:4200/ and check console output.

Okay, now I see it and you're right. I see that the property CHANGES is updated only if the new value is valid. I see that isPristine is true when CHANGES is the same as the underlying object. So I agree with you that it's a little confusing when changeset can be set to an invalid value and isPristine remains true.

@jklapuch I made it so isPristine only watches changes because errors will never get applied onto the model. So it's still "pristine" in the sense that nothing has changed. Does that make sense?

Why is it so hard to have isPristine work like described in docs :(

I'm not sure what the confusion is, "pristine" means that the model will be left unchanged if the changeset is executed. In the example you posted above:
changeset.set('name', 'valid');
changeset.set('name', 'some invalid value');

The second set will clear the first change and make it an error instead. There are now no changes and one error on the changeset. In other words, the changeset is pristine!
What is the usecase that you need isPristine to be false when the changeset is invalid?

Sorry! I see where is problem now. Because english is not my native language and i don't think there is fitting word for it in my language I used blackbox in my mind as a substitution. So when you rewrite that statement with blackbox instead A pristine blackbox is one with no changes. it starts to make sense why I see blackbox that contains some internal changes that make it invalid as not pristine one.
Anyway, I wanted to check if user made any changes to form before closing it.


[Perf] Add parameter TimeoutInMinutes, Increase timeout for storage-blob-perf to 12 hours

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


Version Bump of azure-pipelines-tasks-docker-common

Task name:
Description:
Documentation changes required: (Y/N)
Added unit tests: (Y/N)
Attached related issue: (Y/N)
Checklist:

[ ] Task version was bumped - please check instruction how to do it
[ ] Checked that applied changes work as expected

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run

/azp run


ARROW-17985: [C++][Python] Improve s3fs error message when wrong region

Will fix ARROW-17985

The code looks good to me!

E            Regex: "When getting information for bucket 'voltrondata-labs-datasets': Looks like the configured region is 'eu-north-1' while the bucket is located in 'us-east-2': *"
E            Input: "When resolving region for bucket 'voltrondata-labs-datasets': AWS Error NETWORK_CONNECTION during HeadBucket operation: Encountered network error when sending http request"
pyarrow\tests\test_fs.py:1329: AssertionError

I will re-run the build to see if it helps.

Thanks @AlenkaF, is there a way to mark tests as flaky or otherwise try a couple times?

Can you rebase or merge master to see if we get a green CI?

Well, looks like the test fails on AppVeyor.
https://ci.appveyor.com/project/ApacheSoftwareFoundation/arrow/builds/45449303#L2831
This may be due to different AWS SDK versions, or some other factor...

Actually, perhaps you need to rebase/merge from master and see if the tests need fixing?

Thanks for the help!

Encountered network error when sending http request

I would have expect an incompatible SDK to complain differently.. but it's a strange world. Fingers crossed the update from master helps.

Unfortunately still failing ..
It's giving a network connection error (OSError: When getting information for bucket 'voltrondata-labs-datasets': AWS Error NETWORK_CONNECTION during HeadBucket operation: Encountered network error when sending http request). I find it strange that it would give such an error if it is actually for a wrong bucket/region, since that is not really related to the network connection (but if it's actually a connection issue, it also wouldn't be just this test that is failing)

I can try to setup a Windows VM environment locally and see if I can debug it any further.

I started AppVeyor again, perhaps it was a fluke? I agree the network connection error is a bit unexpected...

The MinGW failures are unrelated and probably https://github.com/aws/aws-sdk-cpp/issues/2204


propose-update: clean up, document tarball download

Fixes #137

asked twice for reviews, didn't get it, merging

Thanks a lot. It's much clearer now!
Just one small nitpick there is an issue with the ' character in the --force option description on the https://packit.dev/docs/cli/propose-update/ (at least for Firefox 77.0.1). So maybe you want to fix this to make the web nicer. So or so, everything is written there and that is most important here ;).

Thanks a lot. It's much clearer now!
Just one small nitpick there is an issue with the ' character in the --force option description on the https://packit.dev/docs/cli/propose-update/ (at least for Firefox 77.0.1). So maybe you want to fix this to make the web nicer. So or so, everything is written there and that is most important here ;).
P.S.: Sorry for my late reply. I was on vacation without internet connection last week.

Thanks for checking in.
Yeah, I saw the issue as well - tried to fix it but it couldn't; the only other option is to use a single color, which looked really blank, so I stuck to this one.


Visually update guides

Smaller headers. Less headers. Stages need to be updated.

@roryaronson can we close this one? I think what's different now is just things that exist, don't exist, right?


Dexie.d.ts needs ReadonlyArray as an option of IndexableType

As title.  Basically, if you have a ReadonlyArray, it currently won't work with e.g. anyOf() because that function only takes an Array, not a ReadonlyArray.  Naturally though, anyOf() doesn't require a mutable array.

Also: get() should specify whether it returns null or undefined when the object does not exist, in conformance with --strictNullChecks in Typescript 2.

Thanks!! If I forget to follow up on this, please send a pull request with the fix (should commit the change to src/Dexie.d.ts) or remind me ;)

Minor update - IndexableType needs to cover all bases with respect to Dexie.maxKey (needs to include string[] looks like):
Argument of type '(string[] | Done)[]' is not assignable to parameter of type 'IndexableType'. Type
        '(string[] | Done)[]' is not assignable to type '(string | number | Date)[]'. Type 'string[] | Done' is not
        assignable to type 'string | number | Date'. Type 'string[]' is not assignable to type 'string | number |
        Date'. Type 'string[]' is not assignable to type 'Date'. Property 'toDateString' is missing in type
        'string[]'.

declare type IndexableTypeParts = string | number | Date | null | Array<Array<void>>;
declare type IndexableType = IndexableTypeParts | Array<IndexableTypeParts>;

static maxKey: Array<Array<void>> | string;

It's on my list to make a pull request with this stuff.  Should also add static minKey: number... and set it to Number.NEGATIVE_INFINITY: https://www.w3.org/TR/IndexedDB/#dfn-key.

Thanks for clarifying these things out, and also for planning to create a PR. Much appreciated :+1:

Awesome, thanks for the merge :)


Alternate BField

allow alternate bfield to be specified in primary generation and digitization.

Hi @brownd1978,
You have proposed changes to files in these packages:

Scripts
JobConfig

which require these tests: build.
@Mu2e/write, @Mu2e/fnalbuild-users have access to CI actions on main.
:hourglass: The following tests have been triggered for 555cbdccad4c7faf6c0dc09b6181f42a80387b65: build  (Build queue is empty)
About FNALbuild. Code review on Mu2e/Offline.

Note that we need to add something to the output collection configuration field to specify the non-standard bfield.  I will update after your feedback.

:sunny: The build tests passed at 555cbdccad4c7faf6c0dc09b6181f42a80387b65.

Test
Result
Details

test with
:white_check_mark:
Command did not list any other PRs to include

merge
:white_check_mark:
Merged 555cbdccad4c7faf6c0dc09b6181f42a80387b65 at 95878bd45a13ea4ac024ceb66090fc0397aaea24

build (prof)
:white_check_mark:
Log file. Build time: 13 min 19 sec

ceSimReco
:white_check_mark:
Log file.

g4test_03MT
:white_check_mark:
Log file.

transportOnly
:white_check_mark:
Log file.

POT
:white_check_mark:
Log file.

g4study
:white_check_mark:
Log file.

cosmicSimReco
:white_check_mark:
Log file.

cosmicOffSpill
:white_check_mark:
Log file.

ceSteps
:white_check_mark:
Log file.

ceDigi
:white_check_mark:
Log file.

muDauSteps
:white_check_mark:
Log file.

ceMix
:white_check_mark:
Log file.

rootOverlaps
:white_check_mark:
Log file.

g4surfaceCheck
:white_check_mark:
Log file.

FIXME, TODO
:white_check_mark:
TODO (0) FIXME (0) in 0 files

clang-tidy
:white_check_mark:
0 errors 0 warnings

N.B. These results were obtained from a build of this Pull Request at 555cbdccad4c7faf6c0dc09b6181f42a80387b65 after being merged into the base branch at 95878bd45a13ea4ac024ceb66090fc0397aaea24.
For more information, please check the job page here.
Build artifacts are deleted after 5 days. If this is not desired, select Keep this build forever on the job page.

@FNALbuild run build test with Mu2e/Offline#828

:hourglass: The following tests have been triggered for 1fb3c9d40c6c7bacc97cdd11404f25c94c111b48: build  (Build queue is empty)

:sunny: The build tests passed at 1fb3c9d40c6c7bacc97cdd11404f25c94c111b48.

Test
Result
Details

test with
:white_check_mark:
Included Mu2e/Offline#828 @ 49ad6b26eda36e56c3f316cf77634a93ce935453 by merge

merge
:white_check_mark:
Merged 1fb3c9d40c6c7bacc97cdd11404f25c94c111b48 at 95878bd45a13ea4ac024ceb66090fc0397aaea24

build (prof)
:white_check_mark:
Log file. Build time: 13 min 15 sec

ceSimReco
:white_check_mark:
Log file.

g4test_03MT
:white_check_mark:
Log file.

transportOnly
:white_check_mark:
Log file.

POT
:white_check_mark:
Log file.

g4study
:white_check_mark:
Log file.

cosmicSimReco
:white_check_mark:
Log file.

cosmicOffSpill
:white_check_mark:
Log file.

ceSteps
:white_check_mark:
Log file.

ceDigi
:white_check_mark:
Log file.

muDauSteps
:white_check_mark:
Log file.

ceMix
:white_check_mark:
Log file.

rootOverlaps
:white_check_mark:
Log file.

g4surfaceCheck
:white_check_mark:
Log file.

FIXME, TODO
:white_check_mark:
TODO (0) FIXME (0) in 0 files

clang-tidy
:white_check_mark:
0 errors 0 warnings

N.B. These results were obtained from a build of this Pull Request at 1fb3c9d40c6c7bacc97cdd11404f25c94c111b48 after being merged into the base branch at 95878bd45a13ea4ac024ceb66090fc0397aaea24.
For more information, please check the job page here.
Build artifacts are deleted after 5 days. If this is not desired, select Keep this build forever on the job page.

CI was run earlier this evening when Offline PR #828 was tested in combination with this one.  Merging now.


Refactored config to handle direct calls for specific version

refs #9866

Refactored overrides config to include direct version configs(v0.1, v2), supported versions map to direct version
Refactored getApiPath util to handle direct versions as well as mappings of supported versions

Context/Problem: We wanted to remove all hardcoded uses of api version paths going forward, to be able to support multiple versions from a central config. Problem with current config is it only allows to get paths for stable/deprercated/active, which means in cases where we explicitly need to fetch for a particular version, it still needs to be passed as one of these 3 options.
Solution: I think a good solution is to add the actual path config for each version directly in the config, and the supported versions(stable, deprecated, active) just point to which version they refer to in config. The getApiPath method needed a small update to handle that mapping, and overall it seems to make more sense.

@rishabhgrg Could you pls merge? I need this PR for #9922 :)


Replace V8x16Shuffle with V8x16Shuffle1 and V8x16Shuffle2Imm opcodes.

This matches the update to the SIMD proposal at https://github.com/WebAssembly/simd/commit/7f4d54d4c9a525f6e04c7edcecdc1969f27e5d09
This causes the existing test/simd.wasm to fail. I'd appreciate instructions on how to update it.

This causes the existing test/simd.wasm to fail. I'd appreciate instructions on how to update it.

The https://github.com/WebAssembly/simd/issues/60 is still opened. The using binaryen's or wabt's tests will be fine to replace out-of-date "simd.wasm".

cc @alexcrichton

FWIW we don't expose this in rust-lang/rust or use it much in wasm-bindgen, so changing this should be fine at any time! We just need to get around to actually adding an intrinsic for this in rust :)

This causes the existing test/simd.wasm to fail.

@nlewycky I cannot find any tests with new shuffles form. You can:

replace simd.wasm with your custom simd-noshuffle.wasm (based on binaryen's one).
or, enable old format to keep simd.wasm passing (we can create separate issue to track its removal later).

Thank you for the patch!


Accessibility issues with Form Upload

Erik and Roel reported back these issues.
1.1.1 Non-text Content

Issue: the error icon, the close button and the file icon use fontawesome and fall for many of its issues.

1.3.1 Info and Relationships

Issue: the "Upload as a button" puts an <input> inside a <button>. All semantics of the input are lost this way and the role of the element is lost for AT users.
Fix: make sure the focused element has the right role.
Issue: the optional description message is visually close to the input but is not connected in code.
Fix: use aria-describedby to make sure AT can also notice the description message
Issue: errors are visually unclear (because of use of colour) and even less clear in code.
Fix: use the word error in a message and put aria-invalid on the input.

Recommendations
"Upload as a button" has a span to label the button. The use of aria-labelledby is unnecessary as the content of a button forms the accessible name of the button.
Clicking the label doesn't put the focus on the upload but triggers the actual upload. This is unusual behaviour.
The file list/queue is unclear both visually and in code. Suggestion to mark it up as a list of files with <ul> and <li>, and to add a heading to indicate the purpose of the list.
The "Custom upload" features two buttons that have no clear visual separation. It is also unclear what the difference in functionality is , from the text on the buttons. The upload field also states "click to upload" which seems to overlap with the button labelled "upload".
The optional description message is after a rather large input field. It is easy to miss for users who are zoomed in. It would get more attention (at the right moment) between label and input.
An upload can fail due to a wrong mime type and there seems to be a maximum file size as well. These kind of criteria sound more like instructions than errors and could be placed inside the description message.
A message in all caps like "INVALID_MIME_TYPE" is read by AT like an abbreviation and is not human readable. Consider writing actual error messages.
The use of a close button with a file or error message is unclear as it is not unique or visually labelled.

https://github.com/digipolisantwerp/acpaas-ui_angular/tree/feature/wcag-update

https://github.com/digipolisantwerp/acpaas-ui_angular/tree/feature/wcag-update


Camera is  not opening in Android below 11

whenever i am clicking capture button there is error status = cancel
System:
OS: macOS 14.1.2
CPU: (8) x64 Intel(R) Core(TM) i5-1038NG7 CPU @ 2.00GHz
Memory: 23.30 MB / 16.00 GB
Shell:
version: "5.9"
path: /bin/zsh
Binaries:
Node:
version: 20.10.0
path: /usr/local/bin/node
Yarn: Not Found
npm:
version: 10.2.3
path: /usr/local/bin/npm
Watchman:
version: 2<IP_ADDRESS>
path: /usr/local/bin/watchman
Managers:
CocoaPods:
version: 1.13.0
path: /usr/local/bin/pod
SDKs:
iOS SDK:
Platforms:
- DriverKit 23.0
- iOS 17.0
- macOS 14.0
- tvOS 17.0
- watchOS 10.0
Android SDK:
API Levels:
- "23"
- "26"
- "28"
- "29"
- "30"
- "31"
- "32"
- "33"
- "33"
- "34"
Build Tools:
- 28.0.3
- 30.0.3
- 31.0.0
- 33.0.0
- 33.0.1
- 34.0.0
- 34.0.0
System Images:
- android-24 | Google Play Intel x86 Atom
- android-29 | Google Play Intel x86 Atom
- android-30 | China version of Wear OS 3 Intel x86 Atom
- android-30 | Wear OS 3 Intel x86 Atom
- android-31 | Google APIs Intel x86_64 Atom
- android-32 | Google APIs Intel x86_64 Atom
- android-33-ext5 | Google Play Intel x86_64 Atom
- android-33 | Wear OS 4 Intel x86_64 Atom
- android-33 | Google APIs Intel x86_64 Atom
- android-TiramisuPrivacySandbox | Google Play Intel x86_64 Atom
- android-UpsideDownCake-ext5 | Google APIs Intel x86 Atom_64
- android-UpsideDownCakePrivacySandbox | Google Play ARM 64 v8a
- android-UpsideDownCakePrivacySandbox | Google Play Intel x86_64 Atom
Android NDK: Not Found
IDEs:
Android Studio: 2023.1 AI-231.9392.1.2311.11076708
Xcode:
version: 15.0.1/15A507
path: /usr/bin/xcodebuild
Languages:
Java:
version: 17.0.9
path: /usr/bin/javac
Ruby:
version: 2.6.10
path: /usr/bin/ruby
npmPackages:
"@react-native-community/cli": Not Found
react:
installed: 18.2.0
wanted: 18.2.0
react-native:
installed: 0.73.0
wanted: ^0.73.0
react-native-macos: Not Found
npmGlobalPackages:
"react-native": Not Found
Android:
hermesEnabled: true
newArchEnabled: false
iOS:
hermesEnabled: true
newArchEnabled: false

I think anything below Android 11 is too old for us to worry about.


added product-card-3-black

closes #1877
https://user-images.githubusercontent.com/110401845/220355330-4f1a220a-e69a-471b-aa76-18f3768be511.mp4

Congrats @Tushar-go  🎉, your PR got merged. To be eligible for the swags from ClueLess.
Don’t forget to star this repository. ⭐


fix(helix): only consider subs with names

Pull request checklist:

[x] CHANGELOG.md was updated, if applicable
[ ] Documentation in docs/ or install-docs/ was updated, if applicable
[ ] I have tested all changes

Works around issue where helix subscriptions api can yield user_id's that correspond to deleted accounts (so the name is empty)

Example record of the of the issue

User had messages and time in chat before manual record purging, brought back every sub update though.

Thank you very much!


Authentication failure when continuing authentication after clicking on Choose a different Option in Magic link

While fixing https://github.com/wso2/product-is/issues/18655, I was able to find this issue
How to reproduce:

Create an application
Add following Local Authenticators as 1st step (EMAIL OTP, BASIC AUTH, Magic Link)
Go to the login page of the application
Try to login with EMAIL OTP
Click on Choose a different option link.
Try the Magic link

Configuration

Flow
https://github.com/wso2/product-is/assets/25488962/cf5b9a64-b7d7-4570-9a12-b258324e2545
Expected Outcome
Magic Link should work as expected

Analysis
Redirecting users to the IDF page in local authenticators such as emailOTP and smsOTP depends on the existence of the username in the request object [1] whereas, magic link authenticator depends on the value of IS_IDF_INITIATED_FROM_AUTHENTICATOR constant [2]. The value of this constant will be made true when other local authenticators were chosen before selecting magicLink as the authenticator. When we click on choose different option button and come back to the options page, still the value of the constant remains the same. Hence, magicLink authenticator will not prompt for username and fails to identify the username from the request object.
Solution
An additional validation can be done to verify whether the username is available in the request object and if not, the IDP page will be prompted to enter the username.
[1] https://github.com/wso2-extensions/identity-auth-otp-commons/blob/dbbdcece3a7774f09065ef8a801d714b3ed550e7/components/org.wso2.carbon.identity.auth.otp.core/src/main/java/org/wso2/carbon/identity/auth/otp/core/AbstractOTPAuthenticator.java#L183
[2] https://github.com/wso2-extensions/identity-local-auth-magiclink/blob/4e8ae6f4b0dc9820d9a4511a93252abb37397a61/components/org.wso2.carbon.identity.application.authenticator.magiclink/src/main/java/org/wso2/carbon/identity/application/authenticator/magiclink/MagicLinkAuthenticator.java#L117

This is completed. Hence, closing the issue.


version information in fc.js has not been updated

https://github.com/ScottLogic/d3-financial-components/blob/master/src/fc.js#L5
This version has been updated locally, but for some reason wasn't included in the 0.1.1 commit: https://github.com/ScottLogic/d3-financial-components/commit/833eb424ce55b840a7c34448284d2d76b73dfe8c

The release task currently runs the build (which applies the version) before bumping the version, we should probably make use of the afterBump option in grunt-release. However, watch out for geddski/grunt-release#118.

There's a PR pending which should allow us to use the postBump hook. I've had a quick look around the other release plugins and they're using the workaround in the PR so I think we just wait for that to land.

Updated the gruntfile to work with the new version when it's ready (https://github.com/chrisprice/d3-financial-components/tree/370)

Fixed as part of #431 by removing the grunt task :)


Versioning for algorithms.

@maty21 idea to add versioning for algorithms.
maybe for pipelines too?

TID-700

test added to algorithim_test/Test Algorithm Version


How to change font style of FSCalendar

Hello there
I am using Basic FSCalendar view but I am not able to change the Font style of calendar
Can you please guide me on that.
I am using Objective C, Xcode 13

I found it its in FSCalendarApperance file.


editor, editor2 examples: Add accelerators

The editor examples were not taking full advantage of accelerators: menus had accelerators, but their items didn't, making them much less useful.
They're easy enough to add, and I think it's important that new developers see them in the examples and know that they work and how to use them, so that they also use them... because if there is something I could use less of, is GUI applications being needlessly awkward to use with a keyboard.

Thank you


ngTree as feature

would be great

So many things would be great! For instance: stopping the war in Syria, or finding a theory about quantum relativity. Unfortunately, I'm too occupied already because of the martian invasion that I have to fight.
But YOU, as a web developer, have the power to add ngTree as a feature. Yes, YOU. So stop asking and start doing. That's how open-source works.

you are totally right. I don't have angular experience and never saw webpack in action before. I mean i can't work it out. I thought suggest something could help open-source projects too. Sorry that i get you sound like that.


the crate<EMAIL_ADDRESS>could not be found in registry index.

<EMAIL_ADDRESS>that's compatible with<EMAIL_ADDRESS>isn't published since the last change is Readme.md about a week ago.
Please, try cargo add<EMAIL_ADDRESS>to confirm.

@Carlosted Can you release v0.0.15?

Thank you for tagging me! I totally missed this notification. 0.0.15 is now live.


How to Separate Transactional and Promotional emails ?

I would like to separate Transactional  & promotional emails for a domain & also i don want to queue the transnational email while shooting the promotion mails .
Dinesh

At present there is only a single queueing mechanism to separate the processing of the queue based on the type of message. All messages are treated equal. At present, to achieve this you'd need a second installation of Postal.

Thanks for your prompt reply Adam . I know it is possible to prioritise the rabitmq queue. I will pass header with transactional and promotional email and based on the header I am gonna prioritise the queue. I hope it would be the right way to go.Could you please guide me which file I need to look out for?


AMBARI-22918 Decommission RegionServer fails when kerberos is enabled

What changes were proposed in this pull request?
Change the hbase_decommission.py to make it work when kerberos is enabled.

Move {master_security_config} into the environment variable HBASE_OPTS.

How was this patch tested?
I manually tested it my local env, but I didn't make a unit test for this. Could anyone advise me how to make a unit test for the python code?

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/445/
Test FAILed.
Test FAILured.

Thanks @swagle. I modified the patch for your review.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/466/
Test FAILed.
Test FAILured.

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/467/
Test FAILed.
Test FAILured.

@swagle Do I need to write unit tests to merge this PR?

@swagle. Yes, the latest change worked in my env. For branch-2.6, I have sent another PR https://github.com/apache/ambari/pull/283. Thanks!

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/572/
Test FAILed.
Test FAILured.


Cleaned up Spanish translation of Java For loop guide

[ x ] I have read freeCodeCamp's contribution guidelines.
[ x ] My pull request has a descriptive title (not a vague title like Update index.md)
[ x ] My pull request targets the master branch of freeCodeCamp.
[ x ] None of my changes are plagiarized from another source without proper attribution.
[ x ] My article does not contain shortened URLs or affiliate links.

Mistakenly added two commits to pull request


Fix section 3, where the hash is specified rather than the

version number of the snapshot file.

Changes Unknown when pulling 965acf7240b27bc87b6951cf94bc5abc6ea56187 on vladimir-v-diaz-patch-2 into ** on develop**.

LGTM!


[Wiki] Chunk Generator redirect broken

I was reading this page of the wiki and at the bottom it talked about chunk generators and linked to this page on the GitHub wiki. But that doesn't exist anymore so Instead I just get redirected to the main GitHub page. I'd love to learn about creating my own Chunk Generator, if this page still exists anywhere, let me know.

The wiki has its own repo: https://github.com/Minestom/wiki and you can also PR changes.


T and A

We currently use A and T, seemingly interchangeably. This is confusing and we should commit to one (probably to A as it appears in the paper).

fixed to a


LoRa reply to a FSK packet

Hi,
I think I have found a bug. When a FSK message is received and requires a reply, the command issued to the gateway does not contain a code rate. This causes the gateway to not send the reply. This is most likely due to the fact that FSK messages do not have a code rate (as far as I know) and thus a line like the following would fail:
reply.coderate = receivedPacket.coderate
MQTT log:
`gateway/???/rx {"rxInfo":{"mac":"*","time":"2017-08-22T10:57:55.693913Z","timestamp":787458244,"frequency":868800000,"channel":9,"rfChain":1,"crcStatus":1,"codeRate":"","rssi":-43,"loRaSNR":0,"size":???,"dataRate":{"modulation":"FSK","bitRate":50000}},"phyPayload":"???"}
gateway/???/tx {"txInfo":{"mac":"*","immediately":false,"timestamp":793458244,"frequency":869525000,"power":14,"dataRate":{"modulation":"LORA","spreadFactor":12,"bandwidth":125},"codeRate":"","iPol":null},"phyPayload":"???"}`
Please note that this only occurs when using FSK and confiruing the server either sends in RX2 or when RX1DrOffset >= 1.
I am not sure what the solution is, as the LoRaWAN specification does not state anything about the code rate to use. Any device is free to choose their code rate as far as I know, but any reply should use the same code rate. As FSK does not work with code rates and the most common code rate is "4/5", I think that "4/5" would be the best choice. I believe the code rate used in transmitted in the PHY_HEADER of any LoRa packet and thus does not have to be matched with the receiving device.
I hope  this helps. Thanks in advance.

Thanks for reporting. You're right, LoRa Server uses the codeRate of the uplink for the downlink, which causes the above situation (blank code rate). I also have to dig a bit deeper into this to find out what code date must be used in the above situation.

I think the issue is also present when replying with a FSK message as it contains the codeRate value.
MQTT log:
gateway/???/tx {"txInfo":{"mac":"???","immediately":false,"timestamp":1385557694,"frequency":868800000,"power":14,"dataRate":{"modulation":"FSK","bitRate":50000},"codeRate":"","iPol":null},"phyPayload":"???"}
The code rate is removed by the bridge, the packet forwarder receives the following:
JSON down: {"txpk":{"imme":false,"tmst":206996899,"freq":868.8,"rfch":0,"powe":14,"modu":"FSK","datr":50000,"fdev":25000,"ipol":false,"size":???,"data":"???"}}
I do not receive the packets on my end device. The RN2483 does not receive them either. I do not detect the packets on my spectrum analyzer, but always have had difficulties detecting FSK messages (as they are transmitted very fast, and my spectrum analyzer is quite slow). The statistics of gateway do indicate that it transmits these packets:
RF packets sent to concentrator: 3 (36 bytes)
TX errors: 0
TX rejected (collision packet): 0.00% (req:24, rej:0)
TX rejected (collision beacon): 0.00% (req:24, rej:0)
TX rejected (too late): 0.00% (req:24, rej:0)
TX rejected (too early): 0.00% (req:24, rej:0)
I am unsure if these FSK downlink packets are transmitted. Have you tested this?
Thanks in advance

Sorry this took a while but it should be fixed now :-)


Extend gnome-terminal profile to support Command options

My default gnome-terminal profile uses a custom command to attach to a tmux session, and I wanted to add support for that to home-manager.
allow setting Custom Command and Login shell via home-manager config
Description

Checklist

[x] Change is backwards compatible.

[x] Code formatted with ./format.

[x] Code tested through nix-shell --pure tests -A run.all.

[x] Test cases updated/added. See example.
(There are no test cases for gnome-terminal)

[x] Commit messages are formatted like
{component}: {description}

{long description}

See CONTRIBUTING for more information and recent commit messages for examples.

Thanks for the contribution! Rebased to master in 2a54c353a9ee4c06866047b0abf0a418ab91a475.


Unable to use typescript 4 with react-scripts 4 and npm 7.0.5

One of the release notes for 4.0.0 is support for typescript v4,
so as a user I'd expect to be able to use typescript 4 with react-scripts 4.0.0.
Case:
package.json with react-scripts 4.0.0 and typescript 4.0.3 with npm on latest (7.0.5)
Result:

Expected:
No error
Fallback: Use ts 3.9.7

Have you tried delete your yarn.lock/package-lock.json and install again.
I just upgraded one of my projects and typescript 4 support is fine.

@malcolm-kee very much so. Are you also using npm v7.0.5?

@MichaelHindley opps, I am using npm 6. Sorry I miss out that 😅

I've got the same issue - npm v7.0.3, react-scripts v4.0.0

I am having this issue as well, but with TS 3.9.7, and npm 6.14.7.
After running npm install react-scripts@latest
$ npm start

><EMAIL_ADDRESS>start D:\dev\js\project
> react-scripts start

D:\dev\js\project\node_modules\react-scripts\scripts\utils\verifyTypeScriptSetup.js:231
        appTsConfig.compilerOptions[option] = suggested;
                                            ^

TypeError: Cannot add property noFallthroughCasesInSwitch, object is not extensible
    at verifyTypeScriptSetup (D:\dev\js\project\node_modules\react-scripts\scripts\utils\verifyTypeScriptSetup.js:231:45)
    at Object.<anonymous> (D:\dev\js\project\node_modules\react-scripts\scripts\start.js:31:1)
    at Module._compile (internal/modules/cjs/loader.js:1251:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1272:10)
    at Module.load (internal/modules/cjs/loader.js:1100:32)
    at Function.Module._load (internal/modules/cjs/loader.js:962:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
    at internal/main/run_main_module.js:17:47

Add "noFallthroughCasesInSwitch": true, to your tsconfig.json.

Can I suggest that this little tidbit be added to the Release Notes? (I know that's not on you @ggascoigne)

sorry I would have written a longer reply at the time but I was on the phone chatting to someone with this exactly problem at the time :)
I actually found this snippet in another variation of this bug elsewhere in this repo.  I think that the cause is something to do with the assumptions about what the expected config is have changed and there's no automated migration.
But, yes, adding this to the release notes and or upgrading the error handling with a more useful error message would be neat.


Could be much lighter without underscore

For a small library that just remaps keys, it could be so much lighter if it didn't use a toolbelt such as underscore as a dependency. You could go with just either vanilla Array.prototype.reduce or the modular lodash.reduce.
EDIT: Realized we can't use Array.prototype.reduce

@seangenabe thank you, that sounds like a good idea, would you like to submit a PR?


How can a DLC implementation bug lead to loss of user funds

I think it would be a good idea to setup a document describing all the possible ways in which a bug in a DLC implementation can lead to loss of user funds, maybe with a grade on criticality of the bug or feasibility of exploiting it. It would then make it easier to implementation maintainers to setup (integration) tests to validate (to the extent possible) against them (the document could even have suggestions on how to do this validation).
As a start we could include (thanks @nkohen): #97 #109

Another thing to include might be #98 as if someone is not parsing the full prev_tx themselves then I believe they can be exploited

Another thing to include might be #98 as if someone is not parsing the full prev_tx themselves then I believe they can be exploited

A good start is referring this : https://en.bitcoin.it/wiki/Common_Vulnerabilities_and_Exposures


[EMB-172] Fix all linter warnings and some TS errors

Purpose
Fix all linter warnings and consider them unacceptable from now on.
Summary of Changes

add --max-warnings=0 to eslint invocations in .travis.yml and package.json, so warnings behave like errors on travis and pre-commit hooks
Fix all the warnings!
There were a few times I was feeling feisty, so I converted some things to typescript. But most of the time I wasn't, so I didn't.

Side Effects / Testing Notes
This touched lots of things but shouldn't have changed any. Warrants a regression test.
Ticket
https://openscience.atlassian.net/browse/EMB-172
Reviewer Checklist

[ ] meets requirements
[ ] easy to understand
[ ] DRY
[ ] testable and includes test(s)
[ ] changes described in CHANGELOG.md

Coverage increased (+0.07%) to 21.189% when pulling 9f3213c8c4061a65e1afeb5d6d46cc97458b7a70 on aaxelb:emb-172--no-warning into fc4ae9dbcb4a4b9bcb30c80f9da91de2c7d03853 on CenterForOpenScience:develop.


First commit of push primer

Writing was actually done by Dave Gash. Please direct your feedback to<EMAIL_ADDRESS>

A few minor comments, but will merge and file bus for you to fix.

cc @dgash
See #1996 for updates/changes


attempt to substantially reduce kernel launch overhead

See the discussion in the third-party PR https://github.com/openai/triton/pull/3503#issuecomment-2047718096

awesome! If you have some data points on the overhead before and after the PR could you include those in the description? That useful so that others can reproduce and always convenient to keep track of it.

Using @bertmaher's benchmarking script I get a 2.2x speedup with these changes (108us --> 49us). I'll add this to the PR description so that it goes in the commit message


Could not create script recorder - see log for details: Cannot find keytool application and no keystore was provided

Expected behavior
Able to re-generate the Apache certificate successfully
Actual behavior
Run into this error "could not create script recorder - see log for details: Cannot find keytool application and no keystore was provided" when I hit the Start button in the Test Script Recorder
Steps to reproduce the problem

Java JDK 20 and JMeter are installed on Windows 10
Apache.JMeterTempraryRootCA certificate is missing from the apache-jmeter-5.5\bin after JMeter 5.5 is installed
System path is set properly as %JAVA_HOME%\bin.
"Java -version", "keytool" commands can run in CMD successfully to prove System path is ok
I followed this video https://www.youtube.com/watch?v=p-Wv_QEVFg4&list=PLU62LFwq2qWHB7_9nBXVQyJ3vGKkW2zDN&index=9 to re-generate the certificate. However, after numerous attempts (including Java, JMeter reinstall, System Properties configuration), I always run into this error "could not create script recorder - see log for details: Cannot find keytool application and no keystore was provided" when I hit the Start button in the Test Script Recorder  (see attached screenshot below)
Logs are captured as below
2023-05-05 21:23:04,416 INFO o.a.j.s.FileServer: Default base='C:\Tools\apache-jmeter-5.5\bin'
2023-05-05 21:23:04,426 INFO o.a.j.g.a.Load: Loading file: C:\Users\caiz\Desktop\JMeter\HTTP(S) Test Script Recorder.jmx
2023-05-05 21:23:04,427 INFO o.a.j.s.FileServer: Set new base='C:\Users\caiz\Desktop\JMeter'
2023-05-05 21:23:04,985 INFO o.a.j.s.SaveService: Testplan (JMX) version: 2.2. Testlog (JTL) version: 2.2
2023-05-05 21:23:05,032 INFO o.a.j.s.SaveService: Using SaveService properties version 5.0
2023-05-05 21:23:05,032 INFO o.a.j.s.SaveService: Using SaveService properties file encoding UTF-8
2023-05-05 21:23:05,032 INFO o.a.j.s.SaveService: Loading file: C:\Users\caiz\Desktop\JMeter\HTTP(S) Test Script Recorder.jmx
2023-05-05 21:23:05,217 ERROR o.a.j.e.KeyToolUtils: Unable to find keytool application. Check PATH or define system property keytool.directory
2023-05-05 21:23:05,396 INFO o.a.j.s.FileServer: Set new base='C:\Users\caiz\Desktop\JMeter'
2023-05-05 21:23:13,248 INFO o.a.j.e.u.CompoundVariable: Note: Function class names must contain the string: '.functions.'
2023-05-05 21:23:13,248 INFO o.a.j.e.u.CompoundVariable: Note: Function class names must not contain the string: '.gui.'
2023-05-05 21:23:13,310 ERROR o.a.j.p.h.p.ProxyControl: Could not initialise key store
java.io.IOException: Cannot find keytool application and no keystore was provided
at org.apache.jmeter.protocol.http.proxy.ProxyControl.initKeyStore(ProxyControl.java:1534) ~[ApacheJMeter_http.jar:5.5]
at org.apache.jmeter.protocol.http.proxy.ProxyControl.startProxy(ProxyControl.java:527) ~[ApacheJMeter_http.jar:5.5]
at org.apache.jmeter.protocol.http.proxy.gui.ProxyControlGui.startProxy(ProxyControlGui.java:623) ~[ApacheJMeter_http.jar:5.5]
at org.apache.jmeter.protocol.http.proxy.gui.ProxyControlGui.actionPerformed(ProxyControlGui.java:463) ~[ApacheJMeter_http.jar:5.5]
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972) ~[?:?]
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2314) ~[?:?]
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:407) ~[?:?]
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) ~[?:?]
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) ~[?:?]
at com.github.weisj.darklaf.ui.button.DarkButtonListener.mouseReleased(DarkButtonListener.java:72) ~[darklaf-core-2.7.3.jar:2.7.3]
at java.awt.Component.processMouseEvent(Component.java:6620) ~[?:?]
at javax.swing.JComponent.processMouseEvent(JComponent.java:3398) ~[?:?]
at java.awt.Component.processEvent(Component.java:6385) ~[?:?]
at java.awt.Container.processEvent(Container.java:2266) ~[?:?]
at java.awt.Component.dispatchEventImpl(Component.java:4995) ~[?:?]
at java.awt.Container.dispatchEventImpl(Container.java:2324) ~[?:?]
at java.awt.Component.dispatchEvent(Component.java:4827) ~[?:?]
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948) ~[?:?]
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575) ~[?:?]
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516) ~[?:?]
at java.awt.Container.dispatchEventImpl(Container.java:2310) ~[?:?]
at java.awt.Window.dispatchEventImpl(Window.java:2780) ~[?:?]
at java.awt.Component.dispatchEvent(Component.java:4827) ~[?:?]
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775) ~[?:?]
at java.awt.EventQueue$4.run(EventQueue.java:720) ~[?:?]
at java.awt.EventQueue$4.run(EventQueue.java:714) ~[?:?]
at java.security.AccessController.doPrivileged(AccessController.java:400) ~[?:?]
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87) ~[?:?]
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:98) ~[?:?]
at java.awt.EventQueue$5.run(EventQueue.java:747) ~[?:?]
at java.awt.EventQueue$5.run(EventQueue.java:745) ~[?:?]
at java.security.AccessController.doPrivileged(AccessController.java:400) ~[?:?]
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87) ~[?:?]
at java.awt.EventQueue.dispatchEvent(EventQueue.java:744) ~[?:?]
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) ~[?:?]
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) ~[?:?]
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) ~[?:?]
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) ~[?:?]
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) ~[?:?]
at java.awt.EventDispatchThread.run(EventDispatchThread.java:90) ~[?:?]

JMeter Version
5.5
Java Version
jdk-20
OS Version
Windows 10 Enterprise OS build 19044.2846

Well, JMeter can't find the keytool binary, as stated in the line:
Unable to find keytool application. Check PATH or define system property keytool.directory
Have you looked at the path you mentioned, that there is a binary named keytool?

@FSchumacher Thanks. I checked my Java folder. Yes, there is a keytool.exe in the Java/bin folder. PATH has been set properly. I could run keytool in CMD to prove PATH is working. I've attached all the screenshots below.

@FSchumacher I also tried to set the keytool.directory in system.properties (see attached screenshot below), but still no luck. I just got an extra line of error message in the log (attached below)
2023-05-06 08:14:29,225 ERROR o.a.j.e.KeyToolUtils: Cannot find keytool using property keytool.directory=C:/Program Files/Java/jdk-20/bin
2023-05-06 08:14:29,225 ERROR o.a.j.e.KeyToolUtils: Unable to find keytool application. Check PATH or define system property keytool.directory


btlogging weights

From Eclipse Vortex in Discord:
Hi everyone,
Has anyone encountered this error before using bittensor 8.3.1 with metagraph using torch (USE_TORCH == "1")?
TypeError: not all arguments converted during string formatting
Call stack:
  File "/root/SubVortex/neurons/validator.py", line 315, in run
    set_weights_for_validator(
  File "/root/SubVortex/subnet/validator/weights.py", line 117, in set_weights_for_validator
    ) = btuw.process_weights_for_netuid(
  File "/usr/local/lib/python3.10/dist-packages/bittensor/utils/weight_utils.py", line 259, in process_weights_for_netuid
    logging.debug("weights", *weights)
  File "/usr/local/lib/python3.10/dist-packages/bittensor/utils/btlogging/loggingmachine.py", line 438, in debug
    self._logger.debug(msg, *args, **kwargs)

I'm calling the method as follows:
bt.process_weights_for_netuid(
    uids=metagraph.uids,
    weights=raw_weights,
    netuid=netuid,
    subtensor=subtensor,
    metagraph=metagraph,
)

ditto. I too have this issue - I haven't tested with USE_TORCH=1 but it also happens when using numpy!

This will be resolved in the upcoming release on Wednesday!


Calling loadView() is discouraged

As the documentation states, "You should never call this method directly".
Is there another way to properly use the transitions when instantiating controllers from storyboard?
As of my current implementation (using loadView()), the transition works in some simple cases. However, in other more complex cases (ie with some sort of setup in viewDidLoad()), the destination controller fails to load if I use loadView().

Hi, interesting topic, and thanks for the issue. Didn't know that was in the documentary.
You can use "loadViewIfNeeded" instead, I'll update the example project too.

Perfect, using loadViewIfNeeded() works much better. I even realized that viewDidLoad() wasn't being called in the detail view, but it's working fine now.
Thanks!

Glad I could help (:


Partial postcode search

We have a Meeting Rails model with address and full postcode (example: "S1 4SA"). Doing Meeting.near("S1 4SA") returns the right results, but Meeting.near("S1") returns an empty result.
We are using the default APIs. Search for "S1" on Google Maps works as expected. Is this an issue with the API?

Yep, it's an issue with the API, which does not return the same results as a Google Maps search (which is augmented with other data sources).


How to remove selected shape / drawing. Possibly using delete button.

Suppose I have 5 shapes drawn one after other. I imported few images and now I want to remove one of the shapes keeping rest as it is. I can use a button to perform this or delete button on the keyboard.
How do I achieve this.?

we have access to shape array. If we can get id of selected shape. we can remove that shape from array and trigger 'drawingChange' to redraw the canvas. I'm sure how to access the current selected shape.

There isn't actually a straightforward way to do this. You can modify
lc.shapes and then call lc.repaintLayer('main'). Note that this will
not affect the undo stack, so you might run into weird problems unless
you're just working with background shapes.
If you want to do better, you'll have to familiarize yourself with the
library's source code and implement a new action in actions.coffee,
and then write a lc.removeShape() method that mirrors
lc.saveShape().

Looks like its too complex for me. I'm not a java-script or coffee-script developer. I'm learning it as needed. After spending few days with the source, now I'm getting some sense about what's going on. Can you please provide more guidance?
Please correct my steps

Add new action class 'RemoveShapeAction'  in actions.coffee and exported.
Add new method 'removeShape' in LiterallyCanvas.coffee
Get access to currently selected Shape object -> How?
Remove shape from Shapes array
Remove shape from undo stack (if not empty)
Remove shape from redo stack (if not empty)
Redraw canvas using lc.repaintLayer('main')

In later stages, I'll also need to modify the selected shape like move / rotate / flip and also crop for images.
Please let me know how feasible do you think it is?

I'm sorry, it isn't practical for me to provide that level of support to users. I am occasionally available for contract work but other than that I don't have time.

This is how I remove shapes from a canvas...

canvas is your LC instance returned by LC.init(targetElement);
deleteButton is a DOM element the user the clicks once a shape is selected using LC's built-in select tool

const deleteButton = document.getElementById('button-delete');

deleteButton.addEventListener('click', function() {
  const selectedShape = canvas.tool.selectedShape;

  /* Remove shape from shapes list*/

  if (selectedShape) {
    const selectedShapeIndex = canvas.shapes.indexOf(selectedShape);

    canvas.shapes.splice(selectedShapeIndex, 1);
    canvas.setShapesInProgress([]);

    /*Redraw the canvas with the shape now removed */

    canvas.repaintLayer('main');
  }
});

@sir-dunxalot  - Thanks a lot, it works like a charm.

@sir-dunxalot Thank you so much!

A little enhancement to @sir-dunxalot  code snippet which append inline undo/redo support (work for me with LC v0.4.14 ) for the delete shape operation (certainly optimizable) :
const deleteButton = document.getElementById('button-delete');

deleteButton.addEventListener('click', function() {
  const selectedShape = canvas.tool.selectedShape;

  /* Remove shape from shapes list*/

  if (selectedShape) {
	const selectedShapeIndex = canvas.shapes.indexOf(selectedShape);
	canvas.shapes.splice(selectedShapeIndex, 1);
	canvas.setShapesInProgress([]); /* Also removes selection box */

	/* Mimic actions of select tool:
	https://github.com/literallycanvas/literallycanvas/blob/884fc422604d7cf6e4159fb9415e735ac19bfba3/src/tools/SelectShape.coffee#L59
	*/

	canvas.trigger('shapeMoved', { shape: selectedShape })
	canvas.trigger('drawingChange', {})

	/* Clear the selected shape (prevents second click on delete button deleting the shape now at the index of the old selected shape) */

       //--------------------------------- Undo/ReDo Support here ------------------------------------------------------
	var ss = canvas.tool.selectedShape;
	var sid = canvas.tool.selectedShape.id;
	canvas.tool.selectedShape = null;
	/* Redraw the canvas with the shape now removed */
	canvas.repaintLayer('main');

	//Custom shapeDeleted event
	canvas.trigger('shapeDeleted', ss);

	//Add to undo/redo stack
	canvas.execute({'do':function(){
		//Del shape
		for(var i=0;i!=canvas.shapes.length;i++){
			if(canvas.shapes[i].id == sid){
				canvas.shapes.splice(i, 1);
				break;
			}
		}
		canvas.repaintLayer('main');

	},undo:function(){
		//ReAdd shape
		canvas.shapes.push(ss);
		canvas.repaintLayer('main');
	}});
       //-------------------------------------------------END------------------------------------------------------
	/* Instantiate a new instance of the select tool so the user can select another shape immediately */

	canvas.setTool(new LC.tools.SelectShape(canvas));
  }
});

Hi @TheWalkingCat and thanks for the example.
I noticed that when one calls  canvas.execute, one does not need to call canvas.shapes.splice(selectedShapeIndex, 1);, as canvas.execute also executes the do function.

Hey Guys,
I know this is not the correct thread to post my question here, but I am really stuck at a point and would want some guidance to move forward.
I am working on a POC right now where in, user wants to upload an image from local directory and draw shapes on this image and then save the updated image to a local directory.
So basically they want to upload an image and drag, drop, resize and delete circles, squares, arrows, arrows with text and text area on top of the image to highlight certain areas in the image and at the end save the updated image back to local directory.
I started off with using canvas for this, but read few articles and figured out that svg+d3 would be best suited for this kind of problem.
What do you suggest?


Users can set arbitrary data in their profile

Type this in the console:
Meteor.users.update(Meteor.userId(), {$set: {"profile.foo": "bar"}});.

Hey @charlieman! Telescope has changed a lot in the past months, and there is a new React-based version, Telescope Nova (intro video). If you know Crater, it runs on it.
The Legacy version is no longer supported, I'm closing this issue. And by the way, we do not use profile anymore 😄
I invite you to check the new version, it's awesome!
Happy hacking! 🚀
Ps: by the way, don't hesitate to join the Slack to ask any question, you are welcome! 👍


Long login sessions

It would be great to have long sticky login sessions so i dont have to auth every time i open the portal.

Login sessions should already be essentially "forever" unless the server's private key is rotated or a user password change happens. Can you please provide a list of reproducible steps and browser/os etc. if your session is expiring? I just tested,(by going to portal.hsbne.org) and it showed the login page for a brief moment and kicked me over to the dashboard because I was already logged in.

I'll track what the conditions are next time it asks me to login. its typically on my phone where it always wants auth.

Yeah this is consistent, every time i open the portal using chrome on my iphone it wants me to login. I've also noticed if i fill in the passwords with my password manager, it doesnt detect the password and wont let me login so i have to do it twice. this seems to be only a thing on the phone.

Ok I'll have a look and see if I can reproduce it. I've been using the development build of the iOS app recently so I may not have noticed it.

I'm happy to sit down and demo/debug this issue on a tuesday or something if it helps. or i can take a screen recording if thats useful?

I'll let you know if I can't repro it. :)

fwiw I'm still having to login every time on the web and app. and the password manager flow doesn't work as discussed so its a long process to get in each time.


[BUG] sortidx() returns the list to be sorted, not the sorted index, when list is one-element long

Describe the bug
When sorting indexes for a one-element list, sortidx() returns the list, not the index.
Code To Reproduce Bug
include <BOSL2/std.scad>

idxs = sortidx(["d", "e"]);
idxs_comp = [0, 1];
assert(idxs == idxs_comp, str("idxs returned must be: ", idxs_comp, ": ", idxs));

idxs2 = sortidx([]);
idxs2_comp = [];
assert(idxs2 == idxs2_comp, str("idxs returned must be: ", idxs2_comp, ": ", idxs2));

idxs3 = sortidx(["d"]);
idxs3_comp = [0];
assert(idxs3 == idxs3_comp, str("idxs returned must be: ", idxs3_comp, ": ", idxs3));

Expected behavior
The documentation for sortidx() doesn't say there's a degenerate case when lst has zero or one element, giving the expectation that when there are no elements in lst, an empty index list is returned (this happens); and, that when there is only one element in lst, only one index list is returned (this is not what happens).
The expectation would be that sortidx() either attempts to sort the indexes of a one-element list and return the index (which would always be [0]); or, take a shortcut and realize that with only one element there's only one response to return (again, [0]).
Working around this requires something akin to:
sorted_indexes = (len(lst) == 1)
   ? [0]
   : sortidx(lst);

Additional context

OpenSCAD Version: 2021.01 (OpenSCAD/2021.01 (Windows(TM) 10.0 SP 0.0 NTW 1 MSDN 724833))
Other libraries used: BOSL2 (via version.scad): 2.0.652 (pulled from BOSL2-master.zip on or about 2022/10/02)

Yeah, definitely a bug.  Actually caused by a special case check for length <=1, where it then returns the wrong answer.   Fixed this in the PR and added regression tests for single element inputs.


Why were all the emoji's changed to be front-facing?

The different poses made them a lot more legible and cute.

@xiangyexiao, we might want an FAQ about the emoji design...

Sorry if I annoyed anyone 😉

No problem.  Some people were fond of the old emoji and sad to see them go.  We don't currently have a good way to generate multiple emoji fonts.
I have not been tagging the emoji before a design change, because the design changes tend to be a bit incremental and I've not thought of it.  You can, if you wish, check out an older version of the repo and build a font with the old emoji in it.  I should make that easier to do.

Yeah, this is not relevant anymore now, after the complete redesign for Oreo.


Not able to build from source tesseract 4.0.0

I am facing this issue while running make

sudo LDFLAGS="-L/usr/local/lib" CFLAGS="-I/usr/local/include" make -j
make: *** No targets specified and no makefile found.  Stop.

leptonica 1.76.0
tesseract 4.0.0-beta.1

RHEL 6.1 release

 sudo PKG_CONFIG_PATH=/usr/local/lib/pkgconfig LIBLEPT_HEADERSDIR=/usr/local/include ./configure --with-extra-includes=/usr/local/include --with-extra-libraries=/usr/local/lib
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
./configure: line 2838: git: command not found
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking whether to enable maintainer-specific portions of Makefiles... no
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
./configure: line 3843: syntax error near unexpected token `-mavx,'
./configure: line 3843: `AX_CHECK_COMPILE_FLAG(-mavx, avx=true, avx=false)'

Please use a newer version of Tesseract (4.0.0-beta.3 or latest code from Git) and close this issue,

okay, will check in some time.

RHEL 6 is just too old...

Is it an RHEL issue, but I successfully build it from source for leptonica 1.76


Range of error measures. Max, RMS, SoftMax

have max and rms..
just need to understand softmax then i will add that too


ADR for Securing JSON Output

ADR for securing the JSON output payload.
STATUS: Proposed
See formatted markdown here: https://github.com/ministryofjustice/form-builder/blob/json-output-security-adr/decisions/0002-secure-JSON-output.md
Jira card, containing some discussion: https://dsdmoj.atlassian.net/jira/software/projects/FB/boards/323?selectedIssue=FB-525

@jennyd Has suggested the following changes after discussion with Joel Samuel:

One way TLS over mutual TLS
Payload encryption over signature

Discussion from Jenny:
We came to the conclusion that mutual TLS doesn’t really bring any benefits and involves way too much management overhead in this context, so agreed on normal TLS + payload encryption with a pre-shared secret
The reason for the payload encryption is that TLS is often terminated at the edge of a large network and then travels in the clear inside that network, and given the sensitivity of the submitted data for some forms and that it may need to be relied on in court, we need more confidence that only the intended recipient can read the data and that other actors on that network can’t impersonate FB by sending other requests to the endpoint.
(We debated whether signing the payload is also necessary for the last point about impersonation, but decided that encryption with a pre-shared secret basically gives us enough protection against that - encryption for a public key that’s treated as public wouldn’t though)


KazooClient hosts list should accept a list of multiple endpoints.

Closes #411

Looks fantastic, nice job.
I'm not super excited about a list supporting both strings and tuples as formats, but OTOH while the strings are extremely common format for most libraries the tuples are very explicit, so it is handy to have both. So I support your decision to support both formats.
Could you add two more test cases where the hostname is an IP address and not a domain name?
I'd make one a IPv4 and one an IPv6 address just because people often split name/port on a : but IPv6 complicates that... and the test case protects in case anyone refactors this code down the road.

@jeffwidman Thanks for the comment, very insightful. Gonna add more test cases. :+1:

Some test failures. The python 2.6 failure is probably acceptable breakage as it doesn't support ipv6, that's up to the maintainers, but the inconsistent use of tabs/spaces should get fixed before merging.

@jeffwidman Thanks, gonna fix the inconsistency asap. Even on python 2.7, I've found that urllib_parse.urlsplit still have many problems parsing the IPv6 addresses. :thinking:

@jeffwidman Hi, I tried to fix the inconsistencies between tabs/spaces. Hope everything is fine now, but let me know if something skipped, please 😃
@harlowja Does this PR makes sense? Any other file to change? Please, let me know.
Best regards!

LGTM. Spot-checked a few test failures and they are python 2.6 choking on IPv6. Personally, I think this lib should solve that by dropping support for python 2, but I'm not one of the maintainers, so that's up them.

@harlowja Any comment on this?

We can't drop support for Python 2, though I would like to drop support for Python 2.6 as that should be long dead.

@jeffwidman you seem most active on github and this PR, would you be up for fixing this to work on Python 2.6? If so I can include it in the next release.
As is, I'm closing this for now, but please re-open it if changes are made that allow this to be merged.

@bbangert Thanks for looking at this.
Like the other PR's that you just closed that I commented on, I do think it's a bit premature to close this one as well.
There was zero feedback on this from any of the maintainers until last night, so I don't blame @eribeiro for not spending any time on this until he knew whether it actually had a chance of getting merged.
I've literally never seen another project where a PR in process is marked as closed like this when the maintainers are interested in it, but just requesting further updates. Typically my experience is that marking something as Closed means the maintainers are rejecting it as a bad idea or such a poorly coded implementation that it's not worth working with the submitter to update it.
Personally, I'd prefer to help @eribeiro finish this by giving feedback etc rather than me finishing it as it's better in the long run to encourage someone new to open source, plus he deserves the credit as he already did the brunt of the work.

Also, @bbangert you requested 2.6 support above, but I see in https://github.com/python-zk/kazoo/commit/2faba9ff3bdeff151ac6c922bf65b2dcf9c7bd7b you dropped official support for 2.6, so does this PR actually still need to be updated for 2.6?

Sorry about that, due to the backlog of PR's kazoo ended up in a bad situation where there's just so many PR's I have no way to track which ones people are interested in updating, and which ones people aren't. The longer the PR list, the less anyone wanted to maintain Kazoo at all, so clearing them out so that it was clear what was actionable and what wasn't feels like the only sane UX hack around a bad usability issue. (If only Github would let me 'snooze' a PR so that it can easily be filtered out).
If you have any suggestions for alternative ways to filter out PR's that are desired but out-of-date, I'd love to use that as it wasn't my intention at all to insult/annoy anyone. This was the most immediate and obvious way to filter the list of actionable PR's that I could see, so I went that route. Sorry again about not being able to look into this earlier.

Regarding 2.6 support, I'm fine ignoring that now that we'll be dropping Python 2.6 support. I think the PR only needs a rebase and it'll be good to go. I'll re-open it and see if GH can automatically rebase it.

Sorry about that, due to the backlog of PR's kazoo ended up in a bad situation where there's just so many PR's I have no way to track which ones people are interested in updating, and which ones people aren't. The longer the PR list, the less anyone wanted to maintain Kazoo at all, so clearing them out so that it was clear what was actionable and what wasn't feels like the only sane UX hack around a bad usability issue. (If only Github would let me 'snooze' a PR so that it can easily be filtered out).

I completely understand. I help maintain a number of projects that have just this kind of issue, and I myself go through and close old PR's that have been sitting idle longer than 6-12 months, it's just that I try to give folks a gentle nudge first, especially if it looks like they're first-time contributors to open source.

Oh, the only other update this needs is the commit needs to be altered to the style in the CONTRIBUTING doc. Otherwise the change won't be included in the CHANGES.md file. If the original author needs any help updating the commit and force pushing I'd be happy to help, a rebase and commit update should also remove the need for my merge commit.

@eribeiro Did you want to update this?

I haven't forgotten about this either, and if @eribeiro doesn't drop in, I am happy to update this as well.

@jeffwidman @bbangert Hey, thanks for taking your time to discuss and instruct me on improving this PR. It is really appreciated! 😃
Well, I have changed the commit message to the one indicated by bbangert as well as rebased the branch to the master. Please, let me know if there's any other pending work on this PR. I am glad to make any required changes.

@eribeiro thanks! nice work!

@jeffwidman @bbangert Thanks a lot for your support and patience. It meant a lot to me. 👍


Witness singleton type automatically erased by compile-time type inference

This is technically a compiler compatibility issue, so I'm not sure how much work can be done without touching the compiler.
Here is a simple example in scalatest:
class SingletonConstraintSpike extends AnyFunSpec {

  import SingletonConstraintSpike._

  it("3") {

    val v = singletonW.value

//    s3(v) // <----------------------------------------------------------------------------------  breaks!
  }

  it("4") {

    type VT = singletonW.T
    val v: VT = singletonW.value

    s3(v)
  }
}

object SingletonConstraintSpike {

  def s3[T](v: T)(implicit ev: Witness.Aux[T]) = {}

  def adhocW = Witness(3)

  val singletonW = Witness(3)

}

It should be noted that the type of the variable v in case 3 is impeccable (Int(3)), the only problem happens on calling s3 without specifying the correct type parameter Witness._3 (or something equal). The type Int(3) is automatically erased and become Int, for which there is no Witness that can be summoned.
The problem becomes particularly bad when s3 is not just a function with 1 parameter, but part of a type class that has to be recursively called to church-encode an HList-like object. In this case the type class is impossible to be used without declaring their type parameters, which is as bad as writing a chain of type class instances manually.
Can it be solved or we have to wait for the dotty version?

scastie link:
https://scastie.scala-lang.org/w14bAv94RteDAekDNZn0mA

Fixed by #1242


Compatibility with latest symfony

@KingCrunch  Right now your bundle does not work with symfony 2.8.2
If web server is configured to handle SSI requests - it generate Forbidden on all request.
After digging into this bug I noticed, that problem is in this line
https://github.com/symfony/http-kernel/blob/master/EventListener/FragmentListener.php#L83
After debugging I noticed, that your bundle sign uri, like
/_fragment?_path=pathhere

and symfony sign whole url
http://yourdomain.com/_fragment?_path=path&_hash=hash

This code was added with this commit
https://github.com/symfony/http-kernel/commit/eca461d0cdf357c3ffe9b06e49fae4a0f3b45969
after I have fixed your sign code - everything start working ok.

@saimaz @martiis
Before fixing bug myself I have checked forks for ready solution and located very dangerous code in your fork
https://github.com/ongr-archive/SSIBundle/commit/f665ad7daa90e7a739714abc045564f02e678ecd

not sure, if it works, but disabling security is very bad idea.
right now KingCrunch/SSIBundle should be compatible with latest symfony and I dont see any changes except compatibility in your fork - so you really should use this one instead.

Thanks for notice.

Hi @zhil
Thanks for your PR. It looks fine to me.

@KingCrunch not sure. what about setting 2.8.0 as minium? - its current LTS. Users with older symfony could use previous versions of your bundle.
show must go on.

Hi @zhil

Users with older symfony could use previous versions of your bundle.

Sure, they could, but since SSI is in core since 2.6 why should I break up with them? 2.3 is still supported too, so it's not like I want to supported unsupported versions (I already dropped 2.4, 2.5, and 2.6 from the travis matrix ;)).
What prevents you from dropping this bundle and using the builtin functionality? I mean one less dependency to worry about :) and the official integration is better tested than this bundle.

@KingCrunch ok, got you :)
I have checked again, and I must admit, that subject symfony2 change is pretty old  - https://github.com/symfony/http-kernel/commit/eca461d0cdf357c3ffe9b06e49fae4a0f3b45969
Its the same in 2.2 branch
https://github.com/symfony/http-kernel/blob/2.2/EventListener/FragmentListener.php
The same in 2.3 branch
https://github.com/symfony/http-kernel/blob/2.3/EventListener/FragmentListener.php
And in the v2.3.4 tag (dont see older tags on github)
https://github.com/symfony/http-kernel/blob/v2.3.4/EventListener/FragmentListener.php
Just to ensure, I have installed locally version Symfony 2.3.4 and new version of code doesnt work.
After debuggin I noticed, that full url is set to variable $uri in code
$uri = $this->signer->sign($uri)

In symfony v2.3.37 uri is passed.
So I have changed signing code to work with both full url and uri. I have tested new patch on
v2.3.4
v2.3.37
v2.6.13
v2.8.2

@zhil In this case I'm fine with the change :) Thank you.

@KingCrunch thank you too.
btw, you noticed, that symfony have bultin functionality.
according to nginx logs It works incorrectly in my environment -  /_fragment request is not issued at all.
render_ssi tag is processed using internal proxy.
thats, probably, some configuration issue, but it make SSI useless in my case.
just in case if you use bultin SSI.

@zhil Well, if it doesn't work, it should be a  bug ticket then I'd guess. I don't use SSI currently, because my current project doesn't support this, so sadly I am a little bit out of touch with the implementation and usage...


[BUG] - Blank white screen appears when using Textarea component

Describe the bug
When I am using Textarea component inside my app, it is throwing console errors and my screen turns white blank.
Your Example Website or App
No response
Steps to Reproduce the Bug or Issue

Create Home.tsx file, and import Teaxtarea component from @nextui-org/react.
Use Textarea component inside Home.tsx.
Impot Home.tsx file in App.tsx by using lazy and Suspense.
Now, use react-router-dom for routing.
Start localhost and view it in your browser.

Expected behavior
No blank white screen should appear and the application should not break.
Screenshots or Videos

Operating System Version
Windows
Browser
Chrome

Can you provide a mini-reproduction on sandbox or stackblitz? @rsinghcodes

Hi @sun0day, I ran the code on both sandbox and stackblitz, but this problem is not happening there. I tested locally in my two different machines and this issue is still visible i.e. blank white screen. Can you run locally and check if this problem is happening locally on your system?
I'm using  "react": "^18.2.0", "react-dom": "^18.2.0", "react-scripts": "5.0.1", "react-icons": "^4.4.0", "react-router-dom": "^6.3.0", and "typescript": "^4.7.4".
Thanks!

It seems like the problem happens in your webpack config. Can you push your code to your github repo?

Sure, here is my repo.

Error reason is that there are circular dependencies between Input and Textarea.
https://github.com/nextui-org/nextui/blob/1becf041d836c0c50edeee5a7f2090e00f98668a/packages/react/src/input/index.ts#L1
https://github.com/nextui-org/nextui/blob/1becf041d836c0c50edeee5a7f2090e00f98668a/packages/react/src/textarea/textarea.tsx#L4


Incorrect Google icon

I've never seen that Google logo used as a square icon. Yes, it's the G in the full Google logo, but the Google logo used for things like Google's Oauth is similar to the favicon, having four colours in the G. Perhaps there few reasons to use the logo in the first place as there isn't much you can link on Google that doesn't have its own icons, like Blogger, Google Maps, or Google+. But even if my website linked to Google Books or Google Scholar, I would probably use one similar to the official favicon used for Google Search and Google Sign-In.

"The Google G is a compact version of the Google logo that works in small contexts."
https://design.google/library/evolving-google-identity/
The official download for the Google G for use in the icon can be found here.

I have just fixed this with #60


[icons] Sync icon search UI state with the url

This PR syncs the state of the icon search UI with the url of the page to make deep linking possible.
Fixes: https://github.com/mui-org/material-ui/issues/25053
Demo: https://deploy-preview-30075--material-ui.netlify.app/components/material-icons/
To Do:

[x] parameters seems to be reset when opening a url, but only in production.

(The NProgress trigger bug seems expected, it's a bug we should fix at a different level. There is no need for it when the page transition is instant, it makes things worse in this context, not better.)

I see what you mean, hadn't paid attention to it yet. This should fix it: https://github.com/mui-org/material-ui/pull/30087

Now on top of latest master with the progress bar fixes: https://deploy-preview-30075--material-ui.netlify.app/components/material-icons/

@Janpot Greatly executed, well done. I think that we could mention this DX improvement in the next release highlight.


Forked off for python-wrapper compatibility.

Created a python wrapper for automating/emulating comms, and modified examples/arbitrary.c to send raw binary data to stdout for loading in python. If pull request is accepted, recommend maintaining as separate branch.

I feel that this could be done better by either doing FFI w/ python or just rewriting the small amouts of logic in python and using something like https://pypi.python.org/pypi/hidapi/0.7.99.post20, but I understand not wanting to go through that.

It's worth thinking about for later, we'll leave helper functions reimplementable as we go, probably. We'll need something like this for writing to flashcarts in the event we get ntrboot flashing working on this dealio anyway.


Improve function policy example.

Include policy document example, because it confused me too.
Closes #88.

Thanks for doing this


Not linting every file

I'm not sure where the actual error is but this lints a few files but not ./path/to/person.less:
gulp.task('lint-styles', function(done){
    gulp.src('./path/to/*.less')
        .pipe($.lesshint())
        .pipe($.lesshint.reporter())
        .on('end', done);
});

It is linted if I do:
gulp.task('lint-styles', function(done){
    gulp.src('./path/to/person.less')
        .pipe($.lesshint())
        .pipe($.lesshint.reporter())
        .on('end', done);
});

Or:
gulp.task('lint-styles', function(done){
    gulp.src(['./path/to/avatar.less', './path/to/person.less'])
        .pipe($.lesshint())
        .pipe($.lesshint.reporter())
        .on('end', done);
});

Ok there's a problem with .on('end', done) or .on('finish', done) (which we use regularly with other plugins. There must be something different about this plugin. Removing it (and the done parameter) fixes the issue.
This also (eventually) causes my CSS file not to exist in the end. I have something like:
gulp.task('styles', ['link-styles', 'something-else'], function(done){
    //...
        .on('end', done);
});

gulp.task('lint-styles', ['something-else'], function(done){
    gulp.src('./path/to/*.less')
        .pipe($.lesshint())
        .pipe($.lesshint.reporter())
        .on('end', done);
});

Hmm yeah, definitely... I tried piping into my own thing after the reporter to throw an error if the result count was too high but it only seems to hit my function for one file...
var through = require('through');
//...
.pipe($.lesshint.reporter())
.pipe(through(function(file){
  console.log(file.path);
  this.emit('data', file);
})
// no 'end'/'finish'

Again, this has worked fine with other plugins.

@adam-lynch I might have a theory why this is happening, gulp-lesshint doesn't push the file downwards in the stream (while for example, gulp-coffeelint does). I've pushed a possible fix for it to the issue-3 branch and I was just wondering if you could check it out before merging it into master.
I'm a bit afraid that it might cause some other issue and you seem to have a pretty advanced Gulp setup so if anything breaks we might find it straight away.

Will do @jwilsson

@adam-lynch just wanted to see if you've had the time to test this?

This is hopefully fixed in 2.0.0-rc which is installable with npm install gulp-lesshint@next.


Figure out Parsl Process killing not working

Describe the bug
#156 testing revealed that Parsl does not correctly shutdown all its workers, resulting in an ever growing list of open files.
Any tests run with the Parsl fixtures (and I imagine the Parsl Adapter in general) don't close the Executors correctly. When the "shutdown-like" commands are called, the following block in parsl/executors/ipp_controller.py(154)close() is called
        try:
            pgid = os.getpgid(self.proc.pid)
            os.killpg(pgid, signal.SIGTERM)
            time.sleep(0.2)
            os.killpg(pgid, signal.SIGKILL) # <---- This line fails
            try:
                self.proc.wait(timeout=1)
                x = self.proc.returncode
                if x == 0:
                    logger.debug("Controller exited with {0}".format(x))
                else:
                    logger.error("Controller exited with {0}. May require manual cleanup".format(x))
            except subprocess.TimeoutExpired:
                logger.warn("Ipcontroller process:{0} cleanup failed. May require manual cleanup".format(self.proc.pid))

        except Exception as e:
            logger.warn("Failed to kill the ipcontroller process[{0}]: {1}".format(self.proc.pid, e))

which throws PermissionError: [Errno 1] Operation not permitted. The end result is that a large number of processes executed by parsl bash scripts, ipengine, and ipcontroller remain running and are never shut down. On its own, this is bad enough, but then they also retain access to open files to the MongoDB. (I view them through lsof -iTCP -sTCP:LISTEN -n -P), eventually getting the OS to throw a system wide error of Too Many Open Files, causing all kinds of problems at a system-wide level, including preventing MongoDB from shutting down and restarting correctly.
I have not had a chance to dig into this any more than what I found in testing but wanted to make an issue on it. Until we find a proper solution, the Parsl tests are disabled.
In order to clean up the system, I had to run the following:
for parslid in parsl ipengine ipcontroller; do for pid in $(ps -ef | grep "$parslid" | awk '{print $2}'); do kill -9 $pid; done; done
To Reproduce
Use the Parsl Adapter
Expected behavior
Files should not be open.
Additional info

I have only tested this on my local OSX machine.
QCFractal specifically uses parsl.dataflow.dflow.DataFlowKernel as its client
The local machine uses the Parsl IPController to execute its jobs.

edit: added additional info

Related issue #170, this is a workaround to this issue, thanks to @dgasmith for helping test this.
We were able to find out that its only the IPyParallelExecutor, running in PyTest (unknown conditions). Production is safe. For now, switching to the ThreadPoolExecutor and making it thread safe works around the problem. This issue will remain open, but lower priority as we will need to further isolate this to report to the Parsl team, but its no longer blocking.
pkill python to kill the threads also works, but is more aggressive than my double for loop in the original post.

Highly possible this is related to PyTest's manipulations. Trying the following seems fine however:
import pytest
from parsl.configs.local_ipp import config
from parsl.dataflow.dflow import DataFlowKernel
from parsl.app.app import python_app

@pytest.fixture()
def kernel():
    kernel = DataFlowKernel(config)
    yield kernel

def test_task(kernel):

    def internal_func(s):
        return "Hello! {}".format(s)
    func = python_app(internal_func, data_flow_kernel=kernel)

    a = func("Hi!")

This appears to be Pytest + IPyParallelExecutor combination which we don't use anymore and has not cropped back up since. I am going to close this issue as I don't think its something we need to worry about as Fractal.


update to 1.4.3 and <IP_ADDRESS>

Added a 1.4.3 dockerfile, tested locally and it works, hopefully I updated everything.

<IP_ADDRESS> also just dropped.

Thank you for the submission. I have updated the repo with the latest versions. I had to update some of the other vanilla links as well


https://wpvulndb.com/api/v2/wordpresses/ is dead! Need to update to API v3!

Just wanted to give you a heads up that the API for v2 is dead since last year and now we need API v3 with a token.

Oh, and http://wpvulndb.com/vulnerabilities/ is also a 404!

Yeah i'm aware of it.. i will update it with the new wpvulns.com api instead someday.

Waiting for update bro... Thanks

您的邮件我已收到，我将及时查看！谢谢！


Remove [experimental] tags take 2 (#2306)

removing experimental requires removing everything

Code cleanup

Co-authored-by: Eric Langlois<EMAIL_ADDRESS>

/azp run

/azp run

Seems OK. Is this the right time to also add the [contract] tagging?

No! This is targeting the preview1 branch and still hasn't cleared shiproom. I don't we want to add contracts. We already have contracts for AppNotifications, I'm happy to create a separate PR to add contracts for PushNotifications but targeting main

/azp run

/azp run

/azp run

/azp run