import/include another cue-file (using a relative path)

Is your feature request related to a problem? Please describe.
I want to be able to import/include other cue-files directly using a relative path. Example:
// schema.cue
a: number & >10
b: *10 | number

// first.cue
include "./schema.cue"
a: 12

// second.cue
include "./schema.cue"
a: 13
b: 11

Then I could run:
$ cue eval first.cue
a: 12
b: 10

$ cue eval second.cue
a: 13
b: 11

to produce two different outputs that share something in common.

In particular I want to use this pattern with Kubernetes configs to create something like:

staging.cue
production.cue
deployment.cue

Where staging.cue and production.cue both include deployment.cue.
I don't want production.cue and staging.cue to be loaded at the same time.
The include-statement could be implemented like "#include" in the C-preprocessor, simply inserting the contents of the included file directly into where the include-keyword was used.
I think one of the main issues with "#include" in the C-preprocessor was that it is not idempotent (by default anyways), and that order matters. It seems to me like neither of these things are issues in Cue, since definitions are idempotent and order-independent.

Ideally I'd want my folder structure to reflect what I'm trying to accomplish, rather than which tools I'm using.
What do you mean with which tools you're using?

It seems like cue modules force a very opinionated folder structure.

We are thinking about expanding the importing possibilities a bit. However, in order for CUE to remain meaningfully hermetic, we would still require a cue module. The main purpose of the module is to mark some root. There is not much more to it.
We are considering allowing relative paths for individual files (non-package CUE, JSON or YAML), but in this case it seems that the standard package mechanism would work. Also, keep in mind that for the relative imports, we would still need a CUE module to deal with versioning. Not just for CUE. YAML, for instance, has a history of introducing backwards-incompatible changes and even allows deviations within a single version. The module allows us to add any meta-interpretation needed to properly interpret YAML. Even JSON can have compatibilities issues.
We do intend to keep modules light-weight, though, so that this does not need to be burdensome.

The way it works is not really intuitive to me. I can't figure out how to import another cue file in the same folder - even after wrapping the two files in a module.
What I've tried:
cue mod init example.com
echo "b: 2" > cue.mod/usr/b.cue
echo 'import "example.com/usr/b"\na: 1' > cue.mod/usr/a.cue
cue eval cue.mod/usr/a.cue
# import failed: cannot find package "example.com/usr/b":
#     ./cue.mod/usr/a.cue:2:8

Trying to add .cue extension to the import statement to see if it makes a difference:
echo 'import "example.com/usr/b.cue"\na: 1' > cue.mod/usr/a.cue
cue eval cue.mod/usr/a.cue
# import failed: cannot determine package name for "example.com/usr/b.cue" (set explicitly with ':'):
#     ./cue.mod/usr/a.cue:2:8

Okay, what is this package-thing? and why do I need it?
I'll try to add "package root" to the top of all of the files, and ":root" to the import statement to see if it helps.
echo 'package root\nb: 2' > cue.mod/usr/b.cue
echo 'package root\nimport "example.com/usr/b.cue:root"\na: 1' > cue.mod/usr/a.cue
cue eval cue.mod/usr/a.cue
# import failed: cannot find package "example.com/usr/b.cue:root":
#     ./cue.mod/usr/a.cue:2:8

import formats I've tried:
import "example.com/usr/b" # import failed: cannot find package "example.com/usr/b"
import "example.com/usr/b:root" # import failed: cannot determine package name for "example.com/usr/b.cue" (set explicitly with ':')
import "example.com/usr/b.cue:root" # import failed: cannot find package "example.com/usr/b.cue:root"
import "example.com/usr/b:root" # import failed: cannot find package "example.com/usr/b:root"
import "example.com/b" # import failed: cannot find package "example.com/b"
import "example.com/b.cue" # import failed: cannot determine package name for "example.com/b.cue" (set explicitly with ':')
import "example.com/b.cue:root" # import failed: cannot find package "example.com/b.cue:root"
import "example.com/b:root" # import failed: cannot find package "example.com/b:root"

What am I doing wrong here?
Some other questions:

Does the folder that contains module.cue need to be named "cue.mod"?
Do I actually need to make up a valid hostname to make a simple config file importable?
What is pkg/, usr/, gen/? Why are these folders special?
Does the "package"-statement provide anything of value here?

I guess in large my difficulty getting this to work comes from me not being familiar with the module system in Golang, which it seems like Cue depends on for basic things.

@bergkvist have you see the introduction to packages and modules at https://cuelang.org/docs/concepts/packages/?

Okay - I managed to at least get something working! A major misconception from my side here:
I should not put my config files inside the cue.mod-folder, but rather next to it!
Some more questions in my head right now:

I don't seem to be able to import individual *.cue-files, only folders. Is this not supported?
Do I always need to put a package-statement in the top of each file? What does the "package"-statement really give me?

The most minimal setup I've been able to create is:
(click to expand)
my-project/cue.mod/module.cue
module: example.com

my-project/a.cue
package x
import b "example.com/b:y"
a: 1
b

my-project/b/b.cue
package y
b: 2

And output:
$ cue eval my-project/a.cue
a: 1
b: 2

Making some mutations to my-project/a.cue that I expected not to make a difference:
Note that the command run is always cue eval a.cue
// removed "package x"
import b "example.com/b:y"
a: 1
b

^ Seems to work the same way still, which is nice
package y  // changed from x to y
import b "example.com/b:y"
a: 1
b

^ Just hangs forever without doing anything
import b "example.com/b/b.cue:y"  // specified file instead of folder
a: 1
b

^ import failed: cannot find package "example.com/b/b.cue:y"
import "example.com/b:y"  // removing b-variable
a: 1

^ imported and not used: "example.com/b:y"
import b "example.com/b"  // removing package specification
a: 1
b

^ import failed: build constraints exclude all CUE files in example.com/b (ignored: b/b.cue, a.cue)

I should not put my config files inside the cue.mod-folder, but rather next to it!

Correct. The existence of a cue.mod directory marks the root of a module. i.e. the the directory that contains the cue.mod directory is the root of the module.

I don't seem to be able to import individual *.cue-files, only folders. Is this not supported?

CUE does not support importing of individual CUE files. It might support embedding of individual CUE files, but that's not currently supported and quite a different concept.
CUE heavily relies on its order independence for package organisation. Definitions and constraints can be split across files within a package, and even organised across directories. So in that sense a package abstracts away whether a definition/constraint exists in one file, or is split across multiple (in multiple directories). Reasons like this are why CUE has decided to follow the Go model of abstracting this to the concept of a package.

Do I always need to put a package-statement in the top of each file? What does the "package"-statement really give me?

To be able to import the CUE you are defining, yes. Where you have a CUE file(s) that is not imported elsewhere, you don't strictly need it, but generally it's good practice to think in terms of packages. Because that way the cue command can operate more seamlessly without you always needing to specify an explicit file list on the command line.
Adapting your minimal example slightly:
-- cue.mod/module.cue --
module: "example.com/a"
-- a.cue --
package blah

import "example.com/a/b"

x: 5
y: b.y
-- b/b.cue --
package b

y: 4

(note the format of expressing multiple files like this is txtar, used heavily in CUE, especially CUE's tests)
Within the root of the module you can simply run cue eval - that evaluates the package in the current directory, the package at the import path example.com/a. That package imports example.com/a/b as you can see. The package identified by the import path example.com/a/b is named b (see b/b.cue). Hence you don't need the explicit package name in the import path as you have in your example - where the import path and the package name agree that selector can be elided.
I'm going to migrate this issue to a discussion so that others can benefit from these great questions.


Add description about how to load the font-awesome css

Hi,
since I am a beginner with this package it took me a while to figure out that ng_bootstrap brings font_awesome with it. I think the installation should mention that fact.
E.g. add:
<link rel="stylesheet" href="packages/font_awesome/css/font-awesome.min.css">
to the installation instructions.

you don't need to add anymor font-awesome.min.css you should use ng_bootstrap/all.css

Hmm this is strange, I can see that the all.css on the ng_bootstrap website has the font-awesome css part concatenated at the end.
I have the following pubspec.yaml and run pub serve on my machine but don't get it appended.
name: frontend
description: Regatta frontend
version: 0.0.1
environment:
  sdk: '>=1.13.0 <2.0.0'
dependencies:
  angular2: 2.0.0-beta.20
  browser: ^0.10.0
  dart_to_js_script_rewriter: ^1.0.1
  http: ^0.11.0
  stream_transformers: ^0.3.0
  ng_bootstrap: any
  sass_transformer: any
  reflectable: any
transformers:
- angular2:
    platform_directives:
    - 'package:angular2/common.dart#COMMON_DIRECTIVES'
    platform_pipes:
    - 'package:angular2/common.dart#COMMON_PIPES'
    entry_points: web/main.dart
    resolved_identifiers:
      BrowserClient: 'package:http/browser_client.dart'
      Client: 'package:http/http.dart'
- reflectable:
    entry_points:
      - web/main.dart
    formatted: true
- dart_to_js_script_rewriter
- sass_transformer

most likely you are not using the latest version. please specify the latest and test again. Also use angular 2.0.0-beta.22

Ahh sorry my bad, I updated angular and reload the ng_bootstrap package and now the font is included in the css.


Jumpy Coin - MVP - 1

Link to the milestone and objectives table.
#361
Detailed log of all completed objectives including valid proof of work.
Download from Play Store:
https://play.google.com/store/apps/details?id=org.iamhaydara.jumpycoin
APK:
https://drive.google.com/file/d/1YWUVfjhA8FKfOPkgEa_aeLvEkpXJgnMg/view?usp=sharing

#
Objective
Status

1
Game design
Completed

2
UI/UX design
Completed

3
Build assets
Completed

4
Build a working prototype
Completed

5
Add payment with Keysign
Completed

6
Add audio assets
Completed

7
Test
Completed

8
Polish
Completed

9
Publish on Play Store
Completed

Project Wallet
7a42c9cfc4d0f0d2ba5fe126a712f5bbe8ce20d002d427b48f7490b074b9f361

Approved for 80k TNBC.


[Question] Error when clicking on a button in SignInCard rich card

Screenshot with error: https://screencast.com/t/L6olsgWv
Sample code:
...
dialog.matches(/.*Sign In/i, [
    function (session) {
        let card = new builder.SigninCard(session)
            .text('BotFramework Sign-in Card')
            .button('Sign-in', 'https://login.microsoftonline.com');
        let m = new builder.Message(session);
        m.addAttachment(card);
        session.send(m);
    }
]);
...

@psihonavt Are you still experiencing the issue after upgrading to<EMAIL_ADDRESS>If you still have questions, please open a new issue on BotBuilder repo here: https://github.com/Microsoft/BotBuilder


Texture Coordinate Representation

Properties seem to be either per-vertex, per-edge or per-face. This is not enough to represent everything in a mesh, especially per (vertex, face) pair, such as texture coordinates. In addition, for UV-mapping it is desirable to refer to the sub-topologies of the maps (which is a subset of the topology of the mesh itself). Imagine, for instance a cube where four of the faces have texture coordinates (0,0), (1,0), (1,1), (0, 1) in some permutation and two adjacent faces have texture coordinates (0, 0), (0, 0.5), (0, 1.0), (1, 1.0), (0.5, 1.0), (0, 1.0).

I think this property system is adequate to do what you're describing. You need to assign your texture coordinates to halfedges. Each halfedge uniquely belongs to a face, and points to a vertex that is also incident on said face. You can interpret the texture coordinate of a halfedge as belonging to the vertex at the head of the halfedge. So in theory, each vertex in a cube can have three different texture coordinates, stored as properties of the three incoming halfedges, associated with the three incident faces. A halfedge is an effective proxy for a face-vertex pair.
Depending on what is convenient you can also store the per-face texture coordinates of a vertex on outgoing halfedges.
Does that answer your question?

@engstad Closing this issue for now. Feel free to reopen it if you have any further concerns.

That does solve the problem of storing texture-coordinates somewhat, but it has some problems
   7----6          7--6
  /.   /|          |  |
 3----2 |          3--2
 | 4..|.5   --->   |  |
 |.   |/           0--1
 0----1

The UV-map above is mapped onto two of the cube faces. Assume I put (map_id, u, v) on each edge that points towards vertex v.
First problem is that I want to share the UV-coordinate of edge 1->2 (vertex 2) with 3->2. If I modify one of them, I have to make sure to modify the other. That could be quite messy.
Second problem is how can I investigate the UV topology? It is easy to traverse the mesh-topology, but it would be much harder to traverse the UV-map.
As you can see above, the UV-maps are really a sub-topology of the original mesh. It would be nice if the UV-map itself could be described as a half-edge structure that can be traversed naturally.

Sounds like the topology of your textures does not match the topology of your geometry. This mismatch is the cause of difficulty. I don't see how this problem relates to halfedge mesh datastructures / property systems.
Can you explain to me how you would represent uv coordinates like this in other mesh datastructures (not halfedge based)? Because it looks like you're choosing to ignore the 3-2 edge, but not the 1-2 edge. This is arbitrary, and creates arbitrary combinations of vertices and faces for which you'd have to store the uv coordinates.
I think something like this has to be solved by matching the topology of  textures and topology of geometry.

This is always tricky and depends on the data-structure used. Very often this capability is ignored and people put hacks on top of the underlying data structure, making it slow and/or hard to use. In fact, you will not find much support for this in academic papers even though it is a tricky problem in practice.
I am not sure what you mean by "ignoring the 3-2 edge". I am not. The difference between the 3-2 edge and the 1-2 edge is that the 3-2 edge is an internal (and continuous) edge in the UV-topology, whereas the 1-2 edge is an external edge in the UV-topology. Look at this to see how the wrapping works:

I have seen the following ways to deal with it:

Split up the mesh into multiple meshes even before using the data-structure. This way you are sure there is a 1-to-1 correspondence between the UV-topology and the original topology. Downsides: You duplicate shared edges and you have to be careful about downstream transformations. For instance, if you do mesh decimation then you can introduce holes between the meshes.
Append a list (or a map) of UV information per face, vertex or edge. Downsides: All mesh transformations has to be "UV-information" aware. In mesh deformation, you must make sure to not do that if you go outside the UV-topology.

I hope you understand the problem now!

yes I understand the problem.
How about storing the UV coordinates in a separate list and storing an index into that list as a halfedge property as per the original idea?
I your original cube example the halfedges 3-2 and 1-2 would have the same index. Where as the halfedge 6-2 would have a different index. When you update uv coordinates, you just update them in your list, and automatically the halfedges 3-2 and 1-2 point to the same index, and same uv coordinates.
Does that work?
In any case, I don't see any way of doing this other than having some other datastructure that captures the intent of how you want to split the mesh for unwrapping, which edges are internal vs external etc. This intent has to be captured one way or another. Either by splitting the mesh, or by tracking indices into another list of coordinates. I don't see a more elegant way of doing this.

Maybe you can use the properties to keep track of whether the edges / vertices are internal or external in your unwrapped topology. That way, you should be able to traverse the topology better.

Here's a more detailed explanation of my earlier idea. I will use the simplest example possible. Say you have a mesh with two triangles, and the two triangle are split up in the UV unwrapping of the mesh, so the vertices along the diagonal have different uv coordinates depending on which triangle they belong to.
                                     (a, b)   (g, h)   (i, j)
0------1                               0         0------1
|\     |                               |\         \     |
| \    |                               | \         \    |
|  \   |   ==== UV unwrapping ====>    |  \         \   |
|   \  |                               |   \         \  |
|    \ |                               |    \         \ |
|     \|                               |     \         \|
3------2                               3------2         2
                                   (c, d)    (e, f)    (k, l)

The second picture shows the uv coordinates. Vertices 0 and 2 have two sets of uv coordinates. You can have a list of all texture coordinates that looks like:
0: (a, b)
1: (c, d)
2: (e, f)
3: (g, h)
4: (i, j)
5: (k. l)

And you'd have halfedge properties that look like:
2->0: 0
0->3: 1
3->2: 2
1->0: 3
2->1: 4
0->2: 5

This is the cleanest solution I can think of. Makes full use of the property system, no duplication of data anywhere, and lets you traverse the topology with full freedon. You can also identify which edges are internal / border in your uv unwrapping by examining the texture coordinate indices stored in halfedge properties.


Readme and wiki do not mention how to invoke the plugin

Maybe I missed it, but I don't see where in the readme or the wiki it says how to actually  use the plugin. Had to go to a linked article that mentioned using the buildHealth task.

I discuss that in the wiki here, but you are correct that it could be more discoverable. In fact, I should at least include buildHealth in the readme :sweat_smile:

I've updated the README with quick-start information and additional pointers to the wiki.


cannot open document after reinstalling onlyoffice db

Hello,
Nextcloud 13.0.1,
OnlyOffice 5.0.7 CE
This is running in Docker CE, behind a reverse proxy using the recommended configuration for ssl termination.
https://github.com/ONLYOFFICE/document-server-proxy/blob/master/nginx/proxy-https-to-http.conf
I cannot access one old document. A docx file. But any new document I create can be accessed just fine. I just deleted the only office db volume (/var/lib/postgresql) and made a fresh install of only office via docker.  I get the following log in documentserver/nginx.error.log:

2018/03/24 14:47:35 [crit] 522#0: *296 connect() to [::1]:8000 failed (99: Cannot assign requested address) while connecting to upstream, client: <IP_ADDRESS>, server: , request: "GET /2018-01-11-13-33/doc/15138_1521767737/c/324/trl2ega0/websocket HTTP/1.1", upstream: "http://[::1]:8000/doc/15138_1521767737/c/324/trl2ega0/websocket", host: "onlyofficeserver"

I can create edit and save new documents, or a copy of the old one. I can access the welcome page fine, even though I get a similar error

2018/03/24 14:45:07 [crit] 522#0: *285 connect() to [::1]:8000 failed (99: Cannot assign requested address) while connecting to upstream, client: <IP_ADDRESS>, server: , request: "GET /welcome/img/icon-done.png HTTP/1.1", upstream: "http://[::1]:8000/welcome/img/icon-done.png", host: "onlyofficeserver", referrer: "https://host.some.ca/welcome/"

I didn't see errors in other logs, but maybe I'm not looking in the right place. Could there be something in cache in the onlyoffice owncloud app that still references an id in the deleted db?
Is there an issue with reseting the DB?

I tried removing the app (disable followed by remove) and then reinstalling. I still can't open the file. I also had a look inside the nextcloud db. there is no much, just the settings for only office. So no clues yet


⚠ Bofrost.be has degraded performance

In 263661e, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 805 ms

Resolved: Bofrost.be performance has improved in 29357b4.


Update non-responsive header css to include new mega menu styles

Adds new mega menu header/footer styles to nonresponsive header css
Additions

Non-responsive css updates

Checklist

[ ] PR has an informative and human-readable title
[ ] Changes are limited to a single goal (no scope creep)
[ ] Code can be automatically merged (no conflicts)
[ ] Code follows the standards laid out in the development playbook
[ ] Passes all existing automated tests
[ ] New functions include new tests
[ ] New functions are documented (with a description, list of inputs, and expected output)
[ ] Placeholder code is flagged
[ ] Visually tested in supported browsers and devices
[ ] Project documentation has been updated
[ ] Reviewers requested with the Assignee tool :arrow_right:

@anselmbradford All the layout issues should be fixed -- thanks for catching them!


Enable to use SVGo in browser

Hi I have spent quite nice week with SVGO and minifying SVGs.
Firstly I have created command line tool (no problem at all)
Then I wanted to create webpage with this functionality and I have succeeded but I needed to rewrite some parts of SVGo. There was only one issue with default configuration .svgo.yml which is loaded by fs which is not in browser.
I am asking you if you will be interested to get PR which enables SVGo to be runned in browser without issues?

I'm totally ok as long as it doesn't break something.

it depends on how you will implement this.

+1, I still think this is a valid feature request. I've been having trouble with this myself.

I would like to have a bundled version of SVGO that is a single JS file that works in the browser and can be included in a page using a standard

Check this https://github.com/svg/svgo/issues/1050


Automated cherry pick of #643: Return err in Allocate if any error occurs #642: Add event when task is scheduled #638: Take init containers into account when getting pod resource #645: Order task by CreationTimestamp first, then by UID #647: In allocate, skip adding Job if its queue is not found #651: Return err in functions of session.go if any error occurs #652: Change run option SchedulePeriod's type to make it clear #655: Do graceful eviction using default policy #658: Address helm install error in tutorial.md #649: Preempt lowest priority task first #660: Fix sub exception in reclaim and preempt #666: Fix wrong caculation for deserved in proportion plugin #671: Change base image to alphine to reduce image size #673: Do not create PodGroup and Job for task whose scheduler is

Cherry pick of #643 #642 #638 #645 #647 #651 #652 #655 #658 #649 #660 #666 #671 #673 on release-0.4.
#643: Return err in Allocate if any error occurs
#642: Add event when task is scheduled
#638: Take init containers into account when getting pod resource
#645: Order task by CreationTimestamp first, then by UID
#647: In allocate, skip adding Job if its queue is not found
#651: Return err in functions of session.go if any error occurs
#652: Change run option SchedulePeriod's type to make it clear
#655: Do graceful eviction using default policy
#658: Address helm install error in tutorial.md
#649: Preempt lowest priority task first
#660: Fix sub exception in reclaim and preempt
#666: Fix wrong caculation for deserved in proportion plugin
#671: Change base image to alphine to reduce image size
#673: Do not create PodGroup and Job for task whose scheduler is

/assign k82cn

/lgtm
/approve


ClusterOutput affinity to a certain fluentd?

Is your feature request related to a problem? Please describe.
Ideally, I want to describe all the logging config in one default namespace with only ClusterFlow and ClusterOutput resources. I need to send logs to both AWS Opensearch and S3, where S3 should get the full copy of all logs from all namespaces (archive) and AWS Opensearch should have only a selected portion from several namespaces (real time prioritized stuff).
By default, when I create two ClusterOutput resources with these two destinations, I see them added into one fluentd config.
So both log streams are processed through the same fluentd instance (or cluster). But this is what concerns me, I believe I have two entirely different use-cases there (real-time and archive), and I would want them to be processed by two distinct fluend instances to avoid sharing same resources and be able to properly monitor/size each of them.
One extra thing I've noticed is that for example, if OS is down, no logs are sent in S3. Not sure what is causing this.
Describe the solution you'd like
Something like ClusterOutput affinity to a certain Logging cluster would make it work. BTW When one deploys Logging can it come with fluentd only?
Or maybe there is some existing way of doing that somehow.
Describe alternatives you've considered

Probably it is possible to achive if deploy Logging in two different dedicated special namespaces and use Flow and Output correspondingly? Less preferable to have some special namespaces just for that.
Use AWS Firehose as a single point of destination and route S3/OS from there - extra component, more costs.

Additional context
Current config
apiVersion: logging.banzaicloud.io/v1beta1
kind: Logging
metadata:
  name: default
  namespace: logging
spec:
  fluentd:
    image:
      repository: banzaicloud/fluentd
      tag: v1.11.5-alpine-24
    serviceAccount:
      metadata:
        annotations:
          eks.amazonaws.com/role-arn: REDACTED-role
  fluentbit: {}
---
apiVersion: logging.banzaicloud.io/v1beta1
kind: ClusterFlow
metadata:
  name: selected-logs-to-aws-es
  namespace: logging
spec:
  match:
  - select:
      namespaces:
        - ns-1
        - ns-2
        - etc
  globalOutputRefs:
    - aws-es
---
apiVersion: logging.banzaicloud.io/v1beta1
kind: ClusterFlow
metadata:
  name: all-logs-to-aws-s3
  namespace: logging
spec:
  globalOutputRefs:
    - aws-s3
---
apiVersion: logging.banzaicloud.io/v1beta1
kind: ClusterOutput
metadata:
  name: aws-es
  namespace: logging
spec:
  awsElasticsearch:
    endpoint:
      url: REDACTED-url
      region: us-east-1
      assume_role_arn:
        value: REDACTED-role
      assume_role_web_identity_token_file:
        value: /var/run/secrets/eks.amazonaws.com/serviceaccount/token
    index_name: logs-${$.kubernetes.namespace_name}-%Y.%m.%d
    log_es_400_reason: true
    buffer:
      tags: tag,time,$.kubernetes.namespace_name
      timekey: 1m
      timekey_wait: 30s
      timekey_use_utc: true
---
apiVersion: logging.banzaicloud.io/v1beta1
kind: ClusterOutput
metadata:
  name: aws-s3
  namespace: logging
spec:
  s3:
    assume_role_credentials:
      role_arn: REDACTED-role
      role_session_name: fluentd
    s3_bucket: REDACTED-bucket
    s3_region: us-east-1
    path: ${$.kubernetes.namespace_name}/%Y/%m/%d/%H/%M
    s3_object_key_format: "%{path}/%{time_slice}_%{uuid_flush}_%{index}.%{file_extension}"
    buffer:
      tags: tag,time,$.kubernetes.namespace_name
      timekey: 10m
      timekey_wait: 30s
      timekey_use_utc: true

This is a digramm of what I want to achive basically:

This is a common issue we are going to address in the next major version of the operator. Until then you have the option to use two separate Logging resources and add loggingRef to your ClusterFlow and ClusterOutput resources accordingly. The only issue with this is that there will be two separate fluent-bit daemonSets running on all nodes both tailing all the logs.

Implemented in https://github.com/kube-logging/logging-operator/pull/1476


Flusstools fails to install on Ubuntu 18.04.6 LTS

I followed the instructions in your site https://hydro-informatics.com/python-basics/pyinstall.html#install-modules-and-packages
tried to install flusstools on a ubuntu machine and got the following error:
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-y_2ajvfy/pyproj/
(vflussenv) tlo@tlo-Oryx-Pro:~/Desktop$ pip install pyproj --no-binary pyproj
Collecting pyproj
Using cached https://files.pythonhosted.org/packages/2c/12/7a8cca32506747c05ffd5c6ba556cf8435754af0939906cbcc7fa5802ea3/pyproj-3.0.1.tar.gz
Complete output from command python setup.py egg_info:
ERROR: Minimum supported PROJ version is 7.2.0, installed version is 7.0.0. For more information see: https://pyproj4.github.io/pyproj/stable/installation.html

Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-5esdg1ow/pyproj/
(vflussenv) tlo@tlo-Oryx-Pro:~/Desktop$
Will be happy for a hint to solve this issue if you have come across. I am running Ubuntu 18.04.6 LTS if it helps.
best regards

Found the solution: For  those  trying to  install  flusstools. It is important to use  python -m pip install --upgrade pip  to upgrade pip package and not python3. This is specific for  Ubuntu 18.04.6 LTS.


Unify & simplify linker scripts

Many parts of the linker scripts can be shared between multiple chips.

Closed via #443


[FLINK-20321][formats] Fix NPE when using AvroDeserializationSchema to deserialize null input  in  1.12 version

What is the purpose of the change
This pull request aims to fix JIRA issue FLINK-20321.
Brief change log
Make deserialize(byte[]) method of following classes return null when argument is null, instead of throwing NPE. Test cases added.

AvroDeserializationSchema
AvroRowDataDeserializationSchema
RegistryAvroDeserializationSchema
CsvRowDataDeserializationSchema
JsonRowDataDeserializationSchema

Verifying this change
This change added tests and can be verified via test cases.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: no
The S3 file system connector: don't know

Documentation

Does this pull request introduce a new feature? no
If yes, how is the feature documented? not applicable

@wuchong


AWS Release v16.5.2

ℹ Team Phoenix is drafting AWS v16.5.2 with latest Kubernetes v1.21 support.
Target release date: 2022-11-30.
Release PR: ...
Scope

[ ] EFS - https://github.com/orgs/giantswarm/projects/344
[ ] latest kiam

Pre-Release

[ ] Create release ticket on Releases board
[ ] Make an announcement on #sig-product that team is doing a release. Include a link to the ticket from the release board.
[ ] Make sure release was tested by creating new cluster, upgrading from older version and with HelloWorld app.
[ ] Aggregate release notes from all changed components and add to README.md in the release directory.
[ ] Send draft release announcement to #sig-product for review ASAP.
[ ] Verify documentation is up to date.

Releasing

[ ] Create release PR
Instructions

[ ] Define new release in release.yaml file.
[ ] Activate new release by setting state to active.
[ ] Deactivate old release if it's within same major version (state: deprecated). Verify with PO if you have doubts.
[ ] Check versions of all components included. They shouldn't be lower than those in the previous release unless there was a rollback.

Example PR

[ ] Release relevant operators.

[ ] Tag release branch.
[ ] Bump operator version in draft release.

[ ] Make sure that WIP releases in releases repo branch are removed and not merged to master since the master branch is deployed automatically after merging PR and that would make WIP releases visible in customers’ installations which should generally not happen.

Post-Release

[ ] Update front-end cluster with the new release.
[ ] Verify release is available on all installations. You can use this script.
[ ] Send out release announcement to all customers according to these instructions.
[ ] PO subscribes to release posts on Slack to get notifications if there are follow-up messages.
[ ] Close release task on Releases board.

Release v16.5.2 is ready to merge. PTAL if the announcement and README is fine.


update aiohttp version

bump aiohttp to 2.0.7 & yarl to 0.10 in requirements file

Codecov Report

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

@@            Coverage Diff             @@
##           master     #139      +/-   ##
==========================================
- Coverage   81.15%   81.12%   -0.03%
==========================================
  Files          23       23
  Lines        3545     3545
  Branches      727      727
==========================================
- Hits         2877     2876       -1
- Misses        389      390       +1
  Partials      279      279

Impacted Files
Coverage Δ

tests/conftest.py
85.71% <0%> (-1.1%)
: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 97dc4c9...4e92b92. Read the comment docs.


Add pod update checking to WaitForControlledPodsRunning

This implements an experimental support for waiting for pod updates in WaitForControlledPodsRunning.
- name: Starting measurement for waiting for pods
  measurements:
  - Identifier: WaitForRunningPods
    Method: WaitForControlledPodsRunning
    Params:
      action: start
      apiVersion: apps/v1
      kind: Deployment
      labelSelector: l1 = v1
      checkIfPodsAreUpdated: true
      operationTimeout: 1h
- name: Create deployments with envVar set to old
  phases:
  - namespaceRange:
      min: 1
      max: 1
    replicasPerNamespace: 1
    tuningSet: 100qps
    objectBundle:
    - basename: foo
      objectTemplatePath: deployment.yaml
      templateFillMap:
         envToSet: old
- name: Waiting for objects become created
  measurements:
  - Identifier: WaitForRunningPods
    Method: WaitForControlledPodsRunning
    Params:
      action: gather

The new logic is enabled by setting checkIfPodsAreUpdated: true flag (name TBD).
At this point, nothing special happens.
Let's trigger some update:
- name: Update Foos
  phases:
  - namespaceRange:
      min: 1
      max: 1
    replicasPerNamespace: 1
    tuningSet: 100qps
    objectBundle:
    - basename: foo
      objectTemplatePath: deployment.yaml
      templateFillMap:
         envToSet: new
- name: Waiting for objects become updated
  measurements:
  - Identifier: WaitForRunningPods
    Method: WaitForControlledPodsRunning
    Params:
      action: gather

The gather call will block here until replicas pods exist in given deployment that match deployment's spec.template.spec.
Without this change, we would wait only for any replicas pod exist in given deployment (regardless if they are updated or not) which is not correct.
/assign @wojtekt-t
/assign @mm4tt

/hold
I still need to test this on some real clusterloader config.

/assign  @wojtek-t

I finished manual tests of this. It seems to work.
FTR yamls I used to test this:
# config.yaml
name test:
automanagedNamespaces: 1
tuningSets:
- name: 100qps
  GlobalQPSLoad:
    qps: 100
    burst: 10
- name: RandomizedUpdateTimeLimited
  RandomizedTimeLimitedLoad:
    timeLimit: 2h
steps:
- name: Starting measurement for waiting for pods
  measurements:
  - Identifier: WaitForRunningMicroservices
    Method: WaitForControlledPodsRunning
    Params:
      action: start
      apiVersion: apps/v1
      kind: Deployment
      labelSelector: l1 = v1
      operationTimeout: 1h
- name: Create Foos
  phases:
  - namespaceRange:
      min: 1
      max: 1
    replicasPerNamespace: 1
    tuningSet: 100qps
    objectBundle:
    - basename: foo
      objectTemplatePath: foo.yaml
      templateFillMap:
        env: old
- name: Waiting for objects become updated
  measurements:
  - Identifier: WaitForRunningMicroservices
    Method: WaitForControlledPodsRunning
    Params:
      action: gather
- name: Update Foos
  phases:
  - namespaceRange:
      min: 1
      max: 1
    replicasPerNamespace: 1
    tuningSet: 100qps
    objectBundle:
    - basename: foo
      objectTemplatePath: foo.yaml
      templateFillMap:
        env: new
- name: Waiting for objects become updated
  measurements:
  - Identifier: WaitForRunningMicroservices
    Method: WaitForControlledPodsRunning
    Params:
      action: gather

# foo.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: example-foo
  labels:
    l1: v1
spec:
  selector:
    matchLabels:
      l1: v1
  replicas: 3
  template:
      metadata:
          labels:
              l1: v1
      spec:
          containers:
          - image: k8s.gcr.io/pause:3.1
            name: test
            env:
            - name: XX
              value: {{.env}}
            resources:
                limits:
                    cpu: 10m

The most interesting log entries:
I0207 14:24:00.529875   33550 wait_for_controlled_pods.go:179] WaitForControlledPodsRunning: waiting for controlled pods measurement...
I0207 14:24:05.679880   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 4 out of 3 created, 3 running (0 updated), 1 pending scheduled, 0 not scheduled, 0 inactive, 0 terminating, 0 unknown, 0 runningButNotReady
I0207 14:24:10.680236   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 4 out of 3 created, 3 running (0 updated), 1 pending scheduled, 0 not scheduled, 0 inactive, 0 terminating, 0 unknown, 0 runningButNotReady
I0207 14:24:15.680592   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 4 out of 3 created, 3 running (0 updated), 1 pending scheduled, 0 not scheduled, 0 inactive, 0 terminating, 0 unknown, 0 runningButNotReady
I0207 14:24:20.680859   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 4 out of 3 created, 3 running (0 updated), 1 pending scheduled, 0 not scheduled, 0 inactive, 0 terminating, 0 unknown, 0 runningButNotReady
E0207 14:24:25.681181   33550 wait_for_pods.go:89] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): 0 pods appeared:
I0207 14:24:25.681238   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 4 out of 3 created, 3 running (1 updated), 1 pending scheduled, 0 not scheduled, 0 inactive, 1 terminating, 0 unknown, 0 runningButNotReady
I0207 14:24:30.682538   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 4 out of 3 created, 3 running (1 updated), 1 pending scheduled, 0 not scheduled, 0 inactive, 0 terminating, 0 unknown, 0 runningButNotReady
I0207 14:24:35.682899   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 4 out of 3 created, 3 running (1 updated), 1 pending scheduled, 0 not scheduled, 0 inactive, 0 terminating, 0 unknown, 0 runningButNotReady
I0207 14:24:40.683325   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 4 out of 3 created, 3 running (1 updated), 1 pending scheduled, 0 not scheduled, 0 inactive, 0 terminating, 0 unknown, 0 runningButNotReady
E0207 14:24:45.683725   33550 wait_for_pods.go:89] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): 1 pods appeared: foo-0-69ccd484bc-cshzb
I0207 14:24:45.683782   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 4 out of 3 created, 3 running (2 updated), 1 pending scheduled, 0 not scheduled, 0 inactive, 0 terminating, 0 unknown, 0 runningButNotReady
I0207 14:24:50.684177   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 4 out of 3 created, 3 running (2 updated), 1 pending scheduled, 0 not scheduled, 0 inactive, 0 terminating, 0 unknown, 0 runningButNotReady
I0207 14:24:55.684578   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 3 out of 3 created, 3 running (3 updated), 0 pending scheduled, 0 not scheduled, 0 inactive, 1 terminating, 0 unknown, 0 runningButNotReady
I0207 14:25:00.684972   33550 wait_for_pods.go:92] WaitForControlledPodsRunning: namespace(test-94gxoi-1), labelSelector(l1=v1): Pods: 3 out of 3 created, 3 running (3 updated), 0 pending scheduled, 0 not scheduled, 0 inactive, 0 terminating, 0 unknown, 0 runningButNotReady

/hold cancel
I tested this, changed default back to false.

/lgtm

/hold

/hold cancel

/retest


Spot oa geoloc update

Removed additional columns described in flow_conf.json file, those columns were optional and there's no use in having them fixed in the schema
At the Threat Investigation Notebook, the -r option in the impala queries was adding 2 extra rows at the begginging of the output files. I just removed the option and added an extra query to execute the Invalidate metadata command.

Adding more related commits


Regex change in tileset naming

Added the functionality to have tileset with A-Z characters.
Refrence -> https://www.mapbox.com/api-documentation/#create-an-upload

👍 once you have resolved the conflicts then this ok to merge.


[minor] Set header

Description
I used this as a reference.
https://github.com/golang/oauth2/blob/master/transport.go
Type of change

[ ] Bug fix
[x] New feature
[ ] Refactoring (no functional changes, no api changes)
[ ] Non-code changes (update documentation, pipeline, etc.)

Flags

[ ] breaks backward compatibility
[ ] requires a documentation update
[ ] has untestable code

Related issue/PR
Delete if not applicable

Fixes #issue
Closes #PR

Checklist

[ ] Followed the guidelines in the CONTRIBUTING document
[ ] Added prefix [major]/[minor]/[patch]/[skip] in the PR title
[ ] Tested and linted the code
[ ] Commented the code
[ ] Made corresponding changes to the documentation
[ ] Confirmed no dropping in test coverage (by Codecov)
[ ] Passed all pipeline checking
[ ] Approved by >1 reviewer

Checklist for maintainer

[ ] Use Squash and merge
[ ] Double-confirm the merge message has prefix [major]/[minor]/[patch]/[skip]
[ ] Delete the branch after merge

Codecov Report

Merging #66 into master will decrease coverage by 1.40%.
The diff coverage is 67.34%.

@@            Coverage Diff             @@
##           master      #66      +/-   ##
==========================================
- Coverage   87.66%   86.25%   -1.41%
==========================================
  Files          14       15       +1
  Lines         689      735      +46
==========================================
+ Hits          604      634      +30
- Misses         75       90      +15
- Partials       10       11       +1

Impacted Files
Coverage Δ

service/authorizerd_mock.go
0.00% <0.00%> (ø)

handler/transport.go
87.50% <84.00%> (-12.50%)
:arrow_down:

handler/principal_mock.go
100.00% <100.00%> (ø)

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 a6694f7...e253704. Read the comment docs.


Short solution needed: "Convert hex to int" (clickhouse)

Please help us write most modern and shortest code solution for this issue:
Convert hex to int (technology: clickhouse)
Fast way
Just write the code solution in the comments.
Prefered way

Create pull request with a new code file inside inbox folder.
Don't forget to use comments to make solution explained.
Link to this issue in comments of pull request.

Convert text to hex


Bug with Static Tree Index Initialization

Hi, need some help this this issue. I have something like this:
 kjtreeInstance = KJTree(indices:             ["1.1",              "1.2.1",              "1.2.2",              "1.2.3",              "1.3.1",              "1.3.2",              "1.3.3"]         )
but the result is similar to:

Found the bug! There is a bug when init(indices: [String])
...
else{
// create new child
var child = Child()
child.givenIndex = internalIndex
parent.arrayChilds.append(child)
components.removeFirst()
self.justAddChildsIn(inChild: &child, components: &components)
}
...


SSASideMenu Library Implementation Problem

I'm using this library
https://github.com/SSA111/SSASideMenu
When it is used as it is, it works.
However, I'm implementing this for my overall app, I mean in every ViewController, I want to use the same side bar menu, that must appear on the click of Menu bar button item. Due to spare navigation problems I guess, is not working on navigation from one control to other.

@iamasimkhan I'm not sure why you're posting an issue here about some other library. I am only supporting my library, please open an issue with the other author.

Great ....
Ok if I use your's library, then is there a way for 'Parallax effect' for side menu.

Read the README and decide for yourself. I wrote it so I wouldn't have to respond to everyone individually.


Error after run  ./gradlew bootRun - Caused by: java.io.IOException: Cannot run program "yarn" (in directory "frontend")

I'm trying to run the project on OSX Sierra 10.12.6
Installed jdk8, maven, gradle and yarn with homebrew
Yarn command is available to be used on my terminal but it is throwing the following exception
Caused by: java.io.IOException: Cannot run program "yarn" (in directory "frontend"): error=2, No such file or directory
	at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048) ~[na:1.8.0_144]

attached log after execute ./gradlew bootRun
bootRun.log.txt
Maybe I missed some step before. Please help.

same errors.
in my case not a "yarn"  that is "cmd"
aused by: java.io.IOException: Cannot run program "cmd" (in directory "frontend"): error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048) ~[na:1.8.0_144]

the reason is
Fix frontend relative path to run Yarn #36

boot-react/backend/src/main/java/react/dev/YarnRunner.java
in the YarnRunner.java
private void yarnStart() throws IOException {
ProcessExecutor process = new ProcessExecutor()
.directory(new File("frontend"))
.command("yarn", "start")
.redirectOutput(Slf4jStream.of(LoggerFactory.getLogger("yarn")).asInfo())
.redirectError(Slf4jStream.of(LoggerFactory.getLogger("yarn")).asError());
if (isWindows()) {
  process = process.command("cmd", "/c", "yarn", "start");
}

process.start();

}
i changed like this
.directory(new File("frontend"))    =>    .directory(new File("../frontend"))
and then, IOException is solved


Question: size of layout: iframe

Hi,
I am not sure if GitHub issues is the right place to ask questions...
I am using
layout: iframe-right
url: myurl

It works great, but in my case, the url appear really big (big font, etc). I tried zooming out with ctrl - , but it doesn't help.
Is there a way to style / resize the url content to make it smaller?
My presentation is available on GitHub here, and the problem is in slide 6

We could do https://github.com/slidevjs/slidev/commit/fcdd4da5b51bcde9969d63d51009577ff2e73937 for iframe-right.vue and iframe-left.vue. PR welcome :)

Hi @antfu, I fixed the issue in PR #783. Let me know if it looks good to be merged! Then issue can be closed.

#783


embedding xlink:href="file:///C:/Pic.png" does not work

I created a svg using inkscape which has  xlink:href="file:///C:/Users/jkalliau/Desktop/Pic.png", but I get the error message WARNING: Could not open file 'file:/C:/Users/jkalliau/Desktop/Pic.png' for embedding. The raster image will be kept as a reference but might be invalid. (Exception details: <urlopen error [Errno 2] No such file or directory: '/C:/Users/jkalliau/Desktop/Pic.png'>)  , there is a workaround if I change it to  xlink:href="file:C:/Users/jkalliau/Desktop/Pic.png"
I assume scour does not understand file:///
EmbedingBug
Bug.svg.txt
<?xml version="1.0" encoding="UTF-8"?>
<svg width="395.42pt" height="466.22pt" viewBox="0 0 395.42 466.22" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
 <image id="image2937" x="2.98" y="5.14" width="389.71" height="454.98" image-rendering="optimizeSpeed" xlink:href="file:///C:/Users/jkalliau/Desktop/Pic.png" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:xlink="http://www.w3.org/1999/xlink" sodipodi:absref="C:\Users\jkalliau\Desktop\Pic.png"/>
</svg>

Workaround
Workaround.svg.txt
<?xml version="1.0" encoding="UTF-8"?>
<svg width="395.42pt" height="466.22pt" viewBox="0 0 395.42 466.22" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
 <image id="image2937" x="2.98" y="5.14" width="389.71" height="454.98" image-rendering="optimizeSpeed" xlink:href="file:C:/Users/jkalliau/Desktop/Pic.png" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:xlink="http://www.w3.org/1999/xlink" sodipodi:absref="C:\Users\jkalliau\Desktop\Pic.png"/>
</svg>

Yeah, cross platform path handling is a mess - what is worse is that it's even harder to test.
As a matter of fact it works perfectly fine for me with Python 3.8.3 as provided by the MSYS2 project (mingw-w64 variant), both from cmd.exe as well as MinTTY/bash.
Can you confirm this is still an issue and clarify the python version(s) used?

It works in MingW64 (but not in Cygwin), therefore imho not a scour-problem.
How chan I check which Python Scour is using? (I assume 3.6.9)

Sorry for the delay. I activated my spamfilter 10days ago at the mail-provider and it moved all github/inkscape reports to junk. :-(


Rebase-strategy not limited to conflicts

Package ecosystem
likely all, but seen with docker and gomod
dependabot.yml content
version: 2
registries:
  my-registry:
    type: docker-registry
    url: <private-registry>
    username: <secret>
    password: <secret>
updates:
  - package-ecosystem: "docker"
    directory: "/"
    registries:
    - my-registry
    schedule:
      interval: "daily"

What you expected to see, versus what you actually saw
Expect that after approval of a multiple dependabot PRs, coupled with a custom workflow to automatically merge the target branch into the each PR targetting the same branch on each update to the target branch, that the dependabot PRs will be automatically updated and provided it passes CI will be merged. This should trigger a merge into any remaining dependabot PRs targeting the same branch, until such time that all approved dependabot PRs merge without requiring further intervention unless there is a conflict created.
What we see is dependabot always rebases all proposed PRs when anything is merged thus removing approvals due to the force push. Potentially this may be caused by enabling requiring branches be up to date with the target branch will also trigger this behaviour. As we have enabled the setting as described by https://docs.github.com/en/github/administering-a-repository/managing-a-branch-protection-rule

According to https://docs.github.com/en/code-security/supply-chain-security/configuration-options-for-dependency-updates#rebase-strategy, the rebase should only occur if there was a conflict.

This may well just a documentation bug rather than behaviour bug. For teams that set require branch to be up to date with target before merging, the current behaviour may well be ideal where the have an action that automatically merges dependabot PRs. However it is surprising for this to occur when the documentation says it should only happen if there was a conflict.
If it was possible for this to only occur when there is an actual conflict it would be ideal, because we'd be happy enough to have to re-approve anything that conflicted and had to be recreated from scratch. Happy to add a separate enhancement request around having additional strategies to allow teams to customize the outcome here depending on their needs, just want to get confirmation on whether the observed behaviour is the expected behaviour and the documentation needs a slight adjustment to make it clearer, or if expected behaviour was the intention and thus this is a functional bug.
After the force pushes it appears some information disappears so I can look to capture screenshots of the review approving the PR before it is dismissed by the force push. As these are for private repos I can't just link to the affected PRs.

What we see is dependabot always rebases all proposed PRs when anything is merged

Yeah that's right, when you merge a PR the manifest files change and this triggers a rebase. We don't check for actual conflicts, we just detect if the files in question have been changed.

This may well just a documentation bug rather than behaviour bug.

Agreed, I think we can definitely improve the docs around this 👍

If it was possible for this to only occur when there is an actual conflict it would be ideal

Yeah, I get the use-case 👍 I'm not sure if we can easily determine actual conflicts, but it's definitely something we can investigate

👋🏻  @electrofelix - we've clarified our documentation to reflect that we will rebase PRs on changes rather than conflicts as it more correctly reflects the current functionality.
I've marked this issue as a feature request rather than a bug as it is something we should investigate improving on as @jurre said.

Thanks, it makes total sense that is the way it works, because most will benefit from that.

Would https://docs.github.com/en/graphql/reference/objects#pullrequest the mergeable which is an enum that can indicate if it is mergable, conflicting, or still being calculated be sufficient to determine this https://docs.github.com/en/graphql/reference/enums#mergeablestate?
Unclear for the REST API if https://docs.github.com/en/rest/reference/pulls#get-a-pull-request whether the mergeable field is the same as the example has it returning a boolean.
Thought there is always mergeable_state that suggests it could provide a bit more info.

A comment on the documentation:
Isn't a pull request supposed to be rebased when it detects changes to the target-branch?

@gustavovnicius the documentation was updated to change from saying on conflict to on any change to clarify the behaviour. I think this is being kept open because it would be useful if you could limit it to rebase on conflicts only in situations where you want a different workflow that still involves manual approval and ensuring the status checks pass against what will be the result of merging the PR.

I understand that @electrofelix , my question is:
Let's say we have the branches main and dependabot-maven-main-<dependency>. And I have linear protection enabled on main, which is also my target-branch.
When I push something new to main isn't the expected behavior that the dependabot branch gets rebased from the latest main?

@gustavovnicius I missed what you meant. That would make more sense to me too, I guess the documentation update might need another small update :wink:

👋 sorry for the slow followup here.

What we see is dependabot always rebases all proposed PRs when anything is merged thus removing approvals due to the force push.

I should also point out that part of the difficulty here is that you've set your repo settings such that new commits dismiss old approvals. If you relax that, you can keep the workflow mentioned in the first post.
Re: the docs improvements... these docs are open source, please feel free to open a PR if you think a small (or large!) tweak could improve them.
I'm going to close as I don't think for the forseeable future Dependabot will be able to realize whether or not there's a conflict on the changed files... there's too many variables across all the different ecosystems we support, so regenerating the manifest files whenever they change avoids a massive case of edge-case headache. And the docs, while they could be slightly improved as mentioned ☝ , are still reasonably clear for the general intent.


CAMEL-12468 Add dependency-management entry for camel-azure-starter

https://issues.apache.org/jira/browse/CAMEL-12468

Thanks for the PR, merged into master. Closing.


Enable pypy3 as a required Travis test

Reasoning being that this make it easier to catch pypy3
regressions as they happen.

Fixed some very simple pypy3 failures (largely to do with
different exception strings)
Splits pypy3_bugs.txt into three files

one for bugs that cause hard crashes (which we don't want to
run in Travis at all);
one for bugs that are probably unfixable because they're just
due to implementation details (e.g. when destructors are
called).
all other bugs remain in pypy3_bugs.txt
(The categorization has been done fairly quickly, so some bugs
may be in the wrong place)

Made sure (hopefully) all bugs are now categorized, so a basic
runtests.py with pypy3 should hopefully pass
Changed pypy3 to be required in Travis
Added an extra (optional) test that runs through pypy3_bugs.txt.
The majority of this is expected to fail. This requires an
extra option to runtest.py "--listfile", which just runs through
the tests listed in the file.

I haven't made pypy2 a required test in this commit - since
Python2 support is deprecated soon, there seemed limited value in
putting much effort into pypy2.

I guess the change from optional to compulsory might be controversial, but even if that's the case, hopefully updating the bug list and fixing some of the very easy tests is useful

IMHO very worthwhile going in this direction. Would be nice if at least one pypy test job could report actual regressions during development, rather than always being broken.

I've added tried to use the built-in faulthandler module where available. The hope is that it'll catch segmentation faults a little more clearly on Travis instead of just silently running forever. It remains to be seen if that works though.

Looks good to me so far, just one comment on test inclusion.

A number of pypy2 tests are currently having to be excluded because of https://foss.heptapod.net/pypy/pypy/issues/3185. For now I'm just disabling them - I don't see a way round this without a fix from pypy.

@scoder Can I ping this? Mostly because it'll need re-doing if it sits too long and other PRs break pypy stuff while it's waiting time.

Thanks!


New vm/dart/gc/chunked_binary_trees_array_test timing out on a few configurations

There are new test failures on [vm, gc] Add flag to disable write barrier elimination..
The tests
vm/dart/gc/chunked_binary_trees_array_test/0 Timeout (expected Pass)
vm/dart/gc/chunked_binary_trees_array_test/1 Timeout (expected Pass)
vm/dart/gc/chunked_binary_trees_array_test/2 Timeout (expected Pass)
vm/dart/gc/chunked_binary_trees_array_test/3 Timeout (expected Pass)
vm/dart/gc/chunked_binary_trees_test/0 Timeout (expected Pass)
vm/dart/gc/chunked_binary_trees_test/1 Timeout (expected Pass)
vm/dart/gc/chunked_binary_trees_test/2 Timeout (expected Pass)
vm/dart/gc/chunked_binary_trees_test/3 Timeout (expected Pass)
vm/dart/gc/chunked_binary_trees_test/4 Timeout (expected Pass)
vm/dart/gc/chunked_binary_trees_test/5 Timeout (expected Pass)

are failing on configurations
vm-aot-android-release-arm_x64
vm-aot-linux-release-simarm_x64
vm-reload-linux-debug-x64

Specific list of which versions are failing on which configuration follows, including an example log for one of the versions:

vm-aot-android-release-arm_x64: just /1
vm-aot-linux-release-arm_x64: /0-/3
vm-reload-linux-debug-x64 : /0 - /5

/cc @rmacnak-google

This test is still timing out (and flakily so).

https://dart-current-results.web.app/#/filter=vm/dart/gc/chunked_binary_trees_test&showAll


Introduce dependency containing a CVE to the villain service

Just did a quick test introducing this CVE
Quay scanner is ok and see the critical CVE ... but ... ACS don't see anything ... I'm checking what could be wrong (hope it's on my side and not ACS)

@aureamunoz

The RH Trusted pipelines needs to be reviewed and aligned with this?

I think we can add a section to the villain service to detect and correct the cve. But we need to make sure that ACS is detecting it.

I have added this dependency in my RHDH templates and my pipeline is now able to catch
Documentation has been updated too (PR in review for now).
Btw, unsure it's needed to introduce the dependency here (this code is note in use in the Workshop).

Superseded by #137


Just updated and app crashed

Just updated to the latest and app crashed within 5mins, see below for log:
-On a side note are you able to put usernames in the chat log, its hard to see who says what
-----Application Exception Logged At: 26/08/2015 8:41:27 AM-----
Application Error Message:
An unhandled exception occurred: An error occurred while sending the request.
Error Stack Trace:
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()    at SteamWeb.Client.<SendRequestAsync>d__3.MoveNext() --- End of stack trace from previous location where exception was thrown ---    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)    at System.Runtime.CompilerServices.TaskAwaiter1.GetResult()
at SteamWeb.Client.d__5.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()
at iNGen.ViewModels.PlayersViewModel.<b__59_0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at iNGen.ViewModels.PlayersViewModel.d__59.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.GetResult()
at iNGen.ViewModels.PlayersViewModel.<<-ctor>b__49_0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.AsyncMethodBuilderCore.b__4(Object state)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.DispatcherOperation.InvokeImpl()
at System.Windows.Threading.DispatcherOperation.InvokeInSecurityContext(Object state)
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Windows.Threading.DispatcherOperation.Invoke()
at System.Windows.Threading.Dispatcher.ProcessQueue()
at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
at System.Windows.Threading.Dispatcher.PushFrame(DispatcherFrame frame)
at System.Windows.Threading.Dispatcher.Run()
at System.Windows.Application.RunDispatcher(Object ignore)
at System.Windows.Application.RunInternal(Window window)
at System.Windows.Application.Run(Window window)
at System.Windows.Application.Run()
at iNGen.App.Main()
-----END OF ERROR-----

Excellent. Thanks for this. It's my steam api pcl causing the issue. Most likely a rate limit on steams end. I'll get a fix sorted when I wake up.
Cheers

New version Pushed. Hopefully will sort the issue. Admins will now need to grab their Steam API Key, and enter it in settings. There is a button to take you to the page next to the box for the key.

Sorry to say: I just had an app hang. The problem is, I can't find the log (shouldn't it be on the desktop? There's nothing in the apps log directory either.)
Here's the Windows event log:

1002
2
101
0x80000000000000

2128
Application
***

iNGen.exe
<IP_ADDRESS>
db4
01d0dfdba57c4b68
4294967295
C:\Users\me\AppData\Local\iNGen\app-3.38\iNGen.exe
523b73b8-4c0f-11e5-9bc8-d43d7eaf7a7a

54006F00700020006C006500760065006C002000770069006E0064006F0077002000690073002000690064006C00650000000000

It should be on the desktop yeah.
Well, Its on the desktop of the user running the application, so if you're running it as admin, it'll be on the local administrator accounts desktop.

i'm going to close this because the issue has been resolved.


KILLED jobs should not be considered active when really killed

Issue qualification: when an engine is killed, live Job instances from the JobInstance tables are not purged like ATTRIBUTED and RUNNING instances are. They should be purged too (and get a CRASHED History element as the others).


[prism] Fusion base, reshuffle, cogbk.

Add support to prism for handling reshuffles, and cogbk.

Notably adds a base to validate properties of fused stages.
Reshuffles as composites are currently ommitted entirely.
Fixes #27622 in exec/translate.go

See https://github.com/apache/beam/pull/27550 and https://github.com/apache/beam/issues/24789.

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.

R: @jrmccluskey

ping (polite)


Persist the katana dump on the repo, re-dumping only on updates of the Kakarot submodule or the dump-katana bin

What is the status of this issue @greged93 ? I seem to notice we use dumps in the ci


DO: Unable to detach volume in client/server mode

When deploying in a server/client mode (with rexray classic on one node, and rexray-client on another node), a call to detach is failing with:
ERRO[0422] POST https://api.digitalocean.com/v2/volumes/de89b811-f928-11e6-98b3-000f5339d321/actions: 422 Attachment not found  host=tcp://:7979 instanceID=digitalocean=40470784,name=rexray2&region=sfo2 route=volumeDetach server=tin-slave-hm service=digitalocean storageDriver=digitalocean task=0 time=1487791291854 tls=false txCR=1487791289 txID=00cf8769-6e06-45df-6a78-358e52adcd01
I highly suspect this is because of the use of StorageActions.Detach() here: https://github.com/codedellemc/libstorage/blob/release/0.5.0/drivers/storage/digitalocean/storage/digitalocean_storage.go#L191
The fix is likely to use StorageActions.DetachByDropletID() instead, which takes an argument for a dropletID. Seems the Detach call always assumes you are detaching from yourself.  This implies this driver has not been tested in a client/server environment. Might find more still...
server version
root@rexray1:~# rexray -l warn version
REX-Ray
-------
Binary: /usr/bin/rexray
Flavor: client+agent+controller
SemVer: 0.8.0-rc1
OsArch: Linux-x86_64
Branch: v0.8.0-rc1
Commit: 483caefe9a904163daaf82c74a7652254415fce5
Formed: Tue, 21 Feb 2017 20:15:45 UTC

libStorage
----------
SemVer: 0.5.0-rc2
OsArch: Linux-x86_64
Branch: v0.8.0-rc1
Commit: 4a1b372134e27da77bbfa109ad5dac0e9499fbc4
Formed: Tue, 21 Feb 2017 20:14:29 UTC

server config
root@rexray1:~# cat /etc/rexray/config.yml
rexray:
  logLevel: debug
libstorage:
  host: tcp://<IP_ADDRESS>:7979
  embedded: true
  service: digitalocean
  server:
    endpoints:
      public:
        address: tcp://:7979
    services:
      digitalocean:
        driver: digitalocean
digitalocean:
  token: XXXXXX
  region: sfo2

client version:
root@rexray2:~# rexray-client version
REX-Ray
-------
Binary: /usr/bin/rexray-client
Flavor: client
SemVer: 0.8.0-rc1
OsArch: Linux-x86_64
Branch: v0.8.0-rc1
Commit: 483caefe9a904163daaf82c74a7652254415fce5
Formed: Tue, 21 Feb 2017 20:14:52 UTC

libStorage
----------
SemVer: 0.5.0-rc2
OsArch: Linux-x86_64
Branch: v0.8.0-rc1
Commit: 4a1b372134e27da77bbfa109ad5dac0e9499fbc4
Formed: Tue, 21 Feb 2017 20:14:39 UTC

client config
root@rexray2:~# cat /etc/rexray/config.yml
libstorage:
  host: tcp://<rexray1 IP>:7979
  service: digitalocean

@codenrhoden I did some digging and it shouldn't matter if we use StorageActions.Detach() or StorageActions.DetachByDropletID(), they both should work fine even in client/server mode. I suspect it's actually #433 that's the problem here but I need to do some more research

Thanks for the update @protochron. The thought crossed my mind that I might have jumped to conclusions about things not working in client/server, just because I tested that first. If #433 is a real problem, it would look the same whether it was client/server or all on the same node.  Good to know!

StorageActions.Detach()

I don't think function is working, even the official doctl tool gives the same error. Upstream issue?

I have opened a PR upstream: https://github.com/digitalocean/godo/pull/136 Let see what they say..

Thanks for following up on this, @klausenbusk. I'll follow that godo issue for sure!


Adds flag to disable stdout and stderr inheritance by subprocesses.

Wanted to create unit tests for DefaultProcessRunner but Mockito can't mock ProcessBuilder and I don't want to use PowerMock.

@meltsufin @loosebazooka PTAL

Can you explain why you want to do this?

Fixes #185

So maybe this is okay for now, I think we should consider returning a raw process for the devappserver instead of having the developer go and disable all the layers we added on top.

LGTM

One more time, LGTM! :)

LGTM


Subgraphs can fail with oneshot canceled error

Do you want to request a feature or report a bug?
Bug
What is the current behavior?
On the hosted service, but likely in local environments as well, subgraphs occasionally fail with the following error:
Subgraph instance failed to run: Failed to process event: Mapping terminated with error when handling event `Transfer(address,address,uint256)`: oneshot canceled, id: QmTr9CRLQVPmoQXJCMJhdamX1CbcNBGg1wUsAHXBJYyexk

The error is not only unspecific, it also happens for no particular reason (i.e., not a bug in the subgraph).
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem.
The first and last time we've seen this so far was with at 4/18/2019, 10:41:26 PM, on https://thegraph.com/explorer/subgraph/nicosantangelo/watchtower?selected=logs.
What is the expected behavior?
Since subgraphs get past this error after restarting the graph-node they are indexed by, this makes clear it isn't an error and simply shouldn't happen.

We haven't seen or had it reported since. We can reopen this if it happens again.


Update SafeMath.sol: Issue #435

Changed sub method to use revert() as opposed to assert() as per Issue #435.

LGTM

@nedodn sorry to disagree, require is meant to be used for validations, while assert should be used in order to prevent conditions which should never be possible, in this case, we are preventing an overflow.
I highly recommend this article, a detailed explanation about this subject.


VxWorks: add functions for message queue

@BaoshanPang Hey, could you rebase to make CI green?
r? @JohnTitor

Thanks!

@JohnTitor Thank you!


Deprecation Warnings for StrEnum from HA Core 2024.50b0

The problem
hello
just wanted to report a warning I received when updating to HA Core 2024.5.0b0 thanks
Logger: homeassistant.backports.enum
Source: helpers/deprecation.py:206
First occurred: 2:16:42 PM (1 occurrences)
Last logged: 2:16:42 PM

StrEnum was used from nest_protect, this is a deprecated alias which will be removed in HA Core 2025.5. Use enum.StrEnum instead, please report it to the author of the 'nest_protect' custom integration

What version of this integration (ha-nest-protect) has the issue?
v0.3.12
What version of Home Assistant Core has the issue?
2024.5.0b0
Device / Model
Nest Protect Battery
Diagnostics information
No response
Home Assistant log
Logs
Copy/paste any log here, between the starting and ending backticks (`)

Additional information
No response

Fixed in v0.4.0b5


RoR group project: set up Kanban board

Dear Code Reviewer,
In this capstone project, we are two members @Farida-Hamid and @skyv26 and here is the link for our Kanban Board.

@mirouhml Thank you very much ❤
Happy Coding 🥂


RECIP(-0.0) should be -inf

added test_dtype_alu for PYTHON backend, everything passed except a inf to int cast. Also skipped some uint tests that numpy changed behavior and threw errors in 2.0.

deleted all cache in my fork and ran the test https://github.com/chenyuxyz/tinygrad/pull/291/checks


Extend Add-DatabricksJarJob: allow setting the maximum concurrent runs

Currently, the Add-DatabricksJarJob creates only jobs that cannot be started multiple times.

It would be nice to allow setting the max_concurrent_runs parameter defined in the REST API.

I would also be interested in the same functionality as part of  Add-DatabricksNotebookJob

Fixed in #182


Display dominant speaker avatar in large video area if participant has no video

This PR also broke the fitting of the avatar inside the thumbnail for me. (I'm fixing it myself again.)

The rule for the render of avatar vs video is: if video is not rendered, avatar is rendered.  The thumbnail (in filmStrip) follows this rule but LargeVideo doesn't. Why? It's not obvious in the source code.
I want and modified LargeVideo (after eliminating the duplication that I commented on earlier) to follow the rule. Unfortunately, the app broke because videoTrack needs to be rendered (otherwise, no onPlaying and, consequently, no videoStarted) in order to determine whether it should be rendered! In other words, thumbnail and largeVideo invisibly are in the contract that one of them will render the videoTrack so that it gets onPlaying/videoStarted.
To me the development experience that I got today while modifying this PR was like a game of pick-up sticks where I would modify the source code in one file and the app would start malfunctioning in a seemingly unrelated file.
I don't have the time to address this today so I set waitForVideoStarted to false in LargeVideo with a FIXME.


iOS build failing with 'cannot invoke initializer for type 'WebSocket' with an argument list of type '(url: URL)'

I am getting below error while trying to build for iOS:
 === BUILD TARGET video_call OF PROJECT Pods WITH CONFIGURATION Debug ===
     /Users/deeptibelsare/Documents/QuickCarl/qc_flutter_messaging/ios/Classes/SwiftQcMessagingPlugin.swift:190:16: error: cannot invoke initializer for type 'WebSocket' with an argument list of type '(url: URL)'
                     let socket = WebSocket(url: URL(string: SwiftQcMessagingPlugin.socketUrl)!)

Whereas, app is building properly on Android.
Flutter Doctor:
[✓] Flutter (Channel stable, v1.12.13+hotfix.8, on Mac OS X 10.15.2 19C57, locale en-US)
    • Flutter version 1.12.13+hotfix.8 at /Users/deeptibelsare/Documents/Flutter-sdk/flutter
    • Framework revision 0b8abb4724 (6 weeks ago), 2020-02-11 11:44:36 -0800
    • Engine revision e1e6ced81d
    • Dart version 2.7.0

[!] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/deeptibelsare/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 28.0.3
    • ANDROID_HOME = /Users/deeptibelsare/Library/Android/sdk
    • ANDROID_SDK_ROOT = /Users/deeptibelsare/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)
    ✗ Android license status unknown.
      Try re-installing or updating your Android SDK Manager.
      See https://developer.android.com/studio/#downloads or visit https://flutter.dev/setup/#android-setup for detailed instructions.

[✓] Xcode - develop for iOS and macOS (Xcode 11.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.3, Build version 11C29
    • CocoaPods version 1.8.4

[✓] Android Studio (version 3.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 34.0.1
    • Dart plugin version 182.5215
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1248-b01)

[✓] Connected device (2 available)
    • Android SDK built for x86 • emulator-5554                        • android-x86 • Android 9 (API 28) (emulator)
    • iPhone 11 Pro Max         • BBC1F461-DD1E-4149-94DE-BFB7A8DFAA65 • ios         • com.apple.CoreSimulator.SimRuntime.iOS-13-3 (simulator)

! Doctor found issues in 1 category.

Appreciate any help in resolving this issue.

Hi @DK15
can you please provide your flutter run --verbose
and your pubspec.yaml
or if possible a reproducible minimal code sample.
Thank you

@iapicca  here's flutter run --verbose output:

[  +40 ms] executing: [/Users/deeptibelsare/Documents/Flutter-sdk/flutter/] git
-c log.showSignature=false log -n 1 --pretty=format:%H
[  +58 ms] Exit code 0 from: git -c log.showSignature=false log -n 1
--pretty=format:%H
[        ] 0b8abb4724aa590dd0f429683339b1e045a1594d
[        ] executing: [/Users/deeptibelsare/Documents/Flutter-sdk/flutter/] git
describe --match v*.. --first-parent --long --tags
[  +45 ms] Exit code 0 from: git describe --match v*.. --first-parent --long
--tags
[        ] v1.12.13+hotfix.8-0-g0b8abb472
[  +10 ms] executing: [/Users/deeptibelsare/Documents/Flutter-sdk/flutter/] git
rev-parse --abbrev-ref --symbolic @{u}
[  +14 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [/Users/deeptibelsare/Documents/Flutter-sdk/flutter/] git
ls-remote --get-url origin
[  +15 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +80 ms] executing: [/Users/deeptibelsare/Documents/Flutter-sdk/flutter/] git
rev-parse --abbrev-ref HEAD
[  +21 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] stable
[  +10 ms] executing: sw_vers -productName
[  +29 ms] Exit code 0 from: sw_vers -productName
[        ] Mac OS X
[        ] executing: sw_vers -productVersion
[  +22 ms] Exit code 0 from: sw_vers -productVersion
[        ] 10.15.2
[        ] executing: sw_vers -buildVersion
[  +26 ms] Exit code 0 from: sw_vers -buildVersion
[        ] 19C57
[  +41 ms] executing: /usr/bin/xcode-select --print-path
[  +14 ms] Exit code 0 from: /usr/bin/xcode-select --print-path
[        ] /Applications/Xcode.app/Contents/Developer
[   +1 ms] executing: /usr/bin/xcodebuild -version
[+1253 ms] Exit code 0 from: /usr/bin/xcodebuild -version
[   +2 ms] Xcode 11.3
Build version 11C29
[  +77 ms] executing:
/Users/deeptibelsare/Library/Android/sdk/platform-tools/adb devices -l
[   +8 ms] Exit code 0 from:
/Users/deeptibelsare/Library/Android/sdk/platform-tools/adb devices -l
[        ] List of devices attached
[  +19 ms] executing:
/Users/deeptibelsare/Documents/Flutter-sdk/flutter/bin/cache/artifacts/libimobil
edevice/idevice_id -h
[  +98 ms] /usr/bin/xcrun simctl list --json devices
[ +164 ms] No supported devices connected.
[  +13 ms] "flutter run" took 1,807ms.
#0      throwToolExit (package:flutter_tools/src/base/common.dart:28:3)
#1      RunCommand.validateCommand
(package:flutter_tools/src/commands/run.dart:289:7)

#2      FlutterCommand.verifyThenRunCommand
(package:flutter_tools/src/runner/flutter_command.dart:590:11)
#3      FlutterCommand.run.
(package:flutter_tools/src/runner/flutter_command.dart:515:33)

#4      AppContext.run.
(package:flutter_tools/src/base/context.dart:146:29)
#5      _rootRun (dart:async/zone.dart:1126:13)
#6      _CustomZone.run (dart:async/zone.dart:1023:19)
#7      _runZoned (dart:async/zone.dart:1518:10)
#8      runZoned (dart:async/zone.dart:1465:12)
#9      AppContext.run (package:flutter_tools/src/base/context.dart:145:18)
#10     FlutterCommand.run
(package:flutter_tools/src/runner/flutter_command.dart:505:20)
#11     CommandRunner.runCommand (package:args/command_runner.dart:197:27)
#12     FlutterCommandRunner.runCommand.
(package:flutter_tools/src/runner/flutter_command_runner.dart:413:21)

#13     AppContext.run.
(package:flutter_tools/src/base/context.dart:146:29)
#14     _rootRun (dart:async/zone.dart:1126:13)
#15     _CustomZone.run (dart:async/zone.dart:1023:19)
#16     _runZoned (dart:async/zone.dart:1518:10)
#17     runZoned (dart:async/zone.dart:1465:12)
#18     AppContext.run (package:flutter_tools/src/base/context.dart:145:18)
#19     FlutterCommandRunner.runCommand
(package:flutter_tools/src/runner/flutter_command_runner.dart:364:19)
#20     CommandRunner.run.
(package:args/command_runner.dart:112:25)
#21     new Future.sync (dart:async/future.dart:224:31)
#22     CommandRunner.run (package:args/command_runner.dart:112:14)
#23     FlutterCommandRunner.run
(package:flutter_tools/src/runner/flutter_command_runner.dart:250:18)
#24     run..
(package:flutter_tools/runner.dart:63:22)
#25     _rootRun (dart:async/zone.dart:1126:13)
#26     _CustomZone.run (dart:async/zone.dart:1023:19)
#27     _runZoned (dart:async/zone.dart:1518:10)
#28     runZoned (dart:async/zone.dart:1502:12)
#29     run. (package:flutter_tools/runner.dart:61:18)

#30     AppContext.run.
(package:flutter_tools/src/base/context.dart:146:29)
#31     _rootRun (dart:async/zone.dart:1126:13)
#32     _CustomZone.run (dart:async/zone.dart:1023:19)
#33     _runZoned (dart:async/zone.dart:1518:10)
#34     runZoned (dart:async/zone.dart:1465:12)
#35     AppContext.run (package:flutter_tools/src/base/context.dart:145:18)
#36     runInContext (package:flutter_tools/src/context_runner.dart:64:24)
#37     run (package:flutter_tools/runner.dart:50:10)
#38     main (package:flutter_tools/executable.dart:65:9)
#39     main
(file:///Users/deeptibelsare/Documents/Flutter-sdk/flutter/packages/flutter_tool
s/bin/flutter_tools.dart:8:3)
#40     _startIsolate.
(dart:isolate-patch/isolate_patch.dart:305:32)
#41     _RawReceivePortImpl._handleMessage
(dart:isolate-patch/isolate_patch.dart:174:12)

pubspec.yaml:

name: qc_flutter_pro
description: QuickCarl Pro
This is only used for iOS builds. For Android build, we set these
values in the app/build.gradle file
version: 0.6.2+10
environment:
sdk: ">=2.1.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
intl: ^0.16.0
shared_preferences: ^0.5.6+2
flutter_web_browser: ^0.11.0
flutter_webview_plugin: ^0.3.5
Making REST requests
http: ^0.12.0
#Firebase authentication plugin
firebase_auth: ^0.8.0+1
firebase_storage: ^2.0.0
firebase_analytics: ^2.0.0
firebase_database: ^2.0.2
firebase_remote_config: ^0.1.0
firebase_dynamic_links: ^0.5.0
get info about installed apps
flutter_appavailability: ^0.0.21
retrieve and store images in local cache
cached_network_image: ^2.0.0
See: https://pub.dartlang.org/packages/image_picker
for iOS specific installation instructions
image_picker: ^0.6.1
The following adds the Cupertino Icons font to your application.
Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.2
fluttertoast: ^3.0.1
uuid: ^2.0.2
url_launcher: ^5.4.2
share: ^0.6.0+1
flutter_linkify: 1.0.3
package_info: ^0.4.0+3
flutter_sms: ^1.1.0
qc_messaging:
path: ../qc_flutter_messaging
video_call:
path: ../video_call
dev_dependencies:
flutter_test:
sdk: flutter
flutter_driver:
sdk: flutter
test: ^1.5.1
flutter_launcher_icons: ^0.7.0
flutter_icons:
android: false
ios: true
image_path_android: "assets/icons/qc_pro_icon_android.png"
image_path_ios: "assets/icons/qc_pro_icon_ios.jpg"
adaptive_icon_background: "#ffffff"
flutter:
uses-material-design: true
assets:
- assets/
- assets/configs/
- assets/share/
- assets/ftux/

Hi @DK15
I see the logs stop because there's no device
[ +164 ms] No supported devices connected.
[  +13 ms] "flutter run" took 1,807ms.

could you please provide the flutter run -verbose
with a device attached, and representative of the issue.
Also reconnecting to the first post I see in your yaml
 qc_messaging:
    path: ../qc_flutter_messaging

the issues seems to be caused by qc_messaging
I cannot find in pub.dev, is it a third party plugin?
Thank you


⚠ SolarOscp has degraded performance

In 731541a, SolarOscp ($SOLAROSCP_URL) experienced degraded performance:

HTTP code: 200
Response time: 384 ms

Resolved: SolarOscp performance has improved in 7ed2007.


Add service workers

example of cesium sw / pwa
https://github.com/Developer-Plexscape/cesium-pwa

Investigate precache vs hand written service workers https://github.com/GoogleChromeLabs/sw-precache

@SamuelDudley I think this is the latest  https://github.com/googlechrome/workbox

Just FYI the web ui was started from this boilerplate:
https://github.com/vuetifyjs/pwa
It's a pretty good 'best practice' pwa setup with an application shell and service worker build out of the box.  The production build immediately works to a degree - if you turn your network off and reload the page instead of a dinosaur you get the maverick interface, but obviously with a bunch of errors in the console at this point.
Next step is to start trapping and reacting to network errors when they occur.

Service workers finally available in all major browsers - recently added to Safari and Edge:
https://jakearchibald.github.io/isserviceworkerready/

How to self-serve google fonts

MDN guides:
https://hacks.mozilla.org/2018/05/progressive-web-apps-core-guides-on-mdn-web-docs/

Some notes on cache busting
https://medium.com/js-dojo/vuejs-pwa-cache-busting-8d09edd22a31


[raymath] Vector2Angle() gives unexpected results

Please, before submitting a new issue verify and check:

[x] I tested it on latest raylib version from master branch
[x] I checked there is no similar issue already reported
[x] My code has no errors or misuse of raylib

Issue description
Vector2Angle() gives unexpected results.
Environment
Windows 10 x86_64
Last RayMath
Issue Screenshot
Here I represent angles in degrees for Vector2Angle() and a "fixed" version of it.
Red is the last Vector2Angle()
Blue is the fixed one

#include <raylib.h>
#include <raymath.h>

float Vector2Angle_fixed(Vector2 v1, Vector2 v2)
{
  float result = atan2f(v2.y - v1.y, v2.x - v1.x);
  return result;
}

int main(void)
{
  InitWindow(256, 256, "Vector2Angle Issue");
  SetTargetFPS(60);

  while (!WindowShouldClose())
  {
    BeginDrawing();
    ClearBackground(BLACK);

    Vector2 Start={(int)(GetRenderWidth()/2),(int)(GetRenderHeight()/2)};
    Vector2 End={GetMouseX(),GetMouseY()};

    DrawLine(
      Start.x,
      Start.y,
      Start.x+(cosf(Vector2Angle(Start, End))*Vector2Distance(Start, End)),
      Start.y+(sinf(Vector2Angle(Start, End))*Vector2Distance(Start, End)),
      RED);

    DrawLine(
      Start.x,
      Start.y,
      Start.x+(cosf(Vector2Angle_fixed(Start, End))*Vector2Distance(Start, End)),
      Start.y+(sinf(Vector2Angle_fixed(Start, End))*Vector2Distance(Start, End)),
      BLUE);

    DrawText(TextFormat("Normal:%.01f°", Vector2Angle(Start, End)*RAD2DEG),       0,  0, 20, WHITE);
    DrawText(TextFormat("Fixed:%.01f°",   Vector2Angle_fixed(Start, End)*RAD2DEG), 0, 20, 20, WHITE);

    EndDrawing();
  }

  CloseWindow();
  return 0;
}

off the top of my head, shouldn't it be a unit vector ?

@Kabcorp Actually Vector2Angle() has been reviewed twice in the last months, in #2829 and #2832...
Sincerely, I don't know right now which one is the right approach to expected functionality... I should review it more carefully but your visual example is the most convincing expected result.

@raysan5 Why not doing it like libGDX does:
https://github.com/libgdx/libgdx/blob/master/gdx/src/com/badlogic/gdx/math/Vector2.java#L348
I think its nice to stick to convention and how other frameworks do it

The function Vector2Angle_fixed() in the code is pretty fast and generic
And it results -180° to +180°

@veins1 why Vector2Angle() assumes normalized vectors?

Some people assume this function gets the angle between two points in space represented by vectors.

I understand this function that way, I think this is the most intuitive understanding for most users.

@veins1 Thinking about the most common use-cases for this function, I think using just atan2f() is probably the simplest approach and most users will be fine with it...
But, in what cases the direction approach is more useful? What is the approach on other gamedev math libraries?

Asking in raylib Discord, it seems this function functionality could be missunderstood, two possible understandings:

Get angle between two vectors
Compute the vector between two points, and then get the angle of that vector

My intention for the function was 1st approach, similar to Unity function Vector2.Angle, I think it's the easier for most unexperienced users
In any case, a second function can be added: Vector2LineAngle(Vector2 start, Vector2 end)

Vector2Angle gives you the angle between two vectors. It does not compute a vector between two points and compute the absolute angle of that new vector.
Vector2Angle is not broken, it just doesn't do what you expect.
It is not Vector TO angle, it is the angle between two vector2s.
The 'fixed' function is more like AngleOfLine and it takes a start point and and end point, not two vectors. Note that the arguments Vector2Angle are vectors, not points, yet in your code you call them start and end, clearly points, not vectors. While the data structure may be the same, the sense of the data stored in them is VERY different.
This is not a bug, simply a missunderstanding of what the function is meant to do. Changing it would break many things and remove the ability to find the angle between to vectors, used to know how far to turn to face a target.
You can use it to get the absolute angle of a vector, by simply computing a vector from your points and using a fixed 'zero' axis.
Vector2 delta = Vector2Subtract(End, Start);
float angle = Vector2Angle(delta, (Vector2){1,0});

Ok thank you for the explanations it was confusing me because of the name "Vector2Angle"

Reopened for verification.

The implementation of Vector2Angle is wrong. The function Vector2Angle calculates the angle of the differential vector and not between the two vectors.
Look at https://stackoverflow.com/questions/21483999/using-atan2-to-find-angle-between-two-vectors
The correct way to calculate the angle between two vectors would be:
float result = atan2f(v2.y, v2.x) - atanf2(v1.y, v1.x);

Reviewed.