Auto-Configuration should expose explicit datasource type, not interface

The following auto-configuration exposes a bean of type javax.sql.DataSource and provide an explicit initialization method on it:
https://github.com/alibaba/druid/blob/f937ecd43363b2df61afdc120858097cb2510580/druid-spring-boot-starter/src/main/java/com/alibaba/druid/spring/boot/autoconfigure/DruidDataSourceAutoConfigure.java#L53-L58
javax.sql.DataSource does not have an method named init so introspecting the bean definition at build time is failing. Please expose the actual type rather than the interface.

@wenshao Is it possible to deal with it? This affects additional applications.

it might be better that removing initMethod from @Bean and calling init() at the end of DruidDataSourceWrapper#afterPropertiesSet

refer to org.springframework.beans.factory.BeanFactory javadocs:
The full set of initialization methods and their standard order is:
1.BeanNameAware's setBeanName
2.BeanClassLoaderAware's setBeanClassLoader
3.BeanFactoryAware's setBeanFactory
4.EnvironmentAware's setEnvironment
5.EmbeddedValueResolverAware's setEmbeddedValueResolver
6.ResourceLoaderAware's setResourceLoader(only applicable when running in an application context)
7.ApplicationEventPublisherAware's setApplicationEventPublisher(only applicable when running in an application context)
8.MessageSourceAware's setMessageSource(only applicable when running in an application context)
9.ApplicationContextAware's setApplicationContext(only applicable when running in an application context)
10.ServletContextAware's setServletContext(only applicable when running in a web application context)
11.postProcessBeforeInitialization methods of BeanPostProcessors
12.InitializingBean's afterPropertiesSet
13.a custom init-method definition
14.postProcessAfterInitialization methods of BeanPostProcessors


Cleaned up README.md

Moved around the userscript mode to bring attention to it as the easier to use mode, made it's instructions mimic the headless mode, and a couple of captializations

@meepen fixed it

@meepen did all your requested changes, sorry for making you have to wade through this to find my errors :)


Fix extraData in approveAndCall not being ABI encoded in HumanStandardToken

Appending a bytes array to a function call wasn't properly setting it as the bytes parameter.

Hey @izqui. I misunderstood how you changed/edited it from our Twitter convo.
I don't think this is correct. You should be able to pass bytes as usual into extraData (from Solidity itself), in which this will cause it to break. (eg: using a throwProxy here by passing through bytes will cause this to break).
Meaning, the responsibility for the right encoding should not be the contract's responsibility. It's the test itself that should change its encoding, and then pass it onto the contract.
Does that make sense?
As far as I understand it, you are basically allowing the contract to take non-bytes info and create the equivalent bytes representation? Is that correct?

The problem is that, as far as i understand, passing a bytes array directly
in a raw call will not correctly ABI encode it as a bytes array parameter,
it will just append those bytes. In order for making a correct call, this
encoding needs to be made.
On Sat, Apr 1, 2017, 4:37 PM Simon de la Rouviere<EMAIL_ADDRESS>wrote:

Hey @izqui https://github.com/izqui. I misunderstood how you
changed/edited it from our Twitter convo.
I don't think this is correct. You should be able to pass bytes as usual
into extraData (from Solidity itself), in which this will cause it to
break. (eg: using a throwProxy here by passing through bytes will cause
this to break).
Meaning, the responsibility for the right encoding should not be the
contract's responsibility. It's the test itself that should change its
encoding, and then pass it onto the contract.
Does that make sense?
As far as I understand it, you are basically allowing the contract to take
non-bytes info and create the equivalent bytes representation? Is that
correct?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ConsenSys/Tokens/pull/45#issuecomment-290923954, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAbTYEUT0sOqLtws-T4bUb4JqzLcvWPmks5rrmEWgaJpZM4Mvnvy
.

@izqui, yes. That is correct, but I would still venture and say it should be encoded before you do the call. The contract shouldn't do the encoding.

Ok, I see what you are saying.
But I think the user expectation is that whatever data they send in the extraData parameter is exactly what the receiving contract will receive in the extraData parameter.
What you are proposing right now is that for calling an approveAndCall, the user would need to do:
token.approveAndCall(..., abi_encoded(extraData))

And that extraData parameter will be ABI encoded by web3 again, so the data sent to the blockchain in the tx data will be abi_encoded(abi_encoded(extraData)).
I think it should be a responsibility of the contract once it receives a valid bytes array to pack it correctly doing its abi_encode before forwarding it via a raw call.

I think it should be a responsibility of the contract once it receives a valid bytes array to pack it correctly doing its abi_encode before forwarding it via a raw call.

I might be misunderstanding this.
The issue I have with this is that an already encoded call will be then malformed by the right pad. This is likely to occur when you use bytes that are already correctly encoded: eg msg.data. So, then you would need to decode this, JUST to be able to send it across.
You are also then incurring extra gas costs, when you could've just encoded it outside the contract.
Do I have it right?

The problem is that when you do a raw call, and pass a bytes array as part of the payload it will not encode it correctly.
The extra data is correctly encoded in msg.data but gets decoded when assigning to the extraData parameter.
I'm doing a poor job explaining myself, let me try with this example:
contract Receiver {
  function receive(bytes extraData);
}

contract Sender {
  function send(address to, bytes extraData) {
      Receiver(to).receive(extraData);  // this works

      bool result1 = to.call(bytes4(sha3('receive(bytes)')), uint256(byte(0x80)), uint256(extraData.length), rightPad(extraData));  // works as the above function

      bool result2 = to.call(bytes4(sha3('receive(bytes)')), extraData);  // this will not work as the above call as it just appends the decoded bytes to the call payload.
  }
}

it should be encoded before you do the call. The contract shouldn't do the encoding.

I agree with Simon. No reason to spend gas on this in-EVM. Better separation of concerns leaving it out of the contract. I think this should be closed.

There is an issue iirc, that I spoke with @izqui about. And I tried to get a grip around the problem by running some tests and encodings. Encoding issues in general is a headache for me though. And I forgot exactly what the problems/issues were.

I think the easiest way to solve this is by having Solidity do the encoding under the hood, and not doing a raw call.
MiniMe fixed this having an interface and then just making the call through it

I've reviewed this and @izqui claim is right. However there's not a need to right pad the extra data.
My proposal is to keep the call as:
_spender.call(bytes4(bytes32(sha3("receiveApproval(address,uint256,address,bytes)"))), msg.sender, _value, this, uint256(byte(0x80)), uint256(_extraData.length), _extraData)
Other than that this LGTM, we should merge!

approveAndCall is not part of the EIP20 token definition, and for the time being, not within scope of this repo.


windsock: get stable results

Running the same bench twice does not give stable results, neither locally nor on AWS
But I'm focusing on AWS atm because that feels more important.
network and disk IO does not go above 5MB, so it feels unlikely that we are hitting limits there.
I've noticed that shotover benches will be off by a certain % for the entire bench
While non shotover benches will be based around 0.0% and then go up or down from there before returning to 0.0%
So it looks like shotover is introducing a second kind of noise.
So we should first address the noise without shotover.
cassandra benches have the bencher setup to only use 1 thread.
using 2 threads on a m6a.large instance seems to make noise worse
But maybe using more threads on a larger instance will help?
Maybe I need a better idea of what people have historically found to be stable.
cassandra,compression=none,driver=scylla,operation=read_i64,protocol=v4,shotover=none,topology=single observations
I've now observed that latte is more consistent than windsock
windsock seems to consistently drop performance at the 42-44s into the benchmark. (resolved)
Not sure if there were other differences in consistency observed.
I attempted to rewrite windsock's bencher to be more like latte, but it did not help.
Either need to profile bencher to find out whats going on or I need to blindly try copying more logic from latte.
cassandra,compression=none,driver=scylla,operation=read_i64,protocol=v4,shotover=standard,topology=cluster3 observations
latte has 10x more throughput than shotover in its default configuration.
latte gets ~60000 OPS while windsock gets ~5000 OPS
Increasing lattes thread count drops latte performance
wow, I can get numbers similar to latte by setting --operations-per-second 50000 as soon as I set --operations-per-second 55000 actual OPS drops to 5000.
If I set the bencher OPS to 50000, shotover will meet exactly 50000 OPS.
However if I set the bencher OPS to 55000, depending on the run, shotover may reach 55000, or it may get stuck at a much lower OPS, I've seen as low as 5000.
If I then set OPS to unlimited it pretty much always runs at 5000 OPS
Latte doesnt seem to experience this same cliff, it does seem to max out at about the same point that shotover can reach (60000) on its default configuration.
But if I increase the number of concurrent messages to 500 it can hit 80000
shotover=none gives similar throughputs for latte and windsock but latte still a bit higher.
Here increasing thread count does actually improve latte performance.
Things to try:

profiler the bencher
tokio-console on the bencher
try updatings deps on latte

This PR has shown promise: https://github.com/shotover/shotover-proxy/pull/1360
However, I think the next step is to add functionality to windsock to allow reusing EC2 instances.
This will eliminate the noise caused by differences in EC2 instances.
I am thinking an API like this:
> # Create the resources required to run the benches specified in FILTER and then store the information required to access those instances to disk
> cargo windsock --store-cloud-resources-to-disk FILTER
Creating AWS resources: CloudResourcesRequired {
    shotover_instance_count: 1,
    docker_instance_count: 3,
    include_shotover_in_docker_instance: false,
}
> # Run the benches once, using the instances created in the previous command.
> cargo windsock --use-cloud-resources-from-disk FILTER
Running "kafka,shotover=standard,size=100KB,topology=cluster3"
...
> # Run the benches a second time reusing the same instances
> cargo windsock --use-cloud-resources-from-disk FILTER
Running "kafka,shotover=standard,size=100KB,topology=cluster3"
...
> cargo windsock --cleanup-cloud-resources

After that is implemented it should be easier to evaluate #1360


adding functionality to button created by arjun-Ingole

this a simple button,i want to add animation or transition to this button

Hi, are you still working on this issue? If you've already made a PR with the changes that have been merged then please close the issue. If you have an open PR, please mention this issue number in your PR in order to link them.


chore: upgrade zondax ledger libraries

Related Github tickets

https://github.com/VolumeFi/paloma/issues/1233
https://github.com/palomachain/paloma/issues/1079

Background
These appear to be indirect dependencies from Cosmos directly, but luckily no version conflict in raising the dependency manually.

@byte-bandit Even after the update, I am still unable to send with ledger. I think I will need some further debugging here.


Error Summary component init function is monkeypatched in GOV.UK Design System

Copied from Trello ticket https://trello.com/c/VIpSULRT/
Cause
Error summary component by default takes focus on page load; for examples in the Design System pages this is not desirable, so the behaviour is overridden:
https://github.com/alphagov/govuk-design-system/blob/61383c31a75aabf45eafe396ea2b5aa03071ebd4/src/javascripts/govuk-frontend.js#L30
Consequences

Risk of breaking the error summary examples in the Design System if we updated the init function or refactored the component such that the patched function no longer worked correctly.
Risk of missing functionality in the Design System if we added new functionality and forgot to update the patched init function.

Impact of debt
Low, as it should only really affect us.
Effort to pay down
Low, though we do need to work out a way to deal with this holistically.
Overall rating
Medium

Once https://github.com/alphagov/govuk-frontend/pull/2494 has been released, we should be able to remove this code and use the disableAutoFocus macro option in the error summary component itself instead.


Enable SMT/z3 logging

Reviewer checklist

[ ] Test coverage: stack test --coverage
[ ] Public API documentation: stack haddock
[ ] Style conformance: stylish-haskell

Went down the wrong path. Re-opening new branch.


Optionally use setImmediate instead of nextTick in middleware

When upgrading from node 0.8 to 0.10, we were failing with errors like this:
... snip ...
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.

node.js:0
// Copyright Joyent, Inc. and other Node contributors.
^
RangeError: Maximum call stack size exceeded

This uses setImmediate instead of nextTick if available, allowing our hubot to boot.
cc @technicalpickles

Maybe this would be better on Robot than middleware? There's stuff in listener using it too.

Maybe this would be better on Robot than middleware? There's stuff in listener using it too.

nextTick is not deprecated entirely, only when used recursively. That's how we use it in middleware. I got the use case in listener that's recursive and left the other one alone.

Sounds good then :+1:

Hmm.. the docs recommend using process.nextTick if you are async-ifying a function: https://nodejs.org/api/process.html#process_process_nexttick_callback_arg
The reason the warning is there is because the behavior changed from "after I/O" to "before I/O" in 0.10. I think we are okay with blocking I/O here, so that warning is noise. I wonder if it got removed in later versions...

The reason the warning is there is because the behavior changed from "after I/O" to "before I/O" in 0.10.

Not just that. nextTick was officially deprecated in recursive contexts, which our middleware turns out to be. We still have a few other nextTicks that are fine; only the ones done in the middleware's inner loop are bad. Ctrl-f for 'recursive' in https://github.com/nodejs/node/wiki/API-changes-between-v0.8-and-v0.10.
I'm going to release 2.17 without this. We haven't been running it and I want to do our upgrade internally before the rest of the world tests it extensively.

We've been using this for about a week and no catastrophes have popped up. Any objections to merging it?

We've been using this for awhile without problem, so it's good to merge & release.


M3-853 Ctrl+Click

Purpose
Allow for Ctrl+Clicking and middle clicking side-wide
Notes
Known Issues

[ ] Cannot ctrl-click tabs

Coverage increased (+0.06%) to 26.374% when pulling 9d8c596931add91ab84c0e85d2dd9e702680d32f on martinmckenna:M3-853-ctrl-click into 04afb1bc4b826cf2a3110b99ac2885760a1432c0 on linode:develop.


Separate dependency changes from other changes

Describe the feature
I'm using renovate in my project to manage dependencies (as does this one). Renovate generates commit messages like fix(deps): update dependency .... I would like to group these dependency changes not under the fixes section but in a separate group. Usually there are a lot of dependency updates between releases and thus they clutter the changelog.
I can look into implementing this if someone points me in the right direction.
Additional information

[X] Would you be willing to help implement this feature?

Good idea. I think we might introduce a new option like typeGroups or scopeGroup, mapping scope (which is deps) to a new category in generated changelog.


Added general_error_severity to the t_axi_bfm_config

Added general_error_severity to the t_axi_bfm_config. This feature can be useful to change the error severity from the TB procedure

I have applied the changes you have requested.


chore: add custom favicons and title

Overrides the default GitBook favicon and apple-touch-icon-precomposed-152.png, and changes page (tab) titles from e.g. "FAQ · GitBook" to "FAQ · npm Enterprise Docs".

Awesome polish 💃
:shipit:


Cannot do instance check on autoray.numpy and ABC

Found when trying to fix https://github.com/pytorch/pytorch/issues/93624.
Repro:
from abc import ABC
from autoray import numpy as np

class Base(ABC):
    pass

isinstance(np, Base)

Error:
Traceback (most recent call last):
  File "/data/users/williamwen/pytorch2/playground3.py", line 7, in <module>
    isinstance(np, Base)
  File "/data/users/williamwen/py310-env/lib/python3.10/abc.py", line 119, in __instancecheck__
    return _abc_instancecheck(cls, instance)
  File "/data/users/williamwen/py310-env/lib/python3.10/abc.py", line 123, in __subclasscheck__
    return _abc_subclasscheck(cls, subclass)
TypeError: issubclass() arg 1 must be a class

I got around this by adding
if fn == "__class__":
    return NumpyMimic

in the NumpyMimic class __getattribute__. Perhaps additional cases need to be added as well?

Thanks for the issue, should be fixed by #21, will merge and mint a release shortly.


Remove devconsole banner

#426  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @jvmi7 and the rest of your teammates on  Graphite


Feature request - update password in lagoon UI

Allow updating your own password while signed in to lagoon UI, currently only the 'forgot password' flow is available

Adding a UI link to manage keycloak account would be :heart_eyes:

The only way I could find to rotate / change my password on Lagoon was to log-out and use the "Forgot password" link in the log-in form.
This might seem like an unimportant feature, but it really isn't. The current process is not good UX. Hijacking Developer access is a theme in many of the recent, high-profile security breaches of 2021/2022. We should make password changes easier by using an established flow, whereby passwords can be changed in your Lagoon Account Settings UI.


feat: add method that returns all vertices

Hi Dominik,
I would like to add a method to Graph and Store interface that returns all the vertices that have been added. I'm using graph to resolve dependencies and have to loop over all the vertices after all the edges have been set without error. So this would safe me from keeping an extra map or slice with vertices in my project. Let me know if you want me to change anything in this implementation.
Best,
Dominik

Hi Dominik (nice name!), thanks for you PR! This seems to be a quite sought-after function, I believe #149 also implements this. What's your thoughts on the differences between your two approaches, @jonbrandenburg and @dtomasi?


docs(fr): minor improvements in performance.md

Fix typos and improve French grammar and terminology for clarity and consistency

Merci !


JOSS: Functionality documentation

Please add a short documentation of functionalities in the GUI. E.g. an image with numerated buttons/visualizations explaining their functionalities and options.

@destogl this already exists, unless I am misunderstanding what you are asking for. Look at the README, it points you to where the Help button is in the GUI. The Help button is a question mark to the right of the sliding bar at the top of the GUI.


resolve several issues found by cppcheck

[src/Cedar/Connection.c:1090] -> [src/Cedar/Connection.c:1086]:
(warning) Either the condition 's!=NULL' is redundant or there is possible null pointer dereference: s.
macros IS_SEND_TCP_SOCK expands into "s" dereferencing, so check for NULL should go before that macros
[src/Cedar/Protocol.c:2951] -> [src/Cedar/Protocol.c:2892]:
(warning) Either the condition 'policy!=NULL' is redundant or there is possible null pointer dereference: policy.
[src/Cedar/Protocol.c:2951] -> [src/Cedar/Protocol.c:2901]:
(warning) Either the condition 'policy!=NULL' is redundant or there is possible null pointer dereference: policy.
[src/Cedar/Protocol.c:3151] -> [src/Cedar/Protocol.c:3082]:
(warning) Either the condition 'policy!=NULL' is redundant or there is possible null pointer dereference: policy.
[src/Cedar/Protocol.c:3151] -> [src/Cedar/Protocol.c:3083]:
(warning) Either the condition 'policy!=NULL' is redundant or there is possible null pointer dereference: policy.
as we already have a check
		if (policy == NULL)
		{
			// Use the default policy
			policy = ClonePolicy(GetDefaultPolicy());
                    }

no need to compare policy with NULL anymore
Changes proposed in this pull request:

remove one possible null pointer dereference
remove not needed checks

Your great patch is much appreciated. We are considering to apply your patch into the SoftEther VPN main tree.
SoftEther VPN Patch Acceptance Policy:
http://www.softether.org/5-download/src/9.patch
You have two options which are described on the above policy.
Could you please choose either option 1 or 2, and specify it clearly on the reply?

one

Merged with gratitude


Use macos-11 instead of macos-latest in github actions

Try using macos-11 because macos-latest is no longer the latest

@andreiburdusa any updates on this?

@andreiburdusa any updates on this?

It looks like GitHub hasn't enabled macos-11 for public use yet. We can try again later, as discussed in this slack thread

Ok, that's fine. But @andreiburdusa can you link to some GitHub documentation about this one, so it's easier to track?

Maybe this https://github.com/actions/virtual-environments/pull/3748 is relevant?

Let's see if this is available now.
@andreiburdusa can we have an update on this?

Is this ready to be merged now?
If yes, could you please ask for reviewers?


make all error

After Installing all library it shows this error
fatal error: cuda/include/cuda.h: No such file or directory

Edit Makefile:
from
CFLAGS    = -std=c++11 -I$(TF_INC) -I"$(CUDA_HOME)/include" -DGOOGLE_CUDA=1
to
CFLAGS    = -std=c++11 -I$(TF_INC) -I"$(CUDA_HOME)/.." -DGOOGLE_CUDA=1
This error may because of the wrong including directory.
The Makefile set $CUDA_HOME as /usr/local/cuda, and try to find /usr/local/cuda/include/cuda/include/cuda.h.
The correct path should be /usr/local/cuda/include/cuda.h
/usr/local/cuda may be a symbolic link to /usr/local/cuda-<version>

Paste full error log.


Solve dependency management

Maybe syberia_project can auto-bootstrap a new search path altogether? Then you can global() to return to the global environment, but what happens in a syberia project stays in a syberia project! Can use "syberia console" and a simple Thor gem to load R with the special syberia project's search path.

Can have an .Rprofile for stuff that is only sourced from within the syberia project. This would also enforce clean modularity.

Can use "S" as alias for "syberia console" - flows nicely with "R" as the command to launch R console.

Draw inspiration from Romain Francois's "nothing" package.

Partially solved by lockbox.


do nginx upgrade when notifies a :reload

In certain situations nginx cannot do a clean service reload and we also don't want to break connections with a service restart.
@mfbaker suggested that we could try to swap the nginx processes by sending a USR2 signal to the master process. More details can be found here.
Ubuntu 14.04 does come with an upgrade option for the nginx initscript. We could use it to redefine command_reload.
cc: @mfbaker @tylermarshall @mattbrown @rlyeroberts

Unfortunately, I don't know how this will work in ubuntu 12:
% for i in 12 14 16; do docker exec ubuntu-$i /etc/init.d/nginx; done
Usage: nginx {start|stop|restart|reload|force-reload|status|configtest}
Usage: nginx {start|stop|restart|reload|force-reload|status|configtest|rotate|upgrade}
Usage: nginx {start|stop|restart|reload|force-reload|status|configtest|rotate|upgrade}
%

maybe we can do /etc/init.d/nginx upgrade || /etc/init.d/nginx reload


data/textures/hdr directory not in repo

Thanks for your great work, helps a lot !
pbribl and hdr examples both don't run, they are missing ktx textures in the data/textures/hdr directory.

Those files are part of the external asset pack introduced to keep rep size down. Please refer to https://github.com/SaschaWillems/Vulkan/blob/master/data/README.md

O.k. and sorry, I see that I wasn't the first one :-)


Add inspect and prepare_sanic hooks

This adds two new plugin hooks:
The inspect hook allows plugins to add data to the inspect dictionary.
The prepare_sanic hook allows plugins to hook into the web router. I've attached a warning to this hook in the docs in light of #272 but I want this hook now...
On quick inspection, I don't think it's worthwhile to try and make this hook independent of the web framework (but it looks like Starlette would make the hook implementation a bit nicer).
Ref #14

I've just spotted that this implements #215.

Closing this because it doesn't really fit the new model of inspect (though we should discuss in #465 how to further evolve this feature) and because as-of #272 we no longer use Sanic - though #520 will implement the equivalent of prepare_sanic against ASGI.


Adds argument parset to more benchmarks

Codecov Report

:exclamation: No coverage uploaded for pull request base (main@23d54e1). Click here to learn what that means.
Patch has no changes to coverable lines.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #52   +/-   ##
=======================================
  Coverage        ?   82.72%
=======================================
  Files           ?       19
  Lines           ?      990
  Branches        ?        0
=======================================
  Hits            ?      819
  Misses          ?      171
  Partials        ?        0

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Improve and document our GeoArrow compatibility story

Fundamentally, the new map-related archetypes are interoperable with GeoArrow in an efficient way. The way to achieve this should be documented, and helpers should be introduced.
Here is a mostly self-explanatory script showing ways to efficiently log geoarrow data, interoperate with GeoPandas, and a hint of what future helpers could look like:
from __future__ import annotations

from typing import Iterable

import geoarrow.pyarrow as ga
from geopandas import GeoSeries
import pyarrow as pa

import rerun as rr

# Let's assume we have some GeoArrow data coming from somewhere
# IMPORTANT: This is only points. Things get a bit more complicated if we also introduce lines and polygons (the latter
# of which we don't support yet).
data = ga.as_geoarrow(
    ["MULTIPOINT((37.7749 -122.4194), (34.0522 -118.2437), (32.7157 -117.1611))"],
    coord_type=ga.CoordType.INTERLEAVED,  # Rerun needs interleaved coordinates for zero copy
)

rr.init("rerun_example_raw_geoarrow")
rr.connect_tcp()

# ======================================================================================================================
# Scenario 1: zero-copy logging of raw data in GeoArrow format to

# convert the data to a numpy array of the right shape without copy
data_as_np_array = data.storage.values.values.to_numpy(zero_copy_only=True).reshape(-1, 2)
rr.log("points", rr.GeoPoints(lat_lon=data_as_np_array))

# ======================================================================================================================
# Scenario 2: GeoPandas interoperability

# Load the GeoArrow data into a GeoPandas series (there are many other ways to load data to a GeoSeries)
series = GeoSeries.from_arrow(data)

rr.log("geopandas_points", rr.GeoPoints(lat_lon=series.get_coordinates().to_numpy(copy=False)))

# ======================================================================================================================
# Scenario 3: logging wrapper for GeoArrow data (we should definitely provide these in the SDK eventually)

class GeoArrowLatLonBatch(rr.ComponentBatchLike):
    def __init__(self, lat_lon: pa.Array) -> None:
        # TODO: validate input data format
        self.lat_lon = lat_lon

    def component_name(self) -> str:
        return "rerun.components.LatLon"

    def as_arrow_array(self) -> pa.Array:
        return self.lat_lon.storage.values.cast(rr.components.LatLon.arrow_type())

class GeoPointsWrapper:
    lat_lon: pa.Array

    def __init__(self, lat_lon: pa.Array) -> None:
        self.lat_lon = lat_lon

    def as_component_batches(self) -> Iterable[rr.ComponentBatchLike]:
        return [rr.GeoPoints.indicator(), GeoArrowLatLonBatch(lat_lon=self.lat_lon)]

rr.log("wrapper_points", GeoPointsWrapper(data))

👋 I've vaguely followed rerun for a while and it's really cool to see you adding spatial support!
The general structure of your data does indeed match the structure of GeoArrow points, but your data does not currently match the GeoArrow specification because the GeoArrow specification explicitly disallows latitude-longitude ordering. From the spec:

Note that regardless of the axis order specified by the CRS, axis order will be interpreted according to the wording in the GeoPackage WKB binary encoding: axis order is always (longitude, latitude) and (easting, northing) regardless of the the axis order encoded in the CRS specification.

Confusion around coordinate axis order is almost a trope in the community.
Separately, technically GeoArrow currently requires float64 coordinates, and you use float32. The GeoArrow spec is pretty complex as it is, and it's unclear whether we'd want to include float32 as part of the spec, but I don't think it would be controversial to recommend that tools support both float32 or float64 input, and then float32 and float64 would at least be interoperable.
(For context, I'm developing the Rust GeoArrow implementation)

Hi @kylebarron -- excited to see you here and thanks for bringing this to our attention. Hopefully we can get ahead of this both on the format and documentation front and save our users some pain and confusion.
For what it's worth I actually tried to look this up in the https://geoarrow.org/format.html spec and not finding any mention of latitude or longitude, but knowing that geoarrow allowed providing the CRS, I naively jumped to the conclusion that the CRS-specified order would be respected.
I had not even imagined that a spec might both provide a means of including CRS data and also explicitly disregard the axis-order the CRS specifies. Though the fact that the chain of transitively-cited links ultimately terminates in the gem of OGC 08-038r7 Case 4 and the final clause "The OGC does not recommend implementing this use case" at least makes me feel better about my incorrect assumption :sweat_smile:
I'm somewhat reluctant to propagate these Case-4 style clauses myself in our own final spec, and so I suspect that once we include support for explicit CRS we will generally respect it (as suggested by Case 1 in the linked recommendation doc), but this whole topic has made me keenly aware that specifying a CRS alone is insufficient for all use-cases and we will likely need to also allow for an additional axis-order metadata that overrides the CRS (as suggested by Case 2).
Regardless, in any context where we find ourselves reading / providing data where we find or apply the geoarrow extension metadata, we'll definitely make sure to track the swapped order and/or shuffle the data if necessary, as required per the geoarrow spec.
Also, until we start allowing CRS data to be specified, I'm generally open to swapping the default order on our stored component data to align with geoarrow since this is likely to be the more common representation among folks already working with arrow natively.

And then also a GeoPandas developer chiming in .. :)

# Scenario 2: GeoPandas interoperability

# Load the GeoArrow data into a GeoPandas series (there are many other ways to load data to a GeoSeries)
series = GeoSeries.from_arrow(data)

rr.log("geopandas_points", rr.GeoPoints(lat_lon=series.get_coordinates().to_numpy(copy=False)))

For supporting geopandas input, you could actually also reuse your general geoarrow support (at least when requiring geopandas >= 1.0, and you are fine with requiring pyarrow for that use case), because you can ask the geopandas object to convert itself to geoarrow using the new series.to_arrow(geometry_encoding="geoarrow", interleaved=True) method.
And at that point you can reuse your code to ingest geoarrow data, instead of writing a custom conversion for geopandas (like the series.get_coordinates().to_numpy(copy=False) you have above, which is easy for points, but gets more complicated for other geometry types).

@paleolimbot

I've seen this handled as a boolean ("authority_compliant: true") and as an integer array ("permutation: [0, 1]").

I was already kind of mentally weighing these two options. Do you recall which other systems/libraries do this. I would love to  point at greater ecosystem alignment if possible when making a decision.

I would prefer that the CRS specification people got it together and realized that requiring every single real-world implementation to have two fields to encode a CRS is not realistic (they either need to provide a CRS database that has CRSes with axis orders that match real-world data OR allow the axis order as part of some official CRS spec definition).

This is a great summary.
I'm still quite new to this geo community -- what is the mechanism of communication with the "CRS specification people"? I'm assuming this is more involved than upvoting a GitHub issue somewhere or it would have been solved years ago, but is there some individual/committee we can email and complain at?

Separately, technically GeoArrow currently requires float64 coordinates, and you use float32.

This is not accurate. Although we do use float32 extensively throughout the rerun data model, the geospatial primitive actually use float64. For example the, LatLon component delegates to the DVec2 datatype, which is float64. This can be verified e.g. in this code-generated arrow datatype definition.

Separately, technically GeoArrow currently requires float64 coordinates, and you use float32.

This is not accurate.

Ah, apologies; I must've been looking at the wrong place in the flatbuffers.

Aside from the CRS interoperability discussion above (I generally defer to @paleolimbot and @jorisvandenbossche on that front), I'd also encourage you to implement support for the Arrow PyCapsule Interface in your Python bindings. It enables safe Arrow data interchange without requiring the use of pyarrow. Any library implementing this protocol can exchange data via PyCapsules (safe wrappers of C pointers), where data producer and consumer don't need prior knowledge of each other.
There are a growing number of Python libraries that support this protocol. So for example, you could exchange data zero-copy with Polars or DuckDB without needing to go through pyarrow.
This applies to all Arrow data, not just GeoArrow data. Perhaps a separate issue would be better for this if you're interested in discussing it more?

I'd also encourage you to implement support for the Arrow PyCapsule Interface in your Python bindings

Yes -- I was looking into this recently and it looked very promising. Glad to hear an endorsement.

Sorry for the overabundance of detail here...

@paleolimbot no apology necessary. Thank you for the detailed pointers. Knowledge about what the community expects for things like this is so valuable to us.


[Bug] Not support Chinese words

Can't correctly show Chinese characters in code block typst。

It turns out Typst's default fonts do not contain any chinese glyphs. The Typst CLI and Webapp can automatically find and fallback to a font that supports the glyphs. For the plugin you need to tell it to load the correct fonts in the plugin settings, if you're using windows the font "Microsoft YaHei" works for me.
Unfortunately this is not supported on mobile, I should probably include a basic fallback for that case.

It turns out Typst's default fonts do not contain any chinese glyphs. The Typst CLI and Webapp can automatically find and fallback to a font that supports the glyphs. For the plugin you need to tell it to load the correct fonts in the plugin settings, if you're using windows the font "Microsoft YaHei" works for me.
Unfortunately this is not supported on mobile, I should probably include a basic fallback for that case.

Great! Tky, It works


Reload docs do not update current docs screen

Reload docs do not update currently opened docs for some type, if scheme for this type only has a description changes
To Reproduce
Steps to reproduce the behavior:

Open some type, where one of field has some description
Change field description in scheme
Click on Reload docs

Expected behavior
I am expect, that field description will be updated
Actual behavior
Field description does not updated. I should click back or home button and reopen type docs for see description updates
Desktop (please complete the following information):

OS: Windows 10 PRO x64
Browser Chrome dev
Version 80.0.3987.7

Additional context
Screen record http://screenshot.lvcdn.ru/8d50e786d8.gif

Thanks for reporting this! I'd look into it as soon as I can.

Thank you. Can you say approximately release date of version 2.4.0 in Chrome webstore?

Between now and 2 weeks


Update UG for Leave Command

Add Leave command to UG
Edit usage message for add, edit and leave commands
According to #156

LGTM


Support build parameters

I suggest we move to an option based CLI (-x value) so we gain more flexibility on usage
jenkinsfile-runner
-w (--workdir) : working directory, default to "."
-f (--file) : Jenkinsfile script, default to "Jenkinsfile
-p (--plugins) : plugins directory, default to $j/plugins
-j (--jenkins) : path to jenkins.war or exploded jenkins.war directory
-c (--configuration) : path to a configuration-as-code file, default to $w/jenkins.yaml
-a (--args) : build arguments

etc

#26 was released in 1.0-beta-7 . I believe it resolves this feature request


anytype: 0.40.8 -> 0.41.1

Sorry, I merged my update before I saw this PR. So I'm going to close this. Please feel free to contribute in the future, though. I fixed my GitHub notifications to hopefully not miss these again...
I cherry-picked the graylog removal patch. Thanks.
What's the purpose of this line? npm run build:nmh

I also went with Electron 30 instead of 29. Upstream calls for 31 but that's not in nixpkgs yet. Seems to work fine anyway.


Compatibilty with Python 3.10.2

Just upgrade Python to 3.10.02, when downloaded data, got following error.
yf.download('AMD', interval="1d", start="2021-01-11", group_by="ticker")
Exception in thread Thread-1 (_run_via_pool):
Traceback (most recent call last):
File "C:\Users\lurob\AppData\Local\Programs\Python\Python310\lib\threading.py", line 1009, in _bootstrap_inner
self.run()
File "C:\Users\lurob\AppData\Local\Programs\Python\Python310\lib\threading.py", line 946, in run
self._target(*self._args, **self.kwargs)
File "E:\Project\Python\Test310\venv\lib\site-packages\multitasking_init.py", line 104, in _run_via_pool
return callee(*args, **kwargs)
File "E:\Project\Python\Test310\venv\lib\site-packages\yfinance\multi.py", line 188, in _download_one_threaded
data = _download_one(ticker, start, end, auto_adjust, back_adjust,
File "E:\Project\Python\Test310\venv\lib\site-packages\yfinance\multi.py", line 202, in _download_one
return Ticker(ticker).history(period=period, interval=interval,
File "E:\Project\Python\Test310\venv\lib\site-packages\yfinance\base.py", line 295, in history
df.index = df.index.tz_localize("UTC").tz_convert(
AttributeError: 'Index' object has no attribute 'tz_localize'
any advise?

The issue isn't python, it's pandas 1.4, duplicate of #939

This is a problem with python 3.10 as well. When I downgraded Pandas to 1.3.5 it still had the same error. Downgrading both python and pandas solved it

This was fixed soon after reporting: https://github.com/ranaroussi/yfinance/issues/937#issuecomment-1025131425


Update virtual-machines-common-sizes-memory.md

Updating NIC count...

@coreysa,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

#sign-off


Crashing during enumeration of RLMLinkingObjects

Goals
Crash-free enumeration
Expected Results
Enumeration w/o a crash
Actual Results
Crash during fast enumeration
Steps to Reproduce
I am using ObjectMapper to map directly to a RLMObject subclass.
During part of the mapping, I am enumerating a property of RLMLinkingObjects type and it crashes in the realm library at the line indicated below.
The object has not yet been added to a realm.
Code Sample
dynamic var sections: RLMLinkingObjects!

override class func linkingObjectsProperties() -> [String : RLMPropertyDescriptor] {
"sections": RLMPropertyDescriptor(withClass: PartySection.self, propertyName: "party")
}

for section in self.sections {
  ...
}

- (NSUInteger)countByEnumeratingWithState:(NSFastEnumerationState *)state
                                    count:(NSUInteger)len {
    [_realm verifyThread];
    if (!_tableView.is_attached() && !_collection) {
        @throw RLMException(@"Collection is no longer valid");
    }
    // The fast enumeration buffer size is currently a hardcoded number in the
    // compiler so this can't actually happen, but just in case it changes in
    // the future...
    if (len > RLMEnumerationBufferSize) {
        len = RLMEnumerationBufferSize;
    }

    NSUInteger batchCount = 0, count = state->extra[1];

    Class accessorClass = _info->rlmObjectSchema.accessorClass; //**CRASH - EXC_BAD_ACCESS**
    for (NSUInteger index = state->state; index < count && batchCount < len; ++index) {
        RLMObject *accessor = RLMCreateManagedAccessor(accessorClass, _realm, _info);
        if (_collection) {
            accessor->_row = (*_info->table())[[_collection indexInSource:index]];
        }
        else if (_tableView.is_row_attached(index)) {
            accessor->_row = (*_info->table())[_tableView.get_source_ndx(index)];
        }
        RLMInitializeSwiftAccessorGenerics(accessor);
        _strongBuffer[batchCount] = accessor;
        batchCount++;
    }

    for (NSUInteger i = batchCount; i < len; ++i) {
        _strongBuffer[i] = nil;
    }

    if (batchCount == 0) {
        // Release our data if we're done, as we're autoreleased and so may
        // stick around for a while
        _collection = nil;
        if (_tableView.is_attached()) {
            _tableView = {};
        }
        else {
            [_realm unregisterEnumerator:self];
        }
    }

    state->itemsPtr = (__unsafe_unretained id *)(void *)_strongBuffer;
    state->state += batchCount;
    state->mutationsPtr = state->extra+1;

    return batchCount;
}

Version of Realm and Tooling
Realm version: realm-cocoa v1.1.0
Xcode version: Xcode 8.0, Swift 2.3
iOS/OSX version: 9.3.5
Dependency manager + version: Cocoapods 0.39.0

@jpstern could you please share an Xcode project that reproduces this issue? Anything you can do to simplify us being able to trigger this ourselves will improve this odds of this being resolved quickly.

Also have a crash when accessing a LinkingObjects.
class Reading: Object {
...
let meterOwners = LinkingObjects(fromType: Meter.self, property: "readings")
}
let meterOwners = readingToDelete.meterOwners
(lldb) po meterOwners
expression produced error: error: Execution was interrupted, reason: EXC_BAD_ACCESS (code=1, address=0x0).
The process has been returned to the state before expression evaluation.

@francoisduchemin could you please share an Xcode project that reproduces this issue? Anything you can do to simplify us being able to trigger this ourselves will improve this odds of this being resolved quickly.

never mind I was doing something wrong... everything is working fine.

Closing this issue, @francoisduchemin feel free to reopen it or create a new one if you need any other help.


Check if streamer is actually streaming something development related

Hi Andrei, really liking this tool, one addition I would like to request is performing an API check to confirm that a live streamer is actually streaming something programming related, as live streams that are shown on the website could be gaming related rather than programming related.

Hey,
Included this in the new version I just launched.
Thanks for the request!


Add event bucket support to Adapter (Rust SDK)

We need to add an eventbucket for trace events in the rust sdk. Similar to how we do this in the Go SDK: https://github.com/dylibso/observe-sdk/blob/main/go/bucket.go
we should use this in datadog first.

Complete for DataDog Adapter but can be used for others as well


Is it possible to pass parameters to the format?

I would like to "Format document With: " to execute something like the eslint cli:
--fix --fix-type layout
(to fix only the layout rules)
or
--fix --quiet
(to fix only the warnings)
Is this currently possible?

You can use eslint.options.fixtypes VSCode setting with the values documented here: https://eslint.org/docs/latest/integrate/nodejs-api#-new-eslintoptions


Tenant choice (interactive login authentication)

It is not possible to chose a tenant during authentication process, which is an issue when you want to access another one with the same login : the default one remains selected. This feature is adding the opportunity to define a "tenant_id" argument while loging in with the interactive login authentication.

@microsoft-github-policy-service agree

Hi @cdrcc, thank you for your contribution.
This change will be included in the next patch version.


[123] Issue #123 - November 29, 2018

To contribute to this issue, simply leave a comment here. Please also review our contributing guidelines.
The current draft for this issue in _drafts/. If you want to contribute directly, feel free to open a pull request.

https://forums.swift.org/t/draft-proposal-target-specific-build-settings/18031

https://twitter.com/jckarter/status/1063466207028768770

When going out for a night of operator overloading with your friends, always bring a designated type. This proposal could address the infamous "expression too complex" problems with operators in Swift https://forums.swift.org/t/pitch-making-expression-type-checking-of-operator-expressions-fast/18037

https://github.com/apple/swift-evolution/blob/master/proposals/0237-contiguous-collection.md

234 in review?

https://forums.swift.org/t/lifting-the-self-or-associated-type-constraint-on-existentials/18025
Lifting the “Self or associated type” constraint on existentials

Cool article by @mattt about new Language Server Protocol (LSP) integrated in VS Code. I think this will open so many doors for Swift to be baked in many other editors. Making it easier to adapt in other platforms than macOS and other developments than iOS.
https://nshipster.com/vscode/

@balestrapatrick taking a deep dive into Swift Benchmark Suite and how to contribute to it.
https://patrickbalestra.com/blog/2018/11/12/contributing-to-the-swift-benchmark-suite.html

https://twitter.com/CodaFi_/status/1064969922974019584

I wrote a little about contributing to Swift.
My DMs are open for just this kind of thing.  Please ask me questions.
https://forums.swift.org/t/what-should-i-learn-if-i-want-to-contribute-to-the-swift-compiler/18144/4?u=codafi

https://jpsim.com/evaluating-swiftsyntax-for-use-in-swiftlint
tl;dr; Implementing SwiftLint using SwiftSyntax instead of SourceKitten would make it run over 20x slower 😭
https://twitter.com/harlanhaskins/status/1065775499526451200
Sent with GitHawk

https://twitter.com/BasThomas/status/1065499801490530304

The video for "Taken For Granted", my presentation on the history of Swift @tryswiftnyc, is now online!
Slides: https://speakerdeck.com/basthomas/taken-for-granted
https://www.youtube.com/watch?v=ePuOrCbIW-o https://twitter.com/BasThomas/status/1065499608145690626/photo/1

Can be a fun one 🙃
https://twitter.com/alexisgallagher/status/1066559309385883648
Sent with GitHawk

https://twitter.com/swift_weekly/status/1067465597880082434
The #Swift team just landed String’s proposed final ABI on master. This ABI includes some significant changes, the primary one being that native Swift strings are stored as UTF-8.
Sent with GitHawk

That was posted 22 days ago fyi

Tips and Tricks for Contributing to the Swift Language
https://pspdfkit.com/blog/2018/tips-for-contributing-to-the-swift-language/
Sent with GitHawk


ResourceBundle._path is referenced before assignment

First, many thanks for the ResourceBundle package.  I've been running 1.0.4 successfully for a while now.  Unfortunately having issues with 2.0.1.  When I execute the example in the read me using python, I encounter the following:
"AttributeError: 'ResourceBundle' object has no attribute '_path'"
The line of code referenced is line 97 of init.py.  Immediately I was curious with how self._path was set.
I may be completely off base as I am very new to python, but if I either comment out line 64 of init.py OR move line 65 (which seems to assign self._path) above line 64, I do get past the error.
My guess is that I am still doing something wrong despite following the read me.   Thanks for your time.

Thanks for pointing that out. This was kind of an obvious mistake and you're right: switching lines 64 and 65 fixes the problem. :)
The issue has now been fixed with version 2.0.2


Improve acceptance tests and Ember syntax

Done @kellyselden

@kellyselden we can do merge this?

I'm trying to get #167 merged first so we can add some linting rules.

#167 has landed


remove sample files to prevent race condition, closes #324

Removing these files will remove them from the artifact, which is causing the problem described in the issue.

Thanks a lot

Released as 4.14.0


Support local timezone

Tried setting TZ environment variable on jx-pipelines-visualizer Deployment which did not seem to make any difference. It might be even better if it rendered date/time based on locale of user.

Yes, for the moment we only support UTC. We could have a timezone selector in the UI, to let the user pick the right one.

I was thinking more like, just returning an ISO8601 back from server side and let client side create a javascript Date object. I think that'll use the browser timezone.

/remove-lifecycle stale


latest updates

Module: 00
Lab/Demo: 00
Fixes # .
Changes proposed in this pull request:

Merge


minified version doesn't work with webpack

I use webpack for bundling. When I do import '../node_modules/bootstrap.native/dist/bootstrap-native.min.js'; it says
Error in ./~/bootstrap.native/dist/bootstrap-native.min.js Module parse failed: /Users/Documents/practice/node_modules/bootstrap.native/dist/bootstrap-native.min.js Unexpected token (3:0)
but it's working with the non minified version, I wonder.

I believe @RyanZim would take a look at that anytime now.

OK, will look into it.

@eldyvoon Are you using v1.0.4 or the latest master? If you're using v1.0.4, try using master and see if that works. (Uninstall bootstrap.native and run npm install thednp/bootstrap.native to install from the latest master.)
It does look like the minified build for v1.0.4 might have an error (fixed in master).

Soon we have it online on npm.

@thednp Hang on, make sure @eldyvoon can get master working before we push a release.

yup the master has no error, it's working now.

@thednp It looks like v1.0.4's minification was buggy, could you publish a new release?

P.S. Make sure to run npm run build before publishing.

Yes Ryan. Thanks :)

Thank you for the lighting fixes guy, appreciate that!

@eldyvoon When @thednp makes a new release, you will want to uninstall thednp/bootstrap.native and install bootstrap.native again.

@RyanZim I will tag a new release and publish from the release, by the way do you think we should go with a new release right away?

by the way do you think we should go with a new release right away?

Not sure what you mean; we should make a release today IMO.

@eldyvoon Please test the new release. Thank you.


Dispatchers support

Let's support dispatchers in deployment scripts.
Consult cairo deployment scripts design doc for more context.

https://github.com/foundry-rs/starknet-foundry/pull/1067/files#r1398875588 relevant discussion


HIBP API used in leak checker deprecated

Hey,
the API used in https://github.com/gopasspw/gopass/blob/master/pkg/hibp/api/client.go will be deprecated in a month and won't work without a (paid) API key:
https://www.troyhunt.com/authentication-and-the-have-i-been-pwned-api/

Yeah, that is unfortunate.
Once this becomes effective this feature will stop working.
We may want to provide a way to supply an API key, but that's terrible UX compared to the current state.

Actually I just read up on it in detail and the HIBP changes only affect lookups by email while gopass only does lookup by partial password hashes which are not affected by the changes.

Oh, thanks a lot. I did only skim over that post.
In that case we should be fine.
Feel free to close this issue if you agree.

I missed it on my first read too, apparently he made it clearer in an edit later on. Closing this.


C# constructors - argument hints not displaying

From @sinclairzx81 on February 15, 2016 12:47
Hi there,
I have noticed that code hints for C# class constructors are not displaying correctly. The issue seems specific to constructors only.

It seems that vscode is pulling from generated XML metadata for the class if its available. In all other cases, it displays no argument information at all.

Many Thanks
Copied from original issue: Microsoft/vscode#3024

This is probably a bug in https://github.com/OmniSharp/omnisharp-roslyn. Will take a look over there.

Any news on this?

Is there any news on this?
Its been several months now, and this issue is causing much confusion among developers using vscode for C# development. It would be good to get some feedback on the progress of this bug.
Many thanks

Any news on this?

Any news on this?

This will be fixed in the 1.6 release of the C# extension. Thanks @filipw!

great 👍 cc @sinclairzx81

This is awesome news. Great work @filipw, champion!!  👍 :)


Improves the Travis CI integration

I read about https://github.com/philsquared/Catch/issues/511#issuecomment-145700281 via your twitter, and though instead of writing something, let actions speak. So here are some Travis CI improvements.

In particular, this adds several improvements, such as:

making use of container based infrastructure (faster startups, caching feature, 2 cpus, 4gb ram, ..)
using ccache for faster building (we could also cache arbitrary directories)
builds for linux and osx
builds for various gcc, clang versions
recent cmake installation

The Travis CI status for my fork looks like this, if you want to give it a try:
https://travis-ci.org/daniel-j-h/Catch
Related: what about this C++11 check? The installed compilers can handle C++11.

Further improvements: there are some features still open for improvements, for example we could do builds against libc++, run sanitizers, and so on.

So, just out of curiosity, what's the difference between &clang36 and *clang36?

If you read the YAML Spec (warning: 84 pages pdf) this is the so called anchoring feature. With &clang36 we create an alias that we then can use by means of *clang36.

Thanks for this!
I didn't realise you can test against multiple versions of gcc/ clang etc on Travis. How far back does gcc, in particular, go?
In any case this would be a a great step forward. I know there was another PR relating to container-based Travis - was that from you? I hadn't had a chance to look at it.
I'd still like a build system with more control - so we can run those Python scripts too (unless you can do that in Travis?)

take a look at one of my travis scripts:
https://github.com/Darelbi/Infectorpp2/blob/master/.travis.yml
basically travis is a unix shell environment, it should already have python for running scripts, if not the case, you just add the apt package into travis configuration.
I'm using only C++11 so I have tested against few compilers but you can both test against much more compilers and for the same compiler you can also test with -std=c++11 enabled or not.

@philsquared:

I didn't realise you can test against multiple versions of gcc/ clang etc on Travis. How far back does gcc, in particular, go?

Take a look at the ppa ubuntu-toolchain-r that is used to pull in gcc (and stdlibc++, ...):
https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test
From what I can tell the oldest is gcc-4.5 in this particular ppa! There is nothing stopping us from pulling packages from different ppas.

In any case this would be a a great step forward. I know there was another PR relating to container-based Travis - was that from you? I hadn't had a chance to look at it.

If you mean https://github.com/philsquared/Catch/pull/497/files, no that's not by me. In contrast to this pull request, this other one does not include various compiler versions, caching, a recent cmake and so on.

I'd still like a build system with more control - so we can run those Python scripts too (unless you can do that in Travis?)

Sure. It's a full blown Linux (in fact a Ubuntu 12.04, that's why we pull recent packages from ppas). There are whitelists for sources and packages, though. But usually these packages are more than enough.

Thanks again for this. I'm definitely going to have to look into this more - but I don't see any reason not to start with this right away.
Next steps are getting the Python scripts to run...


to_mdast Math parsing error

the parser threat $$something$$ as inline math
#[test]
fn math_test() {
    println!(
        "{:?}",
        to_mdast(
            "$$\nnot inline\n$$\n$$not inline$$\n$inline$",
            &ParseOptions {
                constructs: Constructs {
                    math_flow: true,
                    math_text: true,
                    ..Constructs::gfm()
                },
                ..Default::default()
            }
        )
    )
}

output:
Ok(Root { children: [Math { value: "not inline", position: Some(1:1-3:3 (0-16)), meta: None }, Paragraph { children: [InlineMath { value: "not inline", position: Some(4:1-4:15 (17-31)) }, Text { value: "\n", position: Some(4:15-5:1 (31-32)) }, InlineMath { value: "inline", position: Some(5:1-5:9 (32-40)) }], position: Some(4:1-5:9 (17-40)) }], position: Some(1:1-5:9 (0-40)) })

Intended. Math works like code.
``inline``

```
block
```

I open this issue is because there's some website that render $$something$$ as block math, like GitHub or Stack Exchange. it could be convenient if there's an option or something to do so.

The problem is that math is unspecified. If I do something here, it won't ever work like all other projects. The solution is to  get this specified!

maybe add this inside ParseOptions with force enabling math_text_single_dollar. That way, double dollar is always threated as block math while single dollar will be treated as inline. I think most markdown math is rendered that way (at least for those I familiar with).

maybe add this inside

add what? what is this?
You asked about matching how GH works and matching how Stack Exchange work.
That’s two complex things that are unspecified and take a lot of time, with little benefit.
To reiterate, I think: “The solution is to get [math in markdown] specified!”

I think math in markdown is double dollar for block math and single dollar for inline in most cases

There is no specification for that. Every tool is different.
This is based on CM and is exactly the same as the sister projects in JS.


Linking relevant docs on StreamingResponse

In https://github.com/tiangolo/fastapi/discussions/10761, I asked how StreamingResponse works.
I discovered it is vendored by Starlette, so I have opened two PRs:

This one, linking to Starlette docs
https://github.com/encode/starlette/pull/2405 on how StreamingResponse matches the ASGI spec

📝 Docs preview for commit 19210fd65917faadf8eccdb9d58ba0c2f53405c4 at: https://b97be037.fastapitiangolo.pages.dev

And I believe you should move that line to the end of the "### StreamingResponse" section.

I have moved this docs addition to its own section as suggested

📝 Docs preview for commit 044f9429fcd55a62cf0b6a7bfa57de0bd5d6deda at: https://a30737b2.fastapitiangolo.pages.dev


v6.0-rc.1

I'm getting the following error upon resolving a promise in my submit function:

Uncaught (in promise) undefined

If I don't resolve the promise, the error goes away.
export function submitSignInForm(values, dispatch) {
return new Promise((resolve, reject) => {
    let url = 'http://localhost/api/sign-in';
    request.post(url).send(values).then(body => {
         //resolve(body);
    }).catch(e => {
        console.log(e);
    });
 });
}

I attach the submit handler to my form like so:
<form onSubmit={handleSubmit(submitSignInForm)}>

As an added note, when I submit the request myself and catch it, the error goes away.  If I fail to catch it, the error comes back.  Is this a bug or am I supposed to do something else to accommodate promises?

 {
    submitSignInForm({
        email<EMAIL_ADDRESS>        password: 'password'
    }).catch(e => {
        console.log(e);
    });
}}>Click Me

I'm starting to think this may have something to do with how superagent handles promises.  Let me know if anything looks off with how I configured redux-form though.

This is a dupe of #1266. Already fixed. Will be in rc2.

@erikras Right on, thank you!


Legal review of Shared Services Procurement that needs to on the LAN

Describe the issue
There is a Shared Services Procurement document that needs to have Legal services review before it is finalized and can go on the LAN.  Legal Services is reviewing the proc that GoC did, their output will be a document likely in the form of a Memo which will be added to the contract file.  The Memo is to advise on the Legal procurement risk of larger dollar value purchases from the cloud brokering service.
Additional context

We expect that this is dependent on the availability and capacity of another team out of our control

Definition of done

Legal review in order to raise the $75k threshold and document risks for audit compliance

Draft memo has been received and filed.


update: quinoa 1.2.9 from 1.2.8

update: quinoa 1.2.9 from 1.2.8

Changes proposed

Check List (Check all the applicable boxes)

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

when will be we going to use the 2.0.x version?

Rebased, and merged.
Thanks for your contribution !

When we move to Quarkus 3.x - @johnaohara is the lead on that effort


vmalertmanagerconfig: add validation for slack receiver url

fix https://github.com/VictoriaMetrics/operator/issues/661

Thanks for contribution!


Hide "Reopen in container" in tab context menu item.

This new item introduced in the nightly version of the browser can be hidden including the following line in tab-context.css file:
#tabContextMenu #context_reopenInContainer,

Thanks for the info!
I'll leave this open and add it when it hits beta status. Doesn't even have a translation yet.

https://github.com/stonecrusher/simpleMenuWizard/commit/69e2dd4370c3a0f370712864ccad587c7ea39d72


Posenet only processes 1 frame of the video

Hi !
As much as I really appreciates the posenet application, I can not get why for some input videos it works absolutely fine, and for some others, it only processes 1 frame and not the whole video. I can reproduce this behaviour with both the python example and the executable that I have in my .../build/aatch64/bin folder...
At first I thought it might be related to the frame rate of the video, but I tried with different frame rates and did not get any better results. Also, I could not figure it out by reading the logs...
My setup :

Jetson Nano 2GB with JP 4.6
cloned this repo and built it from sources

Here is the log I get with the executable :
`
./posenet ../../../data/input/dataset1.mp4 ../../../data/output/test-bin.mp4
[gstreamer] initialized gstreamer, version <IP_ADDRESS>
[gstreamer] gstDecoder -- creating decoder for ../../../data/input/dataset1.mp4
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
[gstreamer] gstDecoder -- discovered video resolution: 320x240  (framerate 10.204082 Hz)
[gstreamer] gstDecoder -- discovered video caps:  video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, level=(string)2, profile=(string)high, width=(int)320, height=(int)240, framerate=(fraction)500/49, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
[gstreamer] gstDecoder -- pipeline string:
[gstreamer] filesrc location=../../../data/input/dataset1.mp4 ! qtdemux ! queue ! h264parse ! omxh264dec ! video/x-raw(memory:NVMM) ! appsink name=mysink
[video]  created gstDecoder from file:///home/syrto/work/jetson-inference/build/aarch64/bin/../../../data/input/dataset1.mp4
gstDecoder video options:
-- URI: file:///home/syrto/work/jetson-inference/build/aarch64/bin/../../../data/input/dataset1.mp4
- protocol:  file
- location:  ../../../data/input/dataset1.mp4
- extension: mp4
-- deviceType: file
-- ioType:     input
-- codec:      h264
-- width:      320
-- height:     240
-- frameRate:  10.204082
-- bitRate:    0
-- numBuffers: 4
-- zeroCopy:   true
-- flipMethod: none
-- loop:       0
-- rtspLatency 2000
[gstreamer] gstEncoder -- codec not specified, defaulting to H.264
[gstreamer] gstEncoder -- pipeline launch string:
[gstreamer] appsrc name=mysource is-live=true do-timestamp=true format=3 ! omxh264enc bitrate=4000000 ! video/x-h264 !  h264parse ! qtmux ! filesink location=../../../data/output/test-bin.mp4
[video]  created gstEncoder from file:///home/syrto/work/jetson-inference/build/aarch64/bin/../../../data/output/test-bin.mp4
gstEncoder video options:
-- URI: file:///home/syrto/work/jetson-inference/build/aarch64/bin/../../../data/output/test-bin.mp4
- protocol:  file
- location:  ../../../data/output/test-bin.mp4
- extension: mp4
-- deviceType: file
-- ioType:     output
-- codec:      h264
-- width:      0
-- height:     0
-- frameRate:  30.000000
-- bitRate:    4000000
-- numBuffers: 4
-- zeroCopy:   true
-- flipMethod: none
-- loop:       0
-- rtspLatency 2000
[OpenGL] failed to open X11 server connection.
[OpenGL] failed to create X11 Window.
poseNet -- loading pose estimation model from:
-- model        networks/Pose-ResNet18-Body/pose_resnet18_body.onnx
-- topology     networks/Pose-ResNet18-Body/human_pose.json
-- colors       networks/Pose-ResNet18-Body/colors.txt
-- input_blob   'input'
-- output_cmap  'cmap'
-- output_paf   'paf'
-- threshold    0.150000
-- batch_size   1
[TRT]    topology -- keypoint 0  nose
[TRT]    topology -- keypoint 1  left_eye
[TRT]    topology -- keypoint 2  right_eye
[TRT]    topology -- keypoint 3  left_ear
[TRT]    topology -- keypoint 4  right_ear
[TRT]    topology -- keypoint 5  left_shoulder
[TRT]    topology -- keypoint 6  right_shoulder
[TRT]    topology -- keypoint 7  left_elbow
[TRT]    topology -- keypoint 8  right_elbow
[TRT]    topology -- keypoint 9  left_wrist
[TRT]    topology -- keypoint 10  right_wrist
[TRT]    topology -- keypoint 11  left_hip
[TRT]    topology -- keypoint 12  right_hip
[TRT]    topology -- keypoint 13  left_knee
[TRT]    topology -- keypoint 14  right_knee
[TRT]    topology -- keypoint 15  left_ankle
[TRT]    topology -- keypoint 16  right_ankle
[TRT]    topology -- keypoint 17  neck
[TRT]    topology -- skeleton link 0  16 14
[TRT]    topology -- skeleton link 1  14 12
[TRT]    topology -- skeleton link 2  17 15
[TRT]    topology -- skeleton link 3  15 13
[TRT]    topology -- skeleton link 4  12 13
[TRT]    topology -- skeleton link 5  6 8
[TRT]    topology -- skeleton link 6  7 9
[TRT]    topology -- skeleton link 7  8 10
[TRT]    topology -- skeleton link 8  9 11
[TRT]    topology -- skeleton link 9  2 3
[TRT]    topology -- skeleton link 10  1 2
[TRT]    topology -- skeleton link 11  1 3
[TRT]    topology -- skeleton link 12  2 4
[TRT]    topology -- skeleton link 13  3 5
[TRT]    topology -- skeleton link 14  4 6
[TRT]    topology -- skeleton link 15  5 7
[TRT]    topology -- skeleton link 16  18 1
[TRT]    topology -- skeleton link 17  18 6
[TRT]    topology -- skeleton link 18  18 7
[TRT]    topology -- skeleton link 19  18 12
[TRT]    topology -- skeleton link 20  18 13
[TRT]    poseNet -- keypoint 00 'nose'  color 255 0 85 255
[TRT]    poseNet -- keypoint 01 'left_eye'  color 255 0 0 255
[TRT]    poseNet -- keypoint 02 'right_eye'  color 255 85 0 255
[TRT]    poseNet -- keypoint 03 'left_ear'  color 255 170 0 255
[TRT]    poseNet -- keypoint 04 'right_ear'  color 255 255 0 255
[TRT]    poseNet -- keypoint 05 'left_shoulder'  color 170 255 0 255
[TRT]    poseNet -- keypoint 06 'right_shoulder'  color 85 255 0 255
[TRT]    poseNet -- keypoint 07 'left_elbow'  color 0 255 0 255
[TRT]    poseNet -- keypoint 08 'right_elbow'  color 0 255 85 255
[TRT]    poseNet -- keypoint 09 'left_wrist'  color 0 255 170 255
[TRT]    poseNet -- keypoint 10 'right_wrist'  color 0 255 255 255
[TRT]    poseNet -- keypoint 11 'left_hip'  color 0 170 255 255
[TRT]    poseNet -- keypoint 12 'right_hip'  color 0 85 255 255
[TRT]    poseNet -- keypoint 13 'left_knee'  color 0 0 255 255
[TRT]    poseNet -- keypoint 14 'right_knee'  color 255 0 170 255
[TRT]    poseNet -- keypoint 15 'left_ankle'  color 170 0 255 255
[TRT]    poseNet -- keypoint 16 'right_ankle'  color 255 0 255 255
[TRT]    poseNet -- keypoint 17 'neck'  color 85 0 255 255
[TRT]    poseNet -- loaded 18 class colors
[TRT]    TensorRT version 8.0.1
[TRT]    loading NVIDIA plugins...
[TRT]    Registered plugin creator - ::GridAnchor_TRT version 1
[TRT]    Registered plugin creator - ::GridAnchorRect_TRT version 1
[TRT]    Registered plugin creator - ::NMS_TRT version 1
[TRT]    Registered plugin creator - ::Reorg_TRT version 1
[TRT]    Registered plugin creator - ::Region_TRT version 1
[TRT]    Registered plugin creator - ::Clip_TRT version 1
[TRT]    Registered plugin creator - ::LReLU_TRT version 1
[TRT]    Registered plugin creator - ::PriorBox_TRT version 1
[TRT]    Registered plugin creator - ::Normalize_TRT version 1
[TRT]    Registered plugin creator - ::ScatterND version 1
[TRT]    Registered plugin creator - ::RPROI_TRT version 1
[TRT]    Registered plugin creator - ::BatchedNMS_TRT version 1
[TRT]    Registered plugin creator - ::BatchedNMSDynamic_TRT version 1
[TRT]    Could not register plugin creator -  ::FlattenConcat_TRT version 1
[TRT]    Registered plugin creator - ::CropAndResize version 1
[TRT]    Registered plugin creator - ::DetectionLayer_TRT version 1
[TRT]    Registered plugin creator - ::EfficientNMS_ONNX_TRT version 1
[TRT]    Registered plugin creator - ::EfficientNMS_TRT version 1
[TRT]    Registered plugin creator - ::Proposal version 1
[TRT]    Registered plugin creator - ::ProposalLayer_TRT version 1
[TRT]    Registered plugin creator - ::PyramidROIAlign_TRT version 1
[TRT]    Registered plugin creator - ::ResizeNearest_TRT version 1
[TRT]    Registered plugin creator - ::Split version 1
[TRT]    Registered plugin creator - ::SpecialSlice_TRT version 1
[TRT]    Registered plugin creator - ::InstanceNormalization_TRT version 1
[TRT]    detected model format - ONNX  (extension '.onnx')
[TRT]    desired precision specified for GPU: FASTEST
[TRT]    requested fasted precision for device GPU without providing valid calibrator, disabling INT8
[TRT]    [MemUsageChange] Init CUDA: CPU +198, GPU +0, now: CPU 227, GPU 1549 (MiB)
[TRT]    native precisions detected for GPU:  FP32, FP16
[TRT]    selecting fastest native precision for GPU:  FP16
[TRT]    attempting to open engine cache file networks/Pose-ResNet18-Body/pose_resnet18_body.onnx.1.1.8001.GPU.FP16.engine
[TRT]    loading network plan from engine cache... networks/Pose-ResNet18-Body/pose_resnet18_body.onnx.1.1.8001.GPU.FP16.engine
[TRT]    device GPU, loaded networks/Pose-ResNet18-Body/pose_resnet18_body.onnx
[TRT]    [MemUsageChange] Init CUDA: CPU +0, GPU +0, now: CPU 305, GPU 1705 (MiB)
[TRT]    Loaded engine size: 77 MB
[TRT]    [MemUsageSnapshot] deserializeCudaEngine begin: CPU 305 MiB, GPU 1705 MiB
[TRT]    Using an engine plan file across different models of devices is not recommended and is likely to affect performance or even cause errors.
[TRT]    Using cublas a tactic source
[TRT]    [MemUsageChange] Init cuBLAS/cuBLASLt: CPU +158, GPU +183, now: CPU 463, GPU 1888 (MiB)
[TRT]    Using cuDNN as a tactic source
[TRT]    [MemUsageChange] Init cuDNN: CPU +241, GPU -3, now: CPU 704, GPU 1885 (MiB)
[TRT]    [MemUsageChange] Init cuBLAS/cuBLASLt: CPU +0, GPU +0, now: CPU 703, GPU 1887 (MiB)
[TRT]    Deserialization required 5418637 microseconds.
[TRT]    [MemUsageSnapshot] deserializeCudaEngine end: CPU 703 MiB, GPU 1887 MiB
[TRT]    [MemUsageSnapshot] ExecutionContext creation begin: CPU 703 MiB, GPU 1887 MiB
[TRT]    Using cublas a tactic source
[TRT]    [MemUsageChange] Init cuBLAS/cuBLASLt: CPU +0, GPU +0, now: CPU 703, GPU 1887 (MiB)
[TRT]    Using cuDNN as a tactic source
[TRT]    [MemUsageChange] Init cuDNN: CPU +1, GPU +0, now: CPU 704, GPU 1887 (MiB)
[TRT]    Total per-runner device memory is 49483264
[TRT]    Total per-runner host memory is 30064
[TRT]    Allocated activation device memory of size 14917632
[TRT]    [MemUsageSnapshot] ExecutionContext creation end: CPU 706 MiB, GPU 1896 MiB
[TRT]
[TRT]    CUDA engine context initialized on device GPU:
[TRT]       -- layers       44
[TRT]       -- maxBatchSize 1
[TRT]       -- deviceMemory 14917632
[TRT]       -- bindings     3
[TRT]       binding 0
-- index   0
-- name    'input'
-- type    FP32
-- in/out  INPUT
-- # dims  4
-- dim #0  1
-- dim #1  3
-- dim #2  224
-- dim #3  224
[TRT]       binding 1
-- index   1
-- name    'cmap'
-- type    FP32
-- in/out  OUTPUT
-- # dims  4
-- dim #0  1
-- dim #1  18
-- dim #2  56
-- dim #3  56
[TRT]       binding 2
-- index   2
-- name    'paf'
-- type    FP32
-- in/out  OUTPUT
-- # dims  4
-- dim #0  1
-- dim #1  42
-- dim #2  56
-- dim #3  56
[TRT]
[TRT]    binding to input 0 input  binding index:  0
[TRT]    binding to input 0 input  dims (b=1 c=3 h=224 w=224) size=602112
[TRT]    binding to output 0 cmap  binding index:  1
[TRT]    binding to output 0 cmap  dims (b=1 c=18 h=56 w=56) size=225792
[TRT]    binding to output 1 paf  binding index:  2
[TRT]    binding to output 1 paf  dims (b=1 c=42 h=56 w=56) size=526848
[TRT]
[TRT]    device GPU, networks/Pose-ResNet18-Body/pose_resnet18_body.onnx initialized.
[gstreamer] opening gstDecoder for streaming, transitioning pipeline to GST_STATE_PLAYING
[gstreamer] gstreamer changed state from NULL to READY ==> mysink
[gstreamer] gstreamer changed state from NULL to READY ==> capsfilter1
[gstreamer] gstreamer changed state from NULL to READY ==> omxh264dec-omxh264dec0
[gstreamer] gstreamer changed state from NULL to READY ==> h264parse1
[gstreamer] gstreamer changed state from NULL to READY ==> queue0
[gstreamer] gstreamer changed state from NULL to READY ==> qtdemux1
[gstreamer] gstreamer changed state from NULL to READY ==> filesrc0
[gstreamer] gstreamer changed state from NULL to READY ==> pipeline0
[gstreamer] gstreamer changed state from READY to PAUSED ==> capsfilter1
[gstreamer] gstreamer changed state from READY to PAUSED ==> omxh264dec-omxh264dec0
[gstreamer] gstreamer changed state from READY to PAUSED ==> h264parse1
[gstreamer] gstreamer stream status CREATE ==> src
[gstreamer] gstreamer changed state from READY to PAUSED ==> queue0
[gstreamer] gstreamer stream status ENTER ==> src
[gstreamer] gstreamer stream status CREATE ==> sink
[gstreamer] gstreamer changed state from READY to PAUSED ==> qtdemux1
[gstreamer] gstreamer changed state from READY to PAUSED ==> filesrc0
[gstreamer] gstreamer stream status ENTER ==> sink
(posenet:12040): GStreamer-CRITICAL **: 11:24:13.460: gst_caps_is_empty: assertion 'GST_IS_CAPS (caps)' failed
(posenet:12040): GStreamer-CRITICAL **: 11:24:13.460: gst_caps_truncate: assertion 'GST_IS_CAPS (caps)' failed
(posenet:12040): GStreamer-CRITICAL **: 11:24:13.460: gst_caps_fixate: assertion 'GST_IS_CAPS (caps)' failed
(posenet:12040): GStreamer-CRITICAL **: 11:24:13.460: gst_caps_get_structure: assertion 'GST_IS_CAPS (caps)' failed
(posenet:12040): GStreamer-CRITICAL **: 11:24:13.460: gst_structure_get_string: assertion 'structure != NULL' failed
(posenet:12040): GStreamer-CRITICAL **: 11:24:13.460: gst_mini_object_unref: assertion 'mini_object != NULL' failed
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
Allocating new output: 320x240 (x 11), ThumbnailMode = 0
OPENMAX: HandleNewStreamFormat: 3605: Send OMX_EventPortSettingsChanged: nFrameWidth = 320, nFrameHeight = 240
[gstreamer] gstDecoder -- onPreroll()
[gstreamer] gstreamer message stream-start ==> pipeline0
[gstreamer] gstreamer stream status CREATE ==> src
[gstreamer] gstreamer stream status ENTER ==> src
[gstreamer] gstreamer message duration-changed ==> h264parse1
[gstreamer] gstreamer mysink taglist, video-codec=(string)"H.264\ /\ AVC", bitrate=(uint)1039211;
[gstreamer] gstreamer mysink taglist, encoder=(string)Lavf58.45.100, container-format=(string)"ISO\ MP4/M4A";
[gstreamer] gstreamer mysink taglist, video-codec=(string)"H.264\ (High\ Profile)", bitrate=(uint)1039211;
[gstreamer] gstBufferManager -- map buffer size was less than max size (1008 vs 115200)
[gstreamer] gstBufferManager recieve caps:  video/x-raw(memory:NVMM), format=(string)NV12, width=(int)320, height=(int)240, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, chroma-site=(string)jpeg, colorimetry=(string)bt601, framerate=(fraction)500/49
[gstreamer] gstBufferManager -- recieved first frame, codec=h264 format=nv12 width=320 height=240 size=115200
[gstreamer] gstBufferManager -- recieved NVMM memory
[gstreamer] gstreamer changed state from READY to PAUSED ==> mysink
[gstreamer] gstreamer changed state from READY to PAUSED ==> pipeline0
[gstreamer] gstreamer message async-done ==> pipeline0
[gstreamer] gstreamer message new-clock ==> pipeline0
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> mysink
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> capsfilter1
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> omxh264dec-omxh264dec0
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> h264parse1
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> queue0
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> qtdemux1
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> filesrc0
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> pipeline0
nvbuf_utils: dmabuf_fd 1245 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
RingBuffer -- allocated 4 buffers (230400 bytes each, 921600 bytes total)
nvbuf_utils: dmabuf_fd 1251 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1249 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1253 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1247 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1259 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1257 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1261 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1255 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
[gstreamer] gstreamer mysink taglist, video-codec=(string)"H.264\ (High\ Profile)", bitrate=(uint)1039211, minimum-bitrate=(uint)2028326, maximum-bitrate=(uint)2028326;
[gstreamer] gstreamer mysink taglist, video-codec=(string)"H.264\ (High\ Profile)", bitrate=(uint)1039211, minimum-bitrate=(uint)478857, maximum-bitrate=(uint)2028326;
[gstreamer] gstreamer mysink taglist, video-codec=(string)"H.264\ (High\ Profile)", bitrate=(uint)1039211, minimum-bitrate=(uint)152081, maximum-bitrate=(uint)2028326;
nvbuf_utils: dmabuf_fd 1267 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1265 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1269 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1263 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
[gstreamer] gstreamer mysink taglist, video-codec=(string)"H.264\ (High\ Profile)", bitrate=(uint)1039211, minimum-bitrate=(uint)152081, maximum-bitrate=(uint)2647183;
nvbuf_utils: dmabuf_fd 1251 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1245 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1249 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1271 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1259 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1247 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1257 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1253 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
[gstreamer] gstreamer mysink taglist, video-codec=(string)"H.264\ (High\ Profile)", bitrate=(uint)1039211, minimum-bitrate=(uint)152081, maximum-bitrate=(uint)2668163;
nvbuf_utils: dmabuf_fd 1267 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1255 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1265 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1261 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1251 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1263 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1245 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1269 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1259 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1271 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1247 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1249 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1267 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1253 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1255 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1257 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1251 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1261 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
nvbuf_utils: dmabuf_fd 1263 mapped entry NOT found
nvbuf_utils: NvReleaseFd Failed... Exiting...
[gstreamer] gstDecoder -- end of stream (EOS)
posenet: detected 1 person(s)
RingBuffer -- allocated 2 buffers (115200 bytes each, 230400 bytes total)
[gstreamer] gstEncoder-- starting pipeline, transitioning to GST_STATE_PLAYING
[gstreamer] gstreamer changed state from NULL to READY ==> filesink0
[gstreamer] gstreamer changed state from NULL to READY ==> qtmux0
[gstreamer] gstreamer changed state from NULL to READY ==> h264parse2
[gstreamer] gstreamer changed state from NULL to READY ==> capsfilter2
[gstreamer] gstreamer changed state from NULL to READY ==> omxh264enc-omxh264enc0
[gstreamer] gstreamer changed state from NULL to READY ==> mysource
[gstreamer] gstreamer changed state from NULL to READY ==> pipeline1
[gstreamer] gstreamer changed state from READY to PAUSED ==> qtmux0
[gstreamer] gstreamer changed state from READY to PAUSED ==> h264parse2
[gstreamer] gstreamer changed state from READY to PAUSED ==> capsfilter2
[gstreamer] gstreamer changed state from READY to PAUSED ==> omxh264enc-omxh264enc0
[gstreamer] gstreamer stream status CREATE ==> src
[gstreamer] gstreamer changed state from READY to PAUSED ==> mysource
[gstreamer] gstreamer changed state from READY to PAUSED ==> pipeline1
[gstreamer] gstreamer stream status ENTER ==> src
[gstreamer] gstreamer message new-clock ==> pipeline1
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> qtmux0
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> h264parse2
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> capsfilter2
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> omxh264enc-omxh264enc0
[gstreamer] gstreamer changed state from PAUSED to PLAYING ==> mysource
[gstreamer] gstEncoder -- new caps: video/x-raw, width=320, height=240, format=(string)I420, framerate=30/1
Framerate set to : 30 at NvxVideoEncoderSetParameter
[TRT]    ------------------------------------------------
[TRT]    Timing Report networks/Pose-ResNet18-Body/pose_resnet18_body.onnx
[TRT]    ------------------------------------------------
[TRT]    Pre-Process   CPU   0.07724ms  CUDA   1.07526ms
[TRT]    Network       CPU 5429.70264ms  CUDA 5428.16162ms
[TRT]    Post-Process  CPU  27.62575ms  CUDA  27.62161ms
[TRT]    Visualize     CPU  15.07111ms  CUDA  15.07135ms
[TRT]    Total         CPU 5472.47705ms  CUDA 5471.92969ms
[TRT]    ------------------------------------------------
[TRT]    note -- when processing a single image, run 'sudo jetson_clocks' before
to disable DVFS for more accurate profiling/timing measurements
[gstreamer] gstDecoder -- end of stream (EOS) has been reached, stream has been closed
posenet: shutting down...
NvMMLiteOpen : Block : BlockType = 4
===== NVMEDIA: NVENC =====
NvMMLiteBlockCreate : Block : BlockType = 4
[gstreamer] gstDecoder -- stopping pipeline, transitioning to GST_STATE_NULL
H264: Profile = 66, Level = 40
NVMEDIA_ENC: bBlitMode is set to TRUE
[gstreamer] gstDecoder -- pipeline stopped
[gstreamer] gstEncoder -- shutting down pipeline, sending EOS
[gstreamer] gstEncoder -- transitioning pipeline to GST_STATE_NULL
[gstreamer] gstEncoder -- pipeline stopped
posenet: shutdown complete.
`

Also, I did try the :
cmake -DENABLE_NVMM=OFF ../ make sudo make install
which removed quite a lot of log lines, but did not really help with the real problem.

I can not get why for some input videos it works absolutely fine, and for some others, it only processes 1 frame and not the whole video.

Hi @gilles-syrto, can you try playing the video with video-viewer or video-viewer.py and seeing if it's related to posenet at all?
If video-viewer can't play it either, I think what I would recommend is transcoding the video to a different codec or re-encoding it, because perhaps the video has something different about it where GStreamer is unable to play it correctly.

I can not get why for some input videos it works absolutely fine, and for some others, it only processes 1 frame and not the whole video.

Hi @gilles-syrto, can you try playing the video with video-viewer or video-viewer.py and seeing if it's related to posenet at all?
If video-viewer can't play it either, I think what I would recommend is transcoding the video to a different codec or re-encoding it, because perhaps the video has something different about it where GStreamer is unable to play it correctly.

Thanks for your reply. I was offline the last few days, but I'll try it in the next days and let you know if it is related to the encoding of the video or not.
Gilles

Hi ! video-viewer is able to play the video that posenet is not. Any idea what I could check ?


data model

defines data model interfaces
moves state from SpeechRecognizerComponent to AppComponent.

SpeechRecognizerComponent now only emits speech recognition events

decouples ChatService from ModeSelectorComponent
improves UI styles

Excellent -- looks great to me. Thanks.


proxy abuse detection failing under 2.8.0 and nginx 1.4.x, 1.6.0

I have been using the following rules for detecting proxy abuse under apache and modsecurity 2.7.1 for a long time: https://github.com/SpiderLabs/owasp-modsecurity-crs/blob/master/experimental_rules/modsecurity_crs_11_proxy_abuse.conf
The rules rely on this geo dataset: http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
I would like to use them under nginx, but I can't get them to work under any of the recent versions of nginx (1.4.x and 1.6.0) and modsecurity (2.7.x and 2.8.0).  A request which carries a bogus proxy and which should be stopped instead causes the connection to be dropped e.g.:

curl --header 'X-Forwarded-For: <IP_ADDRESS>' --verbose http://localhost/

and this appears in the logs:
nginxlog> 2014/04/29 15:07:00 [alert] 2794#0: worker process 2805 exited on signal 11 (core dumped)
The modsecurity debug log shows this:
[29/Apr/2014:15:07:00 --0400] [/sid#158a5b8][rid#1576798][/cgi-bin/showme/foo][4] Recipe: Invoking rule 15c8f00; [file "/etc/nginx/modsecurity.d/activated_rules/modsecurity_crs_11_proxy_abuse.conf"] [line "26"].
[29/Apr/2014:15:07:00 --0400] [/sid#158a5b8][rid#1576798][/cgi-bin/showme/foo][5] Rule 15c8f00: SecRule "TX:0" "@geoLookup " "chain,setvar:tx.geo_x-forwarded-for=%{geo.country_code}"
[29/Apr/2014:15:07:00 --0400] [/sid#158a5b8][rid#1576798][/cgi-bin/showme/foo][4] Transformation completed in 0 usec.
[29/Apr/2014:15:07:00 --0400] [/sid#158a5b8][rid#1576798][/cgi-bin/showme/foo][4] Executing operator "geoLookup" with param "" against TX:0.

No longer a concern in libModSecurity. Marking it as won't fix. Further information about libModSecurity available here:
https://github.com/SpiderLabs/ModSecurity/tree/v3/master


Tests are failing on TF2

Can reproduce by running pytest using TensorFlow 2.0.0, resulting in error:
ValueError: tf.enable_eager_execution must be called at program startup.

Just need to use make test. Need to run some tests in separate pytest processes so that the tensorflow global state doesn't get in the way.


Describe how dapr sidecars are locked down by default in v1.4 onwards

In v1.4 we introduced this setting (below), which by default locks down a the IP addresses on a side car. Before v1.4 any dapr sidecar could call any other sidecar in a cluster by default. After v1.4 this is no longer possible and need to be enabled explicitly.

--dapr-listen-addresses
not supported

dapr.io/sidecar-listen-addresses
Comma separated list of IP addresses that sidecar will listen to. Defaults to all in standalone mode. Defaults to [::1],<IP_ADDRESS> in Kubernetes. To listen to all IPv4 addresses, use <IP_ADDRESS>. To listen to all IPv6 addresses, use [::].

Dapr
There is a short description here https://docs.dapr.io/reference/arguments-annotations-overview/ however the Dapr Security overview topic should be updated here https://docs.dapr.io/concepts/security-concept/ should cover this as a topic to explain this better (or have a sub-topic here)

Resolved in PR


Refactor Parameters for Joining Calls

Purpose

Refactor Parameters for Joining Calls to prepare for future Teams Interop changes.

Does this introduce a breaking change?

[ ] Yes
[x] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[x] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

he JoinCallType enum changes as well. We can just have GROUP_CALL for now.

ok


Bump Maven publish plugin

Signed-off-by: mramotar<EMAIL_ADDRESS>Please see our contributing guidelines (contributing.md) primarily make sure to sign our cla as we cannot accept code externally without a signed cla
https://opensource.dropbox.com/cla/

Codecov Report
Base: 84.40% // Head: 84.40% // No change to project coverage :thumbsup:

Coverage data is based on head (9c60320) compared to base (36a548b).
Patch has no changes to coverable lines.

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #467   +/-   ##
=========================================
  Coverage     84.40%   84.40%
  Complexity      173      173
=========================================
  Files            49       49
  Lines           917      917
  Branches        132      132
=========================================
  Hits            774      774
  Misses           78       78
  Partials         65       65

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

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