WFLY-16752 Make it possible for Hibernate ORM Dialects to be able to access org.postgresql.jdbc and com.oracle.ojdbc JDBC driver classes

https://issues.redhat.com/browse/WFLY-16752

@jfdenise Please review. I'm mostly interested in your thoughts on whether doing this at all is a good idea, in case you think not!

Thanks @scottmarlow


Fix a flaky test, caused by a nondeterministic behavior.

Description

Type of change :

[ ] New feature
[ ] Bug fix for existing feature
[X] Code quality improvement
[X] Addition or Improvement of tests
[ ] Addition or Improvement of documentation

Fix a flaky test, caused by a nondeterministic behavior when generating feature results.
Related Test
com.intuit.karate.core.parser.FeatureParserTest.testEngineForSimpleFeature
Root Cause
https://github.com/lxb007981/karate/blob/7211131d20bdf1ec44bc7730ceb0d459c5c843d4/karate-core/src/main/java/com/intuit/karate/core/Tags.java#L109-L110
https://github.com/lxb007981/karate/blob/7211131d20bdf1ec44bc7730ceb0d459c5c843d4/karate-core/src/main/java/com/intuit/karate/core/ScenarioResult.java#L230-L233
When generating a feature result, simple HashSet and HashMap were used. However, later in the code these collections were iterated, converted to a list, and used for comparison. Due to the nondeterministic order of iteration of HashSet/HashMap, the generated list is also nondeterministic. in the test com.intuit.karate.core.parser.FeatureParserTest.testEngineForSimpleFeature, the nondeterministic list is compared to a hard-coded string, which leads to a flaky test.
Fix
Since this nondeterministic behavior is not expected, we directly modify the source code, and replace HashSet/HashMap with LinkedHashSet/LinkedHashMap, which gurantees a deterministic order of iteration. Now the generated list is fixed, and we just need to modify the hard-coded string to fit the list.
About performance
LinkedHashSet/LinkedHashMap are slightly slower than HashSet/HashMap, but they make sure the semantics are correct.
How to reproduce the test
Java version: <IP_ADDRESS>
Maven version: 3.6.3

Build the module
mvn clean install -DskipTests -pl karate-core -am

Test without shuffling
mvn -pl karate-core test -Dtest=com.intuit.karate.core.parser.FeatureParserTest#testEngineForSimpleFeature
This test passed.

Test with shuffling using NonDex
mvn -pl karate-core edu.illinois:nondex-maven-plugin:2.1.1:nondex -Dtest=com.intuit.karate.core.parser.FeatureParserTest#testEngineForSimpleFeature
This test passed with the proposed fix but failed without it.

add a link to where the test is

Before root cause, you can show what is the problem. The problem is that a test fails with NonDex tool and is found as flaky. You can show the exact error reported by NonDex. You can also add a link to NonDex for reference.
In the root cause section, you can consider moving code links below the description
Does the core logic in code (not tests) assume anywhere that the order must be deterministic? If not, instead of changing code, you can consider updating only tests instead of changing actual code. One example might be to get the result, sort them and compare or compare the output with different orders and checking if it matches any one of them.

I remake the commit, thank you for your advice!

add a link to where the test is

I remake the commit and update the PR as you suggested, thank you!


ContentTooShortError

I'm getting this in my download_filings.py:
Traceback (most recent call last):
File "scripts\download_filings.py", line 113, in
main()
File "scripts\download_filings.py", line 109, in main
download_filings(feedpath,args)
File "scripts\download_filings.py", line 68, in download_filings
download_filing(dir,url)
File "scripts\download_filings.py", line 36, in download_filing
urllib.request.urlretrieve(url,filepath)
File "C:\Program Files (x86)\Altova\RaptorXMLXBRLServer2016\lib\python3.4\lib\urllib\request.py", line 219, in urlretrieve
% (read, size), result)
urllib.error.ContentTooShortError: <urlopen error retrieval incomplete: got only 17832 out of 341517 bytes>

Those issues seem to be most likely caused by a poor internet connection. For example, the Python documentation states that:

urlretrieve() will raise ContentTooShortError when it detects that the amount of data available was less than the expected amount (which is the size reported by a Content-Length header). This can occur, for example, when the download is interrupted.

To alleviated this, we have uploaded a new version of the download_filings.py script which now also supports a --retries option. It is set by default to 3 but in this case I would advise to set it explicitly to a higher number. I’m not sure if there is anything else we can do, as this is an Internet connectivity question between your location and the SEC servers in the US.


Post release 1.0

To document some of our discussion offline:

We will be following Semantic Versioning specification (https://semver.org)
We will use -dev# as the pre-release tag
The numeric identifier on the -dev# pre-release tag should technically increment every merge into main, but even if we forget at least the pre-release tag is still there.

For reference on version ordering, from the Semantic Versioning 2.0.0 specification:

Example: 1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-alpha.beta < 1.0.0-beta < 1.0.0-beta.2 < 1.0.0-beta.11 < 1.0.0-rc.1 < 1.0.0.
https://semver.org/#spec-item-11

* We will use `-dev#` as the pre-release/development **identifier**

* The numeric identifier on the `-dev#` pre-release tag should technically increment every merge into `main`, but even if we forget at least the pre-release tag is still there.

I would not ever plan to increment the dev part of the version without tagging it as a release candidate of some kind, which should be approximately as infrequent as releases themselves (the only part I care about is identifying that it is in fact a development version, not a tagged version). Only in a project where it was critical to track this downstream and we were actually doing continuous deployment would I spend the time to do that


NIFI-3452: Add Wait processor Wait Mode property

Ensure back-pressure is active until downstream processing completes.
Thank you for submitting a contribution to Apache NiFi.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

[x] Is your initial contribution a single, squashed commit?

For code changes:

[x] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[x] Have you written or updated unit tests to verify your changes?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[x] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.

Dear reviewer,
an example flow template is available here:
https://gist.github.com/ijokarumawak/85a3d77297ea94614e9f3f2a9dabca67

@ijokarumawak I have tested your patch on a single node with 3 the same flows and it does exactly what I expected and required as explained in my mailing list entry. I am not able to test in the cluster setting at this moment but I see no reason why it wouldn't work there.
Thanks for your effort!

@basvank Thanks for confirming the change, that certainly make the review & merge process easier!

Hi @ijokarumawak, thanks for this improvement, that's really nice. And thanks for the template, it was really useful to review this PR! I just have a minor styling issue and since this processor is not released yet: could you just update the properties to use both .name() and .displayName()? Otherwise LGTM and I'll merge as soon as you let me know.

Thanks for reviewing, @pvillard31 .
I've updated this PR:

Rebased with the latest master, just in case
Added display name and name
Corrected indent (probably this is the minor styling issue..?)
Please let me know if there's anything else. Thanks!

As a side note, there's Notify processor which is designed to work together with Wait processor. Since there's an existing PR #1466 adding properties to Notify, I didn't touch it by this PR. Please check #1466 for Notify processor update.

Perfect, 👍 merging to master, thanks @ijokarumawak


Require "global" as the location when parsing project names with location

We noticed that CreateAPI calls were accepting arbitrary location values, where all others required that the location be "global". In the future, we may expand our support to allow arbitrary locations, but for consistency, this corrects the regex used to parse located projects so that the location value must be "global".
Verified manually with:
apg registry create-api --parent projects/openapi/locations/invalid --api_id test

Merging - @seaneganx FYI


how to count number of requests served ??

Expected Behavior / New Feature
Actual Behavior / Motivation for New Feature
Steps to Reproduce the Problem

Specifications

Version:
Platform:
Subsystem:

@Preetham-D you can just add a middleware above Ocelot and count the requests? Does that work for you? Let me know if not and we can re-open this issue!


For-each loop with high recursion count outputs garbled text

I am using a for-each helper in combination with dotless 1.5.0 and encountered a few problems.
All the examples give the expected output when using: http://lesstester.com
@import "for.less";

.for(100); .-each(@i) {
  .xxx {
    color: red;
  }
}

Output: garbled, non-printable characters
Note that the less http listener does not throw a stack overflow exception.
When I change it to 10 iterations it works as expected.

What sort of environment are you running in? I tried to reproduce the problem on IIS express, but no luck: with 100 iterations, everything worked fine. With 1000 iterations, I got a stack overflow, which is sort of expected.
Are you compressing output? Is it possible that the garbled output is a result of gzip compression with content that gets truncated?

Ha! I lied to you. Sorry!
My test file looked like this:
@import "../bootstrap/bootstrap.less"
@import "for.less";

.for(100); .-each(@i) {
  .xxx {
    color: red;
  }
}

If I remove the @import for bootstrap (v3.3.5), I get the behavior you describe. Tried to narrow down the issue without success so far...
I am running on IIS express (from Visual Studio 2013).

Thanks for the update, I'll take another look at this soon.

I'm assuming you haven't really forgotten the semicolon from the bootstrap import, because that would result in errors, not garbled text. I tried installing Twitter.Bootstrap.Less from NuGet, creating a similar directory structure:
├───bootstrap
│   │   alerts.less
│   │   ...
│   │   wells.less
│   │
│   └───mixins
│           alerts.less
│           ...
│           vendor-prefixes.less
│
└───test
        for.less
        test.less

and then requested the file "/Content/test/test.less" which contains this:
@import "../bootstrap/bootstrap.less";
@import "for.less";

.for(100); .-each(@i) {
  .xxx {
    color: red;
  }
}

And the result was... Bootstrap along with the expected 100 repetitions of the .xxx ruleset.

I don't know why we get different behavior for the same file, but I found the mistake in my case: I didn't realize that every for construct needs to be nested in its own context, otherwise they "share" their iteration count. Example:
@import "for.less"

.for(2); .-each(@i) {
  .abc-@{i} {
    color: red;
  }
}
.for(1); .-each(@i) {
  .xyz-@{i} {
    color: orange;
  }
}

Output (this is correct, according to other implementations):
.abc-1 {
  color: red;
}
.xyz-1 {
  color: orange;
}
.abc-2 {
  color: red;
}
.xyz-2 {
  color: orange;
}
.abc-1 {
  color: red;
}
.xyz-1 {
  color: orange;
}

This means that I just used the loop wrong. I apologize for stealing your time. :(
I still don't know why I get garbled text for the old test style sheet, but since it only happens for output that I didn't intend to produce anyway ...
Thanks again!


Notification: email/text user when a codefendant is unwilling to sign

Probably still allow the cosigner to visit the site again and change their answer.

Email message as described by @mariahjr:

{user},
We sent {CoD} a link to this motion at {CoD email/text}. They said they would not sign the motion.
Call or talk to {CoD} to find out it we have their correct contact information. If it is wrong, [enter the correct information]{link} and resend it to them.
If {cod} does not want to sign, [based on our decision, either send them to start over or go back into the interview and delete name].

Is this the text message too?

@plocket 1) are there text character limits? If yes, I can make it shorter. If not use this. 2) Will the mobile screen look the same with a box so they can enter the new sms/email and resend? I am assuming yes. If not, will need to change.

I'll ask about character limits.
The text itself will not have a way to enter new email information. The website will have the same stuff on mobile and on desktop.

Quinten suggests doing separate messages for email vs. template:

SMS does have a character limit, but it will "page" the ones that are too long, which works well on some phones and breaks on others. So it's a good idea to keep any URLs short and in the first page
SMS also can't use hyperlinks, formatting, etc.

Proposal for text message:
${ user }, ${ signer } will not sign your Motion to Dismiss a Non-Essential Eviction. Use the link to check your document's status. ${ url }.

${ user }, ${ signer } will not sign your Motion to Dismiss.  Tap to resend it to them, print or download your motion  ${ url }.

Would it be better for the text message to just point to the interview and then the complexity of further instructions would be handled there?

From Slack: Character limit per page is 160 - https://www.twilio.com/docs/glossary/what-sms-character-limit

Closed by #123


Installation Error

All steps were done perfectly. But the last command "nixos-install --flake .#redyf" gives error
Error is : flake 'git+file///mnt/etc/nixos' doesn't provide attribute 'packages.x86_64-linux.nixConfigurations. "redyf" . config.system ........,............... so on

That's completely my fault, I forgot to update the readme about it. It should be "desktop" instead of "redyf".
nixos-install --flake .#desktopshould work

That's completely my fault, I forgot to update the readme about it. It should be "desktop" instead of "redyf". nixos-install --flake .#desktopshould work

Ah working, I tried 7 times from morning , i thought nerd me did something wrong. Anyway thanks a lot. Let's if it completes or not

Another error, cannot find git revision 'eec.......' in refs/heads/main of repository<EMAIL_ADDRESS>Please make sure that the rev exists on the ref you've specified or add allRefs = true; to fetchGit

That error is because ghostty terminal is not public yet, so you can just comment those lines


s3.aws.crossplane.io/v1beta1 instance does not change the "Ready" state to "True" when specifying "spec.forProvider.notificationConfiguration"

What happened?
When I apply the configuration for an S3 bucket with notifications sent to an SQS queue I expect the command kubectl get managed to show the bucket.s3.aws.crossplane.io as READY = True. However, it never changes from READY = False. When I look in the AWS console, I see the bucket is created and the notifications are configured. The only issue I see in the console is the SQS queue that is the target of the notifications keeps receiving "s3:TestEvent". Not sure if that is expected behavior, related to the issue or a separate issue altogether.
How can we reproduce it?

Create an SQS queue.
Create an S3 bucket using the configuration below:

apiVersion: s3.aws.crossplane.io/v1beta1
kind: Bucket
metadata:
  name: test-bucket.helloworld.net
  namespace: test-namespace
spec:
  forProvider:
    locationConstraint: us-east-1
    acl: public-read
    notificationConfiguration:
      queueConfigurations:
        - queueArn: arn:aws:sqs:us-east-1:YOUR-AWS-ACCOUNT:test-queue
          events:
            - s3:ObjectCreated:*
            - s3:ObjectRemoved:*
            - s3:ObjectRestore:Completed
          filter:
            key:
              filterRules:
                - name: suffix
                  value: .py
  providerConfigRef:
    name: default

Run the command kubectl get managed

What environment did it happen in?
Crossplane version: v0.14.0
Kubernetes version:
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.1", GitCommit:"7879fc12a63337efff607952a323df90cdc7a335", GitTreeState:"clean", BuildDate:"2020-04-08T17:38:50Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.1", GitCommit:"206bcadf021e76c27513500ca24182692aabd17e", GitTreeState:"clean", BuildDate:"2020-09-14T07:30:52Z", GoVersion:"go1.15", Compiler:"gc", Platform:"linux/amd64"}

Kubernetes distribution: kind version 0.9.0
OS:
NAME="Ubuntu"
VERSION="19.10 (Eoan Ermine)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 19.10"
VERSION_ID="19.10"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=eoan
UBUNTU_CODENAME=eoan

Kernel: Linux cli-vm 5.3.0-64-generic #58-Ubuntu SMP Fri Jul 10 19:33:51 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

I can't speak to the notification/SQS piece, but I'm experiencing this same issue with Bucket READY = False on Crossplane version v0.13.0.
Using the above as an example, neither kubectl get managed or kubectl get Bucket are showing READY = True for the resource even though I can confirm its creation/existence in AWS just as @lvalerio has experienced.

I can't speak to the notification/SQS piece, but I'm experiencing this same issue with Bucket READY = False on Crossplane version v0.13.0.
Using the above as an example, neither kubectl get managed or kubectl get Bucket are showing READY = True for the resource even though I can confirm its creation/existence in AWS just as @lvalerio has experienced.

I'll test this and let you know.

I'll test this and let you know.

fixed with: https://github.com/crossplane/provider-aws/pull/917


Reduce traceback size in user-facing errors

Using the following example:
import numba as nb

def make_closure(x):
    @nb.njit
    def foo(y):
        x = x + 1  # bad code, not actually a closure
        return x + y
    return foo

foo = make_closure(1)
foo(2)

This generates the following traceback in Python 3:
Traceback (most recent call last):
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/ir.py", line 114, in get
    return self._con[name]
KeyError: 'x'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/ir.py", line 719, in get_exact
    return self.localvars.get(name)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/ir.py", line 116, in get
    raise NotDefinedError(name)
numba.errors.NotDefinedError: 'x' is not defined in None

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/ir.py", line 114, in get
    return self._con[name]
KeyError: 'x'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "test2.py", line 12, in <module>
    foo(2)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/dispatcher.py", line 360, in _compile_for_args
    raise e
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/dispatcher.py", line 311, in _compile_for_args
    return self.compile(tuple(argtypes))
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/dispatcher.py", line 618, in compile
    cres = self._compiler.compile(args, return_type)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/dispatcher.py", line 83, in compile
    pipeline_class=self.pipeline_class)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/compiler.py", line 871, in compile_extra
    return pipeline.compile_extra(func)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/compiler.py", line 365, in compile_extra
    return self._compile_bytecode()
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/compiler.py", line 802, in _compile_bytecode
    return self._compile_core()
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/compiler.py", line 789, in _compile_core
    res = pm.run(self.status)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/compiler.py", line 251, in run
    raise patched_exception
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/compiler.py", line 243, in run
    stage()
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/compiler.py", line 379, in stage_analyze_bytecode
    func_ir = translate_stage(self.func_id, self.bc)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/compiler.py", line 935, in translate_stage
    return interp.interpret(bytecode)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/interpreter.py", line 110, in interpret
    self._dispatch(inst, kws)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/interpreter.py", line 239, in _dispatch
    raise e
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/interpreter.py", line 235, in _dispatch
    return fn(inst, **kws)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/interpreter.py", line 540, in op_LOAD_FAST
    self.store(value=self.get(srcname), name=res)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/interpreter.py", line 273, in get
    var = self.current_scope.get(name)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/ir.py", line 711, in get
    return self.get_exact(name)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/ir.py", line 722, in get_exact
    return self.parent.get(name)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/ir.py", line 711, in get
    return self.get_exact(name)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/ir.py", line 719, in get_exact
    return self.localvars.get(name)
  File "/Users/jcrist/anaconda/envs/skein/lib/python3.6/site-packages/numba/ir.py", line 116, in get
    raise NotDefinedError(name)
numba.errors.NotDefinedError: 'x' is not defined in test2.py (7)

The source of this looooooong trackeback is exception chaining in Python 3, which includes previous exceptions when exceptions are raised in except blocks. While useful from a numba development point, the long tracebacks are difficult as a user. This is especially apparent in notebooks, where users often don't scroll down to the bottom of the exception, and instead see the earlier exceptions (KeyError, etc...).
A few potential solutions:

Throw "clean" final exceptions using raise_from, which can trim chained exceptions. In this case, the NotDefinedError would be thrown as:

raise_from(NotDefinedError(....), None)

Better yet, user facing exceptions could be caught and re-raised in the user facing function (e.g. nb.jit), significantly reducing the size of the traceback. This might look like:

try:
    return do_numba_stuff(...)
except ExceptionsThatShouldBeTrimmedBaseClass as exc:
    raise_from(exc, None)

In both cases the clean re-raising could also be turned off in "debug mode", allowing for better UX without inhibiting development.

Thanks for the report/suggestion @jcrist, completely agree, those tracebacks are rather long :). A load of exception rewriting/traceback hiding has already been done in https://github.com/numba/numba/pull/2859 and https://github.com/numba/numba/pull/2930, but clearly the interpreter stage has been missed. I'll have another sweep through prior to 0.39 to try and catch these error classes in the current mechanism too.

Thanks @stuartarchibal! I didn't know about the error message improvements, those look great. Since this is using 0.38, I guess this hits a path they don't cover (yet).

No problem. After a bit of wandering around in tracebacks and adjusting the rewriting mechanics I managed to make it so that this happens:
Traceback (most recent call last):
  File "issue3001.py", line 11, in <module>
    foo(2)
  File "<path>/numba/dispatcher.py", line 362, in _compile_for_args
    reraise(type(e), e, None)
  File "<path>/numba/six.py", line 658, in reraise
    raise value.with_traceback(tb)
numba.errors.NotDefinedError: Failed at nopython (analyzing bytecode)
Variable 'x' is not defined.

File "issue3001.py", line 6:
    def foo(y):
        x = x + 1  # bad code, not actually a closure
        ^
SOME HELP MESSAGE

Is that the sort of thing you were hoping for?
It made me think that it might be possible to exploit the exception hierarchy further to in general make sure that Numba exceptions for what is most likely user input issues are always rewritten, that'd just leave the somewhat tricky task of making sure the source code locations from which they emanate are available.

Is that the sort of thing you were hoping for?

Yes, that looks great! Thanks for looking into this.

No problem. I've opened #3002 to cover interpreter errors. With that applied and a .numba_config.yaml containing:
full_tracebacks: 0
show_help: 1
color_scheme: dark_bg

this happens:
$ python issue3001.py
Traceback (most recent call last):
  File "issue3001.py", line 11, in <module>
    foo(2)
  File "<path>/numba/dispatcher.py", line 357, in _compile_for_args
    error_rewrite(e, 'interpreter')
  File "<path>/numba/dispatcher.py", line 316, in error_rewrite
    reraise(type(e), e, None)
  File "<path>/numba/six.py", line 658, in reraise
    raise value.with_traceback(tb)
numba.errors.NotDefinedError: Failed at nopython (analyzing bytecode)
Variable 'x' is not defined.

File "issue3001.py", line 6:
    def foo(y):
        x = x + 1  # bad code, not actually a closure
        ^

Unsupported Python functionality was found in the code Numba was trying to
compile. This error could be due to invalid code, does the code work
without Numba? (A quick way to check is to temporarily disable Numba JIT by
setting the `NUMBA_DISABLE_JIT` environment variable to non-zero and then
rerunning the code).

If the code is valid and the unsupported functionality is important to you
please file a feature request at: https://github.com/numba/numba/issues/new

To see Python/NumPy features supported by the latest release of Numba visit:
http://numba.pydata.org/numba-doc/dev/reference/pysupported.html
and
http://numba.pydata.org/numba-doc/dev/reference/numpysupported.html

I've added a help message to suggest seeing if the code is actually valid under the standard interpreter, which should catch the problem in situations like that in the original example.


Fix organization name for prometheus

This PR fixes the organization name for prometheus model & Feedback Collection dataset! We're preparing to officially release prometheus 2.0 soon and I wish this enhancement also benefits the tuna project as well 😊

감사합니다


Feature: Add WebSockets support to Readers

Is your feature request related to a problem? Please describe.
Currently, there is no way of streaming live data using Magistrala Reders. Since this feature is needed by the UI, WebSockets seems to be a good protocol of choice.
Describe the feature you are requesting, as well as the possible use case(s) for it.
UI live dashboards will require a stream of live data from the MG internal broker to the UI. We will use Readers for that, providing not only options to access the database, but also to stream data to the client using a WebSocket connection.
Indicate the importance of this feature to you.
Should-have
Anything else?
No response

@dborovcanin
I Think , Polling is enough for now.  It fits for all the cases.
I have some question in mind related to sending message data in WebSocket

How will the requests send to reader? Does it have filters like limit, order by time, name.? If user want to change any of the filter then how the request will be updated ?
How frequently messages are sent by Reader in response ?
What are the values customer will get by showing near real time messages in UI ?

I think we should have bidirectional communication between the UI and reader

The idea was that the Reader subscribes to the particular NATS topic on demand and streams whatever it is receiving to the use through WS connection. The main benefit for the user is not to show near-real-time messages, but near-real-time updates on the dashboards.


Compressed hints should be legal

Flute currently bans the compressed hint encodings: at least C.NOP with nzimm != 0 and c.ADDI with nzimm == 0. I'm not sure if this is based on a past version of the spec that reserved these, but the current version seems pretty clear that they should be legal.
I believe deleting the following two lines would fix these cases, but I'm not sure if there are more:
https://github.com/bluespec/Flute/blob/da86cb05519d2ba0502c41a20c44654baea239bd/src_Core/CPU/CPU_Decode_C.bsv#L770
https://github.com/bluespec/Flute/blob/da86cb05519d2ba0502c41a20c44654baea239bd/src_Core/CPU/CPU_Decode_C.bsv#L790

Yep, it's all the other hints too: see https://github.com/CTSRD-CHERI/Flute/commit/d84f4211cdf7c835d613d3111dd6726ffd4b0c6d


create clusterrolebinding not working

This is in reference to 06-kubernetes-worker.md, under the "Prerequisites" section.  When run on my controller0, the command
kubectl create clusterrolebinding kubelet-bootstrap \
  --clusterrole=system:node-bootstrapper \
  --user=kubelet-bootstrap

gives this error:
kubectl create clusterrolebinding kubelet-bootstrap \
>   --clusterrole=system:node-bootstrapper \
>   --user=kubelet-bootstrap
The connection to the server localhost:8080 was refused - did you specify the right host or port?

There is some problem here in your setup, I think. What does kubectl get cs output on each controller node? Check that kube-apiserver, kube-scheduler, and kube-controller-manager are running properly on each controller node with sudo systemctl status kube-apiserver, etc.

I've updated all the docs. This should be fixed now.

@kelseyhightower @mkorejo

@XinchenWan "Disclaimer: I will always be learning K8s", however, I am going to take a guess at your question.
I am thinking that if you have kubectl installed on the node and KUBECONFIG=/path_to_your_kubeconfig defined then it should work.
Do you have a proxy set?  If you do can run a curl test to check for connectivity as mentioned here.
My logic here is that on each node the kubelet is installed and that communicates with the API controller so one way or another you should be able to get kubectl working.
One other thought is to use tcpdump to examine how the kubelet is communicating with the API controller and then try to mimic that connection.
Would you please let me know what you discover?  -- Nippip

@nippip Thanks so much for your suggestion. I will run it in a few days and have a discussion with you.


Docker Image not working

Hi, I was just attempting to try out your project using the docker image. I followed your instruction here
docker pull r9y9/julia-cxx
docker run -it --rm r9y9/julia-cxx:PCL

Then I attempted to import your package and received this error.
julia> using PCL
INFO: Precompiling module Reexport.

signal (4): Illegal instruction
while loading /root/.julia/v0.6/PCLIO/src/PCLIO.jl, in expression starting on line 28
unknown function (ip: 0x7efb9ecad0c4)
unknown function (ip: 0x7efb9ecadddb)
unknown function (ip: 0x7efb9ecad3c3)
unknown function (ip: 0x7efb9ecad168)
unknown function (ip: 0x7efb9ecab5c2)
unknown function (ip: 0x7efb9ecab56c)
anonymous at ./<missing> (unknown line)
unknown function (ip: 0x7efb9ecab54f)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_toplevel_eval_flex at /julia/src/toplevel.c:630 [inlined]
jl_toplevel_eval at /julia/src/toplevel.c:641
jl_toplevel_eval_in_warn at /julia/src/builtins.c:590
RunGlobalConstructors at /root/.julia/v0.6/Cxx/src/initialization.jl:63
ParseToEndOfFile at /root/.julia/v0.6/Cxx/src/initialization.jl:109
ParseVirtual at /root/.julia/v0.6/Cxx/src/initialization.jl:138
unknown function (ip: 0x7efb9ec7cc9d)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
macro expansion; at /root/.julia/v0.6/Cxx/src/cxxstr.jl:662 [inlined]
anonymous at ./<missing> (unknown line)
unknown function (ip: 0x7efb9ecab50f)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_toplevel_eval_flex at /julia/src/toplevel.c:630
jl_eval_module_expr at /julia/src/toplevel.c:196
jl_toplevel_eval_flex at /julia/src/toplevel.c:526
jl_toplevel_eval_flex at /julia/src/toplevel.c:594
jl_parse_eval_all at /julia/src/ast.c:735
jl_load at /julia/src/toplevel.c:657
jl_load_ at /julia/src/toplevel.c:666
include_from_node1 at ./loading.jl:541
unknown function (ip: 0x7efda51316bb)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
do_call at /julia/src/interpreter.c:66
eval at /julia/src/interpreter.c:205
jl_toplevel_eval_flex at /julia/src/toplevel.c:619 [inlined]
jl_toplevel_eval at /julia/src/toplevel.c:641
jl_toplevel_eval_in_warn at /julia/src/builtins.c:590
eval at ./boot.jl:234
unknown function (ip: 0x7efda511cc5f)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
require at ./loading.jl:446
unknown function (ip: 0x7efda5175bdb)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
jl_apply at /julia/src/julia.h:1364 [inlined]
eval_import_path_ at /julia/src/toplevel.c:463
eval_import_path at /julia/src/toplevel.c:490 [inlined]
jl_toplevel_eval_flex at /julia/src/toplevel.c:541
jl_toplevel_eval_flex at /julia/src/toplevel.c:594
jl_eval_module_expr at /julia/src/toplevel.c:196
jl_toplevel_eval_flex at /julia/src/toplevel.c:526
jl_toplevel_eval_flex at /julia/src/toplevel.c:594
jl_parse_eval_all at /julia/src/ast.c:735
jl_load at /julia/src/toplevel.c:657
jl_load_ at /julia/src/toplevel.c:666
include_from_node1 at ./loading.jl:541
unknown function (ip: 0x7efda51316bb)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
do_call at /julia/src/interpreter.c:66
eval at /julia/src/interpreter.c:205
jl_toplevel_eval_flex at /julia/src/toplevel.c:619 [inlined]
jl_toplevel_eval at /julia/src/toplevel.c:641
jl_toplevel_eval_in_warn at /julia/src/builtins.c:590
eval at ./boot.jl:234
unknown function (ip: 0x7efda511cc5f)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
require at ./loading.jl:446
unknown function (ip: 0x7efda5175bdb)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
jl_apply at /julia/src/julia.h:1364 [inlined]
eval_import_path_ at /julia/src/toplevel.c:463
eval_import_path at /julia/src/toplevel.c:490 [inlined]
jl_toplevel_eval_flex at /julia/src/toplevel.c:541 [inlined]
jl_toplevel_eval at /julia/src/toplevel.c:641
jl_toplevel_eval_in_warn at /julia/src/builtins.c:590
eval at ./boot.jl:234
unknown function (ip: 0x7efda511cc5f)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
eval_user_input at ./REPL.jl:66
unknown function (ip: 0x7efb9ec5fd86)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
macro expansion at ./REPL.jl:97 [inlined]
#3 at ./event.jl:68
unknown function (ip: 0x7efb9ec58e5f)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
jl_apply at /julia/src/julia.h:1364 [inlined]
start_task at /julia/src/task.c:259
unknown function (ip: 0xffffffffffffffff)
Allocations: 4677350 (Pool: 4676280; Big: 1070); GC: 6
Illegal instruction (core dumped)

Just a note, it its running Julia .6-dev, not sure if thats an issue.  Also if we  get this working, will I need to use nvidia-docker to run the graphics for visualization? Or is the CPU just fine for handling displaying of graphics. Thanks!

A little more prodding shows that the Julia pacakge for Cxx doesnt seem to be working in the docker container.
julia> using Cxx

C++ > #include <iostream>
signal (4): Illegal instruction
while loading no file, in expression starting on line 0
unknown function (ip: 0x7f65f68fa771)
unknown function (ip: 0x7f65f68fa503)
unknown function (ip: 0x7f65f68fa4a9)
unknown function (ip: 0x7f65f68fa483)
unknown function (ip: 0x7f65f68f8b63)
unknown function (ip: 0x7f65f68f8968)
unknown function (ip: 0x7f65f68f88ec)
isExpressionComplete at /root/.julia/v0.6/Cxx/src/CxxREPL/replpane.jl:129
#4 at /root/.julia/v0.6/Cxx/src/CxxREPL/replpane.jl:194
unknown function (ip: 0x7f65f68f86e2)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
on_enter at ./LineEdit.jl:1267
unknown function (ip: 0x7f67fcd9bf6b)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
#92 at ./LineEdit.jl:1351
#13 at ./LineEdit.jl:736
unknown function (ip: 0x7f65f68e9932)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
prompt! at ./LineEdit.jl:1605
run_interface at ./LineEdit.jl:1574
unknown function (ip: 0x7f67fcd9ec8f)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
run_frontend at ./REPL.jl:931
run_repl at ./REPL.jl:190
unknown function (ip: 0x7f65f68bb4b2)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
_start at ./client.jl:368
unknown function (ip: 0x7f67fcdba178)
jl_call_method_internal at /julia/src/julia_internal.h:185 [inlined]
jl_apply_generic at /julia/src/gf.c:1944
unknown function (ip: 0x401a8d)
unknown function (ip: 0x401396)
__libc_start_main at /lib/x86_64-linux-gnu/libc.so.6 (unknown line)
unknown function (ip: 0x4013da)
Allocations: 3918808 (Pool: 3917746; Big: 1062); GC: 4
Illegal instruction (core dumped)

I'm afraid I cannot reproduce. Just a guess, but you might be runining on a non x86_64 architecture? The julia in the docker image is built for x86_64 (https://github.com/r9y9/julia-cxx/blob/74789cff79534a34cf47ee06e501f810df4527f6/ubuntu14.04/Dockerfile#L52).

it its running Julia .6-dev, not sure if thats an issue. Also if we get this working, will I need to use nvidia-docker to run the graphics for visualization? Or is the CPU just fine for handling displaying of graphics.

0.5.x (with patched jitlayers.cpp), 0.6 and 0.7-dev should be ok. CPU is just fine for visualization, but I haven't test it with the docker image. I'd recommend you build it yourself if you want visualization features.

Just a guess, but you might be runining on a non x86_64 architecture?

Never mind, julia won't run on non x86_64 architecture if it's built for x86_64.

Thanks for the reply. I actually tested it on two computers and got the
same error. Both had docker installed and are x64. I spent a couple hours
trying to figure it out, but I'm pretty sure it has to do with Cxx. The Cxx
julia docker image (which pcl image extends from) didn't work as well when
testing. I'll keep plugging away at it though because this package looks
way to good to give up this early.
I'll let you know if I find anything else. PS host computers are Ubuntu
16.04 and one is 16.10. one is a Skylake processor and other is some xeon
cpu.
On May 19, 2017 10:25 PM, "Ryuichi Yamamoto"<EMAIL_ADDRESS>wrote:

I'm afraid I cannot reproduce. Just a guess, but you might be runining on
a non x86_64 architecture? The julia in the docker image is built for
x86_64 (https://github.com/r9y9/julia-cxx/blob/
74789cff79534a34cf47ee06e501f810df4527f6/ubuntu14.04/Dockerfile#L52).
it its running Julia .6-dev, not sure if thats an issue. Also if we get
this working, will I need to use nvidia-docker to run the graphics for
visualization? Or is the CPU just fine for handling displaying of graphics.
0.5.x (with patched jitlayers.cpp), 0.6 and 0.7-dev should be ok. CPU is
just fine for visualization, but I haven't test it with the docker image.
I'd recommend you build it yourself if you want visualization features.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/JuliaPCL/PCL.jl/issues/22#issuecomment-302845013, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AGUi9dUuK9_DvlH4zsKoovNkK0S7UQTEks5r7k8RgaJpZM4NgoD6
.

Just and update.  I tried to manually install your Cxx libarary in a vanilla docker Ubuntu 14.04 container.  I followed all the steps from your docker file exactly.  It took a long time to compile Julia but it eventually finished. I also downloaded your fork of Cxx.  One thing to note however. This step in the docker file where you check out a specific commit, does not exist (commit HASH 3f99d56476054241d3c00f331d6377284773367f), at least it complained it didn't exist.  However it seems like the branch r9y9 is the default branch and the commit f72787f8f2dcc8c43a831bb1cbdb5cda72cf4af8 is the default one with your fix for RTTI.  So I just built from that.  I tried to run Cxx and the same errors as above occurred with an illegal exception.
So I thought I would try one more thing.  I have a third computer that is a Windows 10 computer (broadwell processor).  I installed docker (its a little different than Linux because it actually runs a VM in the background) on it and ran your docker PCL image.  It worked! No issues at all.
So...It seems that the issue is really nothing to do with your docker file, just something really crazy that doesn't work on my two Linux computers.  I'm thinking something to do with building Julia or building Cxx on my computers causes some serious issues where illegal instructions are being generated.  Not sure what to do next, but I'll see what else I can do to figure this out.
Oh one last thing.  I have Julia installed locally on those 2 Linux computers (not through docker) using Julia Pro (0.5.1 julia version). I decided to see if I could run Keno's Cxx library on these computers.  I installed it and there were no issues calling and running C++.  So it should defenitely be possible for me to run your project on these Linux computers.  I just would really prefer to to use Docker.

Thank you very much for investigating. Yes, building entire dependencies takes too long time and hard, so I created the docker image.

This step in the docker file where you check out a specific commit, does not exist (commit HASH 3f99d56476054241d3c00f331d6377284773367f),
Sorry about that. This is because I rebased against Keno's master to cleanup history. Maybe I should use merge instead.

Oh one last thing. I have Julia installed locally on those 2 Linux computers (not through docker) using Julia Pro (0.5.1 julia version). I decided to see if I could run Keno's Cxx library on these computers. I installed it and there were no issues calling and running C++. So it should defenitely be possible for me to run your project on these Linux computers. I just would really prefer to to use Docker.

To be honest, I'm not quite familar with docker, so I might not be able to help you much. Anyway since julia-cxx hasn't been updated for months, let me update it for newer stable julia release (0.5.2) and latest Cxx.

Thanks again for your help and responses.

To be honest, I'm not quite familar with docker

You could have fooled me, the docker set up seems to be solid.

Anyway since julia-cxx hasn't been updated for months, let me update it for newer stable julia release (0.5.2) and latest Cxx.

Yeah that's the next thing I'm going to try as well. Maybe they had a fix for this situation. I'll update you later on any progress.

Happy Update!  I now have Julia, PCL, and Cxx working in a docker container.  Here are the different steps that I took  (everything not mentioned is the exact same as your docker build):

I started with a clean ubuntu:14.04 container
I downloaded the current stable binary release of Julia (0.5.2). I extracted it to the same directory as expected in you docker build: /julia/usr.
I saw that you had already updated your fork of Cxx so I simply downloaded and had Julia build from the r9y9 branch.

After that everything worked.  So to me this means that it was either a bug in Cxx that got fixed upstream, or there was something wrong with building Julia from that specific .6-dev commit.
FYI the visualization did not work out of the box for me.  Even with passing over my x-sever session there were issues because I have a dedicated nvidia graphics card with my intel graphics disabled.  Because of this I needed to run a slightly modified image using nvidia-docker.  If anyone ever is interested you can follow instructions here.

Thanks again for all your help! Do you think we should update your docker build to use the latest stable release of Julia (forgo building julia) and updated the commit HASH of julia-cxx to use your latest one? I can do this work in a fork for you if you like. Thanks!

Great! I'm glad to hear that.
Unfortunately, binary release of Julia 0.5.2 is not enough. It needs https://github.com/r9y9/julia-cxx/blob/74789cff79534a34cf47ee06e501f810df4527f6/ubuntu14.04/jitlayers.patch to pass all tests in PCL.jl, without the patch almost works though. I'm building the docker images now.

Do you think we should update your docker build to use the latest stable release of Julia (forgo building julia) and updated the commit HASH of julia-cxx to use your latest one? I can do this work in a fork for you if you like. Thanks!

Yes, I'll push a new one based on julia 0.5 and Cxx master. Any improvements other than (e.g. visualization fixes, etc) that would be very welcome!

Ok, pushed. https://hub.docker.com/r/r9y9/julia-cxx/tags/

Awesome, I tried out your new container (PCL) and everything seemed to work the same as my docker container.  I ran the tests and got the following:
julia> Pkg.test("PCL")
INFO: Testing PCL
Cloud before filtering
    0.06872353 0.64002645 0.1882799
    0.6037358 -0.5924739 -1.4134667
    0.8469611 -0.4360672 -0.20045792
    -0.18040742 0.73905283 -1.3438088
    -0.44348446 0.9636045 0.29803377
Cloud after filtering
    0.06872353 0.64002645 0.1882799
    -0.44348446 0.9636045 0.29803377
Test Summary: |
  passthrough | No tests
INFO: Normal estimation
INFO: Uniform sampling
Model total points: 12575; Selectd Key points: 193
Scene total points: 307200; Selectd Key points: 7739
INFO: Associating a 3D descriptor to each model and scene keypoint
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 5807
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 5837
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 6170
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 7297
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 6214
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 7354
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 7436
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 7488
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 7550
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 6670
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 5612
INFO: Find Model-Scene Correspondences with KdTree
length(model_scene_corrs) = 3400
INFO: Clustering
length(rototranslations) = 8
i = 0
i = 1
i = 2
i = 3
i = 4
i = 5
i = 6
i = 7
INFO: ICP
Instance 0 Aligned!
Instance 1 Aligned!
Instance 2 Aligned!
Instance 3 Aligned!
Instance 4 Aligned!
Instance 5 Aligned!
Instance 6 Aligned!
Instance 7 Aligned!
Occlusion cloud not set, using scene_cloud instead...
Computing cues took 68ms.
Computing clutter cues took 0ms.
SA search... took 43ms.
Instance 0 is bad!
Instance 1 is bad!
Instance 2 is bad!
Instance 3 is bad!
Instance 4 is bad!
Instance 5 is good!
Instance 6 is bad!
Instance 7 is bad!
Test Summary:                  |
  global_hypothesis_verification | No tests
PointCloud before filtering: 460400 data points
PointCloud before filtering: 41049 data points
Test Summary: |
  voxel_grid  | No tests
INFO: Normal estimation
INFO: Uniform sampling
Model total points: 12575; Selectd Key points: 686
Scene total points: 307200; Selectd Key points: 3747
INFO: Associating a 3D descriptor to each model and scene keypoint
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 2991
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 2993
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 3109
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 3123
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 3706
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 2712
[pcl::SHOTEstimation::computeFeature] The local reference frame is not valid! Aborting description of point with index 3717
INFO: Find Model-Scene Correspondences with KdTree
length(model_scene_corrs) = 1777
INFO: Clustering
length(rototranslations) = 1
Test Summary:           |
  correspondence_grouping | No tests
Point cloud data: 15 points
x,y,z: -0.9489802,0.93606704,2.0
x,y,z: -0.3437455,-0.38999134,1.0
x,y,z: -0.6442083,1.0298296,1.0
x,y,z: -1.0676087,-0.32435745,-2.0
x,y,z: -0.38646188,-0.84192026,1.0
x,y,z: 1.0686294,1.8438306,1.0
x,y,z: 0.7754149,-0.26972428,4.0
x,y,z: 0.7506673,-2.1884146,1.0
x,y,z: -0.52038544,2.7754045,1.0
x,y,z: -1.7954012,-1.0127441,1.0
x,y,z: 0.13636032,0.98010564,1.0
x,y,z: 0.94960845,0.74482495,1.0
x,y,z: 0.16885003,-0.68254954,1.0
x,y,z: -0.59394556,0.18732007,1.0
x,y,z: 0.8637243,-0.9197366,1.0
Model Coefficients: 0.0 0.0 1.0 -1.0
Model inliers: 12
0  x,y,z: -0.3437455,-0.38999134,1.0
1  x,y,z: -0.6442083,1.0298296,1.0
2  x,y,z: -0.38646188,-0.84192026,1.0
3  x,y,z: 1.0686294,1.8438306,1.0
4  x,y,z: 0.7506673,-2.1884146,1.0
5  x,y,z: -0.52038544,2.7754045,1.0
6  x,y,z: -1.7954012,-1.0127441,1.0
7  x,y,z: 0.13636032,0.98010564,1.0
8  x,y,z: 0.94960845,0.74482495,1.0
9  x,y,z: 0.16885003,-0.68254954,1.0
10  x,y,z: -0.59394556,0.18732007,1.0
11  x,y,z: 0.8637243,-0.9197366,1.0
Test Summary:       |
  planar_segmentation | No tests
  2.565200 seconds (2.57 k allocations: 114.941 KB)
PointCloud before filtering: 460400 data points
PointCloud before filtering: 451410 data points
Test Summary:       |
  statistical_removal | No tests
length(cloud) = 307200
convert(Int,length(clusters)) = 22
Test Summary:                   |
  region_growing_rgb_segmentation | No tests
PointCloud before filtering: 460400 data points
PointCloud after filtering: 41049 data points
PointCloud representing the planar component:20161 data points
PointCloud representing the planar component:12114 data points
Test Summary:   |
  extract_indices | No tests
PointCloud representing the planar component:60149 data points
ground_normal = Float32[-0.593471,0.0427265,0.803721]
rotation = Float32[-0.0427265,-0.593471,0.0]
theta = -0.6372743f0
rad2deg(theta) = -36.513126f0
  0.804733  0.0140581   0.593471          0
 0.0140581   0.998988 -0.0427265          0
 -0.593471  0.0427265   0.803721          0
         0          0          0          1
estimated_distance = 2571.423000068314
Test Summary:     |
  tilt_compensation | No tests
  0.037905 seconds (3.35 k allocations: 148.855 KB)
length(clusters) = 2
Test Summary:      |
  cluster_extraction | No tests
INFO: PCL tests passed

As you can see some tests don't exactly pass.  This is the exact same for me when using the unpatched release version on my docker container.  Don't know if it really matters. I can make a pull request providing an docker image that can be used by nvidia-docker write some documentation (allows ability to use discrete graphics for visualization and the possibility of using CUDA).


Support JIRA tag suffix

The plugin supports placing the JIRA tag to the start of commit message as a prefix.
Could you add a toggle to the settings so the user can choose where the tag would be placed?
I suggest having options like "start", "end".

Thank you for your request. This should be relatively easy to implement. I will take a look at it


Weird Behaviour on CollectionView For Android

Problem description
Duplicate action events on cell item  with different index
Expected behavior
No duplicate event

action
Environment

Tabris.js version: 3.2.1
Device: Huawei P10 lite
OS: Android 8.1

Code snippet
const{app,Composite,CollectionView,TextView,contentView} = require("tabris")

const items = ['Apple', 'Banana', 'Cherry', 'Mangoes', 'WaterMelon', 'pineapple', 'Tomatoes', 'Plum', 'Quince', 'Pear', 'Lemon', 'Orange', 'Blackberry', 'Blueberry', 'Raspberry', 'Strawberry', 'Coconut', 'Passion fruit', 'Apricot'];

new CollectionView({
  left: 0, top: 0, right: 0, bottom: 0,
  itemCount: items.length,cellHeight:70,
  createCell: () =>{
  	const cell = new Composite({left: 0, top:["prev()",0], right: 0, height: 70, highlightOnTouch:true});

  	new TextView({left:15,centerY:0}).appendTo(cell);

  	cell.onTap(({target})=>{

  		target.background = "red";
  	});
  	return cell;
  },

  updateCell: (view, index) =>  {

    view.find(TextView).only().text = items[index];
  }
}).appendTo(contentView);

The second image with the red band on blueberry is after the collectionView scroll the red band is duplicate

Please, don't use .only() this will throw error if widget has more than one child. Use .first() instead
use .onX in updateCell section

@fax1ty  Done but same behaviour duplicate red band, check on your side please

By onX you want to mean onTap right?

@ishigo1987
I meant the indication of any event.
I'm not sure what you want to do. Now your code makes it so that any cell now when pressed becomes red

Maybe you need this?
cell.onTap(({target})=>{
if (needToMakeRed) target.background = 'red';
else {}
});

I need just the cell where I click to turn red, but strangely enough this behavior is repeated on a new cell when the next cells enter the screen and so on

its weird because
cell.onTap(({target})=>{
console.log(target) // return the good cell
});

But why this duplicating happen?

I have already encountered this problem
https://github.com/eclipsesource/tabris-js/issues/1954

You must strictly specify which cell should be red and which is not. Use index matching

I try something like that with no success same duplicate red band
view.onTap(({target})=>{

  		if(target.parent(CollectionView).itemIndex(target) === index){
  			target.background = "red"
  		}else{
  			target.background = "white"
  		}
  	});

??????? It's always true
if(collection[index].isNeedToBeRed) target.red; else ....

Damn you right i'm tired :v :v :v

if i can add something else, if you want to listenning some events on your collectionView cells add them on cells in the createCell() method otherwise you will suffer from event callback duplication


Fix validation errors in the vulkan demo

As reported in https://github.com/LWJGL/lwjgl3/issues/772, running the current HelloVulkan demo causes validation errors. This pull request fixes these validation errors.

Thanks!


Update libimobiledevice packages, fix usbmuxd

Motivation for this change
https://github.com/NixOS/nixpkgs/pull/54953 updated usbmuxd only, seemingly without testing, because when I updated my system today it didn't work anymore, the issue being https://github.com/libimobiledevice/usbmuxd/issues/95. All these libimobiledevice packages should be updated together such that such things don't happen. This PR updates all of them to their latest master version. I also changed ifuse to use the master version instead of its releases, because there hasn't been a release in a while (see https://github.com/libimobiledevice/ifuse/issues/34).
Ping @worldofpeace @arilotter
This is currently also broken for 19.03 too, PR for a partial backport is incoming after discussions with @grahamc and @samueldr on IRC I decided to instead backport all of these updates, because libimobiledevice doesn't have any stable versions anyways, and not updating all those packages roughly at the same time might lead to more such issues.
Things done
I have verified that this fixes above issue, allowing me to use my iPhone for tethering again. I also checked that ifuse can mount the filesystem and that ideviceinstaller can list installed apps.

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

Weird, I tested that on a deployed system :confused:

Testing this now on my machine @Infinisil

And I was using usbmuxd with the module btw.

Ah sorry for the accusation then, I didn't verify that that PR actually broke it. I'm bisecting the issue now to find the cause.

Ah sorry for the accusation then, I didn't verify that that PR actually broke it. I'm bisecting the issue now to find the cause.

That may not be needed because it could have been an issue for certain devices.

Wait no, I did bisect it, and it lead me to https://github.com/nixos/nixpkgs/commit/4bf34f16d8f4e703d4975f854d7c69378123cd8f from #54953
I've been testing usbmuxd with just
$ nix-build -A usbmuxd
$ sudo result/bin/usbmuxd -U usbmux -f

and an iOS device plugged in. In https://github.com/NixOS/nixpkgs/commit/4bf34f16d8f4e703d4975f854d7c69378123cd8f this leads to an immediate failure:
[01:53:26.446][3] usbmuxd v1.1.1 starting up
[01:53:26.447][3] Successfully dropped privileges to 'usbmux'
[01:53:26.456][3] Initialization complete
[01:53:26.457][3] Connecting to new device on location 0x3000b as ID 1
[01:53:26.457][3] Connected to v2.0 device 1 on location 0x3000b with serial number 073e1cde3e4009384fc8455c6f95a96456ebf6b0
[01:53:26.458][2] Attempted to connect to nonexistent device 0
[01:53:26.458][1] preflight_worker_handle_device_add: ERROR: Could not connect to lockdownd on device 073e1cde3e4009384fc8455c6f95a96456ebf6b0, lockdown error -8

But on 0faa6bab501 (master before the merge):
[01:54:14.138][3] usbmuxd v1.1.1 starting up
[01:54:14.139][3] Successfully dropped privileges to 'usbmux'
[01:54:14.149][3] Initialization complete
[01:54:14.150][3] Connecting to new device on location 0x3000b as ID 1
[01:54:14.150][3] Connected to v2.0 device 1 on location 0x3000b with serial number 073e1cde3e4009384fc8455c6f95a96456ebf6b0

So it might be that you just didn't check for this error or just didn't test this usecase. Or it might be that something in your stack is different, I'm running a pretty old iOS version, maybe the error regarding lockdownd would only occur in older versions.

@Infinisil did you want another tester? Otherwise LGTM I'll merge.

Feel free to merge


how to add local module to vendor?

What version of Go are you using (go version)?

$ go version
go version go1.11.1 linux/amd64

Does this issue reproduce with the latest release?
yes, and i used the latest version
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GOARCH="amd64"
GOBIN="/usr/local/go/bin"
GOCACHE="~/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="$Workspace/go"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build913779639=/tmp/go-build -gno-record-gcc-switches"

What did you do?

create new project
execute go mod init
modify go.mod

exclude privaterepo.com/bb/bb

copy my local module to vendor because the local module is on a private repo which not support https.
now the vendor just like:

vendor
|-github.com/aa/aa
|-privaterepo.com/bb/bb

import "privaterepo.com/bb/bb"
execute go build -mod vendor
than i got error "cannot find module for path privaterepo.com/bb/bb"
i always try with replace, but it also not work

replace privaterepo.com/bb/bb v0.0.0 => ./vendor/privaterepo.com/bb/bb

What did you expect to see?
I just want go mod support i add local module and build success.
What did you see instead?
Before i used go dep which support ignored can solve the problem. Now go mod exclude not work for this.

@bradfitz - Are we not closing questions now ? From the latest comment on https://github.com/golang/go/issues/23745, it seemed that we were waiting on the questions repo to be created.

The vendor directory is not intended for adding arbitrary modules. Use a replace directive instead.
See also #28835.

i always try with replace, but it also not work

What about it doesn't work?

@bcmills I try add replace privaterepo.com/bb/bb v0.0.0 => ./vendor/privaterepo.com/bb/bb, but when i execute go mod vendor, it will remove the module.
If i don't do this and direct execute go build -mod vendor main.go, it failed and say this is cannot find module for path privaterepo.com/bb/bb.
Why not support ignored for go mod just like go dep?

@bcmills Most of my friends write go in commercial project, some of depence common modules is place in private vcs just like privaterepo.com/xxx/xx, and cause some reason the vcs not support https or need auth when they use https. So, maybe  go dep should support ignored and go get support ssh protocol for most of gopher who with privaterepo depence.

I try add replace privaterepo.com/bb/bb v0.0.0 => ./vendor/privaterepo.com/bb/bb, but when i execute go mod vendor, it will remove the module.

Did you also add require privaterepo.com/bb/bb v0.0.0? go mod vendor only vendors in modules that are actually in the requirement graph. (See #26241.)

and cause some reason the vcs not support https or need auth when they use https

Configuration of private repose is independent of vendor. See #25982 and related issues.

@bcmills I try to add go.mod in vendor/privaterepo.com/bb/bb/go.mod with:
module bb

than i execute go mod vendor, the vendor/privaterepo.com/bb/bb gone.

I would not expect go mod vendor to work if the replace directive itself points into the vendor directory. The replace directive should point to a copy of the repository somewhere else in the filesystem (in which case you can add a go.mod file there).

@bcmills So ho to vendor a local module?
There has more than one developer in one project, i don't think there exist some way to fix this case.
As your words, all of developer should put the private module in same path at each computer, or put the private module as a common lib such as ./bb other than a package in ./vendor/privaterepo.com/bb/bb.

For now, i turn back to use go dep and use ignored to keep the private module in vendor.
I think go mod should support such of case to manage private module in vendor.
network, security, business and so on, there is too much limit in real work situation, i think most of gopher had go through some of them.
As a official tool, i think go mod should support this case for the gopher just like me.

In fact , vendor is used as a go package manager for most of gopher.
local module is a special package which has private permission for some reason.
"You can put a local module in a directory within the same repository", i don't think it's a reasonable and graceful to handle the special package.
I don't known the real num who had meet similar situation, but i really heared so much gopher complain similar case.

If the official don't want go dep support such case, so you can close the issue.

Precision is important.

vendor is not a “package manager” in the usual sense: it does not understand versions, let alone resolve them.
A “local module” (to be precise, a “replacement module”) is a module, not a package. A module is a collection of packages.
In general I would expect private modules to be served via private VCS servers, private Go proxies, or some combination of the two. replace is not a long-term solution for that, nor is vendor.
“reasonable” and “graceful” are subjective judgments, not technical ones. We try to focus on addressing concrete problems.

@bcmills Most of my friends write go in commercial project, some of depence common modules is place in private vcs just like privaterepo.com/xxx/xx, and cause some reason the vcs not support https or need auth when they use https. So, maybe go dep should support ignored and go get support ssh protocol for most of gopher who with privaterepo depence.

we can make commom private golang module as our project sub repo with (git module/git subtree)
edit our project go.mod by replace.

@echopairs

we can make commom private golang module as our project sub repo with (git module/git subtree)

Most developer who use  depence common modules may not have the permission to make the common private golang modules for some reason:

Code sync
Security
Others like historical, company rule ...

I had give up to use go mod in the project and keep on use go dep. May be i will use go mod in new project which doesn't need import private modules.


Use the calculated path in help message

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Problem/Feature
Running the twitch command without any other arguments prints some help information. This help information includes this section:
Flags:
      --config string   config file (default is $HOME/.twitch-cli/.twitch-cli.env)

The path that is listed here appears to be a legacy value—on my machine it is incorrect. (macOS; the path is actually $HOME/Library/Application Support/twitch-cli/.twitch-cli.env).
Description of Changes:
This PR changes the help for the command root to display the actual calculated path of the config file instead of hardcoding a path.
I wasn't sure of the preferred approach to naming/error-handling, and it's been years since I've written any Go, so I tried to match the existing code as closely as possible. Feedback/changes absolutely welcome. 🙂
Checklist

[x] My code follows the Contribution Guide
[x] I have self-reviewed the changes being requested
[x] I have made comments on pieces of code that may be difficult to understand for other editors
[x] I have updated the documentation (if applicable)

This issue is actually beyond Mac OS.
Currently, if the $HOME/.twitch-cli/ folder exists, its used. However, if it doesn't exist, then instead it uses the result of os.UserConfigDir(), which is particularly different to each system:

Unix/Linux: $XDG_CONFIG_HOME (if exists), or $HOME/.config
Windows: %APPDATA%
Darwin/Mac OS: $HOME/Library/Application Support

(Its also worth noting that MinGW on Windows uses $HOME/.config)
Your contribution here is a step forward for sure, and it highlights an underlying problem that now needs fixing. Specifically, this seemingly (from what I can tell) undocumented change in config location.
I'll approve this and merge it. I appreciate you finding and fixing this!

@Xemdo - I can actually provide color there since it's relevant.
The change wasn't documented since it wasn't going to impact folks, nor are people usually modifying the db or config files manually. With that said, there was a specific request from the community per issue #33.
We were previously using a hardcoded user profile/.twitch-cli/ folder, which wasn't optimal for *nix systems, and the config directory should be respected nonetheless.

@lleadbet Ah, makes sense. With this PR then, it would show the user where it currently is rather than where it would be if they were a fresh install.
As you mentioned the config directory should definitely be respected, so I'll leave that as is 😃
Only thing that still gets me is the MINGW config, but if someone's using an emulated Unix environment I expect them to be ready for $HOME to be prioritized over %APPDATA%.
Thank you for the input on this!


cleanup goroutine properly in imageprogress.NewPullWriter

imageProgressWriter should be a WriteCloser, so that a Close() will allow it to clean up its internal goroutine.
removed func (w *imageProgressWriter) ReadFrom because it's vaguely broken and not actually necessary.

@smarterclayton ptal

@smarterclayton ptal


Fix jar file

Made jar file usable.

Fixed an error regarding the logo image
Made some basic grammar fixes

LGTM


Setting environment variables from pretty print JSON responses no longer works

In the previous version, I could select a value in the pretty JSON response from a request, right click, "Set: environment" -> "variable". In the latest version, this no longer seems to work. When I check the environment in the manager the variable I attempted to set is blank. It still works if I do it from the "raw" or "preview" tabs, but finding the correct value can be difficult in large result sets.

This has been fixed in version <IP_ADDRESS> of the app. You can update it by going to chrome:/extensions, checking 'Developer Mode', and clicking 'Update extensions now'

My thanks!


Preset issue

Hi, good day,
I am experiencing this error during build in android (I haven't checked iOS yet).
Couldn't find preset "module:metro-react-native-babel-preset
Has anyone experienced this before? I tried installing metro-react-native-babel-preset as well but it didn't solve it.
I am using RN0.51 btw.
Thanks.

@markronquillo That's weird! Maybe your project is conflicted with other lib not mine.

@markronquillo Have you solved this error yet?

Not yet, but I think upgrading the RN version will it. so yeah

Hi guys, I am suffering now the same error as @markronquillo, I have RN 0.59.10 on my project, and the error says that module:metro-react-native-babel-preset is not found in this library. It is rare, because I already have that preset installed in my project, thoughts?
Thanks!


Variable not defined bug in 'Manipulate Arrays With shift' Waypoint.

Variable removedFromOurArray should be defined. This is possibly causing a lint error.

Workaround for this can be
var removedFromOurArray; just above the line where shift is used.

Fixed by PR #4870
Thanks!


Is IBC transfer tracking working?

https://www.mintscan.io/osmosis/txs/a34d4f3831717504656540a7673357f4323b7817109dba3e0dcecd9e179d1487 shows that STARS was received on osmo1e6xlqh6szdgx05txgshk0kdll3eh0h2fuwu9q4
However, our CSV does not report that.

@jtieri i think this is an old dupe of same stuff your working on. Can you confirm that this tx shows up with your PR, and if it does, you can close


HELP | This isn't really an issue, but its much needed information

For those of us who are unsure how to get this working or don't fully understand it, a straightforward guide would be extremely helpful. I'm not looking for a YouTube video or anything complex—just a simple, clear set of instructions.
For example:

Do we inject the DLL into the Roblox Studio process?
Do we need to publish the game?
What specific steps (a, b, c) do we need to follow to make it work?
It would be really beneficial to have a README that clearly explains how to use it and what it's for, covering both aspects in detail.

E1:
I've been struggling to get this working. I've tried team tests, local tests, and everything in between. I've injected the DLL into the main process, child processes, and everything else I could think of, but nothing seems to work.

Download the latest release of Roblox Studio Mod Manager
Select version 0.631.1.6310472
Install any Injector, i recommend Extreme Injector. Make sure not to open Roblox Player while having it open as it will flag your account.
Go into any game and hit "Play"
In Extreme Injector, select the Roblox Studio Proccess and the DLL you downloaded from this Repository
Inject

A console window will open where u can input your code that you want to get executed

For those of us who are unsure how to get this working or don't fully understand it, a straightforward guide would be extremely helpful. I'm not looking for a YouTube video or anything complex—just a simple, clear set of instructions. For example:

Do we inject the DLL into the Roblox Studio process?
Do we need to publish the game?
What specific steps (a, b, c) do we need to follow to make it work?
It would be really beneficial to have a README that clearly explains how to use it and what it's for, covering both aspects in detail.

E1: I've been struggling to get this working. I've tried team tests, local tests, and everything in between. I've injected the DLL into the main process, child processes, and everything else I could think of, but nothing seems to work.

The tool is out of date, I cannot put my time to update it, as I'm tied with my mid-terms, as such, if you want to use it, you have to rollback your studio version as @ActualMasterOogway said to. I will update when I have free time between my mid-terms or when they end.

Download the latest release of Roblox Studio Mod Manager
Select version 0.631.1.6310472 (The June 26th version)
Install any Injector, i recommend Extreme Injector. Make sure not to open Roblox Player while having it open as it will flag your account.
Go into any game and hit "Play"
In Extreme Injector, select the Roblox Studio Proccess and the DLL you downloaded from this Repository
Inject

A console window will open where u can input your code that you want to get executed

Update:
Roblox has blocked older versions (maybe because to not crash that often, even though there's no issues with it in my opinion). Screenshot:

So this tutorial is outdated anyway, You'll have to use RbxStuDumper and also fork this repo or download the repo to update the module. This is the only temporary fix for now.
As long if you know how to use Visual Studio or VS Code, you might be able to update it yourself


Adjust playback speed functionality

First-off, great piece of software, hats off!
It would be great if you could adjust the playback rate.

Can you elaborate? What do you mean by "playback rate"?

@aome510 sorry for being too brief. Updated the description.

Thanks @jobvisser03. I get what you mean now. I don't think it's possible to adjust streaming speed rate as Spotify doesn't officially support that feature.

Closed as it's not possible to implement by spotify_player


Use local actor ref provider for health signal actor system

When configuring remoting with a static port the health signal actor system and regular Surge actor system currently attempt to bind to the same port, which results in errors.  The health signal actor system doesn't need remoting and can be local.

Codecov Report

Merging #43 (9c0cc6e) into main (b063180) will decrease coverage by 0.17%.
The diff coverage is 90.00%.

@@            Coverage Diff             @@
##             main      #43      +/-   ##
==========================================
- Coverage   77.31%   77.13%   -0.18%
==========================================
  Files         162      162
  Lines        2896     2878      -18
  Branches       70       66       -4
==========================================
- Hits         2239     2220      -19
- Misses        657      658       +1

Impacted Files
Coverage Δ

.../surge/internal/kafka/KafkaProducerActorImpl.scala
87.01% <85.71%> (-0.90%)
:arrow_down:

...src/main/scala/surge/core/KafkaProducerActor.scala
87.50% <100.00%> (-0.38%)
:arrow_down:

.../scala/surge/internal/health/HealthSignalBus.scala
78.75% <100.00%> (ø)

...n/scala/surge/internal/streams/StreamManager.scala
75.00% <0.00%> (-1.25%)
:arrow_down:

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 1ac8390...9c0cc6e. Read the comment docs.


Rule inside scrollable is extremely large

Is there an existing issue for this?

[X] I have searched the existing issues.

Is this issue related to iced?

[X] My hardware is compatible and my graphics drivers are up-to-date.

What happened?
Placing a Rule inside a Scrollable makes the latter think that its width is extremely large. I suppose this is because Rule uses Length::Fill as its width.
SSCCE: See the Rule on Scrollable example in my iced playground.
What is the expected behavior?
Well, that's a design question. My first hunch is that the rule should be as large as the scrollable would be without the rule. Depending on the implementation this may also help solving #1745. Another option is for the rule to fill the width/height of the container that the scrollable lives in. This would probably align more with the current behaviour of rules outside of scrollables.
Version
crates.io release
Operating System
Linux
Do you have any log output?
No response

The issue persists with the current master branch of iced.

It is considered an invalid layout to Fill in the scrolling direction of a Scrollable. A Scrollable has no upper limit in its scrolling direction and filling it is equivalent to trying to fill some infinite space.


Bump pydantic version from 1.x to 2.x

https://docs.pydantic.dev/2.6/migration/#basesettings-has-moved-to-pydantic-settings
bump-pydantic netcfgbu

Items to investigate:
    @classmethod
    # TODO[pydantic]: We couldn't refactor `__get_validators__`, please create the `__get_pydantic_core_schema__` manually.
    # Check https://docs.pydantic.dev/latest/migration/#defining-custom-types for more information.
    def __get_validators__(cls):
        yield cls.validate


iip or oop functionality

add iip or oop kwargs to simulate and relax

I would merge this once we also changed the Stochsystem struct to allow for iip or oop (issue #22)

I would merge this instead into #76


📝 Add How To Use [Documentation]

Description:
This PR deals with following:

Docs on how to use sharkio locally
Improvements in the README format
Reformatting the feature availability table

Click to Preview README

Yooooo this is awsome!!!


[BUG] XRP Ticker

Hello adding the Ripple tickets gives this
THIS WILL ALLOW THE DEVELOPER OF XRP TO:
Add a bot to a server
This bot can't join more servers as it has not been verified or is requesting gateway intents it has not been verified for. Ask the bot's developer about https://dis.gd/bot-verification so you can add it to your server!
Create commands
X
Buy you a nice seafood dinner
ADD TO SERVER:
This bot can't join more servers as it has not been verified or is requesting gateway intents it has not been verified for. Ask the bot's developer about https://dis.gd/bot-verification so you can add it to your server!

Discord refuses to verify this bot. There is nothing I can do.


MH-13680: Add upload and delete LTI tools

Abstract
This PR adds two new functionalities to the LTI module:

Uploading of new events (as a new tool).
Deletion of single events from the series tool; this is optional and can be enabled via a tool parameter.

Uploading
The upload tool currently doesn’t really compare to the “New Event” modal in the admin UI. It was designer for a specific use case and is kept simple. It presents the user merely with the event title and a file input. Internally, a workflow can be configured which is executed after ingestion.
The upload tool also contains a list of running jobs, so the user gets some feedback about the upload completion and isn’t put off by the video not instantly appearing in the series tool.
Deletion
Events can be deleted by pressing the trashcan symbol in the series list. To make this as simple as possible, this PR is based on the “single step event deletion” PR, so the user doesn’t have to unpublish, wait, and then delete.
The Code
New modules
The lti module in Opencast is very minimalistic (which was sufficient for now). To support uploading and deletion, we had to write some Java code which needed services that are not necessarily available on the node LTI runs on. Our customer would like to run LTI on the presentation node, for example. To add multi-node support, we added the following modules and functions:

lti-service-api contains the LtiService interface, implemented by the “remote” and the “impl”
lti-service-impl contains the implementation
lti-service-remote contains the remote
lti contains an additional endpoint which holds an LtiService reference and serves as a “trampoline” to either the remote or the impl.

While reviewing, do note that the endpoint in lti looks strikingly similar to the remote endpoint. That’s, unfortunately, unavoidable.
The user provider
This PR also adds a user provider for otherwise “half-known” temporary LTI users. Please see
~~https://groups.google.com/a/opencast.org/forum/#!topic/dev/YX_uCIUxfLA~~
For an in-depth discussion about this user provider and why it’s there.
The user provider has been removed due to the customer not needing it anymore :D
Attribution
This work was sponsored by Uni Gent.

@lkiesow Thanks for the thorough review so far. We've just discussed this plapadoo-internally and we don't think it's urgent to get this into 8. Please continue to review this PR, we will fix your findings and update it (and think of something more appropriate for the upload() function as you suggested). However, as we announced last week, we'll rewrite the CSS, HTML and Javascript portions of the PR to use React (and Bootstrap), so expect to see major changes instead of small-scale bugfixes.

This is now superseded by #1289


Implement cohort name -> ID

cohort.name -> cohort.id for all workflows
For Fraser and Outrider, the argument cohort_name has also been updated to reflect the change

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 26.40%. Comparing base (dc97d22) to head (9f0e21e).

Additional details and impacted files
@@                              Coverage Diff                              @@
##           SET-210-Cohort-Object-to-include-name-and-ID     #967   +/-   ##
=============================================================================
  Coverage                                         26.40%   26.40%
=============================================================================
  Files                                                 9        9
  Lines                                              1689     1689
=============================================================================
  Hits                                                446      446
  Misses                                             1243     1243

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


⚠ Bofrost.at has degraded performance

In 7559f13, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2538 ms

Resolved: Bofrost.at performance has improved in cdc5ad2 after 8 minutes.


Feature Request : Add Options to archive tasks / todos

Introduce archive option for tasks and todos and keep a separate archived tab to view the archived tasks/todos. 📦
@karlhadwen

That will be a interesting feature, can I work on it??

Todoist integrated the archive option beautifully. 🚀

I can work on this.

Please assign this issue to me, I want to contribute to this project.


Recover from Redis disconnection

while working on a pipeline the Redis disconnected
the pipeline driver fail to report that the pipeline was completed and did not receive a new job

[ ] Validate job done (bull level)

Recovery scenarios
etcd

pipeline-driver send job done even if cannot write result to etcd
algorithm-queue fails to send job retry (worker stalled) if cannot write to etcd

redis

pipeline-driver: graceful exit when redis disconnects

testing:

stop etcd when worker is active
stop redis when worker is active
stop redis before sending pipeline

@tamir321 need to try and reproduce redis disconnect from network

More issues:

[ ] pipeline-driver error in logs setJobStatus failed with error: A conflict occurred executing the software transaction
[ ] pipeline-driver recovery:
the pd crashes for some reason (unknown at this point).
Another pd gets the job
starts recovery and starts working. Eventually (in this example it was after 70 minutes) crashes with error Unhandled rejection: unable to find task
[ ] pipeline-driver recovery: after pd is recovered 3 times, the bull job is not handled by the pdq and the jobs remains active


add my school

Added Spring Hill High School

@FeminineFemale Thank you for your patience while waiting for a review and processing your request. Pull request merged.


feat: Add hpa on compute node

add hpa on compute node
fix issue #72

LGTM, thanks for your contribution!

Tested on local env.

Besides, the repo requires all commits to be signed to merge the PR. Please follow the Learn more about signing commits and sign your commits. You may need to force update the PR after that. :)

@arkbriar Thanks for you advice. Could you please review again?

@arkbriar Thanks again and I have accepted all of them.  May be other suggestions?


Create a class to manage TritonIntelGPU -->LLVM conversion pipeline

Need to rebase once PR #933 lands.

I assume this pr will go first, and then #739 (make unit test run)?

@whitneywhtsang @Dewei-Wang-sh this is not ready for review.


Adding Security group

OSD-12357 - Creating a security group in order to not be dependant on the default SG of the account which may not be set to allow traffic. Also, this PR would help us create a security group if one isn’t specified with the --security-group-id flag
The security group will allow the ports 80, 443, and 9997, so no inbound rules needed + egress TCP rules to <IP_ADDRESS>/0 for those 3 ports is required and configured.
Also, as part of the PR, we have decided to deprecate the custom logic for WaitForEC2InstanceCompletion and describeEC2Instances by applying native aws-sdk-go-v2 way to use "wait" [NewInstanceRunningWaiter] (https://aws.github.io/aws-sdk-go-v2/docs/making-requests/#using-waiters)

@anispate Can you please add a description of what changed and why to the description?
As far as the changes, I think it would be cleaner to move the ec2 logic changes to a separate PR.

We need some parameter on the client to enable it :

when using the cli, it will be used only with Support role which doesn't have the 'create SG' priviledge (and we don't want to add to to support role). Especially, for debugging an existing cluster, it is not relevant to create a security group (we should be using existing ones, we have a parameter for this, and a card to automatically detect the worker SG to be implemented later)
the case to create the SG is basically only when triggered by OCM.

Probably there should be a 'create SG' parameter in the config which is set to true by default (to create a SG without changes on OCM side) but which is overridden to false by the cli by default (not to create any SG when triggered from the client).

/hold


Links malformed in JSON response

Hello, I have problems returning json payloads containing urls, the encoding/json Marshal will escape & to unicode format.
Is there a reason why lambda should escape the characters to unicode?
If not then its better to use json Encoder and turn on SetEscapeHTML(true) or at least make it accessible to configure.
Or am i missing the correct way to format my payload?
My use-case is returning a pre signed s3 url in a json response payload through the lambda but I cant find a way to do that today.

Thanks for submitting #178!
In the meantime, you could implement custom json encoding/decoding for your function by implementing lambda.Handler and passing to lambda.StartHandler, which allows receiving and returning raw bytes
type Handler struct {
  // ...
}
func (h *Handler) Invoke(ctx context.Context, request []byte) ([]byte, error) {
  // ...
}

func main() {
  lambda.StartHandler(Handler)
}

implemented an option for this in #444


Loki: Ingestion rate limit exceeded while attempting to ingest '1000' lines

Error from Loki:
16:26:31,836 |-ERROR in com.github.loki4j.logback.LokiApacheHttpAppender[LOKI] - Loki responded with non-success status 429 on Batch #d37eccc1d52af (1000 records). Error: Ingestion rate limit exceeded (limit: 4194304 bytes/sec) while attempting to ingest '1000' lines totaling '6494575' bytes, reduce log volume or contact your Loki administrator to see if the limit can be increased

This could not be fixed on client side.
Instead, Loki config should be edited, for example:
limits_config:
  ingestion_rate_mb: 8
  ingestion_burst_size_mb: 12


Remove unnecessary stack access from precond

Nice!
I believe this deserve an entry in the Changelog :smiley:


Some DC fixes

Fixes Energymanagement at 0W startup for DC
Do not reset SLAC twice on startup
Legacy wakeup only on AC

Also fixes DPM1000 DC power module driver wrong current reporting


Templates controller revisions

Addresses work in #1375

refactored controller methods to work with new Template model methods
Changed action for customize, transfer_customization, copy, publish and unpublish so that they are more RESTful
Updated functional tests for the templates_controller
Updated template_selection (mimics different create plan scenarios) integration tests
Stubbed in new setup for the template_versioning (ensures versioning is happening at appropriate times) integration tests so that they make use of the new test_helper methods

updated the controller based on your feedback and to pull in the new Versioanble concern. I hope to get rid of that template_filter.rb entirely if we have time in the next sprint for the UI work.

Update the template_filter query. We can add the AJAX success/failure handlers while working on the UI tickets.


Feature Request: More infos about an import on hover

From @aight8 on April 27, 2017 12:3

VSCode Version: all
OS Version: all

This issue is also typescript related.
If hovering a module it very nice if:

If found: Found also which path is used finally - can be very helpful since the node module resolving strategy is complicated and long
If not found: Show the paths in which it get searched for (a VERY big help!)

Copied from original issue: Microsoft/vscode#25540

Moving over to TypeScript repo to get feedback on these proposals

For a resolved module, there may be more than one file declaring it, but we could at least show one. Though you can already press F12 and just go there, which seems more useful anyway.
I can't imagine the tooltip on an unresolved module being short enough to be readable in a useful way.

Yes, given how verbose traceResolution can be, I'd say that surfacing the search paths would be overwhelming


Fix to Tickets #7975 and #8749

Quoting from the original bug report 8749:

I have traced the problem to the file boost/mpl/map/aux_/item.hpp in the class definition of m_item. m_item derives from Base (which is a map<...> type) but does not define a "typedef m_item type;" to act as a unary metafunction returning itself. The result is that Base::type is found instead which means that m_item acts as a unary metafunction returning a map with all the inserted elements removed. The class m_item_ at the bottom of the file properly defines a "typedef m_item_ type;" which strengthens my belief that it missing from m_item is a bug.

The very same bug also manifested for sets and a very similar bug also occurred in some scenarios where a key was removed from both maps and sets. Tests cases have been added for all observed issues.

I realized upon creating the pull request that I had branched off master instead of develop, so I had to merge in the develop branch before issuing the request, hence the long list of commits.
I hope that's not an issue for the review process.

Your own initial pull request should be off of the 'develop' branch and then you make your changes from your pull request. What you have done, which appears to be mixing in master changes into 'develop', is not acceptable AFAICS. Pull requests to Boost libraries should always be made off the latest 'develop' branch.

Yes I understand your point, I should have branched off develop from the beginning, I just realized I haven't once I had already pushed changes into github and I admit I was just too lazy to get it right. I just thought merging develop at the end would be equivalent to branching off develop from the beginning, but I guess it's not.
Thank you for your feedback, I'll just close this request and open a new one done the right way.


Select2 widget initialization in functional component

Hi there.
I found unexpected problems with widget initialization in functional components:
https://codesandbox.io/s/reverent-christian-13hzr?file=/src/SurveyComponent.jsx
How to init select2 widget properly with such approach? Looks like all scripts in place, because I can type:
$("#sq_100i").select2()
in a console and this would work as expected.
But select2 not applied automatically in Survey.Survey component.
What I'm doing wrong?
PS: I also facing with such error:

I found this part in file \node_modules\select2\dist\js\select2.js, but it shouldn't loads that way.
It should be like:
function (root, jQuery) {
      if (jQuery === undefined) {
        // require('jQuery') returns a factory that requires window to
        // build a jQuery instance, we normalize how we use modules
        // that require this pattern but the window provided is a noop
        // if it's defined (how jquery works)
        if (typeof window !== 'undefined') {
          jQuery = require('jquery');
        }
        else {
          jQuery = require('jquery')(root);
        }
      }
      factory(jQuery);
      return jQuery;
    };

Here is the fixed sample - https://codesandbox.io/s/lucid-wozniak-weem6

Here is the fixed sample - https://codesandbox.io/s/lucid-wozniak-weem6

Are you sure it works?

You probably changed something and press Ctrl+S. This results to updating 'select' properly. But refresh page in right tab again. This not working.

This results to updating 'select' properly.
Sorry, but I don't understand you.
Could you spoecify the exact steps to reproduce the issue, the expected and actual result?

Your screenshot looks ok for me.

Your screenshot looks ok for me.

Here is no active select2 dropdown as you can see.

One line wasn't saved - https://codesandbox.io/s/lucid-wozniak-weem6?file=/src/SurveyComponent.jsx

One line wasn't saved - https://codesandbox.io/s/lucid-wozniak-weem6?file=/src/SurveyComponent.jsx

Now it works... in sandbox. My project still return TypeError from "PS" part. But I guess it's another topic.
Thanks for helping out.


SQSListener scales even if i manually set sync working

Type: Bug
Component: SQS
Describe the Bug
Hello!
Please, help me understand what i do wrong.
I apologize i can't share with you stack trace because the code under nda. I will try describe the problem:
I use 'spring-cloud-aws-starter-sqs' dependency, version 3.0.1. My configuration is auto (i don't define any beans - only credentials and region in application.properties).
Next, i use SqsListener like:
@SqsListener(value = "${sqs.balance.calculator}", maxConcurrentMessages = "1", maxMessagesPerPoll = "1")
So my main goal is correct calculation. Optimization is not important in my case. So i would my listener works sync.
I must do that because inside the method i adjust the same entity, and if i do it async - i have a lot of optimistic blocking exception.
But, the main reason why i write this issue is: Sometimes i catch errors: [Row was updated or deleted by another transaction (or unsaved-value mapping was incorrect)]
And it mean that somewhere occurs autoscaling. But why, what i can do wrong?
Thanks!

Hi @VladislavKutsobin, sorry for the delay.
Are your instances autoscaling? If you have more than one server instance it will consume more than one message at a time.
Hard to say anything without more information. Perhaps message visibility is expiring?
It would be helpful if you could take a look at your logs. If there's a log in the end of message consumption, and one at the end, you should be able to see whether two messages are being consumed concurrently, or if there's anything else causing the issue.
Make sure to log some instance identifier and any other useful information.
Another option is - if you can create a minimal project that reproduces the issue I could take a look.
Thanks.

Closing this issue due to lack of feedback.


Question about the reward

The paper says: "use GPT-4 to rate 1-10 for each response", but I cannot find the 1-10 reward in the data file. Could you please provide that?

As shown in the paper, GPT-4 scores turned to be very centralized. For now we only release the rank. Stay tuned for the more fine-grained scores.