Different Event Handling in Version 4 Breaks Version 3 Examples

In version 3 it was possible to attach zoom behavior to the underlying SVG group element of a chart canvas to allow panning and zooming for the entire chart and mouseover, mouseout, etc. for chart elements like circles or lines. If I attach zoom behavior to a SVG rect element as suggested by version 4 examples and add chart elements the mouse events for the latter are not processed.

This is the expected and documented behavior. The zoom behavior now consumes input events that are involved in zoom gestures, stopping propagation immediately and preventing browser default behaviors. If you want to handle these input events concurrently with a zoom feature, or prevent these input events from initiating a zoom gesture, you must capture them before they initiate a zoom gesture, say by registering an event listener on a child of a container element that has the zoom behavior applied, or by registering a capturing listener (passing true as the third argument to selection.on). You don’t have to use an overlaid transparent rect as the zoom element; that is simply done for convenience in some of the examples. See the drag & zoom examples on my blocks for more examples. See also zoom.filter.

Could you provide an example how to do panning and zooming and tooltips at the same time? :-)

Dear Mike,
I appreciate your fast reply. Thank you very much. However, I’m still confused. Could you provide an example how to do panning and zooming and tooltips at the same time? :-)
Thank you and best regards
Marc
From: Mike Bostock<EMAIL_ADDRESS>Sent: Tuesday, July 19, 2016 5:02 PM
To: d3/d3
Cc: Lehmann Marc (IFAG IT DSA S); Author
Subject: Re: [d3/d3] Different Event Handling in Version 4 Breaks Version 3 Examples (#2911)
This is the expected and documented behavior. The zoom behavior now consumes input events that are involved in zoom gestures, stopping propagation immediately and preventing browser default behaviors. If you want to handle these input events concurrently with a zoom feature, or prevent these input events from initiating a zoom gesture, you must capture them before they initiate a zoom gesture, say by registering an event listener on a child of a container element that has the zoom behavior applied, or by registering a capturing listener (passing true as the third argument to selection.on). You don’t have to use an overlaid transparent rect as the zoom element; that is simply done for convenience in some of the examples. See the drag & zoom examples on my blocks for more examples. See also zoom.filter.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/d3/d3/issues/2911#issuecomment-233660583, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABK64FYKTyAtSJPEpU0Ut4JhKTbH70PBks5qXObagaJpZM4JPznG.

I am currently on vacation in a remote location with intermittent Internet and will not be able to provide you with a more specific example than the other ones I mentioned on https://bl.ocks.org/mbostock. I might try when I return to a more internet accessible area. You might try Stack Overflow or the d3-js Google Group in the interim.

This is what I meant. The zoom behavior is only handled for the circles but not for the entire canvas.
`

`

Panning and zoom is only handled for the circles but not for the entire chart canvas.
<!DOCTYPE html>
<meta charset="utf-8">
<style>

svg {
  overflow: hidden;
}

.axis line {
  stroke: lightgrey;
  stroke-opacity: 0.4;
}

circle {
  fill: steelblue;
  stroke: black;
  stroke-width: 1px;
}

</style>
<svg width="1020" height="540"></svg>
<script src="js/d3.v4.min.js"></script>
<script>

var width = 960, height = 500;

var data = d3.range(500).map(function() {
    return {
        x: ~~Math.pow(10, d3.randomNormal(5, 10 * 0.15)()),
        y: Math.abs(d3.randomNormal(10, 20 * 0.15)())
    };
});

var xScale = d3.scaleLog()
    .domain([1.00, 1.00e10])
    .rangeRound([0, width]);

var yScale = d3.scaleLinear()
    .domain([0.00, 20.00])
    .rangeRound([height, 0]);

var xAxis = d3.axisBottom(xScale)
    .ticks(10, ".1s")
    .tickSizeInner(-height)
    .tickSizeOuter(3)
    .tickPadding(5);

var yAxis = d3.axisLeft(yScale)
    .ticks(10, ".2f")
    .tickSizeInner(-width)
    .tickSizeOuter(3)
    .tickPadding(5);

var zoom = d3.zoom()
    .scaleExtent([1, 50])
    .translateExtent([[0, 0], [1020, 540]])
    .on("zoom", update);

var chart = d3.select("svg")
    .append("g")
    .attr("transform", "translate(40, 20)");

var gX = chart.append("g")
    .attr("class", "axis")
    .attr("transform", "translate(0," + height + ")")
    .call(xAxis);

var gY = chart.append("g")
    .attr("class", "axis")
    .call(yAxis);

var canvas = chart.append("svg")
    .attr("width", width)
    .attr("height", height)
    .call(zoom);

var circle = canvas.selectAll("circle")
      .data(data)
    .enter().append("circle")
      .attr("transform", function(d) {
           var dx = xScale(d.x);
           var dy = yScale(d.y);
           return "translate(" + dx + "," + dy + ")";
      })
      .attr("r", 3.0)
      .on("click", show);

function update() {
    var transform = d3.event.transform;
    gX.call(xAxis.scale(transform.rescaleX(xScale)));
    gY.call(yAxis.scale(transform.rescaleY(yScale)));
    circle.attr("transform", function(d) {
        var dx = transform.applyX(xScale(d.x));
        var dy = transform.applyY(yScale(d.y));
        return "translate(" + dx + "," + dy + ")";
    });
}

function show(d) {
    alert(d.x + " | " + d.y);
}

</script>

Please have a look at the code below. I would expect to have zoom behavior for the canvas svg  element and all its child elements and click behavior for the circle elements. However, zooming and panning only works when the cursor is over the circle elements. The zoom events seem to get propagated from the circle elements to the ancestor container element and are properly handled but don’t seem to get handled at all directly on the container element. I perceive this behavior a version 4 issue as it worked before in version 3. I checked bl.ocks.org, Stack Overflow, and Google groups as suggested and couldn’t find a solution.
<!DOCTYPE html>
<meta charset="utf-8">
<style>

svg {
  overflow: hidden;
}

.axis line {
  stroke: lightgrey;
  stroke-opacity: 0.4;
}

circle {
  fill: steelblue;
  stroke: black;
  stroke-width: 1px;
}

</style>
<svg width="1020" height="540"></svg>
<script src="js/d3.v4.min.js"></script>
<script>

var width = 960, height = 500;

var data = d3.range(500).map(function() {
    return {
        x: ~~Math.pow(10, d3.randomNormal(5, 10 * 0.15)()),
        y: Math.abs(d3.randomNormal(10, 20 * 0.15)())
    };
});

var xScale = d3.scaleLog()
    .domain([1.00, 1.00e10])
    .rangeRound([0, width]);

var yScale = d3.scaleLinear()
    .domain([0.00, 20.00])
    .rangeRound([height, 0]);

var xAxis = d3.axisBottom(xScale)
    .ticks(10, ".1s")
    .tickSizeInner(-height)
    .tickSizeOuter(3)
    .tickPadding(5);

var yAxis = d3.axisLeft(yScale)
    .ticks(10, ".2f")
    .tickSizeInner(-width)
    .tickSizeOuter(3)
    .tickPadding(5);

var zoom = d3.zoom()
    .scaleExtent([1, 50])
    .translateExtent([[0, 0], [1020, 540]])
    .on("zoom", update);

var chart = d3.select("svg")
    .append("g")
    .attr("transform", "translate(40, 20)");

var gX = chart.append("g")
    .attr("class", "axis")
    .attr("transform", "translate(0," + height + ")")
    .call(xAxis);

var gY = chart.append("g")
    .attr("class", "axis")
    .call(yAxis);

var canvas = chart.append("svg")
    .attr("width", width)
    .attr("height", height)
    .call(zoom);

var circle = canvas.selectAll("circle")
      .data(data)
    .enter().append("circle")
      .attr("transform", function(d) {
           var dx = xScale(d.x);
           var dy = yScale(d.y);
           return "translate(" + dx + "," + dy + ")";
      })
      .attr("r", 3.0)
      .on("click", show);

function update() {
    var transform = d3.event.transform;
    gX.call(xAxis.scale(transform.rescaleX(xScale)));
    gY.call(yAxis.scale(transform.rescaleY(yScale)));
    circle.attr("transform", function(d) {
        var dx = transform.applyX(xScale(d.x));
        var dy = transform.applyY(yScale(d.y));
        return "translate(" + dx + "," + dy + ")";
    });
}

function show(d) {
    alert(d.x + " | " + d.y);
}

</script>

This is the expected behavior and has not changed in V4. The simplest way to demonstrate what’s going on is to remove the zoom behavior and just listen for wheel events:
var canvas = chart.append("svg")
    .attr("width", width)
    .attr("height", height)
    .on("wheel", function() { console.log("wheel"); });

Notice that you don’t receive wheel events if you wheel on the transparent areas of the SVG—that’s because the events are not received by the SVG, which is a transparent container, and instead go through to whatever’s underneath the SVG, such as the document body.
The simplest way to ensure that the events are received by the SVG element is to put a fill:none, pointer-events:all rect underneath the elements in your SVG. For example:
var canvas = chart.append("svg")
    .attr("width", width)
    .attr("height", height)
    .call(zoom);

canvas.append("rect")
    .attr("width", width)
    .attr("height", height)
    .attr("fill", "none")
    .attr("pointer-events", "all");

Great. Thank you for the explanation. This is doing the trick. ☺


Firefox not pushing routes with m.route()

Hi there!
I ran into this issue today with Firefox 46.0.1, but also tested it with FF 44 and 43 via browserstack. Chrome and Safari work as expected. Currently using Mithril v0.2.3. This is while using m.route.mode = 'pathname';- we haven't tried using a different mode.
I have click events setup which push certain routes using m.route(). As an example, clicking on a button will trigger m.route('/admin/promotions/new');. Clicking another button will trigger m.route('/admin/promotions'); and take you back to the original page. For some reason, FF is not updating the route, so it remains at /admin/promotions/new.
In Chrome we see:

But in Firefox we see:

Please let me know if I can supply any other information!

First, Mithril's at v0.2.4. Little has actually changed between the two versions, but just thought I'd point that out. Second, could you verify this against next? Also, source code is helpful. :wink:

Got it! Just FYI the link at http://mithril.js.org/installation.html - http://mithril.js.org/mithril.min.zip supplies Mithril v0.2.3 even though the main homepage says "Download v0.2.4"
Tested it against next and am still running into the same issue. Here's some src cod 🐟  for you.
routes.js
vhxm.layouts.table = {
  controller: function() { // API request here },
  view: function() {
    return m('.standard-width-container', [
      m('.promotions-table-container', [
        m.component(vhxm.components.table.ui.container)
      ]),
      m('.sidebar-container', [
        m.component(vhxm.components.sidebar.container)
      ])
    ]);
  }
};

m.route.mode = 'pathname';

m.route(document.getElementById('promotions-table'), '/admin/promotions', {
  '/admin/promotions': vhxm.layouts.table,
  '/admin/promotions/new': vhxm.layouts.table,
  '/admin/promotions/:id/edit': vhxm.layouts.table
});

We have one primary component (the table) which renders a main page and a sidebar. The sidebar opens if we hit the /edit or /new, closes if we go back to the root /admin/promotions. The initial sidebar opening/route change works without any issues.
We have a cancel button within the sidebar that looks like this:
m('a.btn-gray.btn--medium.btn--fill', {
  config: animatorOut
}, 'Cancel')

and the animatorOut function:
var animatorOut = function(elem, isInit) {
  if (!isInit) {
    elem.onclick = function(ev) {
      ev.preventDefault();
      vhxm.components.sidebar.state.isOpen(false);

      $('.sidebar').velocity({
        right: '-470'
      }, {
        duration: 500,
        easing: [ 0.19, 1, 0.22, 1 ],
        complete: function() {
          m.route('/admin/promotions');
        }
      });
    }
  }
};

It does enter the complete callback and hits m.route, but never updates the route itself.
Also to note, the same behavior occurs if I set up the cancel button like this:
m('a.btn-gray.btn--medium.btn--fill', {
  config: m.route,
  href: '/admin/promotions'
}, 'Cancel')

Looks like it was something else we had running internally. Was able to find a workaround. Closing for now. Thanks!


Added the method ws on the class Robot to plot the 3D workspace of the robot

Affected Issues

Fixes #

Proposed Changes

I've added a method to plot the 3D workspace of the robot manipulators. This method is inside of the class Robot.

Hi @nikolas1301 , thanks for the PR!
The CI is currently failing because matplotlib is a new dependency for pybotics.
You'll have to poetry add matplotlib and commit the changes to the pyproject.toml and poetry.lock files.

From a user experience point of view, the ws() function name (I assume is stands for "workspace"?) isn't very descriptive/explicit. I would personally change the function name to plot_workspace() to be fully explicit (see https://www.python.org/dev/peps/pep-0020/#id2).
Would it be possible to move the function to it's own plotting module? Ideally, to maintain good "separation of concerns", the Robot class doesn't need to know about plotting (or import matplotlib). A static plotting module should accept Robot classes as an input and plot them in a functional way.


Feat: Revamp draggable row

Base implementation of a draggable table, without dropping working due to how rapidly it updates state
also updating camelcase on some svgs
files to review:

src/components/templates/draggable-table.tsx

@zakariaelas @srindom I just pushed a storybook story with the draggable table 😄  feel free to give it a shot


User id prompt fixes

url of api/users endpoint fixed
prompt text altered to match preceding prompts (user and domain)

This change is

Review status: 0 of 1 files reviewed at latest revision, 1 unresolved discussion.

scripts/start.js, line 394 at r1 (raw file):

(null)
The question is confusing for me. What about
Please eneter oVirt user ID (can be found at ...):

Comments from Reviewable

Review status: 0 of 1 files reviewed at latest revision, 1 unresolved discussion.

scripts/start.js, line 394 at r1 (raw file):
Previously, mareklibra (Marek Libra) wrote…

(null)
The question is confusing for me. What about
Please eneter oVirt user ID (can be found at ...):

reworded

Comments from Reviewable

Reviewed 1 of 1 files at r2.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


Update LICENCE fields

Closes #246
Update licencing

period
company

Codecov Report

Merging #247 into master will decrease coverage by 0.06%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##             master    #247      +/-   ##
===========================================
- Coverage     76.57%   76.5%   -0.07%
  Complexity      378     378
===========================================
  Files            29      29
  Lines          1656    1656
  Branches        148     148
===========================================
- Hits           1268    1267       -1
  Misses          292     292
- Partials         96      97       +1

Impacted Files
Coverage Δ
Complexity Δ

...com/microsoft/thrifty/service/AsyncClientBase.java
62.35% <0%> (-1.18%)
7% <0%> (ø)

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 9919657...85ed59a. Read the comment docs.

Thanks for your contribution!  I unfortunately can't accept it:

Per my comment in the linked issue, this change is contra the actual Apache 2.0 license
As a rule, we don't accept any licensing-related changes from external contributors.


Fix the tool to be usable in the US isolated regions

Note this PR depends on #19 which introduced Go modules.
Supporting the isolated regions requires a few changes:

Access keys are not supported which requires some changes to the code to
support IAM profiles.
US isolated regions were added to aws-sdk-go in version 1.23.15.  This PR
bumps the dependency to the latest available version.
When IAM profiles are used, the generated presigned URLs aren't accepted by
the import-snapshot API.  This PR changes the implementation to use S3:// URL
instead of presigned HTTP URLs.

I just realized that this PR is broken.  The latest AWS sdk removed the private/waiter package which is a dependency of a bunch of drivers.  I will push a fix ASAP.

I pushed changes to replace the usages of private/waiter with high level
ec2.WaitXXX functions.  I also made the china region env variables used in the
integration test optional.

Hi @jvshahid , just wanted to update you that we've merged #19 and made the appropriate changes to our CI to ensure new builds will succeed. If you rebase this PR against master, it will help us review the changes in this PR.
Thanks!

I rebased the PR.


ngx-formly in library

Hi,
I work on a angular monorepo project, with multiple front end / backend apps.
I've a directory 'shared -models' to share models in all of my apps, and i would like to add FormlyFieldConfig related to models.
Shared-models is just a simple ts project, with a package.json, and it's seems impossible to run "ng add @
ngx-formly/core" in a non angular context. I try to "npm i @
ngx-formly/core" but with no success.
My question is, is there any option to only import/export "FormlyFieldConfig" definition ?
Thanks for your help.

Sorry but the request is not clear enough to me, need more further details, thanks!


Finalize freq HT

This finalizes the freq HT. It renames the original and  adjusted freq annotations. It also drops any 'gatk_version' index from freq_meta, freq, high_ab_hets_by_group, pre_adjusted_freq, and freq_meta_sample_count. For now this stores the pre_adjusted freq but I'm wondering if we need to here since we currently have the preadjustment HT. If we want all the information in one place, we would need to store the preadjustment histograms as well so I will need to add that in. Alternatively, if we plan on keeping the full preadjustment HT around, I'm not sure we need the predajustment/high AB hets on this table but it was in the functions docstring todo placeholder so I left it for now.

I didnt change pop -> ga_grp here because in our slack conversation with KC we decided we should do a single large conversion and we probably still need to run this change past a larger group

Back to you @jkgoodrich ! I updated pop-> gen_anc in grpmax on L849 in the original annotation. This was way cleaner than messing with the nested structs in the finalize bit but I'll need to rerun the correct step (which runs in minutes). I'll just run both the correction and finalize whenever were ready though.


OpenComputers: can't interact with blocks below y=0 or above y=255

Right-clicking an OpenComputers block located below y = 0 or above y = 255 doesn't open up its interface.
Of course, this doesn't prevent me from booting one (feed the necessary components using hoppers and shift-right click to power it on), but notably, you can't use your fancy new computer.

Is this still an issue?

Shouldn't this be closed and merged into #448?

@muzikbike you do not need to comment this on every issue.


[as2_pkg] Crazyflie simulation model characteristics are not correct

ROS2 Version
humble
Version
main
Installation
source
What happened?
Hi!
I just wanted to let you know that the Crazyflie simulation model has incorrect characteristics that has been introduced by this PR: https://github.com/aerostack2/aerostack2/pull/608. The crazyflie weighs now 1.5 kilos and standard variables of the multicopter plugins (motor/momentconstants, dragcoefficients) have been taken that are meant for much bigger platforms.
Of-course it depends of how the simulation is used for. For higher level autonomy this is probably not a problem but for lower leve control it will be because the dynamics aren't accurate.
How to reproduce your issue?
This is just an observation. The crazyflie simulation github repo uses the system ID parameters from the crazyflie and has been tuned to have stable flight: https://github.com/bitcraze/crazyflie-simulation
Relevant log output
No response

Hi @knmcguire,
Thank you very much for the information.
I have tried updating our model with the parameters mentioned at https://github.com/aerostack2/aerostack2/tree/641-as2_pkg-crazyflie-simulation-model-characteristics-are-not-correct
The problem we are encountering is that the MulticopterVelocityControl is not accurate.

When the reference is v = [0.0, 0.0, 0.0] m/s, the drone moves at v = [0.0, 0.0, 0.16] m/s (approximate).
When the reference is v = [0.0, 0.0, 0.5] m/s, the drone moves at v = [0.0, 0.0, 0.7] m/s (approximate).

Are you experiencing the same issue?
As you mentioned, we have been using the simulation to test autonomous missions, so it was more important for us that the drone moved accurately rather than having realistic dynamics. However,  we would like to achieve both.
Thank you very much!

Hi! I'm very sorry that I missed your question there, but yes there seems to be a discrepency in the motion velocity control plugin.... Perhaps an external ROS plugin for PID control for ROS will just work better here.


Code missing?

Hi, there're not actually any of the code for the program in the repo - is this intentional?
Thanks!

Source code has been added today.


Cluster did not start properly

There might be a race condition. Observed on a started cluster.
Possibly caused by postgres not being reachable when the metastore first started.
NAME                                   READY   STATUS             RESTARTS          AGE
postgres-84ddcdbf87-hx9w2              1/1     Running            0                 25h
simian-control-plane-b58cdfc69-98ddz   0/1     CrashLoopBackOff   385 (3m56s ago)   25h
simian-indexer-0                       0/1     CrashLoopBackOff   206 (2m19s ago)   26h
simian-indexer-1                       1/1     Running            0                 25h
simian-indexer-10                      0/1     CrashLoopBackOff   383 (4m19s ago)   25h
simian-indexer-11                      1/1     Running            0                 26h
simian-indexer-12                      0/1     CrashLoopBackOff   260 (2m8s ago)    26h
simian-indexer-2                       0/1     CrashLoopBackOff   385 (3m10s ago)   25h
simian-indexer-3                       0/1     CrashLoopBackOff   264 (5m1s ago)    26h
simian-indexer-4                       0/1     CrashLoopBackOff   262 (3m41s ago)   26h
simian-indexer-5                       0/1     CrashLoopBackOff   206 (105s ago)    26h
simian-indexer-6                       0/1     CrashLoopBackOff   264 (19s ago)     26h
simian-indexer-7                       0/1     CrashLoopBackOff   385 (4m38s ago)   25h
simian-indexer-8                       0/1     CrashLoopBackOff   266 (104s ago)    26h
simian-indexer-9                       0/1     CrashLoopBackOff   242 (4m10s ago)   26h
simian-janitor-5c6558b84c-rq8qn        0/1     OOMKilled          0                 26h
simian-janitor-5c6558b84c-tlf2w        0/1     CrashLoopBackOff   221 (3m24s ago)   14h
simian-metastore-646bc867cf-mmdkm      1/1     Running            0                 26h

Example of the exhaustive logs of a run
2024-06-02 18:28:59.078	2024-06-02T18:28:59.078Z  INFO quickwit_cluster::change: node `simian-indexer-6` has joined the cluster node_id=simian-indexer-6 generation_id=1717352938469772851
2024-06-02 18:28:58.678	2024-06-02T18:28:58.678Z  INFO quickwit_cluster::change: node `simian-indexer-6` has left the cluster node_id=simian-indexer-6 generation_id=1717352852083972609
2024-06-02 18:28:53.878	2024-06-02T18:28:53.878Z  INFO quickwit_cluster::change: node `simian-indexer-5` has left the cluster node_id=simian-indexer-5 generation_id=1717352843047783355
2024-06-02 18:28:19.478	2024-06-02T18:28:19.478Z  INFO quickwit_cluster::change: node `simian-indexer-8` has left the cluster node_id=simian-indexer-8 generation_id=1717352808599976864
2024-06-02 18:28:16.279	2024-06-02T18:28:16.279Z  INFO quickwit_cluster::change: node `simian-indexer-12` has left the cluster node_id=simian-indexer-12 generation_id=1717352805375518164
2024-06-02 18:27:48.879	2024-06-02T18:27:48.878Z  INFO quickwit_cluster::change: node `simian-indexer-4` has left the cluster node_id=simian-indexer-4 generation_id=1717352771444320018
2024-06-02 18:27:39.078	2024-06-02T18:27:39.078Z  INFO quickwit_cluster::change: node `simian-indexer-8` has joined the cluster node_id=simian-indexer-8 generation_id=1717352808599976864
2024-06-02 18:27:39.078	2024-06-02T18:27:39.078Z  INFO quickwit_cluster::change: node `simian-indexer-6` has joined the cluster node_id=simian-indexer-6 generation_id=1717352852083972609
2024-06-02 18:27:39.078	2024-06-02T18:27:39.078Z  INFO quickwit_cluster::change: node `simian-indexer-5` has joined the cluster node_id=simian-indexer-5 generation_id=1717352843047783355
2024-06-02 18:27:39.078	2024-06-02T18:27:39.078Z  INFO quickwit_cluster::change: node `simian-indexer-4` has joined the cluster node_id=simian-indexer-4 generation_id=1717352771444320018
2024-06-02 18:27:39.078	2024-06-02T18:27:39.078Z  INFO quickwit_cluster::change: node `simian-indexer-12` has joined the cluster node_id=simian-indexer-12 generation_id=1717352805375518164
2024-06-02 18:27:39.078	2024-06-02T18:27:39.078Z  INFO quickwit_cluster::grpc_gossip: no peer nodes to pull the cluster state from
2024-06-02 18:27:38.678	2024-06-02T18:27:38.678Z  INFO quickwit_cluster::change: node `simian-indexer-0` has joined the cluster node_id=simian-indexer-0 generation_id=1717352858676324553
2024-06-02 18:27:38.677	2024-06-02T18:27:38.677Z  INFO quickwit_serve: connecting to metastore
2024-06-02 18:27:38.676	2024-06-02T18:27:38.676Z  INFO quickwit_cluster::cluster: joining cluster cluster_id=simian-simian node_id=simian-indexer-0 generation_id=1717352858676324553 enabled_services={Indexer} gossip_listen_addr=<IP_ADDRESS>:7282 gossip_advertise_addr=<IP_ADDRESS>:7282 grpc_advertise_addr=<IP_ADDRESS>:7281 peer_seed_addrs=simian-headless:7282
2024-06-02 18:27:38.675	2024-06-02T18:27:38.674Z  INFO quickwit_common: setting `QW_DISABLE_TOKIO_LIFO_SLOT` from default value=false
2024-06-02 18:27:38.674	2024-06-02T18:27:38.674Z  INFO quickwit_telemetry::sender: telemetry to quickwit is disabled
2024-06-02 18:27:38.674	2024-06-02T18:27:38.674Z  INFO quickwit_cli::service: setting services from override services=indexer
2024-06-02 18:27:38.674	2024-06-02T18:27:38.674Z  INFO quickwit_cli: loaded node config config_uri=file:///quickwit/node.yaml config=NodeConfig { cluster_id: "simian-simian", node_id: NodeId("simian-indexer-0"), enabled_services: {Metastore, Indexer, Janitor, ControlPlane, Searcher}, gossip_listen_addr: <IP_ADDRESS>:7282, grpc_listen_addr: <IP_ADDRESS>:7281, gossip_advertise_addr: <IP_ADDRESS>:7282, grpc_advertise_addr: <IP_ADDRESS>:7281, gossip_interval: 200ms, peer_seeds: ["simian-headless"], data_dir_path: "/quickwit/qwdata", metastore_uri: Uri { uri: "file:///quickwit/qwdata/indexes#polling_interval=30s" }, default_index_root_uri: Uri { uri: "s3://quickwit-indexes/simian1/" }, rest_config: RestConfig { listen_addr: <IP_ADDRESS>:7280, cors_allow_origins: [], extra_headers: {} }, grpc_config: GrpcConfig { max_message_size: 21.0 MB }, storage_configs: StorageConfigs([S3(S3StorageConfig { access_key_id: None, secret_access_key: None, region: Some("us-east1"), endpoint: Some("https://storage.googleapis.com"), force_path_style_access: false, disable_multi_object_delete: true })]), metastore_configs: MetastoreConfigs([]), indexer_config: IndexerConfig { split_store_max_num_bytes: 149.0 GB, split_store_max_num_splits: 1000, max_concurrent_split_uploads: 12, max_merge_write_throughput: Some(100.0 MB), merge_concurrency: 2, enable_otlp_endpoint: false, enable_cooperative_indexing: true, cpu_capacity: CpuCapacity(3955) }, searcher_config: SearcherConfig { aggregation_memory_limit: 500.0 MB, aggregation_bucket_limit: 65000, fast_field_cache_capacity: 1000.0 MB, split_footer_cache_capacity: 500.0 MB, partial_request_cache_capacity: 64.0 MB, max_num_concurrent_split_searches: 100, max_num_concurrent_split_streams: 100, split_cache: None }, ingest_api_config: IngestApiConfig { max_queue_memory_usage: 2.1 GB, max_queue_disk_usage: 4.3 GB, replication_factor: 1, content_length_limit: 10.5 MB }, jaeger_config: JaegerConfig { enable_endpoint: true, lookback_period_hours: 72, max_trace_duration_secs: 3600, max_fetch_spans: 10000 } }
2024-06-02 18:27:38.673	2024-06-02T18:27:38.673Z  INFO quickwit_cli::service: quickwit version: 0.8.0 (x86_64-unknown-linux-gnu 2024-05-31T05:26:31Z c49bd58)

Certainly! Here's a structured GitHub issue description for the problem with the Quickwit cluster not starting properly, potentially due to PostgreSQL not being reachable when the metastore initially started:

Title: Cluster Did Not Start Properly
Issue Description:
The Quickwit cluster encountered issues during startup. This appears to be a potential race condition, likely due to PostgreSQL not being reachable when the metastore first started. This inconsistency led to multiple components failing to start correctly, with some experiencing Out Of Memory (OOM) crashes and others simply failing to initialize.
Is there an existing issue for this?

[x] I have searched the existing issues.

Current Behavior:
Upon starting the cluster, several components failed to initialize correctly. Specifically, the metastore and various indexer nodes crashed, likely due to dependencies not being met at the right time. The issue might originate from PostgreSQL not being reachable upon the metastore's initialization.
Example of the exhaustive logs of a run:
2024-06-02 18:28:59.078 2024-06-02T18:28:59.078Z
2024-06-02 18:28:58.678 2024-06-02T18:28:58.678Z
2024-06-02 18:28:53.878 2024-06-02T18:28:53.878Z IN
2024-06-02 18:28:19.478 2024-06-02T18:28:19.478Z IN
2024-06-02 18:28:16.279 2024-06-02T18:28:16.279Z IN
2024-06-02 18:27:48.879 2024-06-02T18:27:48.878Z
2024-06-02 18:27:39.078 2024-06--02T18:27:39.078Z
2024-06-02 18:27:39.078 2024-06-02T18:27:39.078Z IN
2024-06-02 18:27:39.078 2024-06-02T18:27:39.078Z IN
2024-06-02 18:27:39.078 2024-06-02T18:27:39.078Z IN
2024-06-02 18:27:39.078 2024-06-02T18:27:39.078Z IN
2024-06-02 18:27:38.678 2024-06-02T18:27:38.678Z
2024-06-02 18:27:38.677 2024-06-02T18:27:38.677Z
2024-06 -02 18:27:38.676 2024-06-02T1 8:27:38.676Z IN
2024-06 -02 18:27:38.675 2024-06-02T1 8:27:38.674Z IN
2024-06-02 18:27:38.674 2024-06-02T18:27:38.674Z
2024-06-02 18:27:38.674 2024-06-02T18:27:38.674Z
2024-06-02 18:27:38.674 2024-06-02T18: 27:38.674Z IN
2024-06-02 18:27:38.673 2024-06-02T18:27:38.673Z

Cluster Status:
NAME                                  READY STATUS
postgres-84ddcdbf87-hx9w2             1/1   Running
simian-control-plane-b58cdfc69-98ddz  0/1   Crash
simian-indexer-0                      0/1   Crash
simian-indexer-1                      1/1   Running
simian-indexer-10                     0/1   Crash
simian-indexer-11                     1/1   Running
simian-indexer-12                     0/1   Crash
simian-indexer-2                      0/1   Crash
simian-indexer-3                      0/1   Crash
simian-indexer-4                      0/1   Crash
simian-indexer-5                      0/1   Crash
simian-indexer-6                      0/1   Crash
simian-indexer-7                      0/1   Crash
simian-indexer-8                      0/1   Crash
simian-indexer-9                      0/1   Crash
simian-janitor-5c6558b84c-rq8qn       1/1   Running
simian-janitor-5c6558b84c-tlf2w       0/1   OOMKilled
simian-metastore-646bc867cf-mmdkm     1/1   Running

Expected Behavior:
All components of the Quickwit cluster should start and reach the expected running state without crashes or resource exhaustion errors.
Steps to Reproduce:

Initialize and start a Quickwit cluster.
Ensure PostgreSQL service is not reachable momentarily at the time of the metastore's initialization.
Observe the status of various cluster components (metastore, indexers, etc.).

Environment:

Quickwit Version: [Specify version if known]
Deployment Environment: [e.g., Kubernetes, Docker, Bare Metal]
PostgreSQL Version: [Specify version if known]

Potential Cause:

Race condition due to PostgreSQL not being reachable at the time of the metastore's initialization.

Additional Notes:

Suggestion: Implement a retry mechanism in the metastore to handle cases where PostgreSQL is not reachable initially.
Add appropriate checks or delays to ensure that all dependencies (like PostgreSQL) are fully operational before initializing dependent services.

Self-Assignment:

[ ] I am ready to work on this issue!

Any additional comments or notes regarding the issue? Feel free to add them here.

Thank you, and let's work towards a robust solution to prevent such startup issues in the Quickwit cluster.
End of Issue description
This issue description includes:

Title: Clearly states the problem.
Issue Description: Provides an overview of what happens during the cluster start.
Existing Issues Search: Confirms the user has searched existing issues.
Current Behavior: Describes the problem in detail, including component status.
Example Logs: Shows relevant logs and statuses at the time of the issue.
Expected Behavior: States the desired outcome upon starting the cluster.
Steps to Reproduce: Lists steps to replicate the issue.
Environment: Specifies the environment details where the issue was observed.
Potential Cause: Suggests what might be causing the problem.
Additional Notes: Provides suggestions or workarounds.
Self-Assignment: Indicates willingness to work on the issue.

Feel free to modify this template based on specific details or additional context you might have!


Ignore GH badges in link checks, fix false fails

Link linting sometimes incorrectly fails on GitHub CI badge URLs.
For example, from the periodic MD links job:
https://github.com/submariner-io/submariner-operator/runs/1504982569
These links work in the browser and link checking passes locally.
Signed-off-by: Daniel Farrell<EMAIL_ADDRESS>

This was merged as part of #964.


Doc error: link to pagination specification is broken

The hyperlink in section https://github.com/opencontainers/distribution-spec/tree/main/extensions#pagination is broken.

I believe this is trying to refer to the pagination described for the tag interface here https://github.com/opencontainers/distribution-spec/blob/main/spec.md#content-discovery
@vbatts can you confirm?


iOS NativeAudio.loop(...) not working for remote audio assets

On iOS calling NativeAudio.loop(...) is giving the following error when trying to play remote audio asset (https://...) in loop:

AVAudioSession_iOS.mm:1271  Deactivating an audio session that has running I/O. All I/O should be stopped or paused prior to deactivating the audio session.

i think it's not implemented yet on remote assets


[5.2] Fix policy ability automatic determination

issue #13649

Just pass the method specifically rather than do all this.

then i rather will use this form $this->authorize(new Post); without method name string since it's cleaner shorter and less error prone then always gives a string argument which an ide not able to detect if i have a typo. the only problem with it that it's create a unnecessary object just for the type deduction.


[BUG] BulkCreate operation should support optional _id

What is the bug?
BulkCreate operation required an id to be specified, when it is optional in the original documentation: https://www.elastic.co/guide/en/elasticsearch/reference/7.10/docs-bulk.html#bulk-api-request-body. Note that Data Streams require the use of a create operation and the _id should be auto-generated by OpenSearch as a best practice for log analytics.
How can one reproduce the bug?
Look at https://github.com/opensearch-project/opensearch-rs/blob/main/opensearch/src/root/bulk.rs#L228 where the new method requires the id.
What is the expected behavior?
new should have a variant pub fn new<S>(source: B) -> Self (or some other name as we cannot overload in Rust)
What is your host/environment?
any
Do you have any screenshots?
N/A
Do you have any additional context?
no

Thanks for the report @sharp-pixel, would you be interested in making a PR to add this optional constructor?


Biodata review

This PR includes tweaks proposed by @jeromekelleher and @diekhans .
Make checking for presence more verbose (request.name -> request.name is not None).
Refactor script for generating biodata from thousand genomes csv.
Tweak comments.
In reading over the review I noticed the same lookahead functionality needed to be implemented for searching bioSamples as well.

[x] Refactor JSON loading class
[ ] Add paging tests
[x] Fix BioSample nextPageToken

Added list biodata to repo manager.


[test] fix network name capturing in expect scripts

This fixes some expect test failures caused by the scenario below:
Sometimes the command prompt >  can be put after the echo of the input command when inputs come too fast, because we are sending the next command as soon as we see Done, we don't wait for the next > . An example case:
2020-07-23T07:58:23.4151267Z > panid
2020-07-23T07:58:23.4153883Z 0x56af
2020-07-23T07:58:23.4154163Z
2020-07-23T07:58:23.4156623Z Done
2020-07-23T07:58:23.4156952Z extpanid
2020-07-23T07:58:23.4157776Z
2020-07-23T07:58:23.4160948Z > 3bdf955e7ddd80f3
2020-07-23T07:58:23.4161216Z
2020-07-23T07:58:23.4164133Z Done
2020-07-23T07:58:23.4164481Z networkname
2020-07-23T07:58:23.4165323Z
2020-07-23T07:58:23.4174275Z > OpenThread-56af
2020-07-23T07:58:23.4174801Z
2020-07-23T07:58:23.4175875Z Done

This makes > OpenThread-56af to be captured as the network name, causing the failure. This PR adds expect "> " before sending the command to fix this.

LGTM 👍
This PR solves the issue. But do you think it's necessary to have a common proc for expecting "> " and sending command? I think it might be more robust.

I like the idea, but this doesn't work universally, e.g. the first command after spawning won't have > , and many commands need to expect something after >  (like the Join success). Also it needs much work to refactor.


Unable to Install on UDMP

Hi
I am trying to install TailScale on a UDMP with version 2.5.17 but getting errors before it installs successfully. Attached is the output of the SSH session.
TailScale UDMP Install Log.txt

Hi there @nolan-lynch, I believe this is the same issue mentioned in #58 - unfortunately it's something that appears to happen with the upstream debian repos from time to time and my best advice is to try again in a day or two and see if the issue has been resolved.

@notheotherben "best advice is to try again in a day or two" Is this still the best advice or have you uncovered a workaround in the past few months? Been having this issue for almost a month now.

Hi @MRobi1 - can you run the following on your UDM and confirm whether it works or not?
apt update

If you're getting the same issues with Debian repositories missing the Release file then it is unfortunately an issue with the upstream package repositories rather than an issue with this script and is something you'd need to troubleshoot separately.

tee /etc/apt/sources.list &> /dev/null << EOF
deb http://deb.debian.org/debian/ bullseye main contrib non-free
deb http://deb.debian.org/debian/ bullseye-updates main contrib non-free
deb http://deb.debian.org/debian/ bullseye-backports main
deb http://security.debian.org/debian-security bullseye-security main contrib non-free
EOF

This allowed the installation to complete.


[Gallery][Wasm/Android/iOS] ShadowContainer- For 'Shadow Builder' section text is overlapping.

Current behavior

https://github.com/unoplatform/uno/assets/74563602/80c94e49-2362-4a06-96d0-f024e354ff00
Expected behavior
Text should not overlap.
How to reproduce it (as minimally and precisely as possible)

Launch the Uno.Gallery app for 4X or 5X version.
Click on “ShadowContainer” from the "Toolkit" list.
Go to 'Shadow Builder section.
Notice that the text is overlapping with the shadow text for each field.

Workaround
No response
Works on UWP/WinUI
None
Environment
No response
NuGet package version(s)
No response
Affected platforms
WebAssembly, Android, iOS
IDE
No response
IDE version
No response
Relevant plugins
No response
Anything else we need to know?
No response

@kazo0 this seems like a very recent regression. Not sure where that comes from.

@jeromelaban yeah I believe it was an issue with the breaking changes from Themes, it should be fixed in the latest dev packages for material, will double check

@kazo0 This is still reproducing

@Youssef1313 I verified this issue is fixed for all platform, closing it.


What if authentication route is an external URL?

In an app I'm working on now, the authentication route is actually external to the Ember application, and is managed by a different system. This system emails users a link that they click which automatically brings them to the Ember app, authenticates them using query params, then logs them in.
The various mixins have been great for achieving the automatic log in, but redirecting to an external URL when authentication fails or the session is destroyed has been a bit of work, especially regarding testing. Essentially I made something like this on the app route:
redirectToRecovery: function() {
  if (config.environment === 'test') {
    this.transitionTo('signup');

  } else {
    window.location.replace(config['simple-auth'].authenticationUrl);
  }
}

and just invoke that method on the various hooks (sessionInvalidationSucceeded, sessionAuthenticationFailed etc.). Also, the signup route just happens to be an unprotected route in the app, so in my tests I can verify users cannot access protected routes. This is clearly not the best solution.
Any thoughts on a simpler way to accomplish this? Would you accept some PRs along these lines if I have some time to work on it?

Whenever authentication needs to be triggered the mixins will invoke the authenticateSession action which by default will simply transition to Configuration.authenticationRoute. If your authentication route is external to the Ember application you could simply override that action and implement the redirect there. Of course you'd still have to handle the test environment where you don't want to redirect to another URL.
Does that solve your use case?

Ah, yes I believe it does. Thanks Marco!

authenticateSession is now deprecated, what is the new way to achieve this?

@jackmatt2: you call the authenticate method on the session service as explained in the README: https://github.com/simplabs/ember-simple-auth#basic-usage

Does not work when the login page is hosted elsewhere. In my case a jsp page.

@jackmatt2: sounds like that might be sth. for stackoverflow

Yep, added it.


Support using SourceKit-LSP for projects that are cross-compiled

We previously always assumed that the project was being built for the host.
Fixes https://github.com/swiftlang/sourcekit-lsp/issues/786
Fixes https://github.com/swiftlang/sourcekit-lsp/issues/1475
rdar://129662080
rdar://113099964

@swift-ci Please test


[Enhancement] add drive letter to error messages

I use KeepAliveHD with a number of external drives.
My drives are sometimes removed or turned off.
When this happens, KeepAliveHD shows an error but I cant determine which drive it related to because the error message does not include the drive details
The current error message is

KeepAliveHD.exe - Delayed Write Failed
Windows was unable to save all the data for the file \KeepAliveHD.txt; the data has been lost. This error may be caused if the device has been removed or the media is write-protected.
Please add the drive letter somewhere in the error message.
I suggest the following, with the drive letter mentioned in the window title and error text

KeepAliveHD.exe - Delayed Write Failed H:
Windows was unable to save all the data for the file H:\KeepAliveHD.txt; the data has been lost. This error may be caused if the device has been removed or the media is write-protected.
Thank you for the software.
It has been useful to me.

Thanks for the report. Although the project is not actively maintained recently I will try to see what I can do.

Thank you. Ive been using the KeepAliveHD for the last few few days and it has been very useful


Enhancement suggestion: Add capability to check init document in its own docstring

Firstly, thanks for docsig, it's great!
One area where I still am finding 'mistakes' in my docstring signatures though is where I've added the description of an __init__ signature in the __init__ docstring itself, rather than the class docstring. If I miss a parameter, or document a parameter that doesn't exist there, there's no way to configure docsig to raise an error, without it also being unhappy about the signature being documented in the __init__ docstring rather than the class docstring.
Minimal example

I think this is understood that this isn't covered (it's on the README page), so putting this inside a 'details' as I think my job here is more persuading that it's worth docsig supporting this, rather than describing what it currently does - but I want to have that too of course.
For a minimal example, consider this code:
class SomeClass:
    \"\"\"This class does something useful.\"\"\"

    def __init__(self, first_arg: bool, second_arg: str):
        \"\"\"Create a new instance of SomeClass

        :param first_arg: this does exist
        :param non_existent_arg: this arg doesn't actually exist!
        \"\"\"
        pass

This has incorrect documentation (so rendered docs will show incorrectly), but will pass a docsig check with default configuration):
from docsig import docsig

string_to_check = """
class SomeClass:
    \"\"\"This class does something useful.\"\"\"

    def __init__(self, first_arg: bool, second_arg: str):
        \"\"\"Create a new instance of SomeClass

        :param first_arg: this does exist
        :param non_existent_arg: this arg doesn't actually exist!
        \"\"\"
        pass
"""

docsig(string=string_to_check, check_class=True)

Note though that if I turn on check_class, even a correctly documented __init__ will cause an error E103: parameters missing:
from docsig import docsig

string_to_check = """
class SomeClass:
    \"\"\"This class does something useful.\"\"\"

    def __init__(self, first_arg: bool, second_arg: str):
        \"\"\"Create a new instance of SomeClass

        :param first_arg: this does exist
        :param second_arg: this exists too and completes coverage
        \"\"\"
        pass
"""

docsig(string=string_to_check, check_class=True)

this gives:
5 in SomeClass
--------------
class SomeClass:
    """
    :param None: ✖
    :param None: ✖
    """

    def __init__(✖first_arg, ✖second_arg)?:

E103: parameters missing

However, I think this is a valid way of writing docstrings, and one where docsig would add value if it checked this style of writing them (I found this by realising I had made a mistake of this kind in my project).
In fact, my reading of PEP257's multi-line docstring section is that this is the recommended way of writing __init__ signatures:

The class constructor should be documented in the docstring for its __init__ method

From this paragraph on docstrings for classes:

The docstring for a class should summarize its behavior and list the public methods and instance variables. If the class is intended to be subclassed, and has an additional interface for subclasses, this interface should be listed separately (in the docstring). The class constructor should be documented in the docstring for its __init__ method. Individual methods should be documented by their own docstring.

I think probably for backwards-compatibility, we would probably want to leave the check of an __init__ docstring only running when check_class is True.
Would you be interested in docsig supporting this?
If so, I may be able to work on a PR myself, if we can agree on an approach.
Some initial thoughts on supporting this

My impression is that it's [these lines](https://github.com/jshwi/docsig/blob/7fc0f02c71f8cb469c41763dee2ccf0bba2f6e38/docsig/_function.py#L292-L295) (copied below for inline clarity that set the docstring of `__init__` method's to the parent class's docstring, which prevents this being possible:
        self._docstring = _Docstring(
            node.doc_node if not self.isinit else self._parent.doc_node,
            ignore_kwargs,
        )

There's a couple of approaches that I wonder if they're worth considering:

allow the constructor(/__init__) of _function._Docstring to take a str for node, as well as _ast.Const or None, and then replace:
node.doc_node if not self.isinit else self._parent.doc_node,
with:
node.doc_node if not self.isinit else self._parent.doc_node.value + "\n" + node.doc_node.value,
This will fix the problems I currently have, but does allow weird things where some params are documented in the class docstring, and others in the __init__ docstring, which is undesirable, but seems unlikely to happen.
Add a class method on _function._Docstring to create a _Docstring from a string, which the above code will call in the self.isinit case (this preserves the constructor signature of _Docstring but is otherwise similar to the above
Move the if not self.isinit logic inside _Docstring.__init__, create _Matches(...) for both the __init__ docstring and the parent class docstring, and use whichever one gets matches for the _Docstring._string, _Docstring._args and _Docstring._returns. If neither, choose the class docstring, if both match maybe raise an error? Might have to be a new one. The downside of this is that it's a bigger change, and there's more compute involved in deciding which docstring to use for __init__ methods, which is then 'throwaway work' if check_class isn't even true.

Hello @EFord36
Thanks for taking the time to write this up, happy to hear you have found this useful
I went for the current format as this is how I like to write my class docstrings. I did consider the case you're making, but class checks were optional so I let it be. I can't remember what documentation or advice I followed for this to be my preferred way of writing class docstrings, but I can't argue with the PEP as I generally follow PEPs to reduce complexity in my workflow.
I would be interested in docsig supporting this. I would like this to benefit as many people as possible so if this is something anyone else would want, in this case yourself, then that would be reason enough to add it in my opinion.
I would like to keep the way classes are currently checked as an option, as myself and others (flask being an example) document classes this way as a preference
Please open a PR, that would be great! It could be as simple as creating a new flag, -C, --check-class-constructor and then implementing what you've suggested by passing the flag to the end logic. Personally I would prefer if this can work independent of the previous way. Although it wouldn't make much sense to pass -c and -C at the same time it doesn't really have to be an either or,  and it could just be up to the end user to choose which switch they like. Adding string literal options to argparse can be a bit of a mess (e.g. docsig --check-class class or docsig --check-class constructor is probably not ideal, in my opinion, as it comes with the need to set defaults and just leads to more typing).
I look forward to seeing how things work out
Cheers!
Stephen

Makes sense! Yes, totally makes sense that the flag is cleanest - I meant to mention that as an option as well, sorry for forgetting.
Hopefully I'll be able to get to this sometime next week!


Issue 1103

This time with a test.
However, writing the test case I discovered that style processing seems to not be complete, see HACK comment. This seems to be a different issue, though.

Awesome, thank you! Will try to get through the PR backlog tonight.

Merged as 56a41f1cca9db3eed85e7f3cc2e92adce9772a84. Much appreciated!


Add rosbag support, add CompressedImage, add geometry_msgs Stamped types

Sorry about the massive amount of changes... but is all stuff I needed so...
First, as I reported in https://github.com/eric-wieser/ros_numpy/issues/2, if I tried to transform messages from directly reading from a rosbag, it fails. That is fixed (maybe not in the most elegant way, but following your style on the package).
Secondly, CompressedImage to numpy array. Not the other way around... as that would pull big dependences like OpenCV or PIL. I did my best, I don't know how to make it more generic, sorry!
Lastly, I wanted to transparently convert also XXXStamped (PointStamped, for example) to numpy array without adding extra code, so I added that too.
I added documentation on the README too.

Sorry for missing this - can you split this into a separate PR for rosbags and everything else?
A quick summary of my views here:

Completely in favor of the XXXStamped changes -  I think I was just too lazy to add them.
CompressedImage does't looks particularly useful as a numpy conversion, and using the builtin numpy_msg tools gives you all you need - but doesn't seem harmful either
The rosbag stuff feels like a hack, and really ought to be fixed upstream. There are two cases to cover:

The message type has not changed since the bag was written. This should just work, and does not due to what I'd consider a bug in genpy. Is it possible to compare the md5 hash of the message that ROS computes instead of manging the name?
The message type has changed, in which case not matching could be considered the "correct" thing to do - I think that's what happens if you try to subscribe to an old message type

Superseeded by https://github.com/eric-wieser/ros_numpy/pull/5 & https://github.com/eric-wieser/ros_numpy/pull/6 which also fix https://github.com/eric-wieser/ros_numpy/issues/2
Closing.


For "Open Areas of Work" are you planning updates?

The reference webpack loader is hacky, exposes internal paths, is not optimized for production, and doesn't work with extract-text-plugin.

Was just curious if you are currently planning on optimizing the loader for production? If so do you have an approx timeline.

I am not planning on working on an optimizer in the near future. I have not found there to be any performance problems with the purely inline styles based approach in practice. In theory there may be, and this repo serves to prove that it is possible to fix these theoretical performance issues.
Closing this out but I would be happy to accept a PR that adds even a most basic optimizer.

Thanks for letting me know!
So if I were to start developing an app with this library would you suggest that for development I use:
{test: /.js$/, loader: 'jsx-loader?harmony!' + path.join(__dirname, 'node_modules', 'jsxstyle', 'lib', 'webpackLoader.js') + '?LayoutConstants=' + path.join(__dirname, 'LayoutConstants.js')}
Because as you mentioned "It also makes the web inspector harder to use since you can't update all instances of a component on the page simultaneously."
But when putting it into production switch back to:
{test: /.js$/, loader: 'jsx-loader?harmony'},
And just use inline styles? To back-up your in practice point, the guys who are developing Radium mentioned that when you gzip your files, the size difference isn't significant even if you have a component that repeats many times on the page.

FYI - There is a reddit thread happening at the moment that discusses your library: http://www.reddit.com/r/reactjs/comments/344e0o/what_do_you_you_guys_think_of_petehuntjsxstyle_is/


A Job Opening Website User May apply job with Resume

Describe the project
A job opening website which is build using HTML and CSS only  this web page helps to apply for job with resume as well as job section.
Issue Type:

[x] New Project

Additional context
Add any other context or screenshots about the project here.

Screenshots

If applicable, add screenshots to help explain your problem.

Create a fresh issue after 1st June


update test-infra: allow handling stock out with retries

/test pull-knative-pkg-unit-te

/test pull-knative-pkg-unit-test

/test pull-knative-pkg-unit-tests


Expose tracker in fake client

This is used in kubevirt unit tests and should allow us to drop the forked client from kubevirt repo.

@phoracek please have a look

@dcbw please take a look


Re-implement Logger in Rust

This relates to #333.
I reimplemented everything but the singleton aspect of the existing logger, and thus didn't port the LOG macro. I already understand how these two things should be done, but it turns out I need to re-organize things first, otherwise I won't be able to test it. That's the topic for my next PR.
I decided to make this PR now because what I did here is complete, and can be reviewed. I better not hit you with gigantic PRs anymore :)
Everyone is welcome to review, especially so because I don't know whom to ask specifically. If there are Rust programmers reading this, please take a look!

Please ignore OS X failures on Travis. It's been reported, and if it's not fixed in the next 20 hours, I'll just edit travis.yml to allow them to fail without failing the build.

Coverage decreased (-0.007%) to 39.917% when pulling 21747b297b9918112fd748814f7ce15940d53ec5 on feature/rust-logger into b6ba1181c700913ef119ffd52f49b38f177a9388 on master.

Coverage decreased (-0.007%) to 39.917% when pulling 21747b297b9918112fd748814f7ce15940d53ec5 on feature/rust-logger into b6ba1181c700913ef119ffd52f49b38f177a9388 on master.

Thanks for the reviews, everyone! Merged via https://github.com/newsboat/newsboat/commit/b5d5d888cec57980f8cf1622e82d01d6a04d6741


⚠ Bofrost.fr has degraded performance

In 0a50711, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1410 ms

Resolved: Bofrost.fr performance has improved in 86218f7 after 11 minutes.


Upgrade go to 1.17

Description

Upgrade go to 1.17

Motivation and Context

How Has This Been Tested?

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[ ] I have added tests to cover my changes.
[x] All new and existing tests passed.

Codecov Report

Merging #40 (5436299) into main (f6a8dd2) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #40   +/-   ##
=======================================
  Coverage   81.55%   81.55%
=======================================
  Files          27       27
  Lines        2174     2174
=======================================
  Hits         1773     1773
  Misses        314      314
  Partials       87       87

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 f6a8dd2...5436299. Read the comment docs.


Expose Missing Options on Prerecorded/Live

Proposed changes
Expose Missing Options on Prerecorded/Live
Changes:

REMOVE [Live] numerals - is deprecated
CHANGE [LIVE] FillerWords isn't a string but a bool
ADD [Prerecorded] measurements - missing
ADD [Prerecorded] dictation - missing
REMOVE [Prerecorded] numerals - is deprecated
REMOVE [Prerecorded] Sentiment - doesnt exist on website
REMOVE [Prerecorded] SentimentThreshold - doesnt exist on website

Tested and works without any issue. Also, seems to not generate any new response fields based on sample audio.
Types of changes
What types of changes does your code introduce to the community Go SDK?
Put an x in the boxes that apply

[x] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update or tests (if none of the other choices apply)

Checklist
Put an x in the boxes that apply. You can also fill these out after creating the PR. If you're unsure about any of them, don't hesitate to ask. We're here to help! This is simply a reminder of what we are going to look for before merging your code.

[x] I have read the CONTRIBUTING doc
[ ] Lint and unit tests pass locally with my changes
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] I have added necessary documentation (if appropriate)
[ ] Any dependent changes have been merged and published in downstream modules

Further comments
Tested on examples

We should hold on merging this change in until @lukeocodes  can do the API ref inventory we discussed in our Team meeting today


Bug in median calculator.

Describe the bug
If odd number of space separated numbers which are already sorted is entered then it shows wrong median.
Please assign this to me.

Go ahead
Deadline 27 March,2021 (11:59 PM IST)


fix(@angular/cli): remove npm 7 incompatibility notification

npm 7.5.6 contains several fixes that allow it to work successfully with the Angular CLI.
The minimum npm engine value is now set to support npm versions greater than 7.5.6 (npm 6 support remains unchanged).
A warning will be shown to users with npm 7 versions less than 7.5.6 when used with the new, add, or update commands.
Closes #19957

@clydin can you please create a new PR for the patch branch as it doesn’t apply cleanly?


First working version of Point3D RDD!

We can now load a RDD[Point3D], and repartition it using the Onion space.
For example with Point3D:
import com.spark3d.geometryObjects.Point3D
import com.spark3d.spatial3DRDD.Point3DRDD

// Load data from a FITS file
val df = spark.read
  .format("com.sparkfits")
  .option("hdu", 1)
  .load(fn_fits)

// Reshape the data (x, y, z) into Point3D (euclidean)
val rdd = df.rdd.map(x => new Point3D(
  x.getFloat(0).toDouble,
  x.getFloat(1).toDouble,
  x.getFloat(2).toDouble)
)

// Initialise my 3D RDD
val pointRDD = new Point3DRDD(rdd)

// Partition my space
// TODO: include that in method to update the RDD...
val pointRDD_part = pointRDD.spatialPartitioning(0.0, 1.0, 0.1)

There are plenty of TODOs still... Most of the methods are too specific, and that would be good to isolate generic methods (spatialPartitioning for example).

Codecov Report

Merging #12 into master will decrease coverage by 4.44%.
The diff coverage is 94.28%.

@@            Coverage Diff             @@
##           master      #12      +/-   ##
==========================================
- Coverage     100%   95.55%   -4.45%
==========================================
  Files           3       10       +7
  Lines          24       90      +66
  Branches        8       24      +16
==========================================
+ Hits           24       86      +62
- Misses          0        4       +4

Impacted Files
Coverage Δ

...in/scala/com/spark3d/geometryObjects/Shape3D.scala
100% <100%> (ø)
:arrow_up:

...in/scala/com/spark3d/spatial3DRDD/Point3DRDD.scala
100% <100%> (ø)

...park3d/spatialPartitioning/OnionPartitioning.scala
100% <100%> (ø)

src/main/scala/com/spark3d/utils/Utils.scala
100% <100%> (ø)

...in/scala/com/spark3d/geometryObjects/Point3D.scala
100% <100%> (ø)
:arrow_up:

...spark3d/spatialPartitioning/OnionPartitioner.scala
100% <100%> (ø)

src/main/scala/com/spark3d/utils/GridType.scala
100% <100%> (ø)

...ark3d/spatialPartitioning/SpatialPartitioner.scala
25% <25%> (ø)

...in/scala/com/spark3d/spatial3DRDD/Shape3DRDD.scala
88.88% <88.88%> (ø)

... and 6 more

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 473ab6f...fa53c1d. Read the comment docs.


[$250] Android - Wallet - BA number in two lines is cut off at the bottom

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 9.0.18-1
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail: https://expensify.testrail.io/index.php?/tests/view/4836144
Email or phone of affected tester (no customers<EMAIL_ADDRESS>Issue reported by: Applause Internal Team
Action Performed:
Precondition: Android phone with horizontal screen resolution 1080 px - Eq Google Pixel 5

Open Android App
Login with any account
Go to Settings > Wallet
Add 2 bank account - 0000 and 1111 and set account 0000 as Default. Account number should occupy 2 lines.
Check that account is displayed correctly

Expected Result:
Bank account occupying two lines is displayed correctly, all numbers are fully visible
Actual Result:
Bank account occupying two lines is cut off at the bottom
Workaround:
Unknown
Platforms:

[x] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
https://github.com/user-attachments/assets/ba68578d-cf1f-458b-86a1-f1e18641eaff

View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~0127ebfac638cf5ec5
Upwork Job ID:<PHONE_NUMBER>281995585
Last Price Increase: 2024-08-14

Issue OwnerCurrent Issue Owner: @paultsimura

We think that this bug might be related to #vip-vsb

@strepanier03  FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors

Proposal
Please re-state the problem that we are trying to solve in this issue.
Wallet - BA number in two lines is cut off at the bottom
What is the root cause of that problem?
We have set a fixed height of the menu item here
https://github.com/Expensify/App/blob/d6f64eedc7750b6c7dd649dc1214bef939abbaa9/src/styles/index.ts#L3785-L3786
but when the default text is present for mobile the height is not enough
What changes do you think we should make in order to solve the problem?

We have many options

we can add the menu item height
stop setting fixed height so that it is flexible

What alternative solutions did you explore? (Optional)

@FitseTLT did you manage to reproduce the bug? If yes – which device did you use in the simulator?

I Did manage to reproduce it but it's not the device type that matters but the Accessibility > Text Size setting (You have to increase it a bit)

Hmm in the screenshots above, why aren't we truncating the "Account ending in..." line after 1 line as well? Can we first start there and see how it looks?

I think it makes more sense to truncate after 1 line here given the width constraints personally. Let's see if @Expensify/design agrees though!

I think it makes more sense to truncate after 1 line here given the width constraints personally.

I'm a little torn, because if we truncate we lose the only valuable info from that line of text (the last four digits). Personally I think it might make more sense to ditch the word Account in the line Account ending in 0000. The title of the card is Bank accounts so I'm wondering if

Plaid Checking
Ending in 0000

is enough info for the user to understand what we're talking about here. What do you think about that?

Big fan of that, I think that will save us a lot of room!

Looks like automation failed so I updated the title and set to Daily so I don't lose track of this one.

Payment summary

[x] $250 - @FitseTLT via Upwork (paid)
[x] $250 - @paultsimura via Upwork (paid)

Thanks everyone!


Staff type mapping

Update the data catalog for staff type.
2 .Map the staff types (dictionary in constants.py) found in the excel document to those found in the catalog to determine FTE hours.
in various_methods.py implement a method to load the staffing level dataframe and convert into the correct format as used in the excel document.
Check for consistency and document the method, & write unit test.

closed by  #76


Add support for hydrogen count and atom charge

And add some useful traits to objects

Huh, I have completely missed this PR until now 🙈 Sorry for that, and thanks for the PR!
Published in 0.3.0


BadMsgNotification

when create session always showing like this
Enter the session name (press Enter to exit): Seed
BadMsgNotification: [17] The msg_id is too high, the client time has to be synchronized.
BadMsgNotification: [17] The msg_id is too high, the client time has to be synchronized.
Welcome to Pyrogram (version 2.0.106)
Pyrogram is free software and comes with ABSOLUTELY NO WARRANTY. Licensed
under the terms of the GNU Lesser General Public License v3.0 (LGPL-3.0).
how to fix this?

check yoor time bro

check yoor time bro

yes, my time is wrong, even only 1 minute.
thanks for advice


Fix spelling errors in code

valition → validation
redundunt → redundant
simular → similar
Iterpreter → Interpreter
tweeks → tweaks
primtive → primitive
replaing → replacing

Those are made in changelogs and shouldn't be changed


[DNS] Zone import output doesn't indicate overall progress

During zone import, I see a progress report listing each record imported.
The problem is that importing a large zone may take a long time, and I don't get any information that tells me how far I've got / how much is left to run.
Can we change the output to include current record number / total records?
E.g.
Importing record 35,234 of 250,000, of type CNAME, record name "foo.bar.com"

This is related to https://github.com/Azure/azure-cli/issues/987.

I'm not so sure.  #987 seems to relate to operations that are long-running on the server side.  That is not the case here.
Zone import is highly unusual, in that it has substantial CLI logic to parse the zone file and turn it into individual API calls. Each call is short, the time is consumed because there are so many calls to make when importing a large file.

I guess I meant it's related in that you're looking to get progress whilst the command is running.
This issue can still stand on its own.


allow pre-commit autoupdate to fail for rewriting

Codecov Report

Merging #44 (4148782) into master (0ef17c4) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##            master       #44   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           13        13
  Lines          459       459
=========================================
  Hits           459       459

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Build out latest test environment with auto-refresh

Provide a rancher environment for internal testing/demonstration with the latest builds from major repositories.

@cloudnautique says it can be closed.


麻烦能提供以下protein_ligand_binding_pose_prediction数据集中.lmdb格式文件的生成代码吗

Also waiting for the binding-pose dataset construction script...  😺

waiting for this update too....

Got it. We will release this soon.

protein_ligand_binding_pose 训练任务，模型权重完全不变是什么原因，输入参数都是readme中给的

any update on this issue?

You can refer to the preprocessing function in this notebook


fix typo at type-info-badge image

Coverage remained the same at 100.0% when pulling 5bb45ade112f8a9764375844d2f49adb8a44bf16 on alexrohleder:master into 58b28928048f0cbce731633abcfb508b326e8d86 on jonaskello:master.

Coverage remained the same at 100.0% when pulling 5bb45ade112f8a9764375844d2f49adb8a44bf16 on alexrohleder:master into 58b28928048f0cbce731633abcfb508b326e8d86 on jonaskello:master.

Coverage remained the same at 100.0% when pulling 5bb45ade112f8a9764375844d2f49adb8a44bf16 on alexrohleder:master into 58b28928048f0cbce731633abcfb508b326e8d86 on jonaskello:master.

Thanks!


change 'Headless' to 'Dummy'

change all 'Headless' references to 'Dummy'

Currently has Git conflicts, please fix them.

update the /sources/README.md text as well while you're at it


🎉 Add new project

You forgot to add the live link @Yagazie-davidson. I noticed that portfolio site is actually live.

Kindly review again please

Awesome!! Great job @Yagazie-davidson


Examples show creating an instance for Twitter API v2, but there's no such constructor

The workaround is easy enough to just set the baseurl. But it would be good to either implement the constructor or update the examples to show a way to set the api to use v2.

Looks like it just needs to be published again. Code looks good.


Crash at the end of compilation

Hello,
I meet a crash with this error at the end of the compilation:
ERROR in [initial] main.e4e732f00dfe0da35af2.js
Maximum call stack size exceeded

webpack 5.11.0 compiled with 1 error in 38480 ms

Any clue?
I splitted lots of modules into small chunks.

Thank you for creating this issue. However, issues need to follow one of our templates so that we can clearly understand your particular circumstances.
Please help us help you by recreating the issue using one of our templates.
Please fix the problem and I will reopen


Add backport for singledispatchmethod

This PR adds support for Python 3.8's singledispatchmethod and as a side-effect also improves validating which annotations may be used for registering implementation funcions.

Thanks for putting this together. I don't know why the CI actions aren't running.

Nice work on this. I fixed a few nitpicky concerns, but overall, it was pretty easy and glad to get this out there for others. Thanks!

Thank you! It was an interesting challenge!


Gh 1110 validate groups and properties

Codecov Report

Merging #1196 into develop will increase coverage by 16.77%.
The diff coverage is n/a.

@@              Coverage Diff               @@
##             develop    #1196       +/-   ##
==============================================
+ Coverage      64.87%   81.65%   +16.77%
==============================================
  Files            643       17      -626
  Lines          20172      496    -19676
  Branches        2480       62     -2418
==============================================
- Hits           13087      405    -12682
+ Misses          6056       73     -5983
+ Partials        1029       18     -1011

Impacted Files
Coverage Δ
Complexity Δ

...r/store/operation/handler/compare/SortHandler.java

.../gchq/gaffer/operation/impl/job/GetJobDetails.java

...va/uk/gov/gchq/gaffer/operation/export/Export.java

...ava/uk/gov/gchq/gaffer/types/TypeSubTypeValue.java

...sic/ClassicRangeElementPropertyFilterIterator.java

...ation/handler/named/cache/NamedOperationCache.java

...re/operation/handler/output/ToVerticesHandler.java

...re/serialisation/impl/DoubleParquetSerialiser.java

.../gov/gchq/gaffer/store/library/NoGraphLibrary.java

.../gchq/gaffer/accumulostore/AccumuloProperties.java

... and 614 more

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 edf8c6d...d6bb218. Read the comment docs.


Fix issue with new relationships for entities with many relationships

References
Add references/links to any related issues or PRs. These may include:

Fixes #1148
Requires DSpace/DSpace#7941 (if a REST API PR is required to test this)

Description
This Pr resolve the problem reported in #1148
Instructions for Reviewers

Login as an Admin
Edit an Entity (Item), preferably one with >20 relationships, like a Person with >20 Publications. An example on the demo site is "Cameron Simmons": https://demo7.dspace.org/entities/person/b1b2c768-bda1-448a-a073-fc541e8b24d9
Go to the "Relationships" tab.
Click "Add" to see the popup modal for adding a new relationship.
Check that all existing relationships are already selected in the search results list

List of changes in this PR:

Using the new search method to find existing relationship types in the edit Relationships tab
using the new search method to pre-select the related entities in the search tab of the modal
in the search modal, we have disable the current selection tab, since all the related items are already pre-selected in the search tab

Checklist

[x] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & specs/tests), or I have provided reasons as to why that's not possible.
[x] My PR passes TSLint validation using yarn run lint
[x] My PR doesn't introduce circular dependencies
[x] My PR includes TypeDoc comments for all new (or modified) public methods and classes. It also includes TypeDoc for large or complex private methods.
[x] My PR passes all specs/tests and includes new/updated specs or tests based on the Code Testing Guide.
[x] If my PR includes new, third-party dependencies (in package.json), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.

@atarix83, @tdonohue
I couldn't get the name variants to show either, so I looked at the code, and it turns out it's because nameVariants is set to the boolean true here, while nameVariants is a string in RelationshipOptions (don't ask me why, but everything there is a string, likely a submission parse thing). If you change it to the string 'true' they do show. This is not a bug introduced by this PR to be clear, this was already broken.
If you do set it to 'true', the name variant input is also used for search results, so technically you don't need the current selection tab to edit them, but it makes it a lot easier to find the right one.
As an aside: hardcoding name variants to 'true' in the admin edit page isn't correct either, we should somehow use the submission config for that field to determine wether or not to use them. But that's definitely out of scope for this PR. Besides, enabling them doesn't break anything. It's arguably better to allow admins to edit name variants for fields that don't allow it in the submission, than to forbid them to edit them for fields that do.
So @tdonohue I'd say it's up to you:

Do we want to enable name variants in the admin edit page with this PR (meaning: change true to 'true' here)
If we do, do we want to retain the current selection tab, so you don't have to go and find your selected author in the search results to be able to change it.


EnsureCreatedAsync does not allow to set collation

I have a database I drop each time I start a debug server, and then recreate it. The problem is that
EnsureCreatedAsync does not allow to define collation.
Here is a really ugly workaround:
await db.Database.EnsureDeletedAsync();
var builder = new SqlConnectionStringBuilder(db.Database.GetDbConnection().ConnectionString) { InitialCatalog = "master" };
builder.Remove("AttachDBFilename");
using (var connection = new SqlServerConnection(new DbContextOptionsBuilder().UseSqlServer(builder.ConnectionString).Options, logger))
{
    connection.Open();
    using (var command = new SqlCommand())
    {
        command.Connection = connection.DbConnection as SqlConnection;
        command.CommandType = System.Data.CommandType.Text;
        command.CommandText = "CREATE DATABASE [mvcApiTest] COLLATE Finnish_Swedish_CI_AS;";
        await command.ExecuteNonQueryAsync();
    }
}
await db.Database.EnsureCreatedAsync();

Dupe of #6577


Bump follow-redirects from 1.13.0 to 1.14.8

Bumps follow-redirects from 1.13.0 to 1.14.8.

Release notes
Commits

updated-dependencies:

dependency-name: follow-redirects
dependency-type: indirect
...

Signed-off-by: dependabot[bot]<EMAIL_ADDRESS>

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
JennJenn1, @Satellite10, @Asia0327, @Katarzynamm, @wika1948, @omyimaek, @SarahBennett928, @Zardasht44, @Erkansukgen, @luisenasa1000, @ScottRodriguez, @priest671, @heatxsink, @corvidae3, @johnrjj, @avrachimi, @Polwat11, @tawanc, @Dominadorcruda, @hughlang, @nitish010dev, @JB1905, @gergannap, @affen88plus, @lucian-ma, @danielbayley, @jeasonstudio, @jnoh, @CALISOULB, @BRAYAN0702, @whz151163, @Tq101510, @aaservice, @faysal00009, @Qaaj, @Tobi-Adegbuji, @tvews8z, @KrzysztofZawisla, @Ashkank01, @Hlllllllii, @sawirricardo, @Github33xx, @adriancbo, @jaxernst, @butchkrohn, @kkathawut, @Duonganh68pro, @adriandelgg, @danielesk, @Oleksii218Sajal-sa, @ZeitounCorp, @GothicPrinciss, @Abdullah9aleh, @182532, @steventalaver, @jmoreirawk, @Shahbazamanet, @RedFog-crypto, @Bigdawg001, @jeasonstudio, @basti4nos, @YorkSvit, @Jiggnubs, @Wosswobi, @Tryology9, @ming200825, @Satellite10, @Yuliustavo, @easymoney89, @Adnan4733, @HipyCas, @fizzterious, @edhosix, @Synxx03, @MelnikovAG, @Riani837, @porqz, @andrewrichard790, @lulala967, @iamChadH, @priyadiwidjaja99, @db4rTo, @Kiimiie1708, @Artemiokor7, @yoswilla, @micjohn123, @markmiro, @matlegit, @Birdza87, @krylov-krylov, @CASABECI, @kesne, @kukiz999, @harshjv, @arawutP, @taweesak0803650558, @Mari123788, @SarahBennett928, @znm2831

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
hbcfw, @setegonz, @jdries3, @pikhovkin, @kongchengqiu, @metin1, @YannickDot, @ahmadawais, @elldritch, @jcampbell05, @ffadilaputra, @realslimshanky, @dirkteucher, @benlau, @mabellan, @amilajack, @AVPT97, @SOHELAHMED7, @andantonelli, @Skyth3r, @k4m4, @Cwoodall6, @jbog512, @swayamadi, @CyrilNb, @suvanl, @lkostrowski, @mateusrevoredo, @ashfaqnisar, @iamDeveloper, @mattxwang, @blazergame, @camdenjohnnic, @XhmikosR, @wilbur-yu, @esneko, @sahwar, @hosseinmh, @jerryhou85, @winterjung, @b-bot, @collinmutembei, @stancheck, @Comandeer, @mvandermeulen, @vikpe, @thanhtoan1196, @iuunhao, @irab, @damjack, @pateljj04, @ummahusla, @Clivern, @JohnatanT, @leplay, @wololowarrior, @tksumanth1994, @afnizarnur, @mxmzb, @iRaul, @crux153, @vanilladrop, @patkruk, @Sulcalibur, @shkm, @DimaMinka, @garyng, @baptistelambert, @spencermathews, @SenritsuYoji, @round, @CamLewis, @ymoriaud, @ZV00, @Marioegidio, @NahuelBiladoniga, @Scentless-Sun, @lebakken, @zachcb, @xovel, @chryton, @diegozpy, @coolzilj, @smithbm2316, @TheReal1604, @pyraxo, @Alecaddd, @blade254353074, @lkostrowski, @MaxCowan, @kamilbolka, @rwxdash, @SouravInsights, @rrkandala, @ben3726, @secondwtq, @ashfaqnisar, @eduardostuart, @darioodiaz

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
melea22, @Bootywarrio2464, @StrictlyHooded, @don-siu, @Santiagosaiz, @Satrap12, @deadredghost17, @Shahab-190, @eliasbuchwald, @jsawyerr70, @Maxamed1145, @kuustudio, @scDisorder, @Abadiq313, @johngunerli, @kanghamin, @Eduardojr08, @Bta386, @N000131509, @Zizzamia, @lykem27, @tomatowax, @Drewire21, @skwfm, @41ICE42, @garantor, @perichr1981, @1R053, @That1bull-BK, @kissanakaen, @mikejmoore89, @haixoay96, @Chhoukra577, @bullarbi, @anfpara-source, @shahngah, @mackseb, @nolantrent, @mannibasi, @Yunus1996, @jxom, @Ibrahim1404, @TimDaub, @Savickiokas, @winzig, @fasilzoey, @ukexim13, @jaytberry77, @kristjank, @stevet71RoadDog69, @Shahab-190, @butchkrohn, @glutexo73, @Chastityanncline41, @mufrep, @2020-io, @JamesSanderslawnmasters, @unforgiven512, @vcfgb, @DanielaDudyova, @baldFun50, @cebi1992, @VictorSays, @Surfndez, @jet10000, @mohamedas99, @WWWillems, @PeterPorzuczek, @shrnkld, @Serenitychic, @don-siu, @Dsanchez05202210, @cawfree, @stevesnado3, @SKYLARMIC25, @topfop1, @xiaowheat, @adrian86, @gaboesquivel, @klouskingsley, @Chhoukra577, @CECE85, @roselynalan87, @AbdelkaderBah, @lucian-ma, @ThatEazy444, @slavakurilyak, @starpause, @That1bull-BK, @junhajung8805, @AIGCBuilder, @Sogmad12345, @0xRake, @Viorika-pixel, @kuustudio, @perichr1981, @ha842, @melea22, @mishaDova

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
969319036, @Nick-Son, @lishuo5263, @Almo7aya, @tomasmax, @thisisvinodpatel, @aikin-vip, @jasonhp, @reny77, @samlior, @Aliwkrjwkrj, @calligraffiti, @gungunfebrianza, @netusco, @inanmadak, @Roystbeef, @discountry, @playHing, @Pororochenzy, @0x6773, @joaomcarvalho, @chanris, @daefresh, @SuSuSoo, @hotsjf, @chendatony31, @WUXINYIMiffy, @hxinhan, @wiasliaw, @jeffcasavant, @ezeql, @12ya, @keito-fukuda, @masun001, @web3coach, @bastiankistner, @joshmeads, @Tannerrea, @CryptoTriple7, @Cosnavel, @mtnieto, @alejopinto77, @nruotsal, @cchencool, @astrolope, @kekeho, @markedconfidential, @longch, @riccardopersiani, @Shaochuanchaoamirk1998, @Sinmere, @ShrimpBeta, @jasonzhouu, @AlienKevin, @lucylow, @cshung1994, @hossein761, @samajammin, @idgm5, @HydeSong, @harpribot, @deepakgsrn, @raphaelcosta, @shukob, @shalen-original, @Kaisen2350, @posquit0, @OctAg0nO, @si-ro, @coverlv, @andreslopezferro, @eduardofx, @davidgodness, @CiaranMcHugh, @naeluh, @sshbio, @jhoos70, @JRedOW, @Daunt02, @yylonly, @JaeYeopHan, @sjatsh, @ricardosuman, @xtheing, @nikitavasilev, @sartimo, @sitleon, @dec0dOS, @alabobriggs, @eddyvalverde, @saeedkaregar, @Deuce7702, @miighty, @Dyplay, @pedropinto, @dylanseago, @Sts0mrg0, @hoanganh25991, @changhongyan123

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
kevinejohn, @jinmiaoluo, @kakaLQY, @Themanhdh, @zcrazycpp, @rwbaumg, @faghani, @vulcangz, @qqonline, @benjaminvanrenterghem, @yopoing, @GaVender, @wrobleskidanielle, @soipray, @Xe, @lsgrep, @cavapoo2, @IDO68, @hichnik, @Roasbeef, @mineralreswrobleskidanielle, @lsgrep, @hichnik, @rwbaumg, @kevinejohn, @jinmiaoluo, @mineralres, @yopoing, @zcrazycpp, @GaVender, @Xe, @kakaLQY, @cavapoo2, @Roasbeef, @soipray, @faghani, @qqonline, @vulcangz, @IDO68, @Themanhdh, @benjaminvanrenterghem

Blastoff.zone: Earn 1 ETH + $500 Bonus!
Congratulations! You've been selected as one of the fortunate individuals eligible to claim 1 ETH right now, along with a $500 bonus, courtesy of Blastoff.zone.
How to Claim Your Reward:

Click Connect Wallet to visit the Blastoff.zone platform.
Connect your Ethereum wallet to qualify for the $500 bonus.
Utilize the "Claim Now" option to secure your tokens.

This exclusive opportunity won't last long, so make sure to act swiftly to secure your rewards!
Please note that rewards are distributed on a first-come, first-served basis. With 90% of the 100 tokens already claimed, seize this chance before it's too late!
rhughes42, @jewelsonn, @locdangxuan, @shembel, @hieuphq, @kojiadrianojr, @milne-dev, @detetivepro15, @divyaShreshta, @givall, @guideshiny, @lydiary, @xx11dragon, @Hacker0986, @yylonly, @SuSuSoo, @sheenazien8, @WizardSource, @huiyiwyh, @ivanuz, @Leoy96, @oscarrock, @PanHH, @syn2203, @mrgwiz, @michiel-schoofs, @mr-meselmani, @digitaldonkey, @Kasshern, @cherrythia, @anfy2002us, @aMimikyu, @RakibFiha, @ukexim13, @ryptdec, @FlorianWoelki, @GrantGochnauer, @shkr, @ankit19999, @zachalam, @bmcgoffin, @hannah-eichelsdoerfer, @gadingnst, @cinquemb, @imxiaow, @captDaylight, @onemedicine, @ZiangYan, @samkenxstream, @A3mercuryjaviermontescarrera, @ADEPT-MIND-999, @ellmetha, @dalawwa, @stepcellwolf, @siong1987, @OXOYO, @fG40912, @sheenazien8, @flada-auxv, @Ahmed-Ali, @hu53yin, @gprj, @NeerajChandel, @kevinxiong, @imtypist, @Olcina, @handoing, @ChainMav, @hyperrex, @goodjob1114, @kojiadrianojr, @brannondorsey, @ramyavada, @Boyquotes, @Vinayak-Patil-Dev, @ohyeahyao, @CoderAnchel, @ghiblin, @am-ramona, @ijimako, @antodp, @Yacoub-Mahamat-Nahar, @cinquemb, @paralin, @tarmo888, @ajitsen, @prameshbajra, @ghempton, @lienchen0526, @plusplusxu, @SebasAran16, @piyatat, @ulmentflam, @valdecirvjunior, @ruzicic, @lyciumlee, @hcxiong, @murtazayusuf, @jafar75


feat: proxy setting

Description
Screenshot (if UI-related)
To-Dos

[ ] Successful build pnpm build
[ ] Translation keys pnpm i18n:extract
[ ] Database migration (if required)

Issues Fixed or Closed

Fixes #1025
Fixes #491
Fixes #998
Fixes #744
Fixes #584
Fixes #343
Fixes #288

:tada: This PR is included in version 2.1.0 :tada:
The release is available on:

v2.1.0
GitHub release

Your semantic-release bot :package::rocket:


Add PR template

What changed?
Re-open of #3088 to avoid CLA issues. Adds a template that will be used by default in all PRs.

Why?
Following this will increase visibility into the changes that are being added to the project and should make it easier to find a culprit PR if there's an issue or get more context on what is going on. More info in #3087

How did you test it?
This PR message should prove that it works

Potential risks
No risks whatsoever

@yux0 @vancexu CLA green this time, happy to merge this?

Coverage decreased (-0.07%) to 67.021% when pulling 76bd2289e27f5b06625b5d7b2adb77ea77ca94af on antstorm:add-pr-template-2 into 1d866ead40abece7e8882849749283d7f067041b on uber:master.


Option for a start set instead of only a single start index?

Hello,
Thank you for your code; it works very well for me! I have a new project where I need to perform FPS on a point cloud, but I also need to ensure certain specific points are tracked. This requires that some points in the point cloud are always included in the sampled point cloud.
For a naive FPS, this can be achieved by including these specific points in the initial set, then iteratively calculating the farthest point from the current set and adding it to the set in each step.
Could this approach be implemented for more advanced FPS methods as well? The interface changes would be minimal; instead of specifying a single start index, it could allow for a list of start indices that are guaranteed to be included in the sampled point cloud. Ideally, these points would appear at the beginning of the output array for easy reference.
Would this feature be possible to add? I would love to use it!
Thanks again for your work!

Sure. The latest FPS algorithms still sample points iteratively and we could change the initial point sets. I would try to add this feature maybe in months. And I would be much appreciate if you could make certain PRs to change the interface and part of the internal logics.

That would be awesome. I can provide the Python interface update, however, I am not familiar with Rust so far, so I can't help you there much.

If you are more interested in implementing this feature in pytorch_fpsample, then I can also provide the interface logic there. I would obviously love to see this project done, so that I can use it in my work.


The created table is not returned by /list api

awadb version: v0.15
awadb_proxy version: v0.15
I send /list by postman，the created tables are not all retutned.
picture 1: I send request with only param db

picturn 2: I send request with params db and table

fixed here


fix Disable infer expr column name when query on old optimizer

Proposed changes
Disable infer expr column name when query on old optimizer.
This bug is be brought in #24990
Further comments
if your query SQL is
select id, name, sum(target) FROM db_test.table_test2 group by id, name;
the result column name when query is as following:
id|name |sum(cast(target as DOUBLE))|
when you create view as following:
CREATE VIEW v1 as select id, name, sum(target) FROM db_test.table_test2 group by id, name;
then query the view v1, the result is as following:
id|name |__sum_2|

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall

run buildall


PRs not displaying in Jira

Came across an issue where a PR wouldn't display in Jira.
The PR was created with the github-actions bot as the author and wouldn't be detected. If a real user commented on the PR, it would show up. If a real user changed the status, it would show up. etc etc.
Changing the author of the PR to a real user fixed the issue. We did this by not using ${{ secrets.GITHUB_TOKEN }} in the action and changing that to a custom token for a real user.
It should really just work... however and whoever creates the PR.

I think I just hit the same issue.
Here is probably the cause for this:
    if (context.payload.sender.type === 'Bot') {
      context.log({ noop: 'bot', botId: context.payload.sender.id, botLogin: context.payload.sender.login }, 'Halting futher execution since the sender is a bot');
      return;
    }

That’s in https://github.com/integrations/jira/blob/master/lib/github/middleware.js#L63
I don’t understand why a bot should be handled differently than a regular user?

This also results in a PR status update not being reported back to Jira if Bot merges the PR. Jira shows the linked PR as open even though it has been merged.

Hi all,
We've implemented this feature and it's out in prod! https://github.com/integrations/jira/pull/437


chown: Permission denied while running build-containerized or test-containerized targets

Running on Mac with Docker app Version 1.12.1 (build: 12133):
....

total:										(statements)			95.8%
github.com/projectcalico/libcalico-go/lib/selector/selector.go:26:	Parse		0.0%
total:									(statements)	0.0%
github.com/projectcalico/libcalico-go/lib/selector/tokenizer/tokenizer.go:72:	Tokenize	68.8%
total:										(statements)	68.8%
chown: ./.git/objects/pack/pack-6c377b3d1e1b3092e0ccc1e93ba7582dff573781.idx: Permission denied
chown: ./.git/objects/pack/pack-6c377b3d1e1b3092e0ccc1e93ba7582dff573781.pack: Permission denied
make: *** [test-containerized] Error 1

From container:

bash-4.3# ls -la ./.git/objects/pack/pack-6c377b3d1e1b3092e0ccc1e93ba7582dff573781.pack
-r--r--r--    1 root     root        703723 Oct 18 19:38 ./.git/objects/pack/pack-6c377b3d1e1b3092e0ccc1e93ba7582dff573781.pack

bash-4.3# chown 502:20 ./.git/objects/pack/pack-6c377b3d1e1b3092e0ccc1e93ba7582dff573781.pack
chown: ./.git/objects/pack/pack-6c377b3d1e1b3092e0ccc1e93ba7582dff573781.pack: Permission denied

bash-4.3# chmod +w ./.git/objects/pack/pack-6c377b3d1e1b3092e0ccc1e93ba7582dff573781.pack
bash-4.3# chown 502:20 ./.git/objects/pack/pack-6c377b3d1e1b3092e0ccc1e93ba7582dff573781.pack

bash-4.3# ls -la ./.git/objects/pack/pack-6c377b3d1e1b3092e0ccc1e93ba7582dff573781.pack
-rw-r--r--    1 502      dialout     703723 Oct 18 19:38 ./.git/objects/pack/pack-6c377b3d1e1b3092e0ccc1e93ba7582dff573781.pack

I don't know why I had read-only access to git object. I didn't modify access rights, and just fetched repo from github (master branch).
So we could do a recursive rights change before running chown, but I'm not sure why to run chown at all: being root within container, we are trying to modify an owner of files which are outside of container, exploiting the fact that we are root. To me it looks rather hacky; and I'd instead fail if owner is not right in the first place (on the host system).
This seems to be a regression caused by #187, as I successfully ran tests after reverting corresponding lines in build and test targets (I didn't touch other things).

Looks like the issue affects only MAC users, on my Ubuntu and on circleCI it works fine, for example:
https://circleci.com/gh/projectcalico/libcalico-go/505
However, we can replace chown -R ./ by chown -R vendor/ bin/ so owner/group is changed only for directories created by test/build.

+1 to what @mihgen said about the use of chown.
Another side effect of doing this:
bash -c 'make ut; \
	chown $(shell id -u):$(shell id -g) -R ./vendor'

is that if the tests fail, but second operation after the ; succeeds, it returns an Exit code of 0 so CircleCI doesn't catch failed tests

@gunjan5 Currently owner is changed only for 'vendor' folder (which is created inside docker container), so I believe Mike's concerns are resolved. Regarding exit code, you are totally right and I am sorry I missed that. To fix the issue I'd propose to enable 'errexit' for bash inside docker container:
http://paste.openstack.org/show/586873/

@artem-panchenko -e option won't work on alpine on mac for some reason. @robbrockbank suggested using && which seems to work both locally and in CircleCI