Rancher pods are not cleaned up on rollback from master to v2.5.8

What kind of request is this (question/bug/enhancement/feature request):
Bug
Steps to reproduce (least amount of steps as possible):
Bring up a Rancher v2.5.8 setup.
Deploy a downstream cluster.
Upgrade the setup to master-head (version f6c1d82 was used during testing)
Verify Rancher pods are created in downstream cluster. (Image: rancher/rancher:master-f6c1d829f5f074edf1a0a46ca1903c17ba7ce3bd-head)
Rollback the setup to Rancher v2.5.8
Result:
Rancher pods are not deleted. Pods still use image: rancher/rancher:master-f6c1d829f5f074edf1a0a46ca1903c17ba7ce3bd-head.
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI):  v2.5.8
Installation option (single install/HA): single install

We need to add in behavior for the Rancher to remove itself based on the following conditions:

mcm agent feature flag is enabled - within the Rancher server pod inside the downstream cluster
Finds a cluster agent that is 2.5.x or earlier - on the downstream cluster

If these conditions are met, we should kick off a helm remove of the Rancher server helm chart using the catalog v2 code. By using the catalog v2 code, it will launch a pod that will call the helm operation to remove the Rancher server helm chart, which will remove the Rancher pod

As we are removing the Rancher pod deployment this will no longer be an issue.

Moving back "To-Test" until this issue is resolved: https://github.com/rancher/rancher/issues/33221

Tested on Rancher v2.5.8 on upgrade to master-head version ad099ee with the following steps:
Bring up a Rancher v2.5.8 setup.
Deploy a downstream cluster.
Upgrade the setup to master-head (version ad099ee was used during testing)
Verify Rancher pods are not created.
Rollback the setup to Rancher v2.5.8
On upgrade to master-head, rancher pods are not seen on downstream clusters. Rancher pods are not seen on rollback to v2.5.8.


Added to Dear PyGui showcase

Hey,
Just wanted to let you know that we have added ELPath to the Dear PyGui showcase!
https://github.com/hoffstadt/DearPyGui/wiki/Showcase
Thanks for making a cool app with DPG.

Oh, just noticed! I'm honored, thanks! 🎉


After throws unhelpful error message on passing invalid index

Issue description
On passing negative indices,  throws error message  which does not accurately explain the error. Something like "cannot return slice of elements after a negative index" would be more explanatory in my opinion. Any suggestions?
If this gets the approval, I will be more than happy to submit a PR.
What version of Hugo are you using (hugo version)?

$ hugo version
Hugo Static Site Generator v0.59.0-DEV-096A4B67 linux/amd64 BuildDate: 2019-10-11T02:36:33-0500

Does this issue reproduce with the latest release?
Yes

I feel that the suggested error message makes more sense for after. Should I submit a PR with the change for after?
First throws  which I feel can be changed to something like
sequence length must be non-negative

to resemble more of what the Go compiler would throw.

Sounds good.

I was thinking that once #6419 is closed, I will change  also to
sequence length must be non-negative

as it would have the same condition as first then.

I agree.


feat: add CQL filetype to runtime

Clinical Quality Language (CQL) is a language used in a variety of Healtchare IT/clinical use cases. See https://cql.hl7.org/ and https://github.com/cqframework/clinical_quality_language for more description on CQL, and here for an example .cql file.
This PR simply adds detection of *.cql files and sets the filetype accordingly.
I have not yet provided any syntax for the CQL grammar itself within Vim, but let me know if this is necessary in order for this contribution to be accepted. Thank you!

Clinical Quality Language (CQL) is a language used in a variety of
Healtchare IT/clinical use cases. See https://cql.hl7.org/ and
https://github.com/cqframework/clinical_quality_language for more
description on CQL, and
here
for an example .cql file.
This PR simply adds detection of *.cql files and sets the filetype
accordingly.
I have not yet provided any syntax for the CQL grammar itself within
Vim, but let me know if this is necessary in order for this
contribution to be accepted. Thank you!

We always add the filetype detection separately, so this PR is fine by
itself.
However, looking around for the .cql extension, I see mention of "XDCC
Catcher queue list".  Apparently the extension is used for more than one
type of file.  We prefer to give a descriptive name, rather than just
the extension name itself.
Does this "Clinical Quality Language" have another (short) name?
I find this: "ANSI/HL7 CQLANG, R1-2020".  So perhaps we can call it
"cqlang"?
We could just recognize .cql files as "cqlang" for now.  Only when we
care about that "XDCC Catcher queue list" we would have to check the
contents and come up with a name for that filetype.
Doing it this way avoids that we get a "cql" filetype that we don't know
whether it is one or the other.  And renaming later won't be appreciated
by users.
--
From "know your smileys":
|-P	Reaction to unusually ugly C code
/// Bram Moolenaar -- @.*** -- http://www.Moolenaar.net   \
///                                                                      \
\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

@brammool Thanks for the insight, and I agree with your reasoning. I went ahead and updated to cqlang, which I think is an appropriate short name for clinical quality language based on the CQL specification.
I also added a comment clarifying a potential discrepancy if support for XDCC Catcher queue list is needed in the future, which I saw requested in another filetype PR

Included with patch  9.0.0897
Somehow that referenced another PR that was already included.


Ball opponent line out of play test

This PR is aimed to test the AutoRef's behavior when the ball leaves the field from the opponent's goal line. It relates to issue #17 .

This is the actual log while running this scenario:
[0000.001|0000.000] Error: Host is not correctly defined in game.json file, it should be <IP_ADDRESS> instead of <IP_ADDRESS>.
[0000.003|0000.000] Info: Real time factor is set to 0. Simulation will run as fast as possible, real time waiting times will be minimised.
[0001.032|0000.000] Info: Spawned RED_PLAYER_1 RobocupRobot on port 10001 at halfTimeStartingPose: translation (3.5 -3.06 0.24), rotation (0 0 1 1.571592653589793).
[0001.631|0000.000] Info: Spawned BLUE_PLAYER_1 RobocupRobot on port 10021 at halfTimeStartingPose: translation (-3.5 -3.06 0.24), rotation (0 0 1 1.57).
[0001.659|0000.000] Info: Connected to GameControllerSimulator at localhost:8750.
[0001.659|0000.000] Info: Game type is NORMAL.
[0001.659|0000.000] Info: Red team is Funny Dingos.
[0001.659|0000.000] Info: Blue team is Agile Lynxes.
[0001.659|0000.000] Info: Left side is blue.
[0001.659|0000.000] Info: Kickoff is red.
[0001.659|0000.000] Info: Beginning of first half.
[0001.659|0000.000] Info: Sending 1:SIDE_LEFT:2 to GameController.
[0001.659|0000.000] Info: Sending 2:KICKOFF:1 to GameController.
[0002.083|0000.328] Info: New state received from GameController: STATE_INITIAL.
[0005.123|0009.920] Info: Sending 1244:STATE:READY to GameController.
[0005.591|0014.976] Info: New state received from GameController: STATE_READY.
[0010.599|0063.280] Info: New state received from GameController: STATE_SET.
[0010.604|0063.280] Info: Sending 7915:PENALTY:1:1:INCAPABLE to GameController.
[0010.607|0063.280] Info: INCAPABLE penalty for red player 1: did not move to kickoff position. Sent to translation (3 3.11 0.24), rotation (0.0 0.0 1.0 4.713185307179587).
[0010.607|0063.280] Info: Sending 7916:PENALTY:2:1:INCAPABLE to GameController.
[0010.609|0063.280] Info: INCAPABLE penalty for blue player 1: did not move to kickoff position. Sent to translation (-3 3.11 0.24), rotation (0.0 0.0 1.0 4.711592653589793).
[0011.616|0068.272] Info: Sending 8541:STATE:PLAY to GameController.
[0012.102|0073.904] Info: New state received from GameController: STATE_PLAYING.
[0013.102|0087.152] Info: Ball in play.
[0039.797|0094.672] Info: Ball touched by red player 1.
[0040.965|0095.672] Info: Ball touched again by same player.
[0042.023|0096.672] Info: Ball touched again by same player.
[0188.805|0097.200] Info: Ball left the field at (-4.570822813173688 -1.9889365359008166 0.0784433194947055) after being touched by red player 1.
[0188.805|0097.200] Info: Sending 12158:GOALKICK:2 to GameController.
[0189.949|0098.336] Info: awarding a goal kick.
[0190.384|0098.760] Info: awarding a goal kick.
[0190.834|0099.192] Info: Ball respawned at 0 -2.975 0.0784433194947055.
[0190.834|0099.192] Info: Sending 12408:GOALKICK:2:READY to GameController.
[0190.876|0099.232] Info: awarding a goal kick.
[0191.382|0099.712] Info: awarding a goal kick.


APP-345: [Android] Endpoint ownership: Disable in Sanbox for 2.0.0

http://jira.kaaproject.org/browse/APP-345

Can one of the admins verify this patch?

@Slash32 Check this patch please.

@kaa-leeroy test this hard please


Add CupertinoSliverNavigationBar large title magnification on over scroll

Per #62298, adds magnification for CupertinoSliverNavigationBar large title on over scroll.
This is a continuation of my previous PR #103299, but I addressed comments and added more tests.
I decided to make use of TextPainter to calculate the width of the text and set the maximum scale appropriately,
I don't know if that's good enough because clipping will occur when the child widget is different from Text.
Also, when testing how native iOS handles this edge case, I noticed that padding applied to the large text is wrong (line 830).
This causes text to stick to the side of the screen before truncating (can be seen on the second gif).
To match the native iOS look, padding should also be applied to the end property of EdgeInsetsDirectional.only:
Padding(
  padding: const EdgeInsetsDirectional.only(
    start: _kNavBarEdgePadding,
    end: _kNavBarEdgePadding,
    bottom: 8.0, // Bottom has a different padding.
),

Fixes #62298

Pre-launch Checklist

[x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
[x] I read the [Tree Hygiene] wiki page, which explains my responsibilities.
[x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement].
[x] I signed the [CLA].
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is [test-exempt].
[x] All existing and new tests are passing.

As you mentioned in the pull request description, all bets are off if largeTitle.child is not a Text widget, so I think a different method for measuring the size of the child widget is needed, or alternatively you could change the constraints to prevent child from overflowing its container.

After some tests, I thought that the best way to achieve magnification effect of the large title is to extend the SingleChildRenderObjectWidget and apply the transformation just before painting.
This allows us to calculate the magnification scale on the first pass, avoiding any dry-runs.
Everything seems to work fine, magnification is correctly applied on the LTR and RTL text directions, no widget get clipped at the edge and all tests are passing.
@LongCatIsLooong what do you think about this approach?

based on your current implementation (calculating the scale based on size.width), I think scale is probably always going to be 1.0, because the child widget is going to take as much space as possible.

based on your current implementation (calculating the scale based on size.width), I think scale is probably always going to be 1.0, because the child widget is going to take as much space as possible.

That's why I wrapped child in the Align widget, so it takes only the space it needs. I am not sure if that's the best way to handle this, but it works.

Looks like in a UIKit app a UINavigationBar's large title doesn't scale as much when the title is too wide (so that matches this implementation). But also the text seems to start ellipsizing before the it reaches the trailing edge.

That's right, I think I mentioned it at the very beginning.
Not sure if I can fix this because it doesn't really match the overall goal of this PR?
Although, I would be happy to migrate the Cupertino widgets to iOS 16 visuals.

The scaling itself looks good, but the animations and letter spacing are a little off.

Not sure if I can fix this because it would involve changing the constraints and it doesn't really match the overall goal of this PR?

Yeah the comparison looks good (thanks for that btw!). That issue doesn't seem to be big deal and can be addressed separately.

Do you think something like this would work? We wouldn't need the LayoutBuilder or OverflowBox
class _LargeTitle extends SingleChildRenderObjectWidget {
  const _LargeTitle({ super.child });

  @override
  _RenderLargeTitle createRenderObject(BuildContext context) {
    return _RenderLargeTitle(alignment: AlignmentDirectional.bottomStart.resolve(Directionality.of(context)));
  }

  @override
  void updateRenderObject(BuildContext context, _RenderLargeTitle renderObject) {
    renderObject.alignment = AlignmentDirectional.bottomStart.resolve(Directionality.of(context));
  }
}

class _RenderLargeTitle extends RenderShiftedBox {
  _RenderLargeTitle({
    required Alignment alignment,
  })  : _alignment = alignment,
        super(null);

  Alignment get alignment => _alignment;
  Alignment _alignment;
  set alignment(Alignment value) {
    if (_alignment == value) {
      return;
    }
    _alignment = value;
    markNeedsLayout();
  }

  double _scale = 1.0;

  @override
  void performLayout() {
    final RenderBox? child = this.child;
    size = constraints.biggest;
    if (child == null) {
      return;
    }

    final BoxConstraints childConstriants = constraints.widthConstraints().loosen();
    child.layout(childConstriants, parentUsesSize: true);

    final double maxScale = child.size.width != 0.0
      ? clampDouble(constraints.maxWidth  / child.size.width, 1.0, 1.1)
      : 1.1;
    // The coefficient 0.1 may need some tweaking.
    _scale = clampDouble(1.0 + (constraints.maxHeight - child.size.height) / child.size.height * 0.01, 1.0, maxScale);

    final Size childSize = child.size * _scale;
    final BoxParentData childParentData = child.parentData! as BoxParentData;
    childParentData.offset = alignment.alongOffset(size - childSize as Offset);
  }

  @override
  void applyPaintTransform(RenderBox child, Matrix4 transform) {
    assert(child == this.child);
    transform.scale(_scale, _scale, 1);
    super.applyPaintTransform(child, transform);
  }

  @override
  void paint(PaintingContext context, Offset offset) {
    final RenderBox? child = this.child;
    if (child == null) {
      layer = null;
    } else {
      final BoxParentData childParentData = child.parentData! as BoxParentData;
      layer = context.pushTransform(
        needsCompositing,
        offset + childParentData.offset,
        Matrix4.diagonal3Values(_scale, _scale, 1),
        (PaintingContext context, Offset offset) => context.paintChild(child, offset),
      );
    }
  }

  @override
  bool hitTestChildren(BoxHitTestResult result, {required Offset position}) {
    final RenderBox? child = this.child;
    if (child == null) {
      return false;
    }
    final Offset childOffset = (child.parentData! as BoxParentData).offset;
    final Matrix4 transform = Matrix4.translationValues(-childOffset.dx, -childOffset.dy, 0)
      ..scale(1.0/_scale, 1.0/_scale, 1);
    return result.addWithRawTransform(
      transform: transform,
      position: position,
      hitTest: (BoxHitTestResult result, Offset transformed) {
        return child.hitTest(result, position: transformed);
      }
    );
  }
}

Do you think something like this would work? We wouldn't need the LayoutBuilder or OverflowBox

Yeah! Great job!
I will test this in different scenarios and I will try to fine-tune the coefficient so it matches iOS 16 as close as possible.
I just noticed that the transformations on transform in the hitTestChildren have to be done on the identity matrix, otherwise it's gonna cull the hit box.
final Matrix4 transform = Matrix4.identity()
  ..scale(1.0/_scale, 1.0/_scale, 1)
  ..translate(-childOffset.dx, -childOffset.dy);

Also, is there any procedure in editing existing tests? If we decide to remove the OverflowBox they are going to fail.

Replacing those with something like find.byType(ClipRect).first should be fine. The existing tests are not very robust but false positives should be fine.

I just noticed that the transformations on transform in the hitTestChildren have to be done on the identity matrix (or from .diagonal3Values), otherwise it's gonna cull the hit box.

In the hitTestChildren implementation above I used addWithRawTransform instead of addWithPaintTransform. The difference is the latter first inverts the transform. In hit testing the goal is to transform a point from _RenderLargeTitle's coordinates to its child's coordinates so I think it's correct to first adjust the origin and then apply the scaling.

In the hitTestChildren implementation above I used addWithRawTransform instead of addWithPaintTransform. The difference is the latter first inverts the transform. In hit testing the goal is to transform a point from _RenderLargeTitle's coordinates to its child's coordinates so I think it's correct to first adjust the origin and then apply the scaling.

I totally forgot to explain why the scaling needs to be done before the translation in my previous comment. The reason is that when you scale the matrix, the scaling applies to its every value, this can be seen in the Matrix4 implementation:
_m4storage[0] *= sx;
_m4storage[1] *= sx;
_m4storage[2] *= sx;
_m4storage[3] *= sx;
_m4storage[4] *= sy;
_m4storage[5] *= sy;
_m4storage[6] *= sy;
_m4storage[7] *= sy;
...

The translation property is _m4storage[7] and sy in our case is 1.0/_scale so it does get scaled if the translation is different than zero.
I did a little comparison:
child offset = -185.2305775669644

translating then scaling the matrix:
[0] 0.955,0.0,0.0,0.0
[1] 0.0,0.955,0.0,-185.2305775669644
[2] 0.0,0.0,1.0,0.0
[3] 0.0,0.0,0.0,1.0
------------------
scaling then translating the matrix:
[0] 0.955,0.0,0.0,0.0
[1] 0.0,0.955,0.0,-176.95350679279056
[2] 0.0,0.0,1.0,0.0
[3] 0.0,0.0,0.0,1.0

In the hitTestChildren implementation above I used addWithRawTransform instead of addWithPaintTransform. The difference is the latter first inverts the transform. In hit testing the goal is to transform a point from _RenderLargeTitle's coordinates to its child's coordinates so I think it's correct to first adjust the origin and then apply the scaling.

I totally forgot to explain why the scaling needs to be done before the translation in my previous comment. The reason is that applying the scaling after doesn't actually affect the translation property. This can be seen in the Matrix4 implementation:
_m4storage[0] *= sx;
_m4storage[1] *= sx;
_m4storage[2] *= sx;
_m4storage[3] *= sx;
_m4storage[4] *= sy;
_m4storage[5] *= sy;
_m4storage[6] *= sy;
_m4storage[7] *= sy;
_m4storage[8] *= sz;
_m4storage[9] *= sz;
_m4storage[10] *= sz;
_m4storage[11] *= sz;
_m4storage[12] *= sw;
_m4storage[13] *= sw;
_m4storage[14] *= sw;
_m4storage[15] *= sw;

In our case the sw value is 1.0 (because we are passing only x and y scale values, the w is 1.0 by default) and the translation is stored in _m4storage[12] and _m4storage[13] so the translation is not affected by the scaling.
But when you scale the matrix first, then apply the translation, the translation values will be scaled by the scale factor:
final t1 = _m4storage[0] * tx +
    _m4storage[4] * ty +
    _m4storage[8] * tz +
    _m4storage[12] * tw;
final t2 = _m4storage[1] * tx +
    _m4storage[5] * ty +
    _m4storage[9] * tz +
    _m4storage[13] * tw;
final t3 = _m4storage[2] * tx +
    _m4storage[6] * ty +
    _m4storage[10] * tz +
    _m4storage[14] * tw;
final t4 = _m4storage[3] * tx +
    _m4storage[7] * ty +
    _m4storage[11] * tz +
    _m4storage[15] * tw;
_m4storage[12] = t1;
_m4storage[13] = t2;
_m4storage[14] = t3;
_m4storage[15] = t4;

Our scale values are stored in _m4storage[0] and _m4storage[5], so the translation values _m4storage[12] and _m4storage[13] will be equal to the translation in x multiplied by the scale in x and translation in y multiplied by the scale in y respectively.
I did a little comparison to demonstrate this:
child offset = -185.2305775669644

translating then scaling the matrix:
[0] 0.955,0.0,0.0,0.0
[1] 0.0,0.955,0.0,-185.2305775669644
[2] 0.0,0.0,1.0,0.0
[3] 0.0,0.0,0.0,1.0
------------------
scaling then translating the matrix:
[0] 0.955,0.0,0.0,0.0
[1] 0.0,0.955,0.0,-176.95350679279056
[2] 0.0,0.0,1.0,0.0
[3] 0.0,0.0,0.0,1.0

It looks like goldens and lot of tests are failing when removing the OverflowBox. I will push commit with new code to show it here.

The reason is that applying the scaling after doesn't actually affect the translation property.

I still think it's correct to first adjust the origin then scale for hit-testing. It's also probably worth adding a test for.

I still think it's correct to first adjust the origin then scale for hit-testing. It's also probably worth adding a test for.

Yeah, but the problem is, that when the title's size is increasing with origin at the bottom start by the factor of scale, the translation also needs to be increased in order to compensate for the change of title's size.
I've tested this multiple times and if you adjust the origin first, then apply the scale, the hit-box ends up being too low, due to the translation not being scaled.
If you want to see it yourself, here is example project to reproduce this and other things related to this PR:
https://github.com/ivirtex/cupertino_sliver_nav_bar_example/tree/extended
Just be sure to be on the extended branch, because it has hit-box testing.

Sorry for the delay. Could you add a test to verify that hit testing is working correctly?

Sorry for the delay. Could you add a test to verify that hit testing is working correctly?

Yeah, I've just added it and it confirms that adjusting the origin first then scaling the matrix is not working properly and messes up the hitbox.
I'm still worried about these failing tests and goldens after removing the OverflowBox, they expect the navbar to overflow and hide partially, so tests, that expect hard-coded sizes, fail.
Do you think we should still remove it?

Sorry for the delay. Some of the failing tests seem to be testing the right thing:

the "Media padding is applied to CupertinoSliverNavigationBar" is failing because _scale is greater than 1.0 when the scroll view isn't even scrolled. Maybe we should replace the child.size.height in 1.0 + (constraints.maxHeight - child.size.height) / child.size.height * 0.03 with something else. From the looks of it, it should be _kNavBarLargeTitleHeightExtension  - 8.0?
It seems safe to just update the value from "44 - 8" to "44" from the Small title can be overridden test. The large title should have a height of 0 at that point.

the "Media padding is applied to CupertinoSliverNavigationBar" is failing because _scale is greater than 1.0 when the scroll view isn't even scrolled. Maybe we should replace the child.size.height in 1.0 + (constraints.maxHeight - child.size.height) / child.size.height * 0.03 with something else. From the looks of it, it should be _kNavBarLargeTitleHeightExtension  - 8.0?
It seems safe to just update the value from "44 - 8" to "44" from the Small title can be overridden test. The large title should have a height of 0 at that point.

Right, I just updated the code and everything seems to be passing now.
I will make some side-to-side comparison tomorrow to check whether our 0.03 coefficient needs some tweaking.

0.03 seems to be pretty good for me.
BTW, could anyone review https://github.com/flutter/platform_tests/pull/12?

Whoops, I accidentally merged instead of rebasing, but all checks passed nevertheless.


timed_render_template: message fix

Change log message to remain correct if triggered by zipkin is_sampled.

I considered that, but didn't want to make the log message function basically need to duplicate the logic of the condition callable...


Refactor: implementation for starts with dot

What I did
Refactor

Reduced nesting depth
The code was introduced by #542

What I've tested
Passes all tests

Ready to be reviewed.
@yhara
Plz review when you have time :>


[BUG] +workspace-buffer-list doesn't order buffers by recency

What did you expect to happen?
The documentation of +workspace-buffer-list claims that
The buffer list is ordered by recency (same as `buffer-list').

So one would expect that it is ordered by most recently accessed time.
What actually happened?
+workspace-buffer-list seems to be ordered by opening time, where the last opened buffer comes first.

I've removed the line in its docstring in 9fce4d5. I cannot guarantee it's the load order buffers are stored in for perspectives, so I won't make those claims. Thanks for bringing it to my attention!


Autocompletion via tab not working: "Command not found"

Description
Autocompletion with tab seems to be not functioning in my install due to a set of 'command not found errors'
Expected behavior
'ls ' should return a list of all the files/directories in the current directory
Actual behavior
'ls ' is showing the following error:
_normal:40: command not found: _dispatch
_normal:38: command not found: _set_command
(usually showing multiples of these, depending on how much I'm trying to expand)
Steps to Reproduce

type 'ls'
hit the tab key

Versions

Prezto commit: 1f4601e44c  (Mar 17 2019 commit by Chris Ewald)
ZSH version: 5.7.1
OS information: Debian 9 Testing (bionic)

Closing issue, as a very old mailing list entry I came across mentioned deleting .zcompdump which resolved the problem.  Nothing to see here, move along...

Glad you got this figured out. Thanks for following up!


Release to crates.io

We can't publish celestia to https://crates.io until all of its dependencies have been as well, and this includes nmt-rs.

Hey, sorry to interrupt. I guess when you mean celestia, it is about your celestia-adapter for sovereign-sdk.
Would you reconsider renaming it before to reflect the fact that it's an adapter? At @eigerco we're developing the celestia node and thus we hoped we could have celestia name for it's CLI, like the go version does

Hey @zvolin, no problem. I wasn't aware of the potential name conflict. Consider celestia yours, we'll switch to sov-celestia-adapter.

Thanks @neysofu!

hey, do you still plan to publish? we're considering publishing our crates and we also depend on nmt-rs

ah by the way our publish to crates.io is also a blocker for you to publish sov-celestia-adapter :thinking:

Hey, we didn't have an immediate need for it so we just postponed the release. I'll make sure we get the release out within this week, I'll ping you here when it's ready!
You folks can then release celestia-node-rs crates and sov-celestia-adapter will also be unblocked. 🙂

Here it is: https://crates.io/crates/nmt-rs


Frequent 404s with MFA login

I'm not sure what Monarch's API rate limits are, but I'm getting frequent 404's on login:
Traceback (most recent call last):
  File "/var/lib/homebridge/monarch.py", line 26, in <module>
    asyncio.run(main(), debug=True)
  File "/usr/lib/python3.9/asyncio/runners.py", line 44, in run
    return loop.run_until_complete(main)
  File "/usr/lib/python3.9/asyncio/base_events.py", line 642, in run_until_complete
    return future.result()
  File "/var/lib/homebridge/monarch.py", line 14, in main
    await mm.login(
  File "/home/pi/.local/lib/python3.9/site-packages/monarchmoney/monarchmoney.py", line 108, in login
    await self._login_user(email, password, mfa_secret_key)
  File "/home/pi/.local/lib/python3.9/site-packages/monarchmoney/monarchmoney.py", line 768, in _login_user
    raise LoginFailedException(
monarchmoney.monarchmoney.LoginFailedException: HTTP Code 404: Not Found

I'm speculating that this is hitting some sort of rate limit, but I am not sure if that's actually what's happening. Regardless, handling this more gracefully would be nice, or at least documenting the default API rate limits.
Code I used:
import asyncio

from monarchmoney import MonarchMoney

with open("monarch-creds.json", "r") as f:
    creds = json.load(f)

async def main():
    mm = MonarchMoney()

    await mm.login(
        email=creds["email"],
        password=creds["password"],
        save_session=False,
        use_saved_session=False,
        mfa_secret_key=creds["mfa_secret_key"],
    )

asyncio.run(main(), debug=True)

Thanks, @guillochon !  If you have a sense of what the rate limits might be, we can update the docs.  I, personally, haven't encountered this.
And, if there's a specific type of transaction or data set you're trying to get and can share, there might be a more efficient way to retrieve it, which we can add to the API.

I've found that just the login code above is enough to get the 404s, if I run it frequently enough (roughly a few times in a minute). If someone else could try and reproduce on their end maybe we can figure out exactly what the login limit is.

Ah, ok, that makes sense.
You shouldn’t need to keep calling login.  Once in a session should do it.
If you are calling this programmatically, recommend using save_session() to
persist the token details. Provided the pickle file is where the class
expects it, subsequent calls to login() won’t actually hit the API and you
can go straight to other API calls to fetch data.
I use an approach like this in an AWS Lambda and it works without issue.
On Wed, Nov 22, 2023 at 18:13 James Guillochon @.***>
wrote:

I've found that just the login code above is enough to get the 404s, if I
run it frequently enough (roughly a few times in a minute). If someone else
could try and reproduce on their end maybe we can figure out exactly what
the login limit is.
—
Reply to this email directly, view it on GitHub
https://github.com/hammem/monarchmoney/issues/45#issuecomment-1823615438,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAICHMVQB6CVYPJLF6OKSNDYF2BLFAVCNFSM6AAAAAA7TKWQUCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRTGYYTKNBTHA
.
You are receiving this because you commented.Message ID:
@.***>

How long do the tokens typically last before they need to be re-acquired?

They seem to be good for a really long time.  I've had them last for months, but I haven't looked to see if a precise time span can be determined.

OK great, I think the session stuff is undocumented so it'd prolly be a good idea to add that to the readme at some point, but I'm going to close this since it's not urgent.


call 'rbenv rehash' automatically after each 'gem install'

The next release of rbenv will have this feature: #638. It's already in the master branch.


[C++] Update t-digest implementation

Describe the enhancement requested
It seems the author has made recent changes to the algorithm:
https://github.com/tdunning/t-digest#recent-news
We should perhaps pick up these changes, or some of them, and port them to our implementation.
Component(s)
C++

cc @cyb70289


Non-blocking check for stop in notifier and some semantic stuff accessing inotify.

The pull makes three important changes:

Non-blocking check for the @stop flag.

IO#select / Native#poll (depending on ruby_support_io?) are called in a loop with a 1 second timeout prior to making the blocking IO#readpartial / Native#read call.  Upon timeout the @stop flag is checked.  Should the  flag be set the method returns nil otherwise the loop continues and another call to IO#select / Native#poll is made.

:name was added to the Native::Event struct and used accordingly in the Event class.
The size when reading the inotify file descriptor is now based on a call to Native#fpathconf which accesses the running systems NAME_MAX system variable rather than arbitrarily using 64 * Native::Event.size.

Can you please rebase this on master and In will review.

I've reviewed this PR.
Unfortuantely
fix_encoding(@native[:name].to_ptr.read_string())

doesn't work as the ptr is 0 length.
Using fpathconf is a good idea and I've merged that.
Using poll is probably beyond the scope of this gem at this point in time, but an interesting idea.


Add a package-lock.json to source control

Related: https://github.com/svg/svgo/issues/734

Lockfile is committed.


Bug: WithPropsOnChange accesses prevProps on prevState

Thanks for the great release of 0.0.27!
However, with the recent release of 0.0.27 we started using the improved lifecycle methods of React. I noticed a possible regression in introducing them in withPropsOnChange.
https://github.com/acdlite/recompose/blob/936e49fbfd3a70f1beedc2578c39dbdabcf8ef99/src/packages/recompose/withPropsOnChange.js#L25-L30
I wonder how prevProps can exist on prevState. Furthermore, how it's meant to work in conjunction with the propsMapper
https://github.com/acdlite/recompose/blob/936e49fbfd3a70f1beedc2578c39dbdabcf8ef99/src/packages/recompose/withPropsOnChange.js#L13-L17
getDerivedStateFromProps will not have access to this in that it's a static method. As a result we should not be able to access the prevProps at all.

About what bug are you talking? Can you reproduce it? Be sure we have tests on every enhancer in the library.
So every time this line https://github.com/acdlite/recompose/blob/936e49fbfd3a70f1beedc2578c39dbdabcf8ef99/src/packages/recompose/withPropsOnChange.js#L26 is true we update prevProps in a state.
And I know that it's slightly different from previous behaviour where we used real latest prepProps but I think that no one will be affected. If there will be issues I'll add return {prevProps: nextProps} into this line https://github.com/acdlite/recompose/blob/936e49fbfd3a70f1beedc2578c39dbdabcf8ef99/src/packages/recompose/withPropsOnChange.js#L33
As an example what worked before and will work not same now.
withPropsOnChange(({a}, {a: b} ) =>  a - b > 1, () => console.log(1));

before, if a increased by +1 each time, this will not be called on update
now it will be called on second update.
If this somehow affects you I'll change this to previous behaviour.
BTW current looks more right to me - as we recalculating something only if state of previous calculation has changed.

Sorry for the too vague description of a potential but. The facts that prevProps is accessed from prevState looked stange to me. It‘s where our app „crashes“ with an exception that prevProps does not exist on prevState.
I will have a more indepth look at both recompose and our application code. I will try to deduct a mininal repro case in eg a CodeSandbox.
Thanks a lot for the quick response.

My feeling by debugging the withPropsOnChange is that we should return return { prevProps: nextProps }. Otherwise prevState can be null and hence prevState.prevProps fails as we try to access prevProps on null.
I looked at the tests and they seem to cover it somehow or at least not catch it.

please provide an example ;-) as returning null we just say to React to not update state.
see React docs
getDerivedStateFromProps is invoked after a component is instantiated as well as when it receives new props. It should return an object to update state, or null to indicate that the new props do not require any state updates.

So lets check here
https://codesandbox.io/s/o9v4xzj4lq
is an example with always false and all seems like fine React 16.3.x
As I see all is fine

Here is https://codesandbox.io/s/z57v4009p is React 15.x all is fine

I also failed to have a deduced repo case on a CodeSandbox where everything seems to be always fine.
I will investigate the our application and use next week to see what causes the error. I will close the issue in the meantime until I have plausible proof.
Thanks again for the help and quick feedback!


Fixed #32798 -- Fixed ASGIHandler to run response iterators in sync context

This is a simplified version of PR #14526. It's slower, but simple enough that it's easy to verify.

Did some testing, and found a little problem.
My use-case is to create a large zip file on the fly and send it to the client without crashing Django due to running out of memory. On WSGI this was never an issue but with ASGI, StreamingHttpResponse was not having it. This PR did fix the issue, but if the client cancels the download request, ASGI handler would crash and lock up Django entirely.
Using the other PR mentioned here, everything works as intended.
This PR is indeed slower, but uses less memory. The other PR is roughly twice faster, but consumes a lot more memory. Like 1GB more. My testcase includes sending 2.4GB of files

Hi @T-101 — thanks for having a look.
See https://code.djangoproject.com/ticket/33735#comment:8 on the related ticket-33735 for a summary of the situation.  If you wanted to pick up adding __aiter__ to StreamingHttpResponse along those lines that would be amazing.
I think I'll close this PR now (and ticket-32798) to focus on ticket-33735.


Feature request: subcommand to lint format of Cargo file

subcommand to lint format of Cargo file
and an option for all commands to fail early if format is invalid
I have not found an actual usecase to justify this
but have been learning rust and maybe this will be useful for noobs to double-check
the smallest valid Cargo.toml file is
[package]

name = "hello_world"
version = "0.0.1"
authors = [ "name<EMAIL_ADDRESS>]

now let us say we leave out the name.
cargo build will throw an error
failed to parse manifest at `/src/hello-rust/Cargo.toml`

Caused by:
  expected a value of type `string` for the key `package.name`

will throw a warning for unused keys as well
[package]

name = "hello_world"
version = "0.0.1"
users = [ "name<EMAIL_ADDRESS>]

warning "unused manifest key: package.users"
but exit status is zero and everything works
also no error is thrown for an unused section. example:
[package]

name = "hello_world"
version = "0.0.1"
authors = [ "Deepak Kannan<EMAIL_ADDRESS>]

[dependency]

should have been dependencies rather than dependency above
PS: I have been using cargo build for all these examples.
but am not sure, if the config is checked for unused params by each sub-command

Sounds plausible to me! Right now we definitely don't indicate via the exit code anything about warnings, but we do so for errors! I'd be fine adding a dedicated command the specifically checked the syntax with perhaps more helpful error messages and more info communicated in the error code.

#12115 will unblock cargo having lint levels which would allow failing on different warnings

I would really love this option. As a maintainer of a big open source repository, PRs often get merged that introduce Cargo warnings like the one stated in this post. It's very annoying to have to go back and fix the issues each time. I'd like to be able to configure my CI to fail on Cargo warnings.

Lost track of this issue.  We ended up creating #12235 which has more discussion, so I'm closing in favor of that other issue.


Support CSS scroll-snap-type for cdk/virtual-scroll

What is the expected behavior?
Setting CSS scroll-snap-type: both mandatory; should enable scroll snapping.
What is the current behavior?
No scroll snapping ever happens.
What are the steps to reproduce?
https://stackblitz.com/angular/dnnjdjbpaaag?file=app%2Fcdk-virtual-scroll-horizontal-example.css
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
"@angular/cdk": "7.3.7",
"@angular/core": "7.2.15",
"typescript": "~3.1.1"
Browsers: all
Is there anything else we should know?
Closely related to #14833 but it could be fixed other way too.

@andrewseguin Can I help on this? I suppose the solution would be to either spawn N 1x1px divs scaled accordingly to its data, possibly collapsing those that are out of the screen.

any updates on this issue @Akxe Akxe

@aneeskodappana not really, there are some apis, that might offer better ways to do virtual scrolling, but as of now. There is no way around it

Is there any workaround for this? Would be awesome! Thank you for the project, its a real lifesaver.

The best you can do now is to use *ngFor and the content-visibility: auto; contain-intrinsic-size: height width; combo.

Any updates on the issue? This would be really interesting feature.

Any workaround for supporting this?


System.Data.SqlClient.SqlException: 'Column name 'ID' does not exist in the target table or view.'

Something weird is happening with:
         using (var connection = new SqlConnection(ConnectionString))
            {
                var mappings = new List<BulkInsertMapItem>
                {
                    new BulkInsertMapItem("TransactionID", "TransactionID"),
                    new BulkInsertMapItem("DateCreated", "DateCreated"),
                };

                mergedRows = await connection.BulkMergeAsync<Transaction>(data, mappings: mappings).ConfigureAwait(false);
            }

The call to BulkMergeAsync fails because, according to RepoDB: "Column name 'ID' does not exist in the target table or view".
But the ID field (primary key, identity) is available in the Transaction class:
[Map("[dbo].[Transactions]")]
    public class Transaction
    {
        [Primary, Identity, Map("ID")]
        public long ID { get; set; }

        public long TransactionID { get; set; }

        public DateTime DateCreated { get; set; }

and in the database itself:

This exception was originally thrown at this call stack:
System.Data.SqlClient.SqlConnection.OnError(System.Data.SqlClient.SqlException, bool, System.Action<System.Action>)
System.Data.SqlClient.SqlInternalConnection.OnError(System.Data.SqlClient.SqlException, bool, System.Action<System.Action>)
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(System.Data.SqlClient.TdsParserStateObject, bool, bool)
System.Data.SqlClient.TdsParser.TryRun(System.Data.SqlClient.RunBehavior, System.Data.SqlClient.SqlCommand, System.Data.SqlClient.SqlDataReader, System.Data.SqlClient.BulkCopySimpleResultSet, System.Data.SqlClient.TdsParserStateObject, out bool)
System.Data.SqlClient.SqlCommand.InternalEndExecuteNonQuery(System.IAsyncResult, string, bool)
System.Data.SqlClient.SqlCommand.EndExecuteNonQueryInternal(System.IAsyncResult)
System.Data.SqlClient.SqlCommand.EndExecuteNonQueryAsync(System.IAsyncResult)
System.Threading.Tasks.TaskFactory.FromAsyncCoreLogic(System.IAsyncResult, System.Func<System.IAsyncResult, TResult>, System.Action<System.IAsyncResult>, System.Threading.Tasks.Task, bool) in FutureFactory.cs
System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(System.Threading.Tasks.Task) in TaskAwaiter.cs
System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(System.Threading.Tasks.Task) in TaskAwaiter.cs
...
[Call Stack Truncated]

Hey, would you be able to share your table schema as well? TY

Thank you for reporting this issue. We have replicated this internally using the RepoDb v1.12.5-beta3 and RepoDb.SqlServer.BulkOperations v1.1.2-beta2.
Schema:
USE [DemoRepoDB]
GO

/****** Object:  Table [dbo].[Transactions]    Script Date: 12/1/2020 10:15:14 PM ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

CREATE TABLE [dbo].[Transactions](
	[Id] [bigint] IDENTITY(1,1) NOT NULL,
	[TransactionId] [bigint] NOT NULL,
	[DateCreated] [datetime] NOT NULL,
 CONSTRAINT [PK_Transactions] PRIMARY KEY CLUSTERED
(
	[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO

Models:
using RepoDb.Attributes;
using System;

namespace BulkInsertWithMappingTest.Models
{
    [Map("[dbo].[Transactions]")]
    public class Transaction
    {
        [Primary, Identity, Map("ID")]
        public long ID { get; set; }

        public long TransactionID { get; set; }

        public DateTime DateCreated { get; set; }
    }
}

Main:
using BulkInsertWithMappingTest.Models;
using Microsoft.Data.SqlClient;
using RepoDb;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;

namespace BulkInsertWithMappingTest
{
    class Program
    {
        static void Main(string[] args)
        {
            SqlServerBootstrap.Initialize();
            Test().Wait();
            Console.ReadLine();
        }

        static async Task Test()
        {
            using (var connection = new SqlConnection("Server=.;Database=DemoRepoDB;Integrated Security=SSPI;"))
            {
                var mappings = new List<BulkInsertMapItem>
                {
                    new BulkInsertMapItem("TransactionId", "TransactionId"),
                    new BulkInsertMapItem("DateCreated", "DateCreated"),
                };
                var data = new List<Transaction>
                {
                    new Transaction { TransactionID=1, DateCreated=DateTime.UtcNow },
                    new Transaction { TransactionID=2, DateCreated=DateTime.UtcNow },
                    new Transaction { TransactionID=3, DateCreated=DateTime.UtcNow },
                };
                var mergedRows = await connection.BulkMergeAsync<Transaction>(data, mappings: mappings).ConfigureAwait(false);
                Console.WriteLine($"Merged rows = {mergedRows}");
            }
        }
    }
}

Though, as per our investigation, the correct way of fixing it is to always add all the properties of the model/entity when defining the mappings. This issue exists because the model/entity has many properties and the defined target columns in the table are only 2, it is because of the mappings you defined.
We will handle this internally so it would be a seamless experience from the users, but while waiting for the fix, please use that as an alternative fix for your case.

The fix is now available at RepoDb.SqlServer.BulkOperations v1.1.2-beta3.

Closing this ticket now.

I confirm that v1.1.2-beta3 solves this issue.
Thanks!


querySelector with :scope

Internet Explorer 11 and lower with  querySelector(":scope ...") gives error
Do you have alternatives for it, or its not supported ?

What error do you get? What exactly are you trying to do?
I'd also say polyfilling :scope for IE11 and below is quite far-fetched, since it doesn't work yet in evergreens too (while the styles are getting parsed, they are being applied to :root).

IE11 gives, SCRIPT5022: SyntaxError.
I try to get child nodes of a node.
I already pollyfilled by myself.  If selector text starts with ":scope" then add class "scope-hack" before querySelector and remove class after it. 100% working example.

@CemDemirkartal What you suggest is not a polyfill as that is not how :scope is intended to work according to the specification. Your suggestion would cause bugs in web applications as a node may have the class scope-hack on it.
Here is a polyfill we could use, made by @jonathantneal (He writes lots of really good polyfills!) -- https://www.npmjs.com/package/element-qsa-scope

The thing which you suggest adds ID if there is no ID, I gave a class example with "scope-hack" class as a sample, it doesnt need to be in same name which you use.
I didn't suggest this "polyfill-service" to add it. I gave an example and I got this trick from AMP project, they use "i-amphtml-scoped" class.

@CemDemirkartal, @JakeChampion, element-qsa-scope runs tests against many browsers including Internet Explorer 8-11. I’d be honored to have a polyfill added to this service.
https://app.crossbrowsertesting.com/screenshots/2361154?type=windowed&size=medium
@CemDemirkartal, the polyfill only activates if your selector contains :scope, and the temporary ID is only added if none exists, and in those cases it is immediately removed before the collection has been returned. It also knows the difference between an element with no id and an element with an empty ID, and preserves both cases. This is why it’s not just a one liner and adds up to about 628 bytes or ~307 bytes gzipped, not that most people even care about sizes under 1 kb these days. Anyway, if you find any bugs, I’d love it if you opened an issue with the repo.

@jonathantneal sorry for the very late response. I see that the element-qsa-scope polyfill has stated IE support is 8 - 11, have you tested it on IE 7 at all? I only ask because we still support IE7 with our current query selector polyfill and wouldn't be able to drop support without it being a breaking change.

@jonathantneal Excellent! If you could provide a version without the in-built feature detection that would be really helpful and mean we can pull in your polyfill directly from npm. :-)

@JakeChampion, that’s great. Quick followups; can I provide a test-less version that isn’t the main reference in my package.json? And then, will I need the test-less version to already be ES5 compat, or do you run babel over things on your end?
I’ll try to get an update pushed today.

@jonathantneal It doesn't need to be listed as the main file, we can pull any file from the npm package :-) It is preferable to have it authored in ES5/ES3 syntax to avoid the need for any on the fly babel compiling.


Would like line numbers in AOT builds

This request comes from customer:fast.  They're getting crash logs from their production app (via package:logging) but no line numbers in --release builds.  If possible, they would like line numbers.
Possible?  @a-siva @zanderso?

b/33054420 is an example report missing line numbers.

This presumably would come at a cost. Isn't the whole point of release mode to not pay that cost?

Possibly.  Just trying to understand whether this is intentional omission or a bug or a configuration option or what.

I'm pretty sure it's intentional but I would love to hear confirmation from someone on the Dart team.

This is intentional. AOT builds remove the metadata that is normally used to include line numbers to reduce the size of the app. Note also that stack traces in AOT lack frames for inlined methods.

I think we should WONTFIX this, or punt it to post-1.0, where we would implement this as an optional new feature of build/run --release which includes the data needed for stack traces.

This was done, but in a way regressed our size benchmarks significantly. We are tracking further work at https://github.com/dart-lang/sdk/issues/28785.


ZIO with contextual effects

you guys... breaking everything I've built so far and not making me feel bad about it...

I asked the following question in the meetup tonight

Is it possible to partially provide environment? Like R1 => ZIO[R1 with R2, E, A] => ZIO[R2, E, A]

Now thinking about using HLists instead of intersection types. R1 => ZIO[R1 :: R2 :: HNil, E, A] => ZIO[R1 :: HNil, E, A] should be possible, what do you think? 🤔

It would be great to provide additional documentation for the microsite.
ZIO is no longer immediately "familiar" and I feel the improvements in this PR require additional information. The standard IO[A] most people are familiar with. IO[E, A] was easily explained. The concept of the environment here is not as intuitive.

Additionally, I fear this introduces the ambiguity of when one says "zio"/"ZIO" they mean the library or the datatype in that library.  I caught myself today saying "scalaz-zio's ZIO datatype" which is a mouthful.  Maybe I should've said "scalaz's ZIO datatype", which is defined in the scalaz-zio foundation library.

Killing it 👍
I'll give a review this weekend.

I asked the following question in the meetup tonight

Is it possible to partially provide environment? Like R1 => ZIO[R1 with R2, E, A] => ZIO[R2, E, A]

Now thinking about using HLists instead of intersection types. R1 => ZIO[R1 :: R2 :: HNil, E, A] => ZIO[R1 :: HNil, E, A] should be possible, what do you think? thinking

@tabdulradi We would lose type inference and incur a severe dispatch performance penalty. What you want should be trivial in dotty when we have proper intersection types.

@tabdulradi Should be possible! 💡 ZIO itself makes no requirements on environmental subtyping, but subtyping is supported if you want to use it (via auto-widening in flatMap).
Also some really interesting things become possible with higher-kinded R.
This is an area of active exploration in Scala... 🔎

There's some good feedback here. Since this has already had 3 full reviews prior to opening and several more since then, I'm going to go ahead and merge, and address minor cleanup and major documentation in followup PRs.

@wi101 and @jdegoes Thanks for all your efforts.
I'm very eager to read your documentation.

@tabdulradi That will likely require macros. I've seen people try to construct A with B given an A and a B, but never seen success.


Using HTTP with Istio (envoy proxy) results in 400 bad request

I'm deploying a .NET Core application inside a Kubernetes cluster which also has Istio installed.
I'm using both DynamoDB and S3 clients and I switched to HTTP endpoints (with UseHttp = true) in order to have the requests automatically traced by Jaeger.
What's is happening is that every requests results in 400 bad request with the following exception message: The request signature we calculated does not match the signature you provided. Check your key and signing method.

For the record, this article describe my issue and a workaround implemented for the Go SDK https://blog.aspenmesh.io/blog/2018/01/distributed-tracing-with-istio-in-aws/

Hi @emmekappa, we are not currently providing support for trouble integrating with third parties.  It sounds like this is the case with this issue.  Please correct me if you think it is a bug in the SDK.
Presigned urls may help you.

@klaytaybai no, I'm sure it's not a bug of the SDK, I've been able to fix the issue by swapping the AWS4Signer avoiding the signature of few headers.
Even though it's not a bug of the SDK I think that it would be handy to have an AWS4Signer ctor overload that allows to specify what HTTP headers should be skipped while signing the request.
Because otherwise the implementation of the AWS4Signer subclass is quite clunky :)
    public class AWS4SignerWithoutEnvoyHeaders : AWS4Signer
    {
        private readonly string[] headersToRemove =
        {
            "user-agent",
            "server",
            "x-client-trace-id",
            "x-envoy-downstream-service-cluster",
            "x-envoy-downstream-service-node",
            "x-envoy-external-address",
            "x-envoy-force-trace",
            "x-envoy-internal",
            "x-envoy-original-dst-host",
            "x-forwarded-client-cert",
            "x-forwarded-for",
            "x-forwarded-proto",
            "x-request-id",
            "x-ot-span-context",
            "x-b3-traceid",
            "x-b3-spanid",
            "x-b3-parentspanid",
            "x-b3-sampled",
            "x-b3-flags",
            "b3",
            "x-datadog-trace-id",
            "x-datadog-parent-id",
            "x-datadog-sampling-priority"
        };

        public override void Sign(IRequest request, IClientConfig clientConfig, RequestMetrics metrics,
            string awsAccessKeyId,
            string awsSecretAccessKey)
        {
            var originalHeaders = new Dictionary<string, string>(request.Headers, StringComparer.InvariantCultureIgnoreCase);
            foreach (var headerToRemove in headersToRemove)
                request.Headers.Remove(headerToRemove);

            AWS4SigningResult awS4SigningResult =
                SignRequest(request, clientConfig, metrics, awsAccessKeyId, awsSecretAccessKey);
            request.Headers["Authorization"] = awS4SigningResult.ForAuthorizationHeader;

            foreach (var headerToRemove in headersToRemove)
            {
                if (originalHeaders.ContainsKey(headerToRemove))
                    request.Headers[headerToRemove] = originalHeaders[headerToRemove];
            }
        }
    }

Also... S3Signer would require a different implementation since I still got 400 while putting objects on S3


Pinterest extractor

Checklist

[x] I'm reporting a broken site support
[x] I've verified that I'm running youtube-dl version 2021.12.17
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[x] I've searched the bugtracker for similar issues including closed ones

Verbose log

[generic] 2r6NwmM: Requesting header
[redirect] Following redirect to https://www.pinterest.com/pin/37717715606719562/sent/?invite_code=e66fb34a61ef4d0b8770cbffd265f6ec&sender=682577024681855844&sfo=1
[Pinterest]<PHONE_NUMBER>6719562: Download Pin JSON metadata
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', 'https://pin.it/2r6NwmM']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.8.10 (CPython) - Linux-5.11.0-1022-azure-x86_64-with-glibc2.29
[debug] exe versions: ffmpeg 4.2.4, ffprobe 4.2.4
[debug] Proxy map: {}
Traceback (most recent call last):
  File "/home/Blackmax/.local/bin/youtube-dl", line 8, in <module>
    sys.exit(main())
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/__init__.py", line 475, in main
    _real_main(argv)
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/__init__.py", line 465, in _real_main
    retcode = ydl.download(all_urls)
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 2068, in download
    res = self.extract_info(
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 808, in extract_info
    return self.__extract_info(url, ie, download, extra_info, process)
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 847, in __extract_info
    return self.process_ie_result(ie_result, download, extra_info)
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 885, in process_ie_result
    return self.extract_info(ie_result['url'],
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 808, in extract_info
    return self.__extract_info(url, ie, download, extra_info, process)
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/YoutubeDL.py", line 836, in __extract_info
    ie_result = ie.extract(url)
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/extractor/common.py", line 534, in extract
    ie_result = self._real_extract(url)
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/extractor/pinterest.py", line 141, in _real_extract
    return self._extract_video(data)
  File "/home/Blackmax/.local/lib/python3.8/site-packages/youtube_dl/extractor/pinterest.py", line 38, in _extract_video
    for format_id, format_dict in data['videos']['video_list'].items():
TypeError: 'NoneType' object is not subscriptable

Description

I have tried with pip version as well as from source, and this error was raised in both build.
How to reproduce?
youtube-dl https://pin.it/2r6NwmM

When the metadata for pin id<PHONE_NUMBER>6719562, to which the problem URL redirects, is fetched, there are these critical items that show why yt-dl can't find any media:
  u'videos': None,
  u'is_video': False,

The extractor should test that the first value is not None before trying to extract a video so that it reports like this, instead of a type error:
[Pinterest]<PHONE_NUMBER>6719562: Download Pin JSON metadata
ERROR: No video formats found!; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.


TypeError: Text.search() got multiple values for argument 'stopindex'

Problem Statement:
Hi! I found a TypeError in line 202 while running your file.
Solution:
Replacing line 202 with start = editor.search(tag, start, END, nocase=1) will make it work 👍

Thank you for the feedback ! It is fixed now.


Support install on Debian Testing

See: https://github.com/brianshumate/ansible-consul/pull/261

Thanks!


Unify file handling for local and remote transports (#189)

Local and remote transports expose different file interfaces. This
is because local transport uses LinuxFile with some methods
overriden with Ruby's File calls whereas remote transport uses
the appropriate file classes from Train::Extras. This causes
problems when users are running locally on Windows because some
LinuxFile implementations are not appropriate there.
There are two potential compat breaks with this change:

pw_username is no longer provided for local transport
pw_groupname is no longer provided for local transport

These are not available for remote transport, so this doesn't
seem like it should be a problem for clients.
Fixes #189

Thank you @tpcwang for providing this PR. It highlights an issue that we have with train on Windows.pw_username and pw_groupname are private functions and are not exposed.
I think this PR is going in a great direction. Nevertheless, I believe we should not give up the local implementations too early. It improves the speed if InSpec since we can use the Ruby file implementation instead of using commands to emulate the behavior.
Instead, I propose that we have a local_linux_file.rb  and a local_windows_file.rb that overrides the methods that can be optimized.

Okay. I didn't realize local_file was added for performance reasons. I'll look at this again in the near future. @Vasu1105 if you get to this before I do in #193, I would recommend that you pull in the tests that I have created so that we have better coverage on Windows.

ok @tpcwang

As this has been stale for a long time, and train has grown a great deal in that time, I'm going to go ahead and close this.  Please d re-open if you feel that is best and you have time to contribute.


Inference conditional types while composing

When we have 2 modifiers to compose
type Mod1 = {
  type: 'radio';
  value: string;
};

type Mod2 = {
  type: 'checkbox';
  value: string[];
};

We must have method to give type Mod1 | Mod2 which have type value with string OR array of strings depends on type property.
It very important to avoid cumbersome handlers which not reflection actual types

It's implement in branch with refactor composer, but for release this feature must be optionally.
At this time it's only one possible behavior, it's must not be that


Test machines need to have make v4.1 and above

We need to upgrade test machines to have make to v4.1. Otherwise, the test will fail during make gen:
00:02:32.545  make[3]: Entering directory `/home/jenkins/workspace/Grinder/openjdk-tests/functional/JIT_Test'
00:02:32.545  autoGen.mk:750: *** Malformed target-specific variable definition.  Stop.
00:02:32.545  make[3]: Leaving directory `/home/jenkins/workspace/Grinder/openjdk-tests/functional/JIT_Test'
00:02:32.545  make[2]: *** [compile-JIT_Test] Error 2
00:02:32.545  make[2]: Leaving directory `/home/jenkins/workspace/Grinder/openjdk-tests/functional'
00:02:32.545  make[1]: *** [compile-functional] Error 2
00:02:32.545  make[1]: Leaving directory `/home/jenkins/workspace/Grinder/openjdk-tests'
00:02:32.545  make: *** [compile-..] Error 2

https://ci.adoptopenjdk.net/view/Test_grinder/job/Grinder/1962/console
machine: https://ci.adoptopenjdk.net/computer/test-godaddy-centos7-x64-4/

Hmmm they ought to have 4.1 available since the playbooks do attempt to install it on Centos 7 as visible in https://ci.adoptopenjdk.net/job/sxa-PlaybookCheckParallel/OS=CentOS7,label=infra-vagrant-1/3/consoleText ... @willsparker Can you take a look on a machine set up with the Centos7 playbook and run /usr/bin/make --version and /usr/local/bin/make -version

/usr/bin/make --version output with this:
GNU Make 3.82
Built for x86_64-redhat-linux-gnu
Copyright (C) 2010  Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

/usr/local/bin/make -version output with:
GNU Make 4.1
Built for x86_64-unknown-linux-gnu
Copyright (C) 1988-2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

I think it says Built for x86_64-unknown-linux-gnu because I didn't run the whole playbook.

Looks like the playbooks haven't been executed on these machines as /usr/local/bin/make is not present and the standard make is 3.82 - assigning to George
Related: https://github.com/AdoptOpenJDK/openjdk-infrastructure/issues/839 https://github.com/AdoptOpenJDK/openjdk-infrastructure/issues/894 and maybe https://github.com/AdoptOpenJDK/openjdk-infrastructure/issues/721

I have disabled test-godaddy-centos7-x64-4 and test-godaddy-centos7-x64-1 (with a note that links to this issue) as we keep hitting this issue (it is likely that 2 & 3 are same, just have not had time to check so will leave them enabled until functional tests land on them and we see it).

test-godaddy-centos7-x64-3 also has make issue:
https://ci.adoptopenjdk.net/view/Test_grinder/job/Grinder/901/console
14:17:09  make[3]: Entering directory `/home/jenkins/workspace/Grinder@2/openjdk-tests/functional/JIT_Test'
14:17:09  autoGen.mk:750: *** Malformed target-specific variable definition.  Stop.

This issue is causing failures that are seen in the release build candidates - we should either fix or I should re-disable these machines.

I've run the goodmake_source tag on test-godaddy-centos7-x64-* machines.
[root@test-godaddy-centos7-x64-1 ~]# make --version
GNU Make 4.1
Built for x86_64-unknown-linux-gnu
Copyright (C) 1988-2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Were there any more than needed it on?

Okay, been through all linux machines with the goodmake_source role, they're all at make 4.1 or above- closing issue


Login after registration directly

Currently email verification is done using a link sent by email. So users will need to click that first and then sign in.


Docker fix

Description
Slight modifications to code to allow for
docker compose up
to work properly.
Fixes # (issue)

requirements
Dockerfile
app.py
setup.py

Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)

Checklist:
Please put an x in the boxes that apply. You can also fill these out after creating the PR.

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[Y] My changes generate no new warnings
[X] I have added tests that prove my fix is effective or that my feature works
[N] I have tested this code locally, and it is working as intended
[N] I have updated the documentation accordingly

Screenshots
If applicable, add screenshots to help explain your changes.
Docker environment and image build works fine,
running the container i get this error:
File "/app/app.py", line 15, in  lollms-webui-1 | from fastapi.middleware.cors import CORSMiddleware lollms-webui-1 | ModuleNotFoundError: No module named 'fastapi'
Referring to line 15 of app.py where its trying to use a fastapi import without importing fastapi.
The wierd thing is that I updated the code to remove that yet it is still there..
@ParisNeo can you please test this and let me know if it works on your end or if there's something we have to do to update the lollms_webui package from 5.0.2 to 5.0.3 to have the updated code in the package that is being pulled in the docker compose.

@ParisNeo let's have a discussion about the codebase and the challenges users are facing, how to address them, and how I can help improve the codebase.
I need this solution to be in working order for me to be able to accomplish my vision of how I want AI to interact.
let's schedule an hour long call to do a deep dive and work through this stuff so we can:

Simplify setup: get a working codebase with docker compose working out of the box
Correct configurations: Have working configs for vector db, internet search, and other reliant services out of the box baked into the docker compose.
Fix personalities: Get a working set of personalities that actually are useful. there's a lot of garbage in the personality zoo that needs to be cleaned up
Expand functionality: Discuss future of lollms and integrations that will change how we interact with computers and AI, making lollms the frontier in LLM management and design.


Finalize DG diagrams and reduce manual testing section

Codecov Report

Merging #247 (84a2c94) into master (f3912df) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #247   +/-   ##
=========================================
  Coverage     75.57%   75.57%
  Complexity      863      863
=========================================
  Files           110      110
  Lines          2448     2448
  Branches        310      310
=========================================
  Hits           1850     1850
  Misses          507      507
  Partials         91       91

Continue to review full report at Codecov.

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


Should var_dump_plain() be a protected method?

var_dump_plain() is not listed in the documentation, and it seems to just be a worker for var_dump(). Should it be a protected method?
Also, I cannot easily use PHP's internal var_dump() with Postman for debugging REST responses, because when xdebug is installed, var_dump() returns HTML output. I could actually really use a HTML-stripped var_dump(), which var_dump_plain() sounds like it should provide.

var_dump_plain() should definitely be a protected method. Also, despite the name, it generates HTML not plain text. I could probably convert my existing code to generate plain text pretty easily, to act as a plain var_dump() in environments where it's not available because of xdebug.

Fixed via 7a1bf5d0ff000f362eb8f1369bf23b570f7c2bbf


gifski is making gif in black and white and scrambled after installing avisynth for webm?

I installed avisynth so i could make webms and then went back into screentogif to make with gifski and noticed the gifs were all in black and white and kind of scrambled like an old black and white television  fuzz. I uninstalled avisynth and reinstalled screentogif but the problem remains https://imgur.com/a/7n5uR5C <link to how it is making gif look. It looks all scanlined.
I deleted gifski and reinstalled and not it seems to working. Weird.

I'm not sure if avisynth has anything to do with Gifski...
Can you share the project (.stg or .zip) of that gif with me?

I'm not sure if avisynth has anything to do with Gifski...
Can you share the project (.stg or .zip) of that gif with me?

how do I share what's the .stg or.zip also I updated and now it is doing it again when using gifski

Open the project (which when exporting as gif with Gifski, is getting that problem) and export as Project (.stg or .zip).
Then upload it in here.

btw when I update screento gif gifski stops working again and then when I delete gifski dl and redownload it works
test.zip

You sent me a project of the output gif, with scan lines.
I want the original, without scanlines.

Don't have at the moment if this starts up again I'll remember to save it and send it to you.

Are you still experiencing this issue?


Migrate ViewComponent::Base.format to return a format instead of the variant

This is related to the HTML escaping conversations, but we should use the format method to correctly indicate the type of content that the component is generating, especially since that may be utilized by https://github.com/rails/rails/pull/50623.
This is likely a breaking change, but I propose that we:

Stop using variant as the format return value
Implement some reasonable defaults, e.g. default to html for .html.erb, JSON for .jbuilder, etc.
Document format as being overridable when necessary
When implementing the call method without also implementing format, warn that we will default to HTML and escape.

👋 Hello, author of https://github.com/rails/rails/pull/50623 here.
In that PR's current state, I don't think there's any change to the significance of the #render_in object defining a #format method. That method pre-dated that PR, and was actually an implicit requirement of the interface. https://github.com/rails/rails/pull/50622 documented that requirement to be explicit, and also made it optional.

@seanpdoyle 👋 thanks for commenting here too and sharing context!
I imagine we still want to make this change since the current behavior isn't exactly correct, and we'll get some benefits from implementing it. Right now I don't think format is reliable, and I don't imagine it gets much use outside of framework internals so I feel like it's a very small breaking change either way.

@BlakeWilliams @seanpdoyle I believe the request.format method is a more reliable way to get the format. It doesn't Make much sense to me to use a json format for example in an html request


Production release of email blocks

Push email blocks to prod once code review is completed

This is particularly in reference to the new wizard workflow UI. The email blocks are already in prod ;) being used daily by both WC and Paterson

This is merged. I manually released it to staging, walnutcreek and paterson.


Make LLVM in its own recipe

rust takes a painfully long time to build.  A non-trivial part of that
is building LLVM.  Fortuitiously, the LLVM component is common between
the -native compiler and all variants of the -cross compiler.  That
means we can build it once, and reuse the output for any flavor of rust.
That saves build time, and it utilizes bitbake's sstate more
efficiently.  It's win/win!

Any chance I could get some comment on this?  I actually have several more merge requests to make, I just didn't want to bombard you with them all at once :-)

@srwalter I'm testing it right now, it looks good. Should be merged shortly

@srwalter thanks for this. I've build just finished up and looks good. I've added a commit that enables debug symbols in llvm to avoid some complaints about pre-stripping in poky.


Styling the "page loading" spinner

When navigating from one web fragment to another, there is a brief moment when the new page is being loaded, where I see the loading spinner animation. In that window, the background color flashes to either pure white or pure black depending on whether the system is in light or dark mode.
Is there a way to configure the color of the background under that loading animation to make the transitions less jarring?

Nevermind! I figured out I could override createProgressView and call view.setBackgroundColor in there 👍

The comment that we can override createProgressView and call view.setBackgroundColor helped me.
Thank you! 😄


Writing metadata with underscores fail silently

Writing metadata containing _ is ignored without warnings.
More appropriate options would be:

Allow underscores, as they are valid in AWS S3 (.getxattr() can't get them, as it performs a .replace("_", "-"))
Warn or raise an exception
Convert to -

file_bytes = b'My file...'
metadata = {"deviceId": 'LM1', 'device_serial': 'A1234', 'device-name': 'My device'}

fs= S3FileSystem()
fs.pipe_file("bucket/key", file_bytes, Metadata=metadata)

fs.metadata("bucket/key")
>> {'deviceid': 'LM1', 'device-name': 'My device'}

As you can see, the device_serial metadata was not written.
I can confirm this by looking in the S3 bucket or with boto3:
import boto3
s3_client = boto3.client('s3')
s3_client.head_object(Bucket="bucket", Key="key")["Metadata"]
>> {'deviceid': 'LM1', 'device-name': 'My device'}

Can you make PR to allow these keys, if you know how? I assume getxattr would need to be changed.


[json] $ref breaks validation of additionalItems

VSCode Version: 1.31.1
OS Version: macOS 10.14.2

Steps to Reproduce:

Create a JSON-Schema where a $ref is used inside additionalItems

{
  "type": "array",
  "items": [
    {
      "type": "string"
    }
  ],
  "additionalItems": {
    "$ref": "#/definitions/Number"
  },
  "definitions": {
    "Number": {
      "type": "integer"
    }
  }
}

Create a JSON file where the additional items in the array do not conform to the schema

[
  "A string",
  "Definitely not an integer"
]

Set VSCode up to validate the JSON file against the schema

Expected result:
Squiggly lines below the second item in the array.
Actual result:
JSON file passes validation

Does this issue occur when all extensions are disabled?: Yes

Any news about this bug?


[Feature Request] Sync advanced DNS settings

What feature would you like added?
I would like to have orbital sync sync the Advanced DNS settings, specifically the following options:

Version
latest (docker)
Log output
No response

This may be possible with Pi-hole V6 depending on what the RESTful API exposes. Will consider


Switch from ExAcquireRundownProtection to ExAcquireRundownProtectionCacheAware

Windows kernel exposes a cache aware / more scalable rundown protection API for rundown protection.
eBPF for Windows should switch to the cache aware version.

Can you assign it to me? @Alan-Jowett


Running multiple lua scripts at the same time without multi-threading

In my project I would like to implement luau. I want to follow a similar design paradigm to Roblox. By this, I want to create a concept called a Script, which is a container for lua code, that executes at runtime. I want to have multiple scripts able to run at the same time, but still exist within the same cpu thread. Kind of like a green-thread. Roblox solves this with their own scheduler, which halts scripts execution and allows for others to run. This gives the appearance of a multi-threaded application. Is this something that I can easily implement with your library?
My main concern is implementing a task scheduler. Most other lua libraries I see with java implement the Thread using javas' Threads, which means multiple scripts cannot run at the same time without some serious sandboxing/synchronizing to prevent the game state from becoming unstable.

Hey! Sorry for the delayed reply, I didn't notice the issue until now.
I haven't tried this, and am still learning how the library works myself so it's possible I will get some things wrong (I will have to do something similar eventually so can write more after). It is valid to yield from an interrupt, so I believe you could use that mechanic to pause execution after some set wall time, and then resume the thread later (from the same JVM thread).
More generally, this is a light wrapper around luau. The mechanics of the c library are maintained (ie, Lua threads are not mapped to JVM threads in any way unless you do so yourself).


Expose electron version to extension host process

As discussed in https://github.com/Microsoft/vscode-languageserver-node/issues/434 extension should be able to read electron version, vscode bundled with.

VSCode Version: 1.29.0-insider
OS Version: Windows 10

Steps to Reproduce:

Write/generate simple extension
In activate hook inspect process.versions

console.log("process.versions", process.versions);

giving this:

Does this issue occur when all extensions are disabled?: N/A

@jrieken Do you think we'd ever want to expose this to extensions? Shipping binaries in extensions isn't great right now but I don't think giving extensions the electron version is the right fix

Yeah, not sure what the plan actually is but I am also not the biggest fan of this request. Unless there are objections I would fold this in the "support binaries for extensions" request


Graduate Scrollable Object Collection out of experimental

Overview
This issue tracks graduating the scrollable object collection #4724 out of experimental.
To do:

[x] Pressable Buttons never trigger OnPressCompleted #7444

[x] Pressable buttons do not reset their state after input is cancelled (bug #7445)

[x] Scroll engage should stop any content interaction #7446

[x] Scroll View should allow for engage with empty background areas #8068

[x] Allow Scroll view to be manipulated / scaled / rotated. #7451

[x] Verify that grid of buttons can be both scrolled and pressed near and far reliably #7447

[x] Sometimes Scroll position jumps when interacting with Pressable Button. #7448

[x] Scroll Object collection should only engage if touch comes from front of scroll slate #8148

[x] Adding and removing items should work as expected #8064

[x] Allow for area buffer in both front (~3cm) and back of scroll view (~20cm) for pointer movement to avoid loosing scroll engagement #7449

[x] Scroll Object Collection inspector should draw the interaction planes #8208

[x] No Null reference Material errors should be thrown while scrolling a button collection #7963

[x] Scroll should work as expected using GGV and HL1 #7151

[x] Make sure pagination works as expected #7450

[x] Add Documentation #7452

[x] Demo scene should not throw warning or errors #8229

[x] Do not require that scrollable collection is an object collection (instead that the content underneath is scrollable, regardless of if it is in a collection) #7451

[x] If using a collection, allow for variable height objects (e.g. a text field, an image, a button). #7453

[x] Scroll View component should allow scroll clipping area manual resize #7454

[x] Content click should happen on Touch up (Web Browser) #7455

[x] Scroll view should have engagement feedback / focus feedback #7456

consider fixing #6968

in the scrollable object list scene, it would need to have a test that button press event are received. (can currently be aborted by the nearinteractiongrab if moving finger fast (or having low framerate)

What is the progress on graduating this from experimental? I would like to use this with a customer but am hesitant due to its experimental status.
I would add that it would be really great if the scrollable object collection could take on different surface types like the grid object collection, e.g. a cylinder

@derekfreed , @vaoliva is working on graduating and addressing all the issues - we will have an improved version of scrolling object collection for 2.4.0 but full graduation is very likely going to take until 2.5.0

Fixed via #8699


TWC Manager Power available for all TWCs: None, Slave available, but no power

I am trying to get TWCManager working. The data connection works as the slave is found. Switch is set to 'F'.
I have also set up an API to get solar data from effigy engage hub and edited the script as appropriate.
However, this is what I am getting when I connect to my TWCManager:
Power available for all TWCs: None
TWC 9119: No power available.
I appear to get heartbeats, but nothing else happens.
Also, I have a red light slowly flashing on the TWC.
Any assistance would be appreciated.
This is what putty displays..
p_@TWCManager:~ $ python3 TWC/TWCManager.py
load_settings: nonScheduledAmpsMax set to -1
load_settings: scheduledAmpsMax set to -1
load_settings: scheduledAmpsStartHour set to 0.0
load_settings: scheduledAmpsEndHour set to 0.0
load_settings: scheduledAmpsDaysBitmap set to 127
load_settings: hourResumeTrackGreenEnergy set to 0.0
load_settings: kWhDelivered set to 119.0
load_settings: carApiBearerToken set to ****  [DATA DELETED]
load_settings: carApiRefreshToken set to ****  [DATA DELETED]
load_settings: carApiTokenExpireTime set to<PHONE_NUMBER>.0
load_settings: homeLat set to 10000.0
load_settings: homeLon set to 10000.0
TWC Manager starting as fake Master with id 7777 and sign 77
10:08:33: Send master linkready1
Tx@10:08:33: C0 FC E1 77 77 77 00 00 00 00 00 00 00 00 46 C0
10:08:33: Send master linkready1
Tx@10:08:33: C0 FC E1 77 77 77 00 00 00 00 00 00 00 00 46 C0
10:08:33: Send master linkready1
Tx@10:08:33: C0 FC E1 77 77 77 00 00 00 00 00 00 00 00 46 C0
10:08:33: Send master linkready1
Tx@10:08:33: C0 FC E1 77 77 77 00 00 00 00 00 00 00 00 46 C0
10:08:33: Send master linkready1
Tx@10:08:33: C0 FC E1 77 77 77 00 00 00 00 00 00 00 00 46 C0
10:08:33: Send master linkready2
Tx@10:08:33: C0 FB E2 77 77 77 00 00 00 00 00 00 00 00 47 C0
10:08:34: Send master linkready2
Tx@10:08:34: C0 FB E2 77 77 77 00 00 00 00 00 00 00 00 47 C0
10:08:34: Send master linkready2
Tx@10:08:34: C0 FB E2 77 77 77 00 00 00 00 00 00 00 00 47 C0
10:08:34: Send master linkready2
Tx@10:08:34: C0 FB E2 77 77 77 00 00 00 00 00 00 00 00 47 C0
10:08:34: Send master linkready2
Tx@10:08:34: C0 FB E2 77 77 77 00 00 00 00 00 00 00 00 47 C0
Rx@10:08:37: () FD E2 91 19 3D 0C 80 00 00 00 00 00 00 00 00 55
10:08:38: 32.00 amp slave TWC 9119 is ready to link.  Sign: 3D
10:08:38: Set slave TWC 9119 protocolVersion to 2, minAmpsTWCSupports to 6.
  Sign: 3D
Tx@10:08:46: C0 FB E0 77 77 91 19 00 00 00 00 00 00 00 00 00 78 C0
Rx@10:08:46: (FC) FD E2 91 19 3D 0C 80 00 00 00 00 00 00 00 00 55
10:08:46: 32.00 amp slave TWC 9119 is ready to link.  Sign: 3D
Tx@10:08:46: C0 FB E0 77 77 91 19 00 00 00 00 00 00 00 00 00 78 C0
Rx@10:08:47: (FC) FD E2 91 19 3D 0C 80 00 00 00 00 00 00 00 00 55
10:08:47: 32.00 amp slave TWC 9119 is ready to link.  Sign: 3D
Tx@10:08:47: C0 FB E0 77 77 91 19 00 00 00 00 00 00 00 00 00 78 C0
Rx@10:08:47: (FC) FD E2 91 19 3D 0C 80 00 00 00 00 00 00 00 00 55
10:08:47: 32.00 amp slave TWC 9119 is ready to link.  Sign: 3D
Tx@10:08:47: C0 FB E0 77 77 91 19 00 00 00 00 00 00 00 00 00 78 C0
Tx@10:08:48: C0 FB E0 77 77 91 19 00 00 00 00 00 00 00 00 00 78 C0

Hi @revgazza,
Does this part just repeat continuously:
10:08:47: 32.00 amp slave TWC 9119 is ready to link. Sign: 3D
Tx@10:08:47: C0 FB E0 77 77 91 19 00 00 00 00 00 00 00 00 00 78 C0
Rx@10:08:47: (FC) FD E2 91 19 3D 0C 80 00 00 00 00 00 00 00 00 55
It seems that you have a comms problem of some sort, it looks like your TWCManager can see the slave TWC, but the slave TWC isn't getting your replies correctly.
First thing I would check is the connections - is there any issue with the TX connection (from your RS435 terminal)?

Thanks ngardiner.
I am away at the moment, but I'll have a look at that. The RS485 might be the issue. I purchased it from Jaycar Electronics. It is actually a USB Port to RS-485/422 Converter with Automatic Detect Serial Signal Rate. I'll check it with a cro.
Garry


guestos: add Windows Server 2022

Description
Adds newer guest OSes

Windows Server 2022

Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale

[ ] Major
[ ] Minor

Bug Severity

[ ] BLOCKER
[ ] Critical
[ ] Major
[ ] Minor
[ ] Trivial

Screenshots (if appropriate):
How Has This Been Tested?

@blueorangutan SFpackage

@andrijapanicsb a [SF] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

Packaging result: :heavy_check_mark: el7 :heavy_check_mark: el8 :heavy_check_mark: el9 :heavy_check_mark: debian :heavy_check_mark: suse15. SL-JID 6072

@blueorangutan package

@shwstppr a [SF] Jenkins job has been kicked to build packages. It will be bundled with  KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

Packaging result: :heavy_check_mark: el7 :heavy_check_mark: el8 :heavy_check_mark: el9 :heavy_check_mark: debian :heavy_check_mark: suse15. SL-JID 6123

@blueorangutan test

@rohityadavcloud a [SF] Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

Trillian Build Failed (tid-6585)

@blueorangutan LLtest

[LL]Trillian test result (tid-6543)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 45154 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr7508-t6543-kvm-centos7.zip
Smoke tests completed. 106 look OK, 2 have errors, 0 did not run
Only failed and skipped tests results shown below:

Test
Result
Time (s)
Test File

test_11_destroy_ssvm
Error
3.14
test_ssvm.py

test_01_redundant_vpc_site2site_vpn
Failure
569.77
test_vpc_vpn.py

test_01_vpc_site2site_vpn_multiple_options
Error
1182.97
test_vpc_vpn.py

test_01_vpc_site2site_vpn
Error
447.56
test_vpc_vpn.py

@blueorangutan test

@DaanHoogland a [SF] Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

[SF] Trillian Build Failed (tid-6595)

@blueorangutan package

Packaging result [SF]: :heavy_check_mark: el7 :heavy_check_mark: el8 :heavy_check_mark: el9 :heavy_check_mark: debian :heavy_check_mark: suse15. SL-JID 6169

@blueorangutan test

@shwstppr a [SF] Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

[SF] Trillian test result (tid-6611)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 59414 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr7508-t6611-kvm-centos7.zip
Smoke tests completed. 107 look OK, 1 have errors, 0 did not run
Only failed and skipped tests results shown below:

Test
Result
Time (s)
Test File

test_02_upgrade_kubernetes_cluster
Error
3978.20
test_kubernetes_clusters.py

test_08_upgrade_kubernetes_ha_cluster
Error
4067.53
test_kubernetes_clusters.py

test_09_delete_kubernetes_ha_cluster
Failure
0.04
test_kubernetes_clusters.py

ContextSuite context=TestKubernetesCluster>:teardown
Error
3725.28
test_kubernetes_clusters.py

@weizhouapache @shwstppr can we merge this?

@DaanHoogland looks okay to me. Failures sen unrelated


Ce App Container Getting Started

Created a separate page for the 'Getting Started' Guide. Also cleaned up grammar, added additional links, and added missing steps.

Docs Build status updates of commit c737107:
:warning: Validation status: warnings

File
Status
Preview URL
Details

windows-iotcore/windows-ce-app-container-getting-started.md
:warning:Warning

Details

windows-iotcore/windows-ce-app-container.md
:warning:Warning

Details

windows-iotcore/windows-ce-app-container-getting-started.md

Line 158, Column 1: [Warning-multiple-h1s] Multiple H1s(H1 'Additional Information') are not allowed. You can only have one top-level heading.
Line 314, Column 1: [Warning-multiple-h1s] Multiple H1s(H1 'References') are not allowed. You can only have one top-level heading.
Line 5, Column 14: [Suggestion-duplicate-descriptions] Attribute 'description' with value 'Windows CE App Container Migration Technology' is duplicated in 'windows-ce-app-container-getting-started.md(5,14)', 'windows-ce-app-container.md(5,14)'. NOTE: This Suggestion will become a Warning in late October, 2020.

windows-iotcore/windows-ce-app-container.md

Line 22, Column 64: [Warning-bookmark-not-found] Cannot find bookmark '#prerequisites' in 'windows-ce-app-container.md'.
Line 5, Column 14: [Suggestion-duplicate-descriptions] Attribute 'description' with value 'Windows CE App Container Migration Technology' is duplicated in 'windows-ce-app-container-getting-started.md(5,14)', 'windows-ce-app-container.md(5,14)'. NOTE: This Suggestion will become a Warning in late October, 2020.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit bbac63e:
:warning: Validation status: warnings

File
Status
Preview URL
Details

windows-iotcore/windows-ce-app-container.md
:warning:Warning

Details

windows-iotcore/windows-ce-app-container-getting-started.md
:white_check_mark:Succeeded

windows-iotcore/windows-ce-app-container.md

Line 22, Column 64: [Warning-bookmark-not-found] Cannot find bookmark '#prerequisites' in 'windows-ce-app-container.md'.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit 05e1075:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

windows-iotcore/windows-ce-app-container-getting-started.md
:white_check_mark:Succeeded

windows-iotcore/windows-ce-app-container.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit abb2e57:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

windows-iotcore/windows-ce-app-container-getting-started.md
:white_check_mark:Succeeded

windows-iotcore/windows-ce-app-container.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


[ZEPPELIN-2278] Env variable to configure Npm registry

What is this PR for?
When deploying Zeppelin in private Cloud or within closed networks, it happens that Npm Registry isn't directly reachable, so we want to configure our own proxy/registry otherwise we couldn't fetch dependencies. It is anyhow worth to let user configure npm registry instead of hardcoding the URL.
What type of PR is it?
Improvement
What is the Jira issue?
[ZEPPELIN-2278]
Questions:

Does the licenses files need update?
Is there breaking changes for older versions?
Does this needs documentation?

failures looks unrelated ...

Hi @andreaTP. Thanks for contribution.

Zeppelin build system relies on travis. So please setup your travis account and travis project for Zeppelin.
https://zeppelin.apache.org/contribution/contributions.html#continuous-integration
The repository name must be zeppelin (not incubator-zeppelin, ...)
It's not mandatory to pass all tests to be reviewed. But some reviewers might select passed PRs first

Thanks for the feedback @1ambda , travis should be configured properly now, I will try to dig into but it looks tests spuriously fail, anyhow any help on getting the right direction is highly appreciated!

It might be due to flaky tests. If so, please just restart failed jobs.
I'v just looked your travis build and it's ok

https://travis-ci.org/andreaTP/zeppelin/builds/212066501

After CI is green, please close and re-open this PR. Then jenkins will update status.

@andreaTP There are some conflict files after #2093 merged. Can you resolve them?

@AhyoungRyu rebased on top of current master

probably you have a problem on Jenkins, Travis is currently building without errors:
https://travis-ci.org/nokia/zeppelin
still this PR is marked as Failed...

@andreaTP
Problem on CI just has fixed on master branch.
Could you try rebase or merge master branch and see if CI passes?

@Leemoonsoo
rebased.
Unfortunately again failures on CI, this is on Jenkins side I guess https://builds.apache.org/job/zeppelin-pull-request/580/console
this is spurious since travis job is correctly started.
I go closing and re-opening the PR to trigger again the build (seemed to work last time)

no luck again :-(

Travis itself succed https://travis-ci.org/nokia/zeppelin/builds/213131116

Looks like Jenkins build script still does not handle contribution from organization repository very well.
Let me try fix this.

I updated Jenkins build command. @andreaTP can you close / reopen this PR? Jenkins now will check https://travis-ci.org/nokia/zeppelin/builds/213131116 correctly.

Done, let see the result!

I made a mistake. And updated the jenkins command again. @andreaTP Could you close/reopen once more? :-)

Done, finger crossed

ok, now everything looks fixed!

Thanks @andreaTP for the improvement!
LGTM and merge to master if no further discussions.

Please go on! Thanks!


setup: get enableParallelBuilding compatible with bmake

The BSD version of make requires a space after "-j". In addition BSD make does not recognize the "--load-avg" option. From what I can tell this should be okay because load average already should default to the value set by "-j". Need more research on whether this is correct.
This is more of a proof of concept. Right now we can just set these args manually with BSD make.

From what I can tell this should be okay because load average already should default to the value set by "-j". Need more research on whether this is correct.

I think that -j2 -l2 and -j2 are not equivalent.
So preserving -l when supported by make would be nice.