3.0: Support Ember/Ember-Data 1.13 and up only

Builds on @fivetanley's PR #87 to drop support for Ember & Ember-Data before version 1.13. Includes changes to the ember-try & travis config to test on 1.13 and all 2.x versions so far.
Since this is a backwards-incompatible change, it bumps the package version to 3.0.
Given our limited test suite, I've normally been testing changes in my app that uses the adapter. However, that app is still on Ember 1.12, so I can't test these changes. I'd appreciate it if anyone who's interested could give it a try in their apps and let me know if there are problems.

This looks good. Perhaps add https://github.com/rwjblue/ember-cli-version-checker for ember-data?

I'm all for dropping support for old versions, if it makes development easier. That said, we should probably have better tests. Also, is there a way to communicate via code which version of Ember Data we support? Something like npm peerDependencies?

:+1:  code looks good

I get this error testing this branch.
Uncaught (in promise) CustomPouchError {status: 500, name: "unknown_error", message: "Database encountered an unknown error", error: true}
error: truemessage: "Database encountered an unknown error"
name: "unknown_error"
status: 500
__proto__: PouchError
constructor: PouchError(opts)
toString: ()
__proto__: Define
Error.bc
constructor: Error()
message: ""
name: "Error"
toString: toString()
__proto__: Object

I get this one time only and everything  seems to work. Not much time this week but will try to find this.

https://github.com/broerse/ember-cli-blog/commit/438d2af39f7020032ebf35052a75a0d15e54ada0
Works!

@nolanlawson beginning in Ember Data 2.4, Ember Data will be a full-fledged Ember add-on like Ember Pouch. You can use peerDependencies in that fashion. Until then, I think you would have to communicate this at runtime by asserting against DS.VERSION.

@fivetanley @nolanlawson Is https://github.com/rwjblue/ember-cli-version-checker not the way to go?

Okay, I added a version check. I used ember-cli-version-checker. It would have been cleaner to use a check against DS.VERSION since we wouldn't have to have knowledge of how ember-data is distributed at different versions. But I don't see a way to do that because I can't use semver (or other npm libraries) at runtime without a lot of complexity that seems unnecessary for a simple version check.

@rsutphin The ember-data version check look good. Should we also add a version check for ember?

I don't think we need a version check for ember. Ember-pouch mainly interacts with ember-data. It doesn't use any complex or subtle ember features — whatever version of ember works with the version of ember-data you have should be fine.
@broerse, thanks for checking in your app. Are there any further concerns before I merge this?

@rsutphin It works OK for me but my app is still in 1.13.x. I see there are some issues with other modules and ember & ember-data 2.2.0. We could first double check 2.2.0.
I vote for merging now.

I just tried out this branch locally on ember js 2.2 and ember data 2.2.1 and everything worked fine.

@mattmarcum Thanks for testing this!

@mattmarcum, thanks for testing.
I tested with HospitalRun. None of their tests that were passing before fail with this change. (I didn't run the full app, though.) I'm going to merge now.
Thanks for everyone's feedback.

Published as 3.0.0.


feat(tab-scroller): add new component

fixes #150

Codecov Report

Merging #222 into master will increase coverage by 0.09%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #222      +/-   ##
==========================================
+ Coverage    98.8%   98.89%   +0.09%
==========================================
  Files          21       22       +1
  Lines         834      907      +73
  Branches       78       85       +7
==========================================
+ Hits          824      897      +73
  Misses         10       10

Impacted Files
Coverage Δ

packages/tab-scroller/index.js
100% <100%> (ø)

packages/tab-indicator/index.js
100% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


withLatestFrom without source observable

Feature Request
Hello, we use NGRX in my team and we are often confronted to this case:
this.actions$.pipe(
  ofType(MY_ACTIONS),
  withLatestFrom(
    this.store.pipe(select(selector1)),
    this.store.pipe(select(selector2)),
  ),
  map(([, res1, res2]: [never, TypingRes1, TypingRes2]) => doSometing(res1, res2))
)

As you can see, we do not need the action (source).
Describe the solution you'd like
We would like to have an operator that behaves like withLatestFrom, but without the source in output.
With the case management of a single observable does not return a table, but directly the answer:
export function latestFrom<T, T1>(v1: ObservableInput<T1>): OperatorFunction<T, T1>;
export function latestFrom<T, T1>(v1: ObservableInput<T1>, v2: ObservableInput<T2>): OperatorFunction<T, [T1, T2]>;
...

We already look at sample, but it only accepts one onservable and it does not exactly do the same.
Describe alternatives you've considered
I try to do a custom operator like this :
export function latestFrom<T, R>(...args: Array<ObservableInput<any>>): OperatorFunction<T, R> {
  return pipe(
    withLatestFrom.apply(null, args),
    map(([, ...results]) => (results.length === 1 ? results[0] : results)),
  );
}

But I can not solve the typing...

I think you do need the source.

Correct me if I'm wrong but it seems what you're looking for is combineLatest?

@cartant Yes sorry, I mis explained. I need the source to trigger the result. It's just that I would not want to have the value of the source in the output (the payload of the action in this case).
@yunuseon No I tried combinesLatest but it does not fit (with switchMap and first).
withLastestFrom
source: ---a-- 's'
  obs1: -a---- '1'
  obs2: -a---- '2'
output: ---a-- ['s', '1', '2']

withLastestFrom with late observables (as expected)
source: -a---- 's'
  obs1: ---a-- '1'
  obs2: ---a-- '2'
output: ------

source.pipe(switchMap(() => combinesLatest(obs1, obs2).pipe(first())))
combinesLatest with late observables
source: -a---- 's'
  obs1: ---a-- '1'
  obs2: ---a-- '2'
output: ---(a|)--  ['1', '2']

wath we need :
lastesdFrom
source: ---a-- 's'
  obs1: -a---- '1'
  obs2: -a---- '2'
output: ---a-- ['1', '2']

I would type it like this:
import { MonoTypeOperatorFunction, Observable, ObservedValueOf, OperatorFunction } from "rxjs";
import { map, withLatestFrom } from "rxjs/operators";

type ObservedValuesOf<A> = { [K in keyof A]: ObservedValueOf<A[K]> };

function latestFrom<T, O extends Observable<unknown>[]>(
  ...observables: O
): OperatorFunction<T, ObservedValuesOf<O>> {
  return source =>
    source.pipe(
      // This assertion is only necessary because withLatestFrom doesn't (yet) have a
      // signature that infers for N parameters.
      withLatestFrom(...observables) as MonoTypeOperatorFunction<any>,
      map(([, ...rest]) => rest)
    );
}

However, IMO, this should be a user-land operator. I don't see a compelling reason for its inclusion in the core and I don't see a reason for this to be treated any differently to other operator proposals.
IMO, the code in the issue unnecessarily specifies the parameter types for the arrow function. TypeScript is perfectly capable of inferring these and, IMO, it is good practice to rely upon TypeScript's inference - over explicit typing - wherever possible. Doing so would result in this code:
this.actions$.pipe(
  ofType(MY_ACTIONS),
  withLatestFrom(
    this.store.pipe(select(selector1)),
    this.store.pipe(select(selector2)),
  ),
  map(([, res1, res2]) => doSometing(res1, res2))
)

IMO, it's not worth introducing a new operator to avoid the  , that's needed to ignore the action payload.


jsane doesnt support keys with spaces

the value below gives syntax error
>>> j = jsane.from_dict({"hi x": "there"})
>>> j."hi x"
  File "<stdin>", line 1
    j."hi x"
           ^
SyntaxError: invalid syntax

Yes, this is because Python doesn't allow spaces in property names. You can work around this by using attribute notation (j["hi x"].r()).


JBPM-5139: added default no-param constructor

Please review & merge asap. Without this fixed it's impossible to deploy kie-wb.war on EAP 6.4

+1 to merge.


Default Julia version for the REQUIRE buildpack is 0.6.4, not the latest version

If use of REQUIRE file isn't deprecated, it would make sense that not having a pinned version should lead to the latest version of julia, rather than an ancient version.
If it is deprecated though, in favor of Project.toml, it can make sense still to just retain as it is. But, then we should declare it clearly here and there.

Having encountered this in #1239, I think we should deprecate REQUIRE, retain it as-is and point to Project.toml.


Adding a simple mechanism to configue and create BT Connections.

Couple of minor questions. PTAQL.

LGTM


created the alphabet-triangle-pattern in golang

Why: Recreating the above problem in the golang language.
Closes #643
What's being changed:
Adding the program in the golang language.
Check off the following:

[x] I have reviewed my changes in staging (look for "Automatically generated comment" and click Modified to view your latest changes).
[x] For content changes, I have completed the self-review checklist.

Hey @GodKimba
Thanks for your contributions to this project 😄
This PR will be merged shortly


Fix missing gridlaunch.h build issue

When building with top of 1.8.x branches of HIP and HCC, there is a build issues with missing gridlaunch.h header file. hip::hip_hcc no longer has a dependency on HCC runtime, so we need to use hip::device now.

@pfultz2

@aaronenyeshi
could you issue PR against develop branch? thanks

@bragadeesh Thanks, just changed against develop branch now.


Add link to the nuance format documentation.

No changes to code function, only adding comments.

Good idea. Maybe also note is in important to exactly follow the format.

OK this looks good.


GlobalChat contact stealing focus on Android 1.10.1

How do I make it freaking stop?

Anything else you're doing in the app, the app switches to GlobalChat by itself. https://superuser.com/questions/18383/preventing-applications-from-stealing-focus

latest version?
Open e.g. Send tab, does it switch then?

Is https://github.com/byteball/byteball/releases 1.10.1 not the latest version?
Yes, it switches then. Anything.

i can't reproduce it on my android, please give detailed instructions

Launch app, login with password, immediately put tablet on table & walk away, come back to find GlobalChat has stolen focus.

This is normal if you leave it on the Home tab and any message arrives, the app automatically opens that chat.  I asked you above if this happens when in the Send (or any other) tab.

And I answered

Yes, it switches then.

If that wasn't clear enough:
Launch app, login with password, switch to Send (or any other) tab, immediately put tablet on table & walk away, come back to find GlobalChat has stolen focus.

That's what I couldn't reproduce.  The app stays on Send tab while the badge on the chat tab grows as new messages arrive.


Change Rc to Arc

Making this change should allow multi-threading with libraries like rayon.
For example, the following code compiles in this branch but not on master:
use std::fs;
use roxmltree::Document;
use rayon::prelude::*;

fn main() {
  let xml = fs::read_to_string("./document.xhtml").unwrap();
  let doc = Document::parse(&xml).unwrap();
  let root = doc.root();

  (0..1000).into_par_iter().for_each(|_| {
    root.descendants().filter(|node| {
      node.tag_name().name() == "p"
    }).count();
  });
}

The speed up from into_par_iter can be very significant (3.7s vs 14.2s on my machine) if you are walking the tree a bunch of times (let's pretend that we are looking for different items each iteration in the example above).
After running cargo bench and running the non-parallel version of this code through both this branch and master, there was no significant difference in the run times. So this seems like it might a lot a benefit in some use cases for very little cost.

I guess there is nothing that stops us, but could you show an error with Rc? I'm interested in what exactly it doesn't like about Rc.

Here is a snippet of the error:
error[E0277]: `std::rc::Rc<std::string::String>` cannot be shared between threads safely
  --> src/main.rs:10:29
   |
10 |     (0..1000).into_par_iter().for_each(|_| {
   |  _____________________________^^^^^^^^_-
   | |                             |
   | |                             `std::rc::Rc<std::string::String>` cannot be shared between threads safely
11 | |     root.descendants().filter(|node| {
12 | |       node.tag_name().name() == "p"
13 | |     }).count();
14 | |   });
   | |___- within this `[closure@src/main.rs:10:38: 14:4 root:&roxmltree::Node<'_, '_>]`
   |
   = help: within `[closure@src/main.rs:10:38: 14:4 root:&roxmltree::Node<'_, '_>]`, the trait `std::marker::Sync` is not implemented for `std::rc::Rc<std::string::String>`
   = note: required because it appears within the type `roxmltree::Uri`

I've ran the bechmarks and it's 5-10% slower, which is pretty serious. I will think if there is another way, since we don't have a mutable access there is no need in Arc.

Curious. I must be doing something wrong while I'm benchmarking. Here were my results for completeness sake.
Before (w/Rc):
test large_roxmltree     ... bench:   4,990,875 ns/iter (+/- 372,508)
test medium_roxmltree    ... bench:     980,338 ns/iter (+/- 25,299)
test tiny_roxmltree      ... bench:       4,890 ns/iter (+/- 237)

After (w/Arc):
test large_roxmltree     ... bench:   4,753,714 ns/iter (+/- 149,681)
test medium_roxmltree    ... bench:     922,787 ns/iter (+/- 216,640)
test tiny_roxmltree      ... bench:       4,944 ns/iter (+/- 305)

I took it to mean that there was no difference, since everything was within the deviation. Any tips for making my benchmarking more reliable?
Good point that there should be no use for Arc. Let me see if I can whip anything up as well.

Yes, the measurements are a bit unstable. After multiple runs it looks like it can even be faster in some cases.
The problem is that benches are testing only the parsing, but Arc will affect the public API itself, since every access should be atomic now.
I guess I will simply replace Uri with Cow. It makes large_roxmltree a bit slower, for whatever reason, but medium_roxmltree and tiny_roxmltree are faster than Rc/Arc now. So it's a fair tradeoff.
The only downside is that when an XML have a lot of not well-formed namespaces (e.g. it has &\t\n\r) than it will use way more memory. The idea behind Uri is to reduce the memory overhead of duplicated namespaces. But as long as we have a well-formed ns, we simply storing a &str.

I've pushed a new commit. Please try it out.

It works great! Hopefully you don't mind if I send in another PR here and there, even though I am probably less experienced. I have really enjoyed using this library and hope to give back! Thank you!

Closing in favor of https://github.com/RazrFalcon/roxmltree/commit/13fa4789584ada2f26cf37837a5b26e37f63cec1

@RazrFalcon I thought you might want to know, that with the change you pushed, I tried cargo clippy and it suggested the following:
warning: calling `to_string` on `&&mut std::borrow::Cow<'input, str>`
   --> src/parse.rs:798:49
    |
798 |                         *prev_text = Cow::Owned(prev_text.to_string() + text.borrow());
    |                                                 ^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing the receiver: `(*prev_text).to_string()`
    |
    = note: `#[warn(clippy::inefficient_to_string)]` on by default
    = help: `&mut std::borrow::Cow<'input, str>` implements `ToString` through a slower blanket impl, but `std::borrow::Cow<'input, str>` has a fast specialization of `ToString`
    = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#inefficient_to_string

I'm sure it's not a big issue, but I thought I'd mention, just in case.

Hopefully you don't mind if I send in another PR here and there

Sure. Any suggestions are always welcome. Just in this case, the simplest solution wasn't the right one.

I've fixed the clippy warnings. Thanks.


[improvement] fix typo

was giving me OCD 🤗
priveleges -> privileges

Ooooooofff. Sorry, I missed that - thanks for the PR.


Ensure only one instance of the main activity exists at once

This prevents a crash caused by the system starting a second MainActivity
instance in response to a USB device being connected.
Fixes #14.

Looks good. Merging.

+1


ssl.SSLError: [SSL] malloc failure - with openssl=1.1.1d (ppc64le)

I originally commented in this conda issue: https://github.com/ContinuumIO/anaconda-issues/issues/11274, but after a little debug I decided to report the issue here as well.
Currently to reproduce the error I have been using a default conda environment with python 3.6 or 3.7 installed:
conda create -y -n my-test-env python=3.6

then running the following command
python -c 'import urllib.request; urllib.request.urlopen("https://pypi.org")'

which produces the following error:
(my-test-env) [builder@b98996cfec6a ~]$ python -c 'import urllib.request; urllib.request.urlopen("https://pypi.org")'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/opt/anaconda3/envs/my-test-env/lib/python3.6/urllib/request.py", line 223, in urlopen
    return opener.open(url, data, timeout)
  File "/opt/anaconda3/envs/my-test-env/lib/python3.6/urllib/request.py", line 526, in open
    response = self._open(req, data)
  File "/opt/anaconda3/envs/my-test-env/lib/python3.6/urllib/request.py", line 544, in _open
    '_open', req)
  File "/opt/anaconda3/envs/my-test-env/lib/python3.6/urllib/request.py", line 504, in _call_chain
    result = func(*args)
  File "/opt/anaconda3/envs/my-test-env/lib/python3.6/urllib/request.py", line 1361, in https_open
    context=self._context, check_hostname=self._check_hostname)
  File "/opt/anaconda3/envs/my-test-env/lib/python3.6/urllib/request.py", line 1286, in do_open
    h = http_class(host, timeout=req.timeout, **http_conn_args)
  File "/opt/anaconda3/envs/my-test-env/lib/python3.6/http/client.py", line 1392, in __init__
    context = ssl._create_default_https_context()
  File "/opt/anaconda3/envs/my-test-env/lib/python3.6/ssl.py", line 502, in create_default_context
    context = SSLContext(PROTOCOL_TLS)
  File "/opt/anaconda3/envs/my-test-env/lib/python3.6/ssl.py", line 391, in __new__
    self = _SSLContext.__new__(cls, protocol)
ssl.SSLError: [SSL] malloc failure (_ssl.c:2805)

at this point, I don't have a test case without conda or python, but would be willing to write/test any suggested code to isolate the issue in ppc64le env.
I did poke around a little in the openssl code, using git bisect I narrowed it down to commit openssl/openssl@3ff98f5 as causing the problem, see openssl/openssl#9595 for details on the commit.
I disabled the change by setting -DOPENSSL_RAND_SEED_DEVRANDOM_SHM_ID=-1 as suggested in the PR and was able to run the previously failing test successfully.
I made the following change in build.sh:
 diff --git a/recipe/build.sh b/recipe/build.sh
index a6cb10d..2155c45 100644
--- a/recipe/build.sh
+++ b/recipe/build.sh
@@ -29,7 +29,7 @@ if [[ ${_BASE_CC} == *-* ]]; then
       ;;
     *powerpc64le-*linux*)
       _CONFIG_OPTS+=(linux-ppc64le)
-      CFLAGS="${CFLAGS} -Wa,--noexecstack"
+      CFLAGS="${CFLAGS} -Wa,--noexecstack -DOPENSSL_RAND_SEED_DEVRANDOM_SHM_ID=-1"
       ;;
     *darwin*)

I don't think I have enough context regarding the change to figure out the root cause.
openssl-config-data-dump.txt

Which platform are you seeing that on?

I am running on a power 9 system inside a container with the following:
(base) [builder@b98996cfec6a pytorch]$ uname -a
Linux b98996cfec6a 4.14.0-115.6.1.el7a.ppc64le #1 SMP Wed Feb 13 14:33:32 UTC 2019 ppc64le ppc64le ppc64le GNU/Linux

(base) [builder@b98996cfec6a pytorch]$ cat /etc/os-release
NAME="Red Hat Enterprise Linux Server"
VERSION="7.6 (Maipo)"
ID="rhel"
ID_LIKE="fedora"
VARIANT="Server"
VARIANT_ID="server"
VERSION_ID="7.6"
PRETTY_NAME="Red Hat Enterprise Linux Server 7.6 (Maipo)"
<snip>

as a note: if I run the same test on an x86_64 system (w/RHEL7.6 container) I don't see the failure

I am also seeing it on:
ppc64le
root@hostname:~# uname -a
Linux hostname 4.15.0-55-generic #60~16.04.2-Ubuntu SMP Thu Jul 4 09:01:41 UTC 2019 ppc64le ppc64le ppc64le GNU/Linux
root@hostname:~# cat /etc/os-release
NAME="Ubuntu"
VERSION="16.04.6 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.6 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial```

# uname -a
Linux 7aa0728cab64 4.14.0-115.10.1.el7a.ppc64le #1 SMP Wed Jun 26 09:32:17 UTC 2019 ppc64le ppc64le ppc64le GNU/Linux

# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (AltArch)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (AltArch)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7:server"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

I think the current code expects to be able to find getrandom() on a recent kernel, but that you have outdated libc and kernel headers that cause it to not be picked up.
If you try "strace openssl rand 1", do you see either a call to getrandom(), or trying to open /dev/urandom?
If I disable getrandom() support, "openssl rand 1" returns this for me:
140736378849120:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:crypto/rand/drbg_lib.c:342:
140736378849120:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:crypto/rand/drbg_lib.c:342:
140736378849120:error:2406B072:random number generator:RAND_DRBG_generate:in error state:crypto/rand/drbg_lib.c:589:
140736378849120:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:crypto/rand/drbg_lib.c:342:
140736378849120:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:crypto/rand/drbg_lib.c:342:
140736378849120:error:2406B072:random number generator:RAND_DRBG_generate:in error state:crypto/rand/drbg_lib.c:589:
140736378849120:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:crypto/rand/drbg_lib.c:342:
140736378849120:error:2406B072:random number generator:RAND_DRBG_generate:in error state:crypto/rand/drbg_lib.c:589:

I think the "Check the kernel's version and fail if it is too recent." might not be a good idea. If we get there on a new kernel, we'll always fail.
@bernd-edlinger: Care to comment on this?

At least one workaround is to add a define for __NR_getrandom for other platforms. For ppc* it seems to be 359.
I see:
ppc32:#define __NR_getrandom               359
ppc64:#define __NR_getrandom               359
x86:#define __NR_getrandom          355
mips32:#define __NR_getrandom                      (__NR_Linux + 353)
amd64:#define __NR_getrandom          318
s390x:#define __NR_getrandom               349
arm:#define __NR_getrandom                  384
arm64:#define __NR_getrandom 278
mips64 (N64?):#define __NR_getrandom              (__NR_Linux + 313)
mips64 (N32):#define __NR_getrandom               (__NR_Linux + 317)
There are still many others not listed here.

If you try "strace openssl rand 1", do you see either a call to getrandom(), or trying to open /dev/urandom?

using 1.1.1d I see the following error
130140736342674976:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:crypto/rand/drbg_lib.c:342:
130140736342674976:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:crypto/rand/drbg_lib.c:342:
117140736342674976:error:2406B072:random number generator:RAND_DRBG_generate:in error state:crypto/rand/drbg_lib.c:589:
130140736342674976:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:crypto/rand/drbg_lib.c:342:
130140736342674976:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:crypto/rand/drbg_lib.c:342:
117140736342674976:error:2406B072:random number generator:RAND_DRBG_generate:in error state:crypto/rand/drbg_lib.c:589:
130140736342674976:error:2406C06E:random number generator:RAND_DRBG_instantiate:error retrieving entropy:crypto/rand/drbg_lib.c:342:
117140736342674976:error:2406B072:random number generator:RAND_DRBG_generate:in error state:crypto/rand/drbg_lib.c:589:

if I use 1.1.1c there is an access of /dev/urandom
open("/dev/random", O_RDONLY)           = 3
_newselect(4, [3], NULL, NULL, NULL)    = 1 (in [3])
close(3)                                = 0
open("/dev/urandom", O_RDONLY)          = 3
fstat(3, {st_mode=S_IFCHR|0666, st_rdev=makedev(1, 9), ...}) = 0

Alright, seems the problem with the outdated kernel headers is not only a theoretical one.
We need to supply our own define here.  I did that for all kernel versions I am able to test with.
I would like that to be done by people who are able to test that specific kernel.

I have access to most if not all architecutes supported by Debian,
so I should be able to test them.
But I think that if we're going to treat 4.8 as special, we should
add the define for all architectures supported by 4.8. Archituctures
added afterwards will always have it in the kernel headers.

Right, the point with v4.8 is that the entropy generator was re-designed in v4.8
due to critics by Daniel Bernstein, and by that re-design it unfortunately broke
the assumption that the /dev/urandom is initialized when /dev/random is readable
for the first time.

I do not think we should add the define's, I think Debian should.  Or we have it in a NOTES file.  Suppose we get the number wrong?

Debian stable and unstable have the proper defines. But there
clearly are people who don't have them.

That's why I did only add syscall numbers which I can personally verify.
I think we should only take the risk for systems which are used really often,
and where bad cross-toolchains are known to be circulating as in this case.

Even oldstable has them. I was planning to do a test building this
on oldstable, but even that is too recent. I need oldoldstable
which ships a 3.16 kernel, and so has 3.16 kernel headers.
(Or I change something so the kernel headers don't get included.)
I only talk about Debian because I have access to all Debian
development machines, and there should be one for each archicture.
At least the release architectures should have one I can just ssh
in, the others might require me ask to set up an account.

The only reasonable way how this can happen is when you are targeting
your cross compiler for an old linux/glibc version, then you have no other
choice than to use linux/glibc headers, and libraries from before 2013.
Once you have this toolchain running it will produce binaries that run
on any system version newer than the sys-root files.
So people will just use it.
IF you do it with brand new glibc files your binaries will only run on
new glibc versions, due to the glibc being only upward compatible
not downward compatible.

I think a NOTES.DEBIAN file created by Kurt who is a Debian maintainer is the best and safest way to go.  It's not hard to add -D__NR_getrandom=359 to your config line.  And there is a risk that someone will get their OS indirectly.  Are we confident, for example, that Ubuntu hasn't changed anything here?

No they won't change that number.

Note that they all run in a chroot/container/whatever that only
has old files. It probably contains an old libc and kernel
headers. But the host system runs a recent kernel. This doesn't
even have to do with cross compilation, just targeting old
systems. And it breaks if you run it on a new kernel.
So people that upgrade the kernel will suddenly see their system
break, because the binary was build on an old system that didn't
know anything about that system call.
I really only see 2 options:

We add the defines for the system call (for all systems we can test)
We stop treating 4.8 as something that requires the system call.

Option 1 sounds more safe.
The problem with Option 2 is that reading /dev/random does not
give you a guarantee that the CRNG is properly initialized with 4.8 and above.
Option 3 print something on the console and ask user for permission to continue.

I don't think option 3 is something a library should do.

I was able to build an openssl conda-package using commit https://github.com/openssl/openssl/commit/eee565ec4b8509b53ee280e8f37243bc5cb5f535 and I no longer see the failure I was seeing.
Thank you!

Also seeing this issue - compiling nginx with openssl 1.1.1c it works, but using 1.1.1f nginx fails to boot with the RAND_DRBG_instantiate:error retrieving entropy error. This is on a raspberry pi (4.19.97-v7+ kernel), inside a docker "scratch" container (so no /dev/random or /dev/urandom available, but I get the same error even if I mount the host /dev/[u]random into the container)

ask Google to fix this.
Thank You.


Unrealistic represenation of small residential roads

Here's an example: https://www.openstreetmap.org/way/476939396
In practice it is a small tarmac road with concrete bricks as pavements. There are for sure no junction signs or anything here, they are tiny roads, it's an internal road. Reported by Varad. Links with #151 and other issues around junction signposts. Will aim to add screenshots.

Having looked at this I think this links to a wider issue that Dustin has raised before: many roads on which you can travel both directions have sufficient room for 2 way traffic. Even more roads lack a central line marking. Upstream question I guess is how to mark such roads on OSM, using the 'width' tag?

Another example: https://www.openstreetmap.org/way/6273624#map=18/53.81899/-1.53868

Roughly the same area in A/B Street. Liking the colouring (although would have a mild preference of grey green for the living street, think this has been discussed but cannot recall the reasoning for grey pink over grey green).

This specific issue becomes clear when you zoom in:

No way that there are Stop signs all over the place, not sufficient room for 2 cars side-by-side, there is car storage on both sides, and there is in reality no centreline. This is a common road configuration in many dense urban areas built before garages for car storage became common in the 1960s or so. I think the first question is

How to tag this on OSM?

Then we can think about visualisation. My first thought, however, is that residential roads should not have central lines or stop signs by default except perhaps in US (and Canada?).

Also note: Back Sholebroke Mount is tiny and is actually a bit of a kids play area. It lacks a pavement and is really a thin access only road often blocked, if one person parks on that street no cars can pass creating temp modal filters much of the time.

Sounds good and agree that there different things going on. Genuine unanswered question though:
How to tag roads on which traffic can go in either direction but which are so thin as to be able to only accommodate 1 way travel (2 cars cannot fit side-by-side)?
That is not just a cosmetic issue because it would affect the traffic flow, slowing it down. Idea on that: halve car speeds on such roads and allow them to 'ghost' past each other to avoid representing complex pull-in/waiting maneuvers. There has been some research into potential benefits of removing road centrelines (Shackel and Parkin 2014). That suggests to me it could be worth visulising roads that don't have them differently (acknowledging the fact that from OSM tags alone we rarely know, but could make perhaps make educated guesses, e.g. if the road width is less than say 6m).

Quick-and-dirty hack: https://wiki.openstreetmap.org/wiki/Key:narrow
If there was a sane editor workflow for mapping and satellite coverage is good enough, https://wiki.openstreetmap.org/wiki/Key:width


Capability to run workflow on PR comment with command

:tada: This issue has been resolved in version 1.9.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add create Team func + tests

Add the function to create Team + tests for it

I have already done it


[FEATURE] 7.65 - Deploy Config Rules w/Remediation using Non-Compliant ALB Logging as template

Summary:

Deploy AWS Config Managed Rules in all accounts and all regions as defined per the config file
Enable rule auto-remediation if defined in the config file
Use the ELB_LOGGING_ENABLED managed config rule as the sample / template for an auto-remediated rule
Use the SSM documents which are either AWS managed (pre-existing) or deployed via task 7.75 SSM Managed document Deployment as the remediation mechanism
In future it expected we will also need to trigger a Lambda from the SSM document
AWS supports up to 150 rules per account/region we must be able to support this scale (and more when that limit is increased in the near future)
Must be able to:

Update rules (i.e. add future remediation, tweak remediation)
Add more rules (to all account in an ou)
toggle rules on and off (i.e. if an exclusion is removed, the rule should be enabled)

Ensure code placement in SM to enable the following order of operations in future:

Deploy Lambda (if required, in future)
Deploy SSM Document and SSM Document Execution Permissions in Shared Account (may depend on Lambda)
Deploy Config rule (May depend on SSM document)

Sample Rule: AWS Config elb-logging-enabled

Checks whether the Application Load Balancer and the Classic Load Balancer have logging enabled. The rule is NON_COMPLIANT if the access_logs.s3.enabled is false or access_logs.S3.bucket is not equal to the s3BucketName that you provided.

(manual deployments steps defined in attachment)
Acceptance Criteria:

AWS Config Rules configured and enabled in every account and region as defined per ou

specific rules not deployed to specific accounts as defined
STEPS to TEST:

Create an ALB with no logging attributes
AWS Config detects Non Compliant ALB
Remediation Executes SSM Document
ALB logging attributes configured
AWS Config detects ALB as Compliant

Config File
  "global-options": {
      ...
      "aws-config": {
         "managed-rules": {
            defaults: {
                 "remediation": false,
                 "remediation-attempts": 5,
                 "remediation-retry-seconds": 60,
                 "remediation-concurrency": 10
            },
            rules: [
             {
                "managed-rule-name": "ELB_LOGGING_ENABLED",   ----Name will be PBMMAccel-ELB_LOGGING_ENABLED
                "parameters": [
                    "s3BucketNames": "${SEA::LogArchiveBucket}"
                ],
                "remediation": true,
                "remediation-attempts": 5,
                "remediation-retry-seconds": 60,
                "remediation-concurrency": 10,
                "remediation-action": "PBMMAccel-SSM-ELB-Enable-Logging",
                "remediation-params": {
                    "LoadBalancerArn": "RESOURCE_ID"
                    "LogDestination": "${SEA::LogArchiveBucket}",
                    "LogPrefix": "elb"
                }
            },
            {
                "managed-rule-name": "MNGD_RULE_2",
                "parameters": [
                    "abc_parameter-s3BucketNames": "${SEA::LogArchiveBucket}"
                ]
            }
           ]
        }
      }
  }
  ...
     "my-org-unit": {
         ...
         "aws-config": [
            {
              "excl-regions": ["us-east-2"],
              "rules": ["PBMMAccel-ELB_LOGGING_ENABLED","PBMMAccel-ConfigRule2","PBMMAccel-ConfigRuleN],
              "remediate-regions": ["ca-central-1"]   --->if config rule in global-options has remediate=true, do it in these regions only
            },
            {
              "excl-regions": [],
              "rules": ["PBMMAccel-ConfigRule2","PBMMAccel-ConfigRuleN]
            }
         ]
     "my-account": {
         ....
         "aws-config": [
            {
              "regions": ["ca-central-1"],
              "excl-rules": ["PBMMAccel-ConfigRule2","PBMMAccel-ConfigRule5]
            },
            {
              "regions": ["us-east-1"],
              "excl-rules": ["PBMMAccel-ELB_LOGGING_ENABLED"]
            }
         ]

global-options defines the config rules, which deploys nothing
organizational-units deploys the rules to all accounts in the ou, and all regions, except the listed excluded regions
my-account excludes certain rules from certain accounts and regions
aws-config section in ou's and in accounts is optional

if not defined in ou's, no config rule deployed
if not defined in account, all ou config rules deployed
NOTE: We will likely have 100 to 150 rules per account, per region, the current limit {plan for higher when the service team increases limits
NOTE: We should likely change SSM targeting slightly to be consistent

Sample Script
app.ts
const configRules: Array<ConfigRule> = new Array<ConfigRule>();
const configElbEnableLogging: ConfigRule = {
    name: 'PBMM-elb-logging-enabled-rule',
    description: 'Checks whether the Application Load Balancers and the Classic Load Balancers have logging enabled.',
    managedRuleName: 'ELB_LOGGING_ENABLED',
    parameters: new Map<string,string>([
        ["s3BucketNames", ""]
    ]),
    remediationConfigDocument:  fs.readFileSync(path.join(__dirname, "../lib/config-rules/PBMMAccel-config-elb-enable-logging.json"), "utf-8"),
    remediationParams: new Map<string,string>([
        ["SSMDocumentName", "PBMMAccel-alb-enable-logging"],
        ["AutomationAssumeRoleName", "PBMMAccel-SSM-ELB-Enable-Logging-Role"],
        ["LogDestination", "${SEA::LogArchiveBucket}"],
        ["LogDestinationPrefix", "elb"]
    ]),
    ssmDocumentOwnerId: '144940249523'
};

configRules.push(configElbEnableLogging);

new ConfigRulesStack(app, 'ConfigRules', {
    env: {
        region: 'ca-central-1'
    },
    configRules: configRules
})

config-rules-stack.ts
import * as cdk from '@aws-cdk/core';
import * as iam from '@aws-cdk/aws-iam';
import * as awsconfig from '@aws-cdk/aws-config';
import * as ssm from '@aws-cdk/aws-ssm';
import { AwsSdkCall, AwsCustomResource } from '@aws-cdk/custom-resources';
import console = require('console');
import { config } from 'process';

export interface ConfigRule {
    readonly name: string;
    readonly description: string,
    readonly managedRuleName?: string;
    readonly parameters: Map<string, string>;
    readonly remediationConfigDocument: string;
    readonly remediationParams: Map<string, string>;
    readonly ssmDocumentOwnerId: string
}

interface ConfigRulesStackProps extends cdk.StackProps {
    readonly configRules: Array<ConfigRule>;
}

export class ConfigRulesStack extends cdk.Stack {
    constructor(scope: cdk.Construct, id: string, props?: ConfigRulesStackProps) {
        super(scope, id, props);

        if (props?.configRules != null) {

            for (const configRule of props?.configRules) {

                if (configRule.managedRuleName) {

                    const managedRule = new awsconfig.ManagedRule(this, configRule.name, {
                        configRuleName: configRule.name,
                        description: configRule.description,
                        inputParameters: configRule.parameters,
                        identifier: configRule.managedRuleName
                    });

                    const remediationConfig = JSON.parse(configRule.remediationConfigDocument)
                    const ssmDocumentName = configRule.remediationParams.get("SSMDocumentName");
                    const roleName = configRule.remediationParams.get("AutomationAssumeRoleName");

                    for (let [key, value] of configRule.remediationParams) {
                        if (key == "AutomationAssumeRoleName") {
                            continue;
                        }

                        if (key in remediationConfig.Parameters) {

                            if ('StaticValue' in remediationConfig.Parameters[key] && 'Values' in remediationConfig.Parameters[key]['StaticValue']) {

                                let tmpValue = value;

                                const supported_tokens: Array<string> = new Array<string>('${SEA::LogArchiveBucket}', '${SEA::AWSAccountId}');
                                for (const supported_token of supported_tokens) {
                                    if (tmpValue.indexOf(supported_token) >= 0) {
                                        switch (supported_token) {
                                            case '${SEA::LogArchiveBucket}':
                                                tmpValue = tmpValue.replace(supported_token, '517328343847-elblogs'/*Central Log Archive Bucket*/)
                                                break;
                                            case '${SEA::AWSAccountId}':
                                                tmpValue = tmpValue.replace(supported_token, this.account);
                                                break;
                                        }
                                    }
                                }

                                remediationConfig.Parameters[key]['StaticValue']['Values'] = tmpValue == "" ? [] : [tmpValue];

                            }
                        }

                    }

                    if (roleName && ssmDocumentName) {
                        const roleArn = this.lookup_iam_role(roleName).roleArn;

                        remediationConfig.Parameters.AutomationAssumeRole = {
                            StaticValue: {
                                Values: [roleArn]
                            }
                        };

                        new awsconfig.CfnRemediationConfiguration(this, configRule.name+"Remediation", {
                            configRuleName: managedRule.configRuleName,
                            targetId: this.lookup_ssm_document(ssmDocumentName, configRule.ssmDocumentOwnerId),
                            targetType: 'SSM_DOCUMENT',
                            parameters: remediationConfig.Parameters,
                            automatic: remediationConfig.Automatic,
                            maximumAutomaticAttempts: remediationConfig.MaximumAutomaticAttempts,
                            retryAttemptSeconds: remediationConfig.RetryAttemptSeconds
                        });
                    }
                }
            }
        }
  }

    lookup_ssm_document(ssmDocumentName: string, ownerAccountId: string) {
        const documentArn = `arn:aws:ssm:${this.region}:${ownerAccountId}:document/${ssmDocumentName}`;
        return documentArn;
    }

    lookup_iam_role(roleName: string) {
        const accountId = this.account;
        const role_arn = `arn:aws:iam::${accountId}:role/${roleName}`
        const role = iam.Role.fromRoleArn(this, roleName + "ConfigRole", role_arn);
        return role;
    }
}

Design Considerations

There is a dependency on the SSM component (7.75 - Deploy AWS Systems Manager Automation Documents)

This must be deployed into the AWS Account before this.
In the sample code, the 'ssmDocumentOwnerId' was used to simulate this. There should be a more elegant way to lookup the SSM Document share owner.

There is a need for a Token Service that is able to replace values at the time of deployment. Here is one token needed for this Config Rule:

"${SEA:LogArchiveBucket}" - "SEA" could be used to implement a provider pattern, and "LogArchiveBucket" is the value to lookup using the provider. In this context, the expected result is the centralized s3 bucketname from the log-archive account.

The lookup of the shared SSM document is difficult to get. The API doesn't return it as part of the regular list-documents command. It must have the the DocumentFilterList: key=Owner,value=Private for it to return. In my sample code, it uses a naming convention instead of looking up the SSM Document.
The sample code assumes a target type of SSM_DOCUMENT.
Assumes that the permissions are properly configured for ELB to write logs to the specified bucket.

Code Complete PR469, merged with master, currently in test

Shipping in v1.2.3

Shipping in v1.2.3


GIB💎WORK Bounty - Pull Request Made To anchor

🤖 This pull request was created by https://app.gib.work/r/Ql3a0gKk/anchor
⚡ Payment for bounty is immediately sent to the contributor after merge.

@acheroncrypto any reason this was marked as duplicate but there hasn't been an accepted PR? Just looking for some feedback

Hey, this looked like a spam to me since it's bringing out some random commits that was made in the past with autogenerated PR title and description:

There was also another PR(https://github.com/coral-xyz/anchor/pull/2752) with the same PR title.

@acheroncrypto Oh yeah not sure about the extra commits but the title is auto generated from GibWork so anybody that tries to claim will have this title I believe. Or is that not an actual bounty for this repo?

Or is that not an actual bounty for this repo?

There could be but I'm not the person who created it.
Also, we can reopen the PR if you fix the extra commits and add the correct types. The types in https://github.com/coral-xyz/anchor/pull/2752 is not correct either, the Rust types are here: https://github.com/coral-xyz/anchor/blob/de9901b5fd739d80d5d881c8892b71083b24c987/lang/syn/src/idl/types.rs#L88-L122


Plans to support Typescript 1.5

Hi,
is anyone working on or has plans to add Typescript 1.5 support to gulp-typescript ?
Olivier
PS : I can contribute, but I am not fluent enough in node/gulp/typescript to start it myself

You can already use 1.5. You can see the details in the readme. When 1.5 stable is released, it'll be the default, but now 1.5 is only a beta.


Added support for logger parameters to MSBuild.

Added ConsoleLogger and FileLogger to MSBuildSettings, allowing fluent API specification of parameters for file loggers and the console logger when running MSBuild.
Example:
            MSBuild(s => s
                .SetTargetPath(Solution)
                .SetTargets("Rebuild")
                .SetConfiguration(Configuration)
                .AddFileLogger(l => l
                     .SetLogFile("D:\\mylog.log")
                     .DisableAppend()
                     .SetVerbosity(MSBuildVerbosity.Normal)
                     .EnableShowTimestamp()
                     .EnablePerformanceSummary()
                )
                .SetMaxCpuCount(Environment.ProcessorCount)
                .SetNodeReuse(IsLocalBuild));

Fixes nuke-build/nuke#314

I have no idea what the failure on macOS is about unfortunately. Is there something I did wrong?

Error on macOS is unrelated.

FYI, it will take a while until I can get into this. In the next release, I plan to do some work around CI system integration. Only after that iteration, I will get to merge this (unless it would look all perfect and shiny).

No worries. I'll try to come up with a suggestion on how this could be handled by code generation in the meantime, and post a suggestion once I come up with something I feel good about.

I have now spent some time thinking about how code generation in Nuke could be extended to support this scenario, and I've come up with the following five enhancements that I think would make sense and could be useful also outside of this limited case.
I would be more than happy to implement some or all of these and submit a new PR if you like.  But first of course I would like your input on these ideas @matkoch, when you've got the time to review them:
1. Conditional Formatting
This is a feature that allows the selection of the format of an argument based on the value of that argument, similar to a switch statement in C#.  This could be useful outside of this particular feature for any CLI tool that has mutually exclusive parameters to turn a feature on or off. For example -EnableMPLogging and -DisableMPLogging.  Based on how the configuration API in Nuke is generated, it would be nice to have a simple property named MPLogging, which would enable the configurator methods EnableMPLogging() and DisableMPLogging(), instead of having two properties, that would generate the kind of weird looking EnableEnableMPLogging(), DisableEnableMPLogging() etc.
The idea is to extend the "format" specifiers of the properties in json specifications to allow a complex format specifiecation in addition to a simple string.
The various format alternatives would be specified in an array like the following:
[
    {
        "case": true,
        "then": "/ShowSummary"
    },
    {
        "case": false,
        "then": "/NoSummary"
    },
    {
        "case": null,
        "then": "/UseNull"
    },
    {
        "default": "/DoNothing"
    }
]

The value after a case could be a bool value, null or a string. If no case matches, then the default is used if specified, otherwise nothing is output.
Alternative 1 - Array format
The format accepts also an array of cases, and a new property switchOn is introduced to indicate the value to switch on.
The advantage of this variant is that the format specifier is kept fairly compact, while allowing to decide which value to switch on. (The default would be {value} unless specified, but {key} could also be specified here if desired).
Example:
{
    "name": "ShowSummary",
    "type": "bool",
    "switchOn": "{value}",
    "format": [
        {
            "case": true,
            "then": "/ShowSummary"
        },
        {
            "case": false,
            "then": "/NoSummary"
        },
        {
            "default": "/Dummy"
        }
    ]
}

Alternative 2 - Object format
In this alternative the format specifier is an object instead of an array, encapsulating all information about the format specifier inside that object.  The on property here decides which value to switch on in the subsequent cases.  Again, the default if not specified would be {value}.
The advantage of this variant is that the format is more encapsulated than in alternative 1 above, in that we no longer have the "switchOn" property a level above the format, but instead everything related to the format is inside that object. It also allows for easier extension of other types of formatting in the future, by just adding a new keyword in addition to switch.
A possible disadvantage is that it's a bit more verbose to write.
 {
    "name": "ShowSummary",
    "type": "bool",
    "format": {
        "switch": {
            "on": "{value}",
            "cases": [
                {
                    "case": true,
                    "then": "/ShowSummary"
                },
                {
                    "case": false,
                    "then": "/NoSummary"
                },
                {
                    "default": "/Dummy"
                }
            ]
        }
    }
 }

Personally I am in favor of the 2:nd alternative, object format here.
2. Index of array item in format specifier
Introduce the {index} format specifier to include the index of the item in the list.  In the MSBuild scenario we need this index to be 1-based, but in general there could be scenarios where one would want this 0-based instead, so also introduce a way to select the base of the index, or include this in the format specifier.
Alternative 1 - indexBase property
Add the property indexBase with possible values of either 0 or 1to the Property type. This would change the behavior of the index specifier to be either 1-based or 0-based.
Example:
 {
    "name": "FileLoggers",
    "type": "List<string>",
    "indexBase": 1,
    "format": "/flp{index}:{value}"
 }

Alternative 2 - Include base in specifier
The specifier could include the base, which may be a bit more concise. For example {index0} and {index1}, or {index(0)} and {index(1)} .  {index+1} is another option to produce a one-based index if {index} is the zero based index, and the one that probably is the easiest to understand.
This is the option I would personally prefer.
3. MaxItems specifier on array Properties
In the case of MSBuild, at most 9 file loggers are supported. I'd like to introduce a maxItems property to the Property class, to allow setting a limit to the number of items that could be added to the list without having an error generated.
Example:
 {
    "name": "FileLoggers",
    "type": "List<string>",
    "maxItems": 9,
    "format": "/flp{index}:{value}"
 }

4. ToString() generation in DataClasses
To allow for a dataclass to produce a single value for a property, as is the case of the file logger parameters in MSBuild, we could add the option to generate a ToString() method on a data class that takes the format of each item, just as if they were normal arguments, and joins them together with a separator.  We should also allow for custom ToString() overloads in the partial class (which is the same as simply not generating a ToString()  method I guess)
Suggest adding the toStringMethod property to a data class, allowing the specification of a separator.

Note: If any property today contains a format, an override of ConfigureArguments is generated which leads to a compile time error. We probably should not do this, but instead generate just the ToString in this case.

Example (containing a bunch of the previous suggestions as well).
"dataClasses": [
    {
        "name": "MSBuildFileLogger",
        "toStringMethod": {
            "separator": ";"
        },
        "properties": [
            {
                "name": "Summary",
                "type": "bool",
                "format": [
                    {
                        "when": false,
                        "then": "NoSummary"
                    },
                    {
                        "when": true,
                        "then": "ShowSummary"
                    }
                ]
            },
            {
                "name": "PerformanceSummary",
                "type": "bool",
                "format": "PerformanceSummary"
            },
            {
                "name": "LogFile",
                "type": "string",
                "format": "LogFile={value}"
            }
        ]
    }
]

5. Additional extension method generation
Add support for generating fluent type configuration methods on single properties as well (Methods accepting a configurator function that is).  In the MSBuild example we have a property of type List<MSBuildFileLogger> and we want to have the following extension methods generated:
   public static MSBuildSettings AddFileLogger(this MSBuildSettings toolSettings, params Func<MSBuildFileLogger, MSBuildFileLogger>[] configurators)
   {
      var instance = new MSBuildFileLogger();
      return toolSettings.AddFileLogger(configurators.Select(configurator => configurator(instance)));
   }

   public static MSBuildSettings SetFileLogger(this MSBuildXSettings toolSettings, params Func<MSBuildFileLogger, MSBuildFileLogger>[] configurators)
   {
      var instance = new MSBuildFileLogger();
      return toolSettings.SetFileLogger(configurators.Select(configurator => configurator(instance)));
   }

Suggest adding support for the extensionMethods property also to individual properties to have these generated.
Example:
{
    "name": "FileLoggers",
    "type": "List<MSBuildFileLogger>",
    "extensionMethods": true,
    "format": ...
}

Would also be possible to add in support for binary logging as well?  Or I can do that as a different PR if that makes more sense.

@david-driscoll That should be doable as well. We just need to come to an agreement on how to implement the support for this with the code generation first I think.  Probably no point in implementing it before that.


This repo is becoming the standard way to build and test go repositories outside of travis

The README from this project starts with this sentence:
This project contains the common CI configuration for all source{d} Go projects...

And this is true.  But we have been moving other functionality recently from other projects to this one, for instance, now that we use glide in some projects, a makefile is needed, and we have been adding targets here for building and testing outside of travis.
It looks as if we were broadening the focus of this project to a more general approach to building and testing go projects.
Is this so?  Is there a firm commitment to this trend?, Can we explain that in the readme and also document the expected ways a developer should interact with this new functionality?

So far we are not recommending users to use make to build (go get should be used instead) or to resolve vendor directory (we now checkin the vendor directory). Some projects with more strange dependencies (e.g. C) still provide make-based commands documented for end users.
There is no change in sight at the moment.


Does plugin have issues with changed Journal date-format?

Search first

[X] I searched and no similar issues were found

What Happened?
I use non standard dateformat:

Setting start/end times is unreliable, will somtimes disappear, not show up, have to repeat setting it. Add another date to schedule block with /datepicker to show up in calendarview.
Is this issue related with my date-format?
Also setting the start/end times will still show as "All Day" en not on the correct day-timeline, see appointment 14:15-15:00

Reproduce the Bug
Enter Event with start/end times repeatedly untill it somewhat works
Screenshots
No response
Environment Information
Windows 10, App version v3.1.0 but using version 2 in effect since at work I cannot use HTTP API server, I think they closed the ports for security.
Additional Context
Sorry I am not smart enough to make PR
Are you willing to submit a PR? If you know how to fix the bug.

[ ] I'm willing to submit a PR (Thank you!)

3.x has two versions: plugin and web. The plugin version does not require an API server.
You can find the supported date formats for version 2.x in this document. I hope it can help you.


cilium, sockmap: unbreak --sockmap-enable mode

Currently operating Cilium in sockmap mode fails with the following
error in the log:
[...]
level=error msg="Failed to pin map 0(cilium_sock_ops_map): exit status 255" subsys=sockops
level=error msg="Failed to attach prog(145) to map(0): exit status 255" subsys=sockops
[...]
Reason is that we're searching for sockhash map named 'cilium_sock_ops_map'
via bpftool but kernel only has 'test_cilium_soc' named sockhash map. In
kernel map names are of max size of 16 bytes (incl. \0), therefore Cilium
daemon cannot find map and ends up with mapID of 0, which is invalid. Get
it running again by naming it 'cilium_sock_ops'. The 'test_' prefix is also
invalid since this is not a dummy header.
Fixes: 9e1c047c13fb ("sockops: rename sock_ops_map to cilium_sock_ops_map")
Signed-off-by: Daniel Borkmann<EMAIL_ADDRESS>

This change is

test-me-please

Coverage increased (+0.02%) to 42.994% when pulling f024797f0072e22eeb945fe34d88d0660b2c1369 on pr/unbreak-sockops into 7fd1b6751f8aeb551f758045de4479bb7083573d on master.


Fix syncing preferences panel

User input was not always taken into account.

as notification handling is removed on panel disappearance, we need
to reinstate it on following appearance
use the same kind of notification on each control

I have second thoughts about this. -viewWillAppear is called multiple times, each time the view is shown in the view hierarchy, whereas -viewDidLoad is called only once. The code is likely run multiple times. Does this not cause problems?

I have second thoughts about this. -viewWillAppear is called when the view is added to the view hierarchy whereas ‑viewDidLoad is called only once. Will this code not run multiple times and – if so – cause problems?

I needed to change it this way because the notifications observers are removed in -viewWillDisappear
https://github.com/ViennaRSS/vienna-rss/blob/2f1b650ae0d47b8905830e8b4999472dac993bcd/Vienna/Sources/Preferences window/SyncingPreferencesViewController.m#L118-L121

You are right. The change makes sense then.


Incorrect Exception Description

This function in AbstractChannelBuffer.java:
public void writerIndex(int writerIndex) {
    if (writerIndex < readerIndex || writerIndex > capacity()) {
        throw new IndexOutOfBoundsException("Invalid readerIndex: "
                + readerIndex + " - Maximum is " + writerIndex);
    }
    this.writerIndex = writerIndex;
}

gives an incorrect IndexOutOfBoundsException description.  This exception will get thrown if the writerIndex is too low (lower than readerIndex), or too high (greater than the capacity).
The description should be more like "Invalid writerIndex: XX - Minimum is: (readerIndex) - Maximum is: (capacity).

Sorry, this is in 3.10 branch (specifically using 3.10.6).

3.x is EOL since at least 1,5 years so I think we can just close this ?


doc: fix misspellings in Kconfig files

Missed some misspellings during regular reviews.
Signed-off-by: David B. Kinder<EMAIL_ADDRESS>

Codecov Report

Merging #6037 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #6037   +/-   ##
=======================================
  Coverage   52.51%   52.51%
=======================================
  Files         406      406
  Lines       39683    39683
  Branches     7715     7715
=======================================
  Hits        20839    20839
  Misses      15663    15663
  Partials     3181     3181

Continue to review full report at Codecov.

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


Fix bug where ObsidianNewFromTemplate` did not respect note_id_func

Fixes #737

When this is going to be merged?


Add 2017 U.S. County Unemployment Data

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


Conditional inclusion of SEV and SEV-SNP modules

Unfinished. Marking as draft for now, needs strenuous testing.

It does look like firmware::linux::host::types::snp::test::cert_table_entry::test_parse_table_offset_too_large is failing in the CI, though?

@larrydewey Yea, i'm not sure why that is, but I found the same problem on my local machine once (however, after another run, it was successful). Will investigate.

@larrydewey The following tests are failing for me:
test snp::set_ext_config_cfg_only ... FAILED
test snp::set_ext_config_std ... FAILED
test snp::set_ext_invalid_config_std ... FAILED

I'm suspicious if this is due to our previous set_ext_config problems, especially because the certs only test succeeds:
test snp::set_ext_config_certs_only ... ok
Can you try this out for yourself?

Can you re-review?

@larrydewey Can you re-review?

@fitzthum
What are your thoughts?
The final result: After this update, users will have to explicitly state which generation they would like in the library:
For an example Cargo.toml:
If user is looking for SEV and SEV-ES only:
sev = { version = _, features = [ "sev" ] }
SEV-SNP only:
sev = { version = _, features = [ "snp" ] }
Both:
sev = { version = _, features = [ "sev",  "snp" ] }
And thus, we allow for only specific generations to be included.


Complete rewrite

Changes:

New command structure
Compatible with latest versions of

Spigot
WorldGuard

Changes stable enough for next development iteration


publication should be listed with phenotype

Since we are recording the papers with the phenotypes of the genomes the NCBI ID  should be an available column.  I don't know if that is what is intended by "source", but in this instance that column is empty.

Jim triage comment: High.  This is one of the only things from the AMR table that is not offered.  It would be very good to get this in.


Create an intro

Add an intro about yourself: who are you, what is your strength, why are you here.

Important to describe my purposes and goals to become a successful developer


Remove questions+articles

I am unable to see the purpose of this PR, please elaborate on your goal with this changes. To which end yo deleted the those apps? What benefit does this changes provide to the project?

It doesn’t. Will delete.
Megan McGee | http://meganmcgeee.github.io

On Jun 13, 2018, at 1:04 PM, Sebastian Reyes Espinosa<EMAIL_ADDRESS>wrote:
I am unable to see the purpose of this PR, please elaborate on your goal with this changes. To which end yo deleted the those apps? What benefit does this changes provide to the project?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Ok.


libc/baselibc: Fix definitions for printing 32bit integers

I think this header should be gone or reduced to minimum.
PRI... macros are provided by inttypes.h from gcc.

Perhaps the solution then is to remove the inttypes.h and use the one from the compiler instead?
From what I can see the declarations for strmtoimax and strntoumax will need to be moved somewhere else in that case. Other than that, I think this would be the cleanest solution.

agreed, I've updated PR, inttypes.h is now gone and extensions were moved to separate header file

There is another problem I'm afraid.
Old, removed version of inttypes.h defined PRId8 PRIi8 PRIo8 PRIu8 PRIx8 PRIX8 PRId16 PRIi16 PRIo16 PRIu16 PRIx16 PRIX16 without hh or h just d,u,i,x and such.
GCC version of those have hh or h prefix so for printing uint8_t we have "%hhu" format specifier uint16_t "%hu".
This h is not handled in printf-like functions and it will lead runtime break in nimble ble_uind.c and in cbor cbor_pretty.c.
h and hh is handled in scanf-like so it make sense to support it in printf as well.

It seems like this change breaks my build in a surprising way. I use Rust for my application and that uses the clang backend. When clang parses the mynewt header files it needs  #include <inttypes.h> to understand the uint8_t. However after merging this pull request I get the error /usr/lib64/clang/10.0.0/include/inttypes.h:21:15: fatal error: 'inttypes.h' file not found.
It seems like clang provided version of inttypes.h is just a placeholder as it does #include_next <inttypes.h>, which it apparently can't find.
If I revert commit c1f0300413fc981741d37d655654de1dbca5d4df, then the build succeeds again.


[Enhancement] Hiding localization options for unstralated pages

So i wanted to hide the language options from appearing on pages that are not yet translated like for example

This page is only currently available in english, but it still displays all languages on the language dropdown selector as if it was available in other languages as well... I wanted to hide the languages its not yet been trasnlated to yk...
This is not a huge deal btw, i just think its very odd to have these things displaying, maybe it could be a config option on the mkdocs.yml file idk, but i just think its kinda misleading for some people as i've got a bunch of people asking about it on my community too...

Hi @MetalKnight56
I guess you are running the plugin with the fallback_to_default: false option set?

Hi @MetalKnight56
I guess you are running the plugin with the fallback_to_default: false option set?

No no, I do have it set to true, but it still allows users to select untranslated pages, it does work as it should but I just want to hide the translation options if a page doesn't have translations


Flush classloader cache

I am trying to clean up as many of the URLClassLoaders created by sbt as possible. The loaders managed by a ClassLoaderCache cannot presently be closed, even when we are sure they won't be used again.

To validate this pull request against other sbt modules, please visit this link.

Is this conflicting with the Scalafmt change?

I have no idea how I managed to screw up the branch so badly. It was a rebase gone horribly awry. Anyway, fixed now.


Add Blender 2.83

This is the very first LTS of Blender, released today.
Microsoft Reviewers: Open in CodeFlow

Urgh! I'm waiting for it to be available in winget! 😢


30+ page stories causes image/template browsing feature to use 4X client memory

To reproduce, in a story with 30+ pages,

Hard refresh.
Scroll through the images or templates section.
Observe substantially increased memory usage when compared to a new/blank story.

Note: the difference in memory usage between the blank story and the 30+ page story is less than 2X.
These features work well when the story is short. But then stop working, or crash the client's computer, when the story is long.
What might be causing this?
Thanks

Based on some discussion related to the image generation for the thumbnails:
Looks like every time the grid view is opened, image generation starts for each page displayed in the grid view. This starts all over again every time when opening the modal, making the image generation logic useless (and harmful) for the grid view, since these images are not stored outside of the component and are removed every time the grid view is closed.
That's a likely culprit here with the grid view issues.
@barklund Since you'll be looking into this related to the page carousel work in #9641, I'll assign this issue to you for now -- if it comes out that this does not fix the issue, let me know and we'll continue investigating separately.

Verified in QA

@brianpetro A new version (1.15) of the plugin was released with a potential fix for the issue. Could you update the plugin and try with the new version to see if the memory issue is still happening for you? Thanks!

@miina Using the same story & environment that was used earlier:
Memory peaks at ~5GB in about ~2min before it settles around ~1GB. And then the features work as expected. This seems to happen once per page load.
These tested features were unusable prior to the settling point:

Page templates tab: scrolling doesn't work.
Grid view: drag-and-drop does not work.

At a quick glance, I'd say things are looking good. We should be able to increase the ~20-page per story limit we had in place because of this issue. I'll have to gather further feedback from our writer after her next assignment and report back.
Thanks for the update 😊

Page templates tab: scrolling doesn't work.

Is this for the default page templates or the saved ones?

Is this for the default page templates or the saved ones?

The default ones.

Hm, okay. Great that things have improved but looks like this will need some additional investigation.
Could be that the carousel thumbnails generation adds quite a bit to the initial memory peak then, and could be avoided if we'd store the thumbnails instead of re-generating at every load, as discussed in #9749.

@miina mind if pea pod takes a stab at further improvements here? we've got some room this month and i was hoping we could work on performance.

@BrittanyIRL Generally sure -- the only part that we already partially started looking into, is the general thumbnails generation logic for the page carousel which is likely a part of the issue (cc @barklund). There might be more areas to improve so feel free to look into everything other than this.

will def keep dialog open on anything we find. thanks!

I'll have to gather further feedback from our writer after her next assignment and report back.

To quick follow up on that, she said that their was no improvement at all.
Furthermore, I combined two of these partial stories, bringing the total pages to ~50. But then, any subsequent attempt to load that story crashes the browser(memory limit).
And possibly related, that ~50 page story that crashes in the editor, it also fails completely, as in just white pages with a single non-wrapping line of text, when opened in preview mode.


Add show index job SQL statement

Description
Add SHOW INDEX JOB statement to show all Flint indexes with auto_refresh=true
Documentation
TODO
Example
TODO
Issues Resolved
https://github.com/opensearch-project/opensearch-spark/issues/57
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Because of the changes in https://github.com/opensearch-project/opensearch-spark/pull/110 (Job runtime info is moved to Flint metadata log index), closing this PR and will rework later. Prioritizing RECOVER command for now.


Custom badges for assets in Ocean Market

Overall goal: mitigate rug pulls, mitigate IP violation, and more.
Strategy here: give the community more tools to self-curate assets. Twin: custom badges for accounts, here.
What's below forms the scope of this issue.

Just like Metamask or Uniswap allows users to add custom tokens...;
Ocean Market could allow users to add custom badges to assets, by simply providing the url of the list repo of assets.
the community can go nuts adding whatever list repos they like.

It's a simple plug-in architecture for badges. Evolution will drive towards great lists over time. It could get increasingly sophisticated. But no extra effort from us, once we have the foundation, which we're already close with. This also allows us to avoid building a ratings systems for assets (which is problematic). Once there are more good community-based badges, we can turn on a few by default.
TODOs for this issue:

First, build custom badges for accounts. Here's the issue.
Based on that, devise specific TODOs here

duplicate of #271

Not a duplicate. This one is for assets. The other one is for accounts.

Lol, folding this into #271


Added option -j --json to retdec-bin2pat.

The added option -j --json is being used to pass the list of objects
from retdec-signature-from-library-creator.py as a json file.
Resolves #472
I am uncertain if the change in retdec-bin2pat's help output correctly
follows the Utility Conventions. If it does not, providing a proper
reference would be appreciated.
Regards,
Andrew Strelsky

@s3rvac Thank you for taking the time to put so much detail into reviewing this. I must be honest, when I awoke to the email notification I had an enormous grin on my face. I have not seen such a list of required changes since I took my introductory to C++ course. I will amend the commit this afternoon.
With regard to using json, I must confess that this is a case of using it because it was there. I should have followed the golden rule of 'keep it simple, stupid'. Thinking about it again, its use just adds overhead and consumes more memory than necessary. Considering that a user is unlikely to try to pass a huge list of objects manually, is it necessary to even have the option appear when the help is displayed? Do you have a suggestion for the command-line option?

I have amended the commit. I have also pushed another commit to resolve issue #490 . I noticed when checking the commit changes to resolve #472 that the isFile check in retdec-bin2pat did not actually stop the filename from being added to the inPaths list.
If having the additional commit is an issue I will drop it and update.


Make custom oclif loader default to cwd if path doesnt exist

WHY are these changes introduced?
Fixes #0000

WHAT is this pull request doing?

How to test your changes?

Post-release steps

Measuring impact
How do we know this change was effective? Please choose one:

[ ] n/a - this doesn't need measurement, e.g. a linting rule or a bug-fix
[ ] Existing analytics will cater for this addition
[ ] PR includes analytics changes to measure impact

Checklist

[ ] I've considered possible cross-platform impacts (Mac, Linux, Windows)
[ ] I've considered possible documentation changes

/snapit

/snapit

/snapit

/snapit

@isaacroldan it now works really well! We can remove "@shopify/cli-hydrogen": "*" from all of our examples with this change :)
Will update asap when this is released.


Server Start Error

I'm using Kali Linux 2020 installed on VM
I've successfully installed ghost framework
But when I try to run command:
sudo ghost
I get the message:
[-] Failed to start Ghost Server!
please someone help me to solve this issue

me too!

but mine is running mac

install adb
quick search on google how to install it and then retsart the command ghost, it work for me

but mine is running mac

brew install adb

You can also use sudo apt-get install android-tools-adb

hello im having the same problem i have adb in my mac how do i fix this?

Install adb

@parikshitlfj12  I'm getting
E: Unable to locate package android-tools-adb

@VedanthiKarthik Use the following command. Respectively

sudo add-apt-repository universe && sudo apt-get update && android-tools-fastboot
sudo install android-tools-adb

@parikshitlfj12 I'm getting
E: Unable to locate package android-tools-adb

add repositories first
then login as root
go to filesystem
/etc/apt/sources.list:
and open source.list in text editor and at the end add
deb http://http.kali.org/kali kali-rolling main contrib non-free
deb-src http://http.kali.org/kali kali-rolling main contrib non-free
open terminal and type in
apt-get update
after that type in
apt-get install android-tools-adb android-tools-fastboot

You can also use sudo apt-get install android-tools-adb

Thank you !! This worked with my Kali running on Virtual Box on MacOS. Thanks !!


Different coordinate systems with custom map tiles

Hi everyone,
I want to develop a journey planning app using osmdroid , but customers have their own maps(pre rendered map tiles on their servers) and use coordinate systems other than WGS84. Is it possible( or is it easy to implement) to use other coordinate systems?
If it is possible , then where should i start to work on it?
Thank you for your time.

It's been discussed before but it won't be easy because Mercator is a bit too fundamentally built in.

What sort of coordinate systems are the tiles in?

It changes from customer to customer but mostly bessel 1841 or GRS80

Should i focus on the TileSystem class for changing the coordinate system? Or are there other classes and packages to look at ?

You should probably target the TileSystem. Like Neil, I am skeptical that it will be possible due to how tied to Mercator we are.

a potential (freeish) solution: have the customer import their data into geoserver. The map data can then be exposed via geoserver's wms service in whatever projection you want. Then use MOBAC connected to the wms endpoint to create offline maps which can then be hosted on a server using the correct projection (or deployed to the android devices for offline tiles). There's also a WMS client that someone made for osmdroid. It may need some work to make it stable but it's a potential solution

digging up this old thread. if there's an algorithm to convert to/from lat/long wgs84 to your desired projection then all that's needed is a custom ITileSource to translate the the slippy style urls into your desired projection. That said, your server will need to be able to produce tiles based on the geographic bounds. They are already chopped up and the server is not capable to stitching them back together then there isn't too much we can do

operation timeout. please reopen or comment back if you have further questions


How to update the @shopify/shopify-api package to the latest version?

Hello @Mini-Sylar
Thank you for your work!
I have two questions.

I want to know how to update the '@shopify/shopify-api' pkg to the latest version?
According to the document of shopify, I want to know how to use 'shopify' to call the apis. For the example from here

const client = new shopify.clients.Rest({session});
const response = client.get({path: 'shop'});

Thank you!

That package is included within the @shopify/shopify-app-express library, upgrading that will also upgrade the API version, (I should probably get around to doing that myself as well).

For your webhooks, you would have to choose the version you want to subscribe to on the shopify admin panel. see Updating Webhook Versions

2.
Shopify's documentation is a bit... interesting. It's basically a guide to build a template (such as this one). You need some type of server to communicate with the shopify API, they recommend express. see Using Shopify API.
Once you have all your API keys set up they you need to perform the first handshake, after which you'll embed the header on all your subsequent requests. You'll also have to set up access scopes
the from there you build a client query, you can find one in product-creator.js. And that's what they're trying to show you in step 1
that client query is what you'll use to perform all the requests between shopify admin and your app

API Version should be updated now #35

Good job! I'll try later.
Thanks again!

You're welcome
Happy coding!


function on new tag creation

i currently have
$(".tag-block").select2({
    tags           : tags,
    tokenSeparators: [","]
});

tags is a json string
var tags = ["z","y","1","new","rainwater","a","f","e","d","c","b","rain"];

I'm trying to get it to add any new tag created back to tags.. something like tags.push(newtag) i tried using createSearchChoice but it doesn't seem to do what i need
$(".tag-block").select2({
    tags           : tags,
    tokenSeparators: [","],
    createSearchChoice:function(term){
        console.log(term);
    }
});

outputs for every character inserted. basically a glorified onKeyUp. it also adds a "no matches found" block http://puu.sh/42C8S.png and it locks up the whole thing. without createSearchChoice it allows me to add new tags.
the console log outputs
h
he
hel
help

http://puu.sh/42Cdw.png
how would i go about "when a new tag is inserted that isn't in the 'tags' array it must call this function"
like a
onNewTag:function(tag){
    console.log(tag);
}

my use case is i have a var of all the system tags. there are multiple tag places for various reasons.. any new tag inserted into any of the tag blocks should be available to the rest of the tag blocks immediately.

You should be able to attach to the change event in order to detect when the new tag is added. You may want to add a custom tag-only property onto the data object in the createTag (previously createSearchChoice) function to identify it though.


Switch to mockall #[cfg_attr(test, automock)] on trait

Why this crate implements a proper way of mocking the protocol? It would be much more flexible, for unit test purposes, to provide to the end user the possibility to describe the trait mocked method behaviour using the mockall crate pattern

For unit test purposes, it would make sense to add also a method named read_regs to I2CRegisterMap? It would make easy to perform comparison after i2c writing operations.
Maybe something like this could make sense
/// Read several registers starting from the given offset till offset+len pub fn read_regs(&mut self, offset: usize, len: usize) -> Vec<u8> {     println!("READ | 0x{:X} : {:?}", offset, self.registers[offset+1..offset+len]);     self.registers[offset+1..offset+len].to_vec() }


Flaky Mac module_test_ios now failing regularly

Following the Engine roll here https://github.com/flutter/flutter/pull/88481, several tests in "Mac module_test_ios", which is marked flaky, are now failing every time. That Engine roll contained only a Fuchsia SDK roll, which is unrelated, and the change here https://github.com/flutter/engine/pull/27893.
Example failure here https://ci.chromium.org/ui/p/flutter/builders/prod/Mac module_test_ios/3861/overview

/cc @blasten

From https://github.com/flutter/flutter/issues/88547:

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_ACCESS (SIGSEGV)
Exception Codes:       EXC_I386_GPFLT
Exception Note:        EXC_CORPSE_NOTIFY

Termination Signal:    Segmentation fault: 11
Termination Reason:    Namespace SIGNAL, Code 0xb
Terminating Process:   exc handler [41758]

Application Specific Information:
objc_msgSend() selector name: length
CoreSimulator 732.18.6 - Device: TestAdd2AppSim (C62405C6-D622-424B-A0DA-E483AE666793) - Runtime: iOS 14.3 (18C61) - DeviceType: iPhone 11

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libobjc.A.dylib               	0x000000010940478b objc_msgSend + 11
1   io.flutter.flutter            	0x0000000106102e48 -[SemanticsObject accessibilityAttributedLabel] + 52
2   com.apple.UIAccessibility     	0x000000013741eedf -[NSObject(AXPrivCategory) _accessibilityPotentiallyAttributedValueForNonAttributedSelector:attributedSelector:] + 237

crash.txt
Plugins tree is closed:
https://cirrus-ci.com/task/5163527850688512?logs=native_test#L415-L418
module_test_ios on flutter/flutter also failed. It's unfortunately marked flaky, so it didn't close the tree.
https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8838512374717310545/+/u/run_module_test_ios/test_stdout
Started on engine roll #88481, assuming flutter/engine#27893.

Revert is landed.


Add techdocs.publisher.awsS3.endpoint config option

Hey, I just made a Pull Request!
Add an optional configuration techdocs.publisher.awsS3.endpoint
fix #4867
:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[x] Added or updated documentation
[ ] Tests for new functionality and regression tests for bug fixes
[ ] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

Tugboat has finished building the preview for this pull request!
Link:

https://pr4868-c1bodvikqxtfmy6oczpc9simi5uqvoac.tugboat.qa

Dashboard:

https://dashboard.tugboat.qa/60461f6565f817fe0505757a


Cut release for meta

Cut spopt for meta release. @jGaboardi is there any issue to solve before?

There's nothing to release since the last release, is there? The only commits are related to CI and the JOSS paper, so no change of the codebase. No need to release then.

@gegen07, I agree with @martinfleis on this. I was hoping to have our JOSS paper out by now to have in the release, but we'll just have to wait.

Closing this. We'll hopefully have more to release by next meta cycle.


This fixes #2589

Seems to be fixed.

Coverage remained the same at 75.597% when pulling 577c1406ddaf238c5fea6960bf1bc3fd9ab4210c on haschu:fix/2589 into 725ee1cc31478450e04de65b7040eaf9a2fa82db on chartjs:master.

@haschu can you post before and after photos?

@etimberg here you go. Taken with #2584 fixed version.
Before:

After:

@etimberg The same problem still exists for time scales, because there is a separat handling for showing the last tick. Going to fix this later today.
Should I open a new issue for that, or do you want to reopen the "old" one?

New Issue: #2599
New PR: #2600


Show single notification for multiple important extensions

If there are more than one important recommended extensions for an exe or file type then instead of showing multiple notifications, show a single notification.
Eg: Given an exe installed

if there is one important recommendation - message can just name that extension
if there are two important recommendations - message can include the names of both extensions
if there are more than two important recommendations - message can include first two and others for eg: The Extension A, Extension B and other extensions are recommended... and have an action to see all recommendations?

Nsd.framework.dev
Hub.onboard.ibm/warp
Actionable git.servo.local.rul


SassError: This function isn't allowed in plain CSS.

react-dates version
<EMAIL_ADDRESS>Describe the bug
Get

SassError: This function isn't allowed in plain CSS.
152 │   color: darken(#cacccd,10%);
node_modules/react-dates/lib/css/_datepicker.css 152:10  @import
src/assets/sass/app.scss 21:9                            root stylesheet

when trying to import css. I'm using next.js 10.0.0. In previos versions of next.js I didn't have this problem.

Fixed by #2058. See also, #1513.
it will be in the next release (no planned date yet)

Fixed by #2058. See also, #1513.
it will be in the next release (no planned date yet)

Through some back channels, I poked AirBnB. There is no internal owner for this package at the moment, so they are trying to come to a decision on ownership. For now, I just internalized the CSS to my app and will re-assess if an update is released.

internalized the CSS

Hey boss.. i am facing the same issue.. what do you mean by the internalized the CSS ?


gazing in and out repeatedly will not send out the same amount of gaze in/out events

example here: http://destroy.vizor.lol/reiska/rio-gazeclick-in-out-bug
gazing into the 'Rio de Janeiro' text should make it brighter and gazing out make it dimmer. Doing this repeatedly eventually gets out of sync

we could work around this by having some plugin output boolean true whenever gaze cursor is over the target object (also before the cursor animation has completed)
this is for 'hover' type events

100% reproduction is to gaze at an object and let the gaze clicker 'click' -> the in/out click events go out of sync


PHP Fatal error:  Uncaught Error: Using $this when not in object context

Can't use excludeOnly and includeOnly features.
[06-May-2020 21:04:37 UTC] PHP Fatal error:  Uncaught Error: Using $this when not in object context in /var/www/backup/vendor/coderatio/simple-backup/src/SimpleBackup.php:481
Stack trace:
#0 [internal function]: Coderatio\SimpleBackup\SimpleBackup::Coderatio\SimpleBackup\{closure}()
#1 /var/www/backup/vendor/coderatio/simple-backup/src/SimpleBackup.php(486): array_filter()
#2 /var/www/backup/test.php(26): Coderatio\SimpleBackup\SimpleBackup->excludeOnly()
#3 {main}
  thrown in /var/www/backup/vendor/coderatio/simple-backup/src/SimpleBackup.php on line 481

Related issue #2
Related PR #3
@coderatio, can you please review that PR and make a release?

@shahariaazam I will do that by tomorrow and let you know immediately.
Sorry about this.

@shahariaazam I will do that by tomorrow and let you know immediately.
Sorry about this.

Thanks @coderatio .
Also to use your library i also found some others bugs and few recommendations. I can create several issue and post fixes with my PR if you are OK with that.

@shahariaazam this sounds good.
Please go ahead.
I'm currently reviewing the whole package too. Thanks for this man.

@shahariaazam this sounds good.
Please go ahead.
I'm currently reviewing the whole package too. Thanks for this man.

Thanks. In coming weekend I will make some plans.

I just hit this same issue using the composer-packaged version
$ composer show --latest
coderatio/simple-backup v1.0.4 v1.0.4 A simple mysql database backup library for php.

Could you please tag an update with this up to packagist?
Ref https://packagist.org/packages/coderatio/simple-backup

Add pull request #5 to fix this


Exposing service to outside world - mandatory?

I'm behind a double-NAT at home and there's no way to modify the router configuration for the external router (owned by my ISP) - is it mandatory to expose the service to the outside world? Is Alexa able to resolve internal DNS?

Try SQS - https://github.com/rgraciano/echo-sonos/tree/master/echo-sqs-proxy


Container with port 22 open publicly and port 22 internally cause's ssh no longer to work for the host it on

Rancher versions:
rancher/server or rancher/rancher: v1.6.15
rancher/agent or rancher/rancher-agent: rancher/agent:v1.2.10
Infrastructure Stack versions:
healthcheck:
rancher/healthcheck:v0.3.6
ipsec:
rancher/net:holder
rancher/net:v0.13.11
network-services:
rancher/network-manager:v0.7.20
rancher/metadata:v0.10.2
scheduler:
rancher/scheduler:v0.8.3
kubernetes (if applicable):
Docker version: (docker version 2 ,docker info preferred)
version: '2' (docker)
Operating system and kernel: (cat /etc/os-release, uname -r preferred)
NAME="RancherOS"
VERSION=v1.2.0
ID=rancheros
ID_LIKE=
VERSION_ID=v1.2.0
PRETTY_NAME="RancherOS v1.2.0"
HOME_URL="http://rancher.com/rancher-os/"
SUPPORT_URL="https://forums.rancher.com/c/rancher-os"
BUG_REPORT_URL="https://github.com/rancher/os/issues"
BUILD_ID=
Type/provider of hosts: (VirtualBox/Bare-metal/AWS/GCE/DO)
aws
Setup details: (single node rancher vs. HA rancher, internal DB vs. external DB)
Environment Template: (Cattle/Kubernetes/Swarm/Mesos)
Steps to Reproduce:
docker compose file
version: '2'
services:
  worker:
    image: **Image that has ssh open and running diffrent key than the host**
    stdin_open: true
    tty: true
    ports:
    - 22:22/tcp

This configuration appears to take port 22 from the host and stoped the admin from ssh'ing in to the host .
Results:

Thanks for your report!
With the release of Rancher 2.0, development on v1.6 is only limited to critical bug fixes and security patches.
If you think we should keep this issue open, please let me know.


'AzureOpenAIConfig' does not exist in the current context

firslty these samples are great knowledge, thanks for sharing.
Trying to follow you sample.
https://www.developerscantina.com/p/semantic-kernel-memory/

The name 'AzureOpenAIConfig' does not exist in the current context
Which library and which version of that library i should use ?

2)The type or namespace name 'KernelMemoryBuilder' could not be found (are you missing a using directive or an assembly reference?)
Which library and which version of that library i should use ?
I am using the following libraries.

Hello @nssidhu I truly apologize but I totally missed the notification on this issue. Since it's very old, can you let me know if you're still blocked?


No implementation found for method register on channel twilio_voice_flutter

No implementation found for method register on channel twilio_voice_flutter

@qzmmdsl Thank you for bringing this to my attention!
I am currently addressing the issue and will get back to you shortly with an updated version. I appreciate your feedback!

@qzmmdsl I’m glad to inform you that the issue has been resolved. You can now update the dependency to version 0.0.3, and everything should work properly.
If you have any further questions or need assistance, feel free to reach out!
Thanks!


Fix for directory remove/move/rename

VSCode file watcher has limitation where it doesn't notify any removed files if folder is removed/moved/renamed (https://github.com/microsoft/vscode/issues/90746).
What happens is VSCode don't notify about removed file but send new one in another location in cases like directory rename. This causes duplicate documents on workspace -> cannot build because of duplicate types etc. Only way to currently fix this is restart which occurs fairly often if you refactor folders around.
Because file watcher doesn't support notifying removed files but it supports notifying about removed files i added new endpoint parameter at omnisharp-roslyn side to notify about removed folder -> omnisharp-roslyn can remove matching documents from folder at it's workspace.
PR at omnisharp-roslyn side https://github.com/OmniSharp/omnisharp-roslyn/pull/1821
Before after rename/move/delete directory operation at vscode:

After these fixes:

Ready for review @filipw @JoeRobich @david-driscoll


Strengthen file-uploading

This PR contains the addition of two error-catchings and makes sure that files are only saved if they're present. This PR should help users identify errors more easily, and developers debug any future problems they might find more easily. For better or for worse, I was not able to replicate any issues as they were described in ticket #588.

LGRTM


Dimensionality reduction for all algorithms

For all Mahalanobis metric learners, we should be able to reduce the dimension. For those that optimize the transformation matrix L, this can be done explicitely by setting the matrix at init to have shape (num_dims, n_features). For the others (that optimize the metric M), we could provide the user with num_dims which could be set to:

a number k > n_features: in this case we would do the eigendecomposition of M and would only keep the k components with highest eigenvalues
similar to scikit-learn's PCA, it could also be a value between 0 and 1 for say some threshold on the eigenvalues, or even a string, for some custom strategy (for instance the elbow rule)

This is the current state in the package:

All metric learners that use transformer_from_metric (Covariance, LSML, MMC, and SDML) do not have a num_dims argument
All others optimize explicitely L, and have a num_dims argument (LFDA, MLKR, NCA, RCA) except LMNN, that could have one

Also, should we replace num_dims by n_components, like this is the case in scikit learn linear transformers ? This is also what we did for this PR on NCA in scikit-learn https://github.com/scikit-learn/scikit-learn/pull/10058
This is also related to #124, since we should check that in the case of a custom matrix for initializing the explicit transformer it is consistent with the desired dimension

I agree that we should do this for all algorithms learning the transformation matrix L
For M I am not sure because it would not change the learning algorithm, it is only post-processing the solution and the impact on the quality can be very large, and hard to understand for the user. A better way is to add trace regularization to encourage the learned M to be low rank (in which case one can safely ignore the eigenvectors corresponding to eigenvalues equal 0). In this case one cannot choose num_dims explicitly but indirectly by varying the strength of the regularization

I would make the change for L for the 0.5.0 release, but maybe keep the rest for later

Let's just add this for LMNN and add trace regularization in a next release

Done for LMNN in #193, so I renamed this and flagged it for 0.6.0


Fix to place a node dragged from palette within the workspace

[x] Bugfix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)

Proposed changes

A node dragged from the palette can be placed halfway out of the workspace.
Since the movement of nodes within the workspace is designed to fit within the workspace, this PR change the dragged node placed within the workspace.

Checklist

[x] I have read the contribution guidelines
[ ] For non-bugfix PRs, I have discussed this change on the forum/slack team.
[x] I have run grunt to verify the unit tests pass
[ ] I have added suitable unit tests to cover the new/changed functionality

Coverage increased (+0.04%) to 68.461% when pulling c4332658baf3e2481c883435319552459b5f14b7 on node-red-hitachi:fix-node-placement into 62cd3b20619f61a29370d66d652b2da4efc1032d on node-red:master.


NEW Added SSL support for MySQLi Connector (fixes #7242)

Modified MySQLiConnector.php to parse SSL environment variables
Modifed MySQLDatabaseConfigurationHelper.php to check SSL variables when testing initial connection
Minor: Modified PDOConnector.php to change typo
TODO: Add Documentation

@dhensby Here's the second half!