Wii U Score is outdated

The 5.4.0 update for Wii U updated the Internet Browser.  The latest version of the browser now scores 311 points.

Here is an example test result I collected with my Wii U:
http://html5test.com/s/2c8cd028abe1a73c.html

Here is an example test result I collected with my Wii U:
http://html5test.com/s/2c8cd028abe1a73c.html

Updated!


Placeholder: align with fractal-server (re: verified users)

This is a placeholder issue, while details are still TBD in fractal-server.

As soon as https://github.com/fractal-analytics-platform/fractal-server/issues/959 is closed (e.g. through https://github.com/fractal-analytics-platform/fractal-server/pull/1099), non-verified users will not have access to /api/v1 backend endpoints any more.
This is meant to prevent self-authenticated users (who log in through OAuth but are not yet in the database) from actually accessing fractal - both because a manual setup is anyway needed (setting some Fractal-specific user attributes) and to have control on who can actually access this service. Note that we may also partly relax this access-control (ref https://github.com/fractal-analytics-platform/fractal-server/issues/959#issuecomment-1864028968).
As soon as the new version of fractal-server is out, a couple of changes in the client are needed (and the two versions should be updated together):

When the admin registering a user, the user should be automatically "verified". Since the register-user endpoint does not accept is_verified=True, I think we have to make two API calls: we first register the user and then make a PATCH call to set is_verified to true.
A non-verified user can still login (because verification is not required for /auth/current-user/), but they have no access (or limited access, depending on how we set it up in fractal-server) to /api/v1/. For sure there should be a very visible warning that tells them "you have no/limited access, please contact an admin".
If we decide to fully prevent access to any /api/v1/ endpoint, then we'll have to "protect" most of the routes in fractal-web - otherwise they'll still make API calls which will receive errors (either 401 or 403).

We merged this PR in fractal-server, where we prevent access to task-collection and workflow-execution to non-verified users:

https://github.com/fractal-analytics-platform/fractal-server/pull/1099

As soon as we want to rely on a new fractal-server release, this issue becomes high-priority.

fractal-server 1.4.2a0 is now available, and can be used when working on this issue

[Ref 4cdca93860931b5943d093738b0f7979ae1e1e08] Users registered by the admin are automatically verified (a PATCH API call is performed after the creation).
[Ref 299df1194b79c230b3495af2874fdf51f6628855] Users having is_verified set to false see the following warning on the top of each page:

If an unverified user tries to perform task collection the following error appears under the warning:

If an unverified user tries to start a job the following error appears in the "Run workflow" modal:

All looks as expected. Thanks!


dev: update devcontainer

Current dependencies on/for this PR:

#250  👈
main

This stack of pull requests is managed by Graphite.


condition "where id in (subquery) " throw nullpointer where subquery returns no results

I have a subquery like this :
...
.and(gedSep.identifiant.in(this.newJpaQuery().from(gedSep).innerJoin(gedSep.gedDocumentEntity)
                            .orderBy(gedSep.identifiant.desc()).singleResult(gedSep.identifiant)))

then when my subquery returns no result , a nullpointer exception is thrown
Caused by: java.lang.NullPointerException
at com.mysema.util.MathUtils.cast(MathUtils.java:53) [querydsl-core.jar:]
at com.mysema.query.types.expr.NumberExpression.convert(NumberExpression.java:684) [querydsl-core.jar:]
at com.mysema.query.types.expr.NumberExpression.in(NumberExpression.java:673) [querydsl-core.jar:]

i'm expected the condition to not explode with a null pointer. How can i do a workaround to avoid this case ?
Thanks

to help, the sql looks like
where id in ()

in SQL we could use "EXISTS" clause      :/

Related to this other issue https://github.com/querydsl/querydsl/issues/1430.  In my case it was possible to leverage coalesce() as a workaround.

not bad idea, actually as a workaround i was testing a "not null" and returning a default "-1"

@zamrokk It looks like you intended to write a subquery, but what you got instead were two query executions.
...
.and(gedSep.identifiant.in(new JPASubQuery().from(gedSep).innerJoin(gedSep.gedDocumentEntity)
                            .orderBy(gedSep.identifiant.desc()).list(gedSep.identifiant)))

Exactly.
Finally is more about a SQL problem

@zamrokk Did you get the query to work?
I am closing this, since there doesn't seem to be any further action required.

similar to https://github.com/querydsl/querydsl/issues/1430

yes, i used a not null test first and returning -1 if no results found
finally i used coalesce() because it was nicer

And you also used a real subquery?

a normal jpa query into the "in" clausus

your are right , is much better to have a subquery
finally i came with that
.in(new JPASubQuery().from(gedSep).innerJoin(gedSep.gedDocumentEntity).distinct()
                                                    .groupBy(gedSep.gedDocumentEntity).list(gedSep.identifiant.max().coalesce(new Long(-1))))

is the coalesce still necessary with the subquery?

yep , you are right again. Is no more needed with a subquery !
Thanks a lot !


Update chainbase.hpp

small typo fix, proposal for code storage space conserving restyling.

This makes the code less readable.

This makes the code less readable.


Remove lxml as a core dependency

@irgolic this was for guidance/a starting point for the xml -> json story.  Are we good to close this now?

Yeah, I think we can close this now


[web]: Text span text by default is red with canvastext flag on

By default text span text is red, seems odd for that to be the default style.
Using textSpan and flutter run -d chrome --release --dart-define=FLUTTER_WEB_USE_EXPERIMENTAL_CANVAS_TEXT=true
code snippet:
Widget build(BuildContext context) {
    return MaterialApp(
      title: 'text sample',
      home: Scaffold(
        appBar: AppBar(
          title: Text('text sample'),
        ),
        body: Center(
          child: RichText(
            text: TextSpan(text: 'testing testing is this red by default'),
          ),
        ),
      ),
    );

Results:

[✓] Flutter (Channel master, 1.19.0-4.0.pre.81, on Mac OS X 10.15.3 19D76, locale en-US)
• Flutter version 1.19.0-4.0.pre.81 at /Users/mariamhas/Developer/flutter
• Framework revision 5722adf11d (76 minutes ago), 2020-06-05 12:40:02 -0700
• Engine revision e87a05fbba
• Dart version 2.9.0 (build 2.9.0-13.0.dev 62903873df)

seems for native ios the text doesn't even show up:

This is happening when FLUTTER_WEB_USE_EXPERIMENTAL_CANVAS_TEXT=false as well. This is working as intended. We intentionally use ridiculous font style when the app forgets to pick a style.

I understand the fact that it defaults to red when not set, but why doesn't it use the global theme color provided by theme in MaterialApp? I have been trying to change the font color of all the Text widgets with no luck.
Mainly, I've been trying to set the TextTheme.apply(displayColor: Colors..., bodyColor: Colors..) but that does not do anything.


Traccar Client not update when switch OFF GPS in Samsung Galaxy S4?

I have been set location provider to Mixed provider. When I switched ON my Location(GPS), it can update : "Location Updated", but when switched OFF, it cannot update to server and not show anything like "Location Updated" in STATUS log.

If I switch GPS OFF, it cannot update location.

If I switch GPS ON, it can update location, even if I set “Location Provider” at Traccar Client to Network provider.

Mixed provider should switch to the network provider if GPS is not available. I need Android logs to check why it's not happening.
As for network provider, you don't need Wi-Fi for it if you have mobile data enabled.

What was the solution?
I have the same problem on "Samsung Galaxy S5"

You can access Android logs through ADB.


kong fails to start due to missing serf

Summary
I deployed a brand new Centos7 machine and fully updated it.
I installed Kong per installation guide (https://getkong.org/install/centos/), using this rpm: https://github.com/Mashape/kong/releases/download/0.9.7/kong-0.9.7.el7.noarch.rpm
I copied /etc/kong/kong.conf.defaut to /etc/kong/kong.conf and updated my database information.
However, kong fails to start:
Error:
/usr/local/share/lua/5.1/kong/cmd/start.lua:37: /usr/local/share/lua/5.1/kong/cmd/start.lua:22: could not find 'serf' executable (is 'serf_path' correctly set?)
Two solutions worked:
1: add to kong.conf: serf_path = /usr/local/bin/serf
2: add /usr/local/bin to root path
Simply put, following the installation instructions on a default CentOS 7 install will result in kong not starting due to serf not being found.
Steps To Reproduce

Additional Details & Logs

Kong version ($ kong version)
Kong debug-level startup logs ($ kong start --vv)
Kong error logs (<KONG_PREFIX>/logs/error.log)
Kong configuration (registered APIs/Plugins & configuration file)
Operating System

not work.
step 1: add to kong.yml: serf_path: /usr/local/bin/serf

@koolay what version do you use? kong.yml has been deprecated for quite some time now.

@Tieske
0.9.5

fixed see #1997


[DO NOT MERGE] Auto PR to update dependencies of istio

This PR will be merged automatically once checks are successful.
none

@istio-testing: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-presubmit.sh
0313a0e3c91859a8aff419b2537ddea16da06ce8
link
/test istio-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Getting experiential on a Quarkus project

Proposed title of the article
Getting experiential on a Quarkus project
Introduction paragraph (2-3 paragraphs):
Quarkus is an open-source Java native framework useful for creating and managing Kubernetes native Java stack, microservices, and serverless environments which is optimized for the open JDK and the GraalVM runtime. It is a very effective platform for Kubernetes, cloud, and serverless environments.
In similarity to the Spring Boot framework, Quarkus is a combination of different Java libraries and standards, providing you a consolidation along with improvements on the JVM.
Although this framework is young compared with the language (over 20 years old), it has some promising features and results that make it catchy to developers.
In this tutorial, we will get started on Quarkus and see how we can have some hands-on Quarkus projects using different tools and software environments.
Key takeaways
Coming to the tip of the article, we shall have the following to take with us:

What is Quarkus
Quarkus prerequisites
Advantages and trade-offs of Quarkus framework
Creation of a Quarkus application using different methods or tools such as from the https://code.quarkus.io/ website, using Visual Studio Code and IntelliJ.
Quarkus project structure
Differences between the Quarkus framework and the Spring Boot framework.
Testing Quarkus resources usage using JConsole.

Pre-requisites
Some basics required for easy follow-up on this article include:

A modern IDE that supports Java frameworks installed on your machine. This may either be Visual Studio Code or IntelliJ or any other. We shall focus on the two in this article.
A stable internet connection for dependency downloads.
JDK 11+ of any distribution installed. This is because Quarkus is not supported with lower versions than 11.
Gradle or Apache Maven 3.8.1+ installed.
Java programming skills (It will be a bit hard for a beginner to understand or catch up)

References

https://developer.ibm.com/components/ibm-mq/tutorials/mq-running-ibm-mq-apps-on-quarkus-and-graalvm-using-qpid-amqp-jms-classes/

Templates to use as guides

How To Guide Template
Software Review Template
Tutorial Template

Good afternoon and thank you for submitting your topic suggestion.
Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it.  @RisoriTofa

Good afternoon and thank you for submitting your topic suggestion.
Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it. @RisoriTofa

Ok, will be waiting soon...

@RisoriTofa
Sounds like a helpful topic - lets please be sure it add value beyond what is in the official docs and what is covered in other blog sites.
Please be sure to double check that it does not overlap with any existing EngEd articles or incoming topic suggestions (if you haven't already) to avoid any potential article closure, please reference any relevant EngEd articles in yours. - Approved


Clarify versioning wording

Right now when a user creates a new version of a resource, the message says:

Creating  a new version will obsolete this resource. This resource will be still available in HydroShare, but only the newer version will be discoverable via the HydroShare search interface. A link to this resource will be created on the landing page of the new version. Only one newer version is allowed for each resource.

I think the statement "Only one newer version ..." is confusing.  A user can create a new version, then create a new version of the new version and so on as many times as they want.  Technically I know we are thinking of only one version of a specific resource because the new version is technically a different resource.  However this subtlety is not clear to users.
I suggest:

Creating  a new version will obsolete this resource. This resource will be still available in HydroShare, but only the newer version will be discoverable via the HydroShare search interface.  The new version is a complete new resource with new identifier.  It will contain a link back to the previous version and the previous version will have a link to the next version.  This can be repeated resulting in a sequence of multiple versions each linked to next and previous versions.  Only the most recent version can be edited or deleted.  If you delete the most recent version, the previous version becomes the most recent and editable.

I recognize that this adds additional wording so welcome ideas to improve this.

@dtarb - clarifying text is good. Given our most recent experience, however, I have little confidence that users will read a block of text this long. I suggest shortening the text on this dialog and then adding a link to the help page that describes the details of versioning.

@dtarb - I enhanced the text on the Help page describing resource versioning with a modified version of your above text.

I think it is good to have this text on the help page and in full on the interface message where a user sees it.  Unless someone wants to suggest wording improvements, lets go with the text I wrote.

@dtarb The new/updated versioning dialog looks like the following:

Let me know if this looks good to you or not. If it looks good, I will create a PR and then merge it without code review since the only change is the wording change on the dialog.

@horsburgh @dtarb I have made corresponding changes for versioning changes and deployed it to riverdev.hydroshare.org for you to take a look. Both versioning wording change and publication message change are included and deployed on riverdev for you to take a look. If you think it looks good, I will create a PR and merge it. Let me know.

@hyi - the new wording on the create new version dialog looks good to me.

@hyi - by the way, when I created a new version for a resource at riverdev.hydroshare.org, the link to the previous version uses www.hydroshare.org, so that was really confusing to me. When I clicked on it I wanted to see the older version of the resource I just created the newer version for on riverdev.hydroshare.org, but it actually took me to the original resource in www.hydroshare.org instead. It took me a little bit to figure out that I had actually jumped from one server to the other and that's why the link back to the newer version wasn't there.

@horsburgh Thanks for testing. Since we are using www database on a development VM like riverdev, when you create a new version of an existing resource which was initially created on www, the url identifier metadata element in the database points to www.hydroshare.org site which is used to create the link. This explains why you see this behavior when you traverse back to the older version of the resource which was pointed to www.hydroshare.org. If you create a new resource on riverdev, then create a new version of this resource, then the traversal links will all point to riverdev.hydroshare.org rather than jumping back to www. This is just a side effect of setting up a development VM to use www database and it will not happen in www production.

@hyi - thanks for the explanation. I was a bit perplexed for a minute or two last night.

@dtarb The PR that changed the wordings has been merged into develop and has been tested by @horsburgh on riverdev. I think you can close this issue now.

Thanks.  Closing.


Unable to wake up console when starting Remote Play

I am using the app on the Steam Deck.
If I launch the app and login, it will show my Xbox Series X on my network and "In Standby".
I always get the following error message when trying to connect to it:
Error in Promise: {"state":"Failed","detailedSessionState": 0, "errorDetails":{"code":"XccsUnknownError","message":"Agent: -2136866041::  State Waiting ForServerToRegister"}}
However, if I first power on the console using a synced controller, it will now show as "Powered On" in the app and I can connect to it in Remote Play perfectly fine.
I have double checked and my Xbox is set to the proper power setting that should let me wake it up remotely.
Thanks

I am having the exact same issue with the same error code.

Same issue here with my Xbox One S on my Steam Deck. Shows the Xbox in standby. Works fine when powered on though.

Same issue here (using xbox series x).

same issue for me too when using my M1 Mac. however if I close the app and re-open it it works

For me it would not work whether powered on or in standby. I ended up using 2.0 Beta 1 and that worked. It turned on my xbox from standby.

Same issue here with my Xbox One S on my Steam Deck. Shows the Xbox in standby. Works fine when powered on though.

Steam Deck and Series X - exactly the same.

I also have the same issue with a Xbox Series X... I found if you force quit the client on the steam deck and then open it again it will connect. Seems when you open the client the first time Xbox switches on but it either times out or there's an error because it's still booting up when trying to connect.

Same issue here running the mac client connecting to a local network Series X. Quitting and restarting the client does not help, but waking the xbox using the remote play client on my phone, then allows me to connect with Greenlight.

Try the v2.0.0-beta3 update. It now allows you to back out of a failed connection and try again without quitting the app. It's common for it to fail first connection but work on the second.

Displays error instead of turning on in 2.0beta3 on Series X.

same issue with beta4

Bug still present in beta 7 and beta 8


Add example for tap-i18n-ui

Hi,
I would like to add tap-i18n-ui to the mix, so I thought it would be a good idea to have an example for it. I created a new example examples/basic-tap-i18n-ui based on examples/basic-tap-i18n.
Here is my attempt to implement it:
TAPi18n._afterUILanguageChange = function() {
  I18NConf.setLanguage(TAPi18n.getLanguage());
};

It seems to be working fine, except for one thing - it logs a warning whenever I change language via tap-i18n-ui:

Warning: asked to change language to [en] but this is already the current language.
martino_i18n-conf.js:106

The code where it comes from is:
    if (oldLang == newLang) {                                                                                // 97
        console.log("Warning: asked to change language to [" + lang + "] but this is already the current language."); // 98
        return;                                                                                // 99
    }

I'm pretty new to Meteor, I can't figure this out by myself.
I guess, there also would be other users who might benefit from this example.
Thanks!

The bug you report is https://github.com/yoolab/iron-router-i18n/issues/75 and should be fixed in new 1.2.3 version

Thank @min2sia, I've merged your example, it's always good to have an example more :-)


Tracks layer crashes with greater than 3D + t data

🐛 Bug
The tracks layer (which is fantastic in every other sensce) does not allow for greater than 3D + t dimensional data. The tracks layer is designed to take a two dimensional array of track vertices with columns representing track ID (0), then time (1), then up to three spatial dimensions (2-3). Attempting to display n-D data (e.g., 5D data - tracks data with columns representing ID, channel, time, z, y, x), will produce an error.
To Reproduce
Steps to reproduce the behavior:

Generate tracks data - ndarray of shape (n , D + 1), where D is greater than 4 (i.e., 5D)
view the data using viewer.add_tracks(tracks)

The error can be reproduced with this script
Returns this error
ERROR:root:Unhandled exception:
Traceback (most recent call last):
  File "/Users/amcg0011/GitRepos/napari/napari/_qt/event_loop.py", line 79, in gui_qt
    yield app
  File "./tracks_5d.py", line 50, in <module>
    viewer.add_tracks(
  File "<string>", line 2, in add_tracks
  File "/Users/amcg0011/GitRepos/napari/napari/layers/tracks/tracks.py", line 172, in __init__
    self.data = data
  File "/Users/amcg0011/GitRepos/napari/napari/layers/tracks/tracks.py", line 339, in data
    self._manager.data = data
  File "/Users/amcg0011/GitRepos/napari/napari/layers/tracks/_track_utils.py", line 107, in data
    self._data = self._validate_track_data(data)
  File "/Users/amcg0011/GitRepos/napari/napari/layers/tracks/_track_utils.py", line 191, in _validate_track_data
    raise ValueError('track vertices should be 4 or 5-dimensional')
ValueError: track vertices should be 4 or 5-dimensional

Expected behavior
Display n-D tracks equivalently to n-D image.

Hi @AbigailMcGovern, thanks for writing this up in more detail! I'm linking to this  https://github.com/napari/napari/issues/1776#issuecomment-716249499 where @jni mentioned you'd been running into that problem. I really like the ideas from @quantumjot https://github.com/napari/napari/issues/1776#issuecomment-716443856 to make a more general graph layer or move the full nD layer to the shader for slicing.
As an aside, these examples where we might want to move nD data to the shader and do slicing there might force some further reconsiderations of some of the proposals in #1775 too, which I think @d-v-b had been alluding to at some points during the discussion

I think the Tracks layer should display nD data (if you remove that check in _validate_track_data), it's just that there will be no slicing in the non-displayed dims.
In general, I think that slicing the data directly in the shader makes a lot of sense, and could be achieved using an extension of what the Tracks layer already does.  Depending on how the slicing "window" is set up, you could imagine a user defined window for each non displayed dimension, along the lines of how time is handled currently, or extending that, for example as in this  https://github.com/napari/napari/issues/693#issuecomment-638090099, with something like window_width for each dim.

Just double checked and this is still an issue post 0.4.19 27851ee92913e02b16d05b0aba19b126fa1e29e3


Use RegExp$matchResult for String.match

RegExp$matchResult is already used for RegExp.exec, use it for String.match as well.

@KevinGrandon from the CI output, it looks like you need to update some line numbers

Thanks. Any idea if there is a CLI command for this? The CI output was a bit hard to read, and I couldn't find a jest-like way of updating what appear to be snapshots?

I really don't know, and yeah it looks really painful to update :/

I really don't know, and yeah it looks really painful to update :/

Thanks for the info and chiming in here. Going to wait until a flow core developer chimes in here if they care to and accept the PR. Hopefully this will just get some renewed eyes as this has been an issue for  along time.

@samwgoldman, @avikchaudhuri could we get some 👀on this?

Importing and checking out 👍

Nice! Thanks, @mrkev


Create documentation: Tips when attending or speaking at a conference that doesn't provide proper accommodations

This document was started in a google doc for community colabiration
The intent is for it to form part of the DHOH section of the contribute.cncf.io website

The doc looks good to me, but probably should be reviewed by the deaf/hoh members

I reviewed and approved it


Update README

Updating the README to include current examples of running the graphics package, and a couple of troubleshooting tips and tricks.

I didn't mention that I briefly tested the examples by copying and modifying them to plot Curtis's sample plots for the new RRFS NA grid.


Shift+right click opens context menu in Firefox

Right mouse button is used to access the secondary (background) color, and shift is used to make equal width/height shapes.
Shift+right click is clearly an escape hatch for users of Firefox, to access the context menu on sites that block it willy-nilly. I'd like to preserve this ability where it doesn't conflict.
Plan: listen for and prevent contextmenu globally while canvas-related gesture is active.
May need a timeout after pointerup if contextmenu comes after pointerup.
This should also fix dragging with right click over a window like About Paint showing a context menu. I'm not sure about the Help window, which uses an iframe to display the content.
This should also let me un-revert setPointerCapture for 98.js.org integration.

Since some firefox updates is impossible to absolutely disable the context menu because if you disable it firefox core automatically sets the context menu shortcut to Shift + Right Click, the user itself can disable it in the firefox settings going to:
Tools > Options > Content > Advanced and the activate 'Enable Javascript' and 'Disable or replace context menus' settings.
Due to this I think this shouldn't be catalogued as 'bug'.

@AlexHRodrii How do I get to "Tools > Options > Content > Advanced"? What version of Firefox does this apply to?

Since the latests firefox updates you need to do aditional steps. Here it's a guide about how to disable the context menus.

First, open a new tab and write in the navigation bar 'about:config' (accept to enter if a warning pop up is shown)
Then, search for 'dom.event.contextmenu.enabled'
If you want to disable it, set this setting to false
Restart firefox

Disabling dom.event.contextmenu.enabled appears to disable the contextmenu event entirely, making webpages unable to prevent the context menu in any case, so this wouldn't help anyone looking for a workaround.
I poked around and found some discussion of this on the Firefox bug tracker: 1, 2, 3. There doesn't seem to be many people pointing out use cases, so I might join the discussion. I'm writing my notes here in case I come back to this later:
Two use cases I see, aside from user interfaces that directly use Shift+right click as a gesture, are:

JS Paint, where to draw a circle or square (rather than an ellipse or rectangle) you can hold Shift, and to draw using the secondary ("background") color you can use the right mouse button. There's a work-around, but it's very awkward to have to press RMB, press Shift, drag, release RMB, and then release shift, in that exact order.
A first-person shooter game where you can hold Shift to sprint, and right click for a secondary attack such as melee. A context menu popping up would get you killed for sure. (Maybe the pointer lock API gets around this, I don't know.)


ceph/tools image does not exist in Docker Hub

In the examples for CoreOS tools the README references the image ceph/tools which does not exist in the official Ceph repos.
Can we have this added to the registry?

Curious.  There has never been a ceph/tools.  I imagine this should read ceph/base, as the base image contains all of the Ceph tools with no entrypoint script.

Per discussions on #228 the name has been changed to ceph/install-utils
Once #230 is merged and pushed this can be closed

Closed with #230


[Addition]:

Hotspot b58 Addresses
112ayQ4HBqz9ubYmN1G3CWDv7g3pZiA1RbRKNjJNNJjxB7fxfnR3
11qHd27mUbC9Ayxuu7NQRjWkzgV2khgFkqWp34CeGH1mpAdKXvF
11naMWqsnz8ndzkDUU78vsRbunec4qwkC1NKXigUFQjcUsE8mvk
112DoGt91pK9TCTVTvc8mQTCXbAyL3j4d9s7S5UgGXDZSNyWv8o2
11NNVmnUmsPpTWDqphGReLHwPYcEUs4XbDyMt3qMvZiHWAzNUC6
Discord Handle
myconid19
Reason(s)
these pisces miners spoofers/gamers are driving down the transmit scale in our area and not really helping the helium network, please review all the witnesses they only witnessing to each other.

this group of spoofers are based in hongkong and spoofed here USA, used heliumgeek to get their ip addresses and track their location using nordvpn ip address lookup

most likely they are using vpn from:
ISP: Tencent Cloud Computing (Beijing) Co. Ltd
ISP: Shenzhen Tencent Computer Systems Company Limited

What can I do to get the cheater's IP, please let me know. I will also report some cheaters.


removed unnecessary spacing after Join Us Section on Hacktoberfest Page

Fixes Issue #499
Unnecessary spacing after Join Us Section on Hacktoberfest Page is removed.

assign it to me I will do this


Looks like Youtube dropped the old layout :-(

@dideler The extension isn't working with the new layout, could you please update it.
Thank you very much

@thinkpad4 thanks for the report, I'll spend some time on it this weekend.

it looks like it is broken again... sorry to bother


Java implementation using OkHttp

one of the for job failed though trvis build worked without any failure in my local

I notice some bug, will send another pull request.


Replace Vite with ESBuild for the playground

This PR should reproduce exactly the setup we have now, but with pure ESBuild.

[x] hot reload
[x] e2e tests pass locally
[x] e2e tests pass in CI
[x] fast
[x] Vercel deployment works (Vercel, for some reason, returns the root index.html for any url that doesn't have a dot in it, probably a bandaid for the previous build, since this new build works with a bare-bones static file server-FIXED)

@colelawrence can't reproduce it not working, any ideas what might go wrong?
As for build.tsx, it does have JSX in it.


fix(restURL): Fixing bug at instantiation

:tada: This PR is included in version 1.0.4 :tada:
The release is available on npm package (@latest dist-tag)
Your semantic-release bot :package::rocket:


does not do anything on windows 11 24h2

Build 26100.712
Visible in Taskmanager, but does not do anything when the sign in window appears.

What language/locale is Windows set to? Also, is this Windows x64 or ARM64?
Thanks.

Hi that was quick :)
my locale is:
Systemgebietsschema:                           de;Deutsch (Deutschland)
Eingabegebietsschema:                          de;Deutsch (Deutschland)
and it is a Windows 11 pro x64 on Intel.
Let me know if I can provide further information!
Kind regards

Thanks, I will try to replicate this issue soon and figure out what is going on.
Has this program ever worked for you in the past on previous builds of Windows 11 (like 23H2)?

Thanks a lot :)
Sorry, I just found out about your App today and gave it a try on my current system. So I cannot provide that information.
My other two systems do not have a bluetooth adapter, so I could not replicate the issue there :/

Not a problem, it's just useful to narrow down that it may be more likely a localization issue than a Windows update version issue.
If you like, you can attach a screenshot of the Windows Security dialog box with the two phone and USB choices visible. If not, I will see it when I set up a VM with the same locale and replicate it there.

Sure thing!
here is the screenshot.
I also gave it a shot on my colleagues notebook with the same behavior. Same windows version, but we had to install .net 8.

My guess now is that Windows 11 24H2 has started localizing some text that was previously always English in this dialog box in 23H2, so my program can't find it now that the text has changed. I will need to install 24H2 and all language packs to extract the new localized strings. Unfortunately, it takes forever (several days) to install all Windows language packs, but at least I learned how to automate it. I will try to send you an unofficial development snapshot build sooner to test out and see if that fixes it.

Thanks a lot,
I don't know if this helps: I just changed my region settings to English (USA) and gave it another try without success.
Perhaps we do not have to waste your time on localization :)
The text looked like that:

Hmm interesting. Thanks for that tip. That's the same text that 23H2 used to show for everyone, so there may be multiple problems here, localization changes and dialog structure changes.
If you want, you can send me the file that contains your localized strings for this dialog box: C:\Windows\System32\de-DE\fidocredprov.dll.mui. You will probably have to ZIP this file so GitHub will allow you to upload it. Once we can see where the strings are coming from, we can adapt it to dynamically support all languages.

No problem at all :)
fidocredprov.dll.mui.zip
I was also able to reproduce the problem on windows 11 22h2 22621.3296 on german locale on another notebook in the mean time.

Here is a development build.

It should be compatible with Windows 23H2 in German, as well as all other languages.

I fixed a bug that was not finding some of the buttons correctly based on their localized names (unexpected suffix).
I also fixed a bug that was preventing it from automatically detecting the localization for other languages at runtime (DLL reading was incorrectly hardcoded to always English).

It might be compatible with Windows 24H2 in German.

I could not find the new dialog heading text in fidocredprov.dll.mui, so it must have been added to a different file. I will have to join the Insider program and install a Windows 24H2 Release Preview build to search for it.
This won't support other languages besides German and English because I manually added the text from your screenshot.

I am still not sure why it failed for you on 24H2 in English. Maybe one of these other fixes will cover it.

Thank you so much for putting in all the effort, it works like a charm now on German Win 11 24H2.
It is so much more convenient this way :)
Wich kind regards!

I have figured out more about why this wasn't working before. Aside from all the bugs I fixed, I also didn't understand that I needed to change the Windows OS system-wide locale in addition to the Windows user locale. That's why, when I was testing with  a Fresh user account on an English system, I saw a half-French, half-English dialog box. Now that I set the system-wide locale to German I see the localized title that you saw too. I think this is caused by Windows getting some of the strings in this dialog box from the CryptSvc service (which runs as the system) and some of them from the CredentialUIBroker process (which runs as the user), so the localization is split this way.
In my new Windows 11 24H2 Insider Release Preview VM, I have tracked down the strings in there to a different file, webauthn.dll.mui. I have updated this program to read the localized strings from that file at runtime, and I have also copied all languages of this new DLL file. The next step is to update my program that bulk extracts strings from DLL files and converts them into .NET RESX files that can be compiled into this program, which needs to be updated to support extracting from more than one file of the same language.

You are very welcome!
I am glad that it brought forward new ideas and deeper understanding for more languages and update safety.
Keep it up, I will definitely tell everyone and their dog about this App :)


Setup/initial

The things that we did in this PR:

Build MyList class with instance variable
Add MyEnumerable  module and import it to MyList class
Add 3 methods to MyEnumerable module according to the requested task

@AbayomiOlaoye Thank you for the CR
You put screenshots about commits but those do not belong to us
This is ours:

Yeah, sorry for that, please. I have removed it. Your commit messages are the best I have reviewed today :clap: :clap:


Querying daily averaged SCHISM data.

Hi there @rafa-guedes @ondave ,
Following request is returning data averaged in time, but also space - am I doing something wrong ? (same query with "resolution": "native" works fine).
   oceanum_ocean_nz_schism_v1_query={"datasource":"oceanum_ocean_nz_schism_v1","parameters":{},
                                    "description":"Oceanum NZ ocean hindcast sigma layers",
                                    "variables":["SCHISM_hgrid_node_x","SCHISM_hgrid_node_y","depth","dahv","elev","wind_speed","wetdry_elem","wetdry_node","SCHISM_hgrid_face_nodes"],#,"hvel","zcor"],
                                    "geofilter":{"type":"bbox","geom":[173.0,-43.0,179.0,-41.0],"resolution":0.0},
                                    "timefilter":{"type":"range","times":time_str,
                                                    "resolution":'D',"resample":"mean"},"functions":[],
                                                    "id":"3ae5409cd477077ae5c87d0d012149cf"}

@simonweppe you aren't doing anything wrong, there is an issue on our side, we are working to fix it. Thanks for sending the reproducible example.

This was an issue the datamesh gateway, not the library itself. This has been fixed and should now work as expected.

Cheers - working fine now

Hi @rafa-guedes , @ondave ,
Not directly the same issue..but along the same lines so adding here.
We generally query variables one by one in our wrappers when downloading data, and then merge into a single file afterwards. It seems that the query with daily averaging fails when the queried variable has no time dimension (which can happen in our case when we query SCHISM_hgrid_node_x for example). It works fine if there is at least another variable that does have a time dimensions.
This fails :
{'datasource': 'oceanum_ocean_nz_schism_v1', 'timefilter': {'type': 'range', 'times': [datetime.datetime(2020, 1, 1, 0, 0), datetime.datetime(2020, 1, 2, 0, 0)], 'resolution': 'D'}, 'geofilter': {'type': 'bbox', 'geom': [172.0, -43.0, 178.0, -39.0], 'resolution': 0.0}, 'variables': ['SCHISM_hgrid_node_x']}

This works fine:
{'datasource': 'oceanum_ocean_nz_schism_v1', 'timefilter': {'type': 'range', 'times': [datetime.datetime(2020, 1, 1, 0, 0), datetime.datetime(2020, 1, 2, 0, 0)], 'resolution': 'D'}, 'geofilter': {'type': 'bbox', 'geom': [172.0, -43.0, 178.0, -39.0], 'resolution': 0.0}, 'variables': ['SCHISM_hgrid_node_x', 'elev']}

Maybe it could return the original variable (not daily-averaged) rather than fail ?

This was a gateway bug that occurred if a a subset of variables without time were selected from a datasource with time - now fixed

Thanks - the above queries do work now, but I think there might still be something odd with the daily averaging, only if the specified bounds are beyond the SCHISM data extent (which I was setting to make sure I'd get the full extents East-West).
This works :
    query4 = {'datasource': 'oceanum_ocean_nz_schism_v1', 'timefilter': {'type': 'range', 'times': [datetime.datetime(2020, 1, 1, 0, 0), datetime.datetime(2020, 1, 2, 0, 0)], 'resolution': 'D'}, 'geofilter': {'type': 'bbox', 'geom': [172.0, -43.0, 178.0, -39.0], 'resolution': 0.0}, 'variables': ['elev']}
But this fails :
    query4 = {'datasource': 'oceanum_ocean_nz_schism_v1', 'timefilter': {'type': 'range', 'times': [datetime.datetime(2020, 1, 1, 0, 0), datetime.datetime(2020, 1, 2, 0, 0)], 'resolution': 'D'}, 'geofilter': {'type': 'bbox', 'geom': [168.0, -43.0, 178.0, -39.0], 'resolution': 0.0}, 'variables': ['elev']}
If I use the native time resolution (with the same large extents), it works ok
    query4 = {'datasource': 'oceanum_ocean_nz_schism_v1', 'timefilter': {'type': 'range', 'times': [datetime.datetime(2020, 1, 1, 0, 0), datetime.datetime(2020, 1, 2, 0, 0)], 'resolution': 'native'}, 'geofilter': {'type': 'bbox', 'geom': [168.0, -43.0, 178.0, -39.0], 'resolution': 0.0}, 'variables': ['elev']}

mmh I thought I could work around that by not setting a geofilter, but this fails too :
   query3 = {'datasource': 'oceanum_ocean_nz_schism_v1', 'timefilter': {'type': 'range', 'times': [datetime.datetime(2020, 1, 1, 0, 0), datetime.datetime(2020, 1, 2, 0, 0)], 'resolution': 'D'}, 'variables': ['elev']}
it works if I add a geofilter where bounds are within the SCHISM grid

Another gateway bug, fixed and redeployed


Add Traditional Chinese (zh_tw.json)

Add Traditional Chinese localization

Hey! Thanks for your contribution! :D
If you like, you can send me your Minecraft username, so I can add you to the list of contributors (You'll be able to use an additional wolf texture that works similiar to capes).

Of course my Minecraft username
Is 'dirtTW'


Tests should stub all outgoing requests

[ ] ARAppSearchViewControllerSpec test_searching__with_results__displays_search_results_as_iphone

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/artist/aes-plus-f/image" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/artist/john-f-carlson/image" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/artist/f-scott-hess/image" withResponse:@[]];

[ ] ARAppSearchViewControllerSpec test_searching__with_results__displays_search_results_as_ipad

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/artist/aes-plus-f/image" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/artist/john-f-carlson/image" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/artist/f-scott-hess/image" withResponse:@[]];

[ ] ARArtistViewControllerSpec test_displays_artwork_counts_as_iphone

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?artists%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/artists?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artist%5B%5D=some-artist" withResponse:@[]];

[ ] ARArtistViewControllerSpec test_displays_artwork_counts_as_ipad

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?artists%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/artists?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artist%5B%5D=some-artist" withResponse:@[]];

[ ] ARArtistViewControllerSpec test_no_artworks_as_iphone

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?artists%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/artists?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artist%5B%5D=some-artist" withResponse:@[]];

[ ] ARArtistViewControllerSpec test_no_artworks_as_ipad

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?artists%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/artists?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artist%5B%5D=some-artist" withResponse:@[]];

[ ] ARArtistViewControllerSpec test_artworks_masonry_as_iphone

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?artists%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/artists?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artist%5B%5D=some-artist" withResponse:@[]];

[ ] ARArtistViewControllerSpec test_artworks_masonry_as_ipad

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?artists%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/artists?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artist%5B%5D=some-artist" withResponse:@[]];

[ ] ARArtistViewControllerSpec test_tworows_artworks_masonry_as_iphone

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?artists%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/artists?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artist%5B%5D=some-artist" withResponse:@[]];

[ ] ARArtistViewControllerSpec test_tworows_artworks_masonry_as_ipad

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?artists%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/artists?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artist%5B%5D=some-artist" withResponse:@[]];

[ ] ARArtistViewControllerSpec test_with_a_bio_as_iphone

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?artists%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/artists?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artist%5B%5D=some-artist" withResponse:@[]];

[ ] ARArtistViewControllerSpec test_with_a_bio_as_ipad

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?artists%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/artists?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artist%5B%5D=some-artist" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"about:blank" withResponse:@[]];

[ ] ARArtworkFavoritesNetworkModelSpec test_getFavorites__success_without_artworks__does_not_increment_currentPage

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/collection/saved-artwork/artworks?page=1&private=true&size=15&sort=-position&total_count=1&user_id=4d78f315faf6426b4f000011" withResponse:@[]];

[ ] ARArtworkViewControllerSpec test_buy_button__posts_order_if_artwork_has_1_edition_set

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/order/pending/items" withResponse:@[]];

[ ] ARArtworkViewControllerSpec test_buy_button__displays_inquiry_form_if_artwork_has_multiple_sets

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/order/pending/items" withResponse:@[]];

[ ] ARArtworkViewControllerSpec test_buy_button__displays_inquiry_form_if_request_fails

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/order/pending/items" withResponse:@[]];

[ ] ARArtworkViewControllerSpec test_shows_an_upublished_banner

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/collection/saved-artwork/artworks?artworks%5B%5D=artwork-id&private=true&user_id=" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/sales?artwork%5B%5D=artwork-id" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/artwork/artwork-id" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/fairs?artwork%5B%5D=artwork-id" withResponse:@[]];

[ ] ARArtworkViewControllerSpec test_at_a_closed_auction__displays_artwork_on_iPhone

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/posts?artwork%5B%5D=artwork-id" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/artwork/artwork-id" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/related/layer/synthetic/main/artworks?artwork%5B%5D=artwork-id" withResponse:@[]];

[ ] ARFairFavoritesNetworkModelSpec test_ignores_artworks_without_a_partner

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairFavoritesNetworkModelSpec test_when_downloading_exhibitor_data__generates_random_exhibitors_when_no_values_are_returned_from_API

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/collection/saved-artwork/artworks?fair_id=fair-id&private=1&user_id=4d78f315faf6426b4f000011" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?fair_id=fair-id" withResponse:@[]];

[ ] ARFairFavoritesNetworkModelSpec test_when_downloading_exhibitor_data__returns_correct_exhibitors_when_values_are_returned_from_API

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/collection/saved-artwork/artworks?fair_id=fair-id&private=1&user_id=4d78f315faf6426b4f000011" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?fair_id=fair-id" withResponse:@[]];

[ ] ARFairGuideContainerViewControllerSpec test_a_loaded_view_controller__that_has_appeared__has_a_valid_snapshot

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairGuideContainerViewControllerSpec test_handles_a_changed_user_correct

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairGuideViewControllerSpec test_looks_correct_with_a_logged_in_user

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/collection/saved-artwork/artworks?fair_id=fair-id&private=1&user_id=" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/profiles?fair_id=fair-id" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?fair_id=fair-id" withResponse:@[]];

[ ] ARFairGuideViewControllerSpec test_adds_a_top_border

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/collection/saved-artwork/artworks?fair_id=fair-id&private=1&user_id=" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/profiles?fair_id=fair-id" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/me/follow/artists?fair_id=fair-id" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__sets_its_fair

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__hides_screen_contents

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__fair__sets_its_fair

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__fair__displays_search_box

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__fair__maps_features

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__fair__creates_and_sets_its_mapDataSource

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__fair_with_selection__adds_title

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__fair_with_selection__constrains_the_title_correctly_in_a_navigation_controller

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__hides_on_screen_contents__when_showing_artists

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__hides_on_screen_contents__when_showing_partner_shows

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__interactions__hides_the_callout_when_tapped

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__calls_api__when_selecting_an_artist

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__calls_api__when_selecting_a_partner_show

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__calling_execute_on_the_returned_command__when_selecting_an_artist__and_API_succeeds

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__calling_execute_on_the_returned_command__when_selecting_an_artist__and_API_fails

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__calling_execute_on_the_returned_command__when_selecting_a_partner_show__and_API_succeeds

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairMapViewControllerSpec test_on_init__calling_execute_on_the_returned_command__when_selecting_a_partner_show__and_API_fails

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairSearchViewControllerSpec test_init__with_search_results__combines_results_from_local_and_remote_search

[OHHTTPStubs<EMAIL_ADDRESS>withResponse:@[]];

[ ] ARFairViewControllerSpec test_with_no_map__without_a_profile__sets_fair_title_and_dates

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFairViewControllerSpec test_with_no_map__view_is_loaded__has_no_map

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/maps?fair_id=a-fair-affair" withResponse:@[]];

[ ] ARFairViewControllerSpec test_with_a_map__has_a_map

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/a-fair-affair" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARFileUtilsTestsSpec test_logged_in_user_documents_folder__userDocumentsFolder

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/maps?fair_id=a-fair-affair" withResponse:@[]];

[ ] ARHeroUnitsNetworkModelSpec test_heroes__only_retrieves_active_hero_units

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/sets?mobile=true&owner_id=a-fair-affair&owner_type=Fair&published=true&sort=key" withResponse:@[]];

[ ] ARInquireForArtworkViewControllerSpec test_logged_in__logged_out_displays_artsy_specialist_as_iphone

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARInquireForArtworkViewControllerSpec test_sending__displays_success_message

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARLoginViewControllerSpec test_login_view_controller__login__with_username_and_password__succeeds

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARLoginViewControllerSpec test_login_view_controller__login__twitter__succeeds

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARLoginViewControllerSpec test_login_view_controller__forgot_password__displays_an_error_on_failure_to_send_a_reset_password_email

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARSystemTimeTestsSpec test_in_sync__returns_YES

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] ARTabViewSpec test_sets_current_and_previous_view_index

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/system/time" withResponse:@[]];

[ ] ARTabViewSpec test_correctly_shows_a_navigation_controller__at_first_index

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/system/time" withResponse:@[]];

[ ] ARTopMenuViewControllerSpec test_navigation__resets_the_search_view_controller_to_the_root

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/xapp_token?client_id=e750db60ac506978fc70&client_secret=3a33d2085cbd1176153f99781bbce7c6" withResponse:@[]];

[ ] ARURLItemProviderSpec test_url_and_image_thumbnail__with_valid_imageURL__thumbnailImageForActivityType__returns_nil_for_AirDrop_sharing

[OHHTTPStubs stubJSONResponseAtPath:@"http://image.com/image.jpg" withResponse:@[]];

[ ] ARUserManagerSpec test_login__with_username_and_password__success__stores_user_data_after_login

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/site_hero_units?enabled=true&mobile=true" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/sets?key=eigen%3Afeed-links&mobile=true&published=true&sort=key" withResponse:@[]];
[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/sets?key=eigen%3Abeta-feed-links&mobile=true&published=true&sort=key" withResponse:@[]];

[ ] ARUserManagerSpec test_login__with_a_Twitter_token__success__sets_current_user

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/set/52277573c9dc24da5b00020c/items" withResponse:@[]];

[ ] ARUserManagerSpec test_createUserWithName__sets_current_user

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/set/5308e7be9c18db75fd000343/items" withResponse:@[]];

[ ] OrderedSetSpec test_getItemsFeaturedLink

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

[ ] OrderedSetSpec test_getItemsSale

[OHHTTPStubs stubJSONResponseAtPath:@"/api/v1/fair/fair-id/shows?size=15" withResponse:@[]];

Fixed by https://github.com/artsy/eigen/pull/575


Cannot copy TUI text on Mac

Using TUI with selection on, there seem to be no keyboard shortcut to copy the selection.
CTRL-C attempts to kill the process.
CMD-C just blips.
Any idea how this can be done?

It does. Ha.
Even after you said it took me a while to find this:

the logs Title should change to Press Enter to Copy

Thanks!

I can't find the answer in the GitHub repo or the docs: How do I enable selection mode?

Hi @mikenikles,
It is hidden if you use Wayland. If not the default shortcut is CTRL+S

🫣 It's literally listed in the shortcuts dialog... Thanks for pointing me to the obvious :).


Az login fails with OpenSSL error on Ubuntu 14.04 apt-get installation

We install the azure cli on an Ubuntu 14.04 VM using apt-get in some of our automation scenarios and we started getting a new error yesterday. After running az login, we see this:

Please ensure you have network connection. Error detail: Can't connect to HTTPS URL because the SSL module is not available.

For reference this is how we install the cli:
sudo apt-get update && sudo apt-get install -y libssl-dev libffi-dev python-dev
echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/azure-cli/ wheezy main" | sudo tee /etc/apt/sources.list.d/azure-cli.list
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
sudo apt-get install -y apt-transport-https
sudo apt-get -y update && sudo apt-get install -y azure-cli

Like I said, we do this in automation (aka it's a clean VM every time) and we haven't changed anything about how we install the CLI. I tried interactively installing with the https://aka.ms/InstallAzureCli command and did not reproduce this error.

@EricJizbaMSFT what's the version of the azure-cli did you get?

azure-cli (2.0.8)

acr (2.0.6)
acs (2.0.8)
appservice (0.1.8)
batch (3.0.1)
billing (0.1.1)
cdn (0.0.4)
cloud (2.0.4)
cognitiveservices (0.1.4)
command-modules-nspkg (2.0.0)
component (2.0.5)
configure (2.0.8)
consumption (0.1.1)
core (2.0.8)
cosmosdb (0.1.8)
dla (0.0.8)
dls (0.0.8)
feedback (2.0.4)
find (0.2.4)
interactive (0.3.4)
iot (0.1.7)
keyvault (2.0.6)
lab (0.0.6)
monitor (0.0.6)
network (2.0.8)
nspkg (3.0.0)
profile (2.0.6)
rdbms (0.0.3)
redis (0.2.5)
resource (2.0.8)
role (2.0.6)
sf (1.0.3)
sql (2.0.5)
storage (2.0.8)
vm (2.0.8)

Python (Linux) 3.6.1 (default, Jun 13 2017, 22:00:28)
[GCC 5.4.0 20160609]

Python location '/opt/az/bin/python3'

Thank you @EricJizbaMSFT, I'm looking into this.

On my Ubuntu 14.04 VM where I ran the interactive install script (aka where the issue did not repro), I noticed the python version looks different. Not sure if that matters:
Python (Linux) 2.7.6 (default, Oct 26 2016, 20:30:19)
[GCC 4.8.4]

Python location '/home/erijiz/lib/azure-cli/bin/python'

I'm on a Mint 18, and it works. I'll provision a Ubuntu 14 VM and give it a try.

I can repro on Ubuntu 14.04

It seems to be an issue specific to Ubuntu 14.04. I'm rebuilding the package on Ubuntu 14.04.

I just republish a deb package to our repository. It will take a few minutes to take effect.

@EricJizbaMSFT I republished the package and tested on Ubuntu 14.04. It's working now. Please make sure you clean the apt-get cache before reinstall the azure-cli. Thank you for reporting the issue and sorry for the inconvenience.

Yep working for me now - thank you!

I have the exact same issue on debian stretch.
az --version:
azure-cli (2.0.8)

acr (2.0.6)
acs (2.0.8)
appservice (0.1.8)
batch (3.0.1)
billing (0.1.1)
cdn (0.0.4)
cloud (2.0.4)
cognitiveservices (0.1.4)
command-modules-nspkg (2.0.0)
component (2.0.5)
configure (2.0.8)
consumption (0.1.1)
core (2.0.8)
cosmosdb (0.1.8)
dla (0.0.8)
dls (0.0.8)
feedback (2.0.4)
find (0.2.4)
interactive (0.3.4)
iot (0.1.7)
keyvault (2.0.6)
lab (0.0.6)
monitor (0.0.6)
network (2.0.8)
nspkg (3.0.0)
profile (2.0.6)
rdbms (0.0.3)
redis (0.2.5)
resource (2.0.8)
role (2.0.6)
sf (1.0.3)
sql (2.0.5)
storage (2.0.8)
vm (2.0.8)

Python (Linux) 3.6.1 (default, Jun 14 2017, 11:33:22)
[GCC 4.8.4]

Python location '/opt/az/bin/python3'

The same issue with Debian Stretch
azure-cli (2.0.9)

acr (2.0.7)
acs (2.0.9)
appservice (0.1.9)
batch (3.0.2)
billing (0.1.2)
cdn (0.0.5)
cloud (2.0.5)
cognitiveservices (0.1.5)
command-modules-nspkg (2.0.0)
component (2.0.6)
configure (2.0.9)
consumption (0.1.2)
core (2.0.10)
cosmosdb (0.1.9)
dla (0.0.9)
dls (0.0.9)
feedback (2.0.5)
find (0.2.5)
interactive (0.3.5)
iot (0.1.8)
keyvault (2.0.7)
lab (0.0.7)
monitor (0.0.7)
network (2.0.9)
nspkg (3.0.0)
profile (2.0.7)
rdbms (0.0.4)
redis (0.2.6)
resource (2.0.9)
role (2.0.7)
sf (1.0.4)
sql (2.0.6)
storage (2.0.9)
vm (2.0.9)

Python (Linux) 3.6.1 (default, Jun 22 2017, 12:11:55)
[GCC 4.8.4]

Python location '/opt/az/bin/python3

@qwazer and @benalbrecht thanks for reporting. Debian Stretch is very new, we haven't tested on it yet. We have an issue tracking this #3863. Please follow that issue.

I am on stretch as well and can't seem to get it to work. I get the same error:
~$ az login Please ensure you have network connection. Error detail: HTTPSConnectionPool(host='login.microsoftonline.com', port=443): Max retries exceeded with url: /common/oauth2/devicecode?api-version=1.0 (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.",))
~$ az --version
azure-cli (2.0.13)

acr (2.0.10)
acs (2.0.12)
appservice (0.1.12)
batch (3.1.1)
billing (0.1.3)
cdn (0.0.6)
cloud (2.0.7)
cognitiveservices (0.1.6)
command-modules-nspkg (2.0.1)
component (2.0.7)
configure (2.0.10)
consumption (0.1.3)
container (0.1.8)
core (2.0.13)
cosmosdb (0.1.11)
dla (0.0.10)
dls (0.0.12)
eventgrid (0.1.1)
feedback (2.0.6)
find (0.2.6)
interactive (0.3.7)
iot (0.1.10)
keyvault (2.0.8)
lab (0.0.9)
monitor (0.0.8)
network (2.0.12)
nspkg (3.0.1)
profile (2.0.10)
rdbms (0.0.5)
redis (0.2.7)
resource (2.0.12)
role (2.0.10)
sf (1.0.6)
sql (2.0.9)
storage (2.0.12)
vm (2.0.12)

Python (Linux) 3.6.1 (default, Aug 11 2017, 17:14:09)
[GCC 4.8.4]

Python location '/opt/az/bin/python3'

I get this error too on the official Jenkins Docker image. Azure CLI installed with apt-get described in the docs.
az --version
azure-cli (2.0.14)

acr (2.0.10)
acs (2.0.13)
appservice (0.1.13)
batch (3.1.1)
billing (0.1.3)
cdn (0.0.6)
cloud (2.0.7)
cognitiveservices (0.1.6)
command-modules-nspkg (2.0.1)
component (2.0.7)
configure (2.0.10)
consumption (0.1.3)
container (0.1.8)
core (2.0.13)
cosmosdb (0.1.11)
dla (0.0.10)
dls (0.0.12)
eventgrid (0.1.2)
feedback (2.0.6)
find (0.2.6)
interactive (0.3.7)
iot (0.1.10)
keyvault (2.0.8)
lab (0.0.9)
monitor (0.0.8)
network (2.0.12)
nspkg (3.0.1)
profile (2.0.10)
rdbms (0.0.5)
redis (0.2.7)
resource (2.0.12)
role (2.0.10)
sf (1.0.6)
sql (2.0.9)
storage (2.0.12)
vm (2.0.12)

Python (Linux) 3.6.1 (default, Aug 15 2017, 23:11:30)
[GCC 4.8.4]

Python location '/opt/az/bin/python3'

same error with PureOS

same error on PureOS
using deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ wheezy main

Can confirm that this is still a problem when using a custom Docker image based on Ubuntu 14.04.
Fails when installed with apt-get. Succeeds when installed via curl.

@derekbekoe ?

Related https://github.com/Azure/azure-cli/issues/4360

If anyone has steps to reproduce this, it would be useful:
$ docker run -it ubuntu:14.04 bash
# history
    1  apt-get update && apt-get install apt-transport-https
    2  apt-key adv --keyserver packages.microsoft.com --recv-keys 52E16F86FEE04B979B07E28DB02C46DF417A0893
    3  apt-get update && apt-get install azure-cli
    4  az login

I tried the following and was able to log in fine.

i'm having this issue with latest ubuntu shell for windows. basically i can't set login:
Please ensure you have network connection. Error detail: HTTPSConnectionPool(host='login.microsoftonline.com', port=443): Max retries exceeded with url: /common/oauth2/devicecode?api-version=1.0 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f19559fdeb8>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution',))

@derekbekoe Is apt-transport-https considered required for installation of the key on Ubuntu systems? This may be a missing requirement in some of our install instructions.

@sptramer We already document it for the apt-get install. I'm not aware of it being required elsewhere.

You're correct,it's just that the order is different. I'm not sure that it matters in this case, depending on how apt performs key transfer.

looks like the apt-get install version comes with python3 the note on the apt-get install page,
seems unrelated and the python version installed with azure-cli is missing the ssl module:
# /opt/az/bin/python3 -m pip install gnutls
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting gnutls
  Could not fetch URL https://pypi.python.org/simple/gnutls/: There was a problem confirming the ssl certificate: Can't connect to HTTPS URL because the SSL module is not available. - skipping
  Could not find a version that satisfies the requirement gnutls (from versions: )
No matching distribution found for gnutls

$ az --version
azure-cli (2.0.21)

acr (2.0.15)
acs (2.0.19)
appservice (0.1.20)
backup (1.0.3)
batch (3.1.7)
batchai (0.1.3)
billing (0.1.6)
cdn (0.0.10)
cloud (2.0.10)
cognitiveservices (0.1.9)
command-modules-nspkg (2.0.1)
component (2.0.8)
configure (2.0.12)
consumption (0.1.6)
container (0.1.13)
core (2.0.21)
cosmosdb (0.1.15)
dla (0.0.15)
dls (0.0.18)
eventgrid (0.1.5)
extension (0.0.6)
feedback (2.0.6)
find (0.2.7)
interactive (0.3.11)
iot (0.1.14)
keyvault (2.0.14)
lab (0.0.13)
monitor (0.0.12)
network (2.0.18)
nspkg (3.0.1)
profile (2.0.15)
rdbms (0.0.9)
redis (0.2.10)
reservations (0.1.0)
resource (2.0.18)
role (2.0.14)
servicefabric (0.0.6)
sql (2.0.15)
storage (2.0.19)
vm (2.0.18)

Python location '/opt/az/bin/python3'
Extensions directory '/home/user/.azure/cliextensions'

Python (Linux) 3.6.1 (default, Nov 10 2017, 16:23:17)
[GCC 4.8.4]

Legal docs and information: aka.ms/AzureCliLegal

$ python --version
Python 2.7.14
$ python3 --version
Python 3.6.3

Had the SSL and the python orphaned processes hanging on Debian Stretch (even just running "az" would actually fire up python with 100% usage). For now I just downloaded and installed the following package manually. Fixed both issues. Not sure if this would have an affect on .net core but I only use the CLI on this machine..
64 bit...
https://packages.debian.org/wheezy/amd64/libssl1.0.0/download
Other architectures
https://packages.debian.org/wheezy/libssl1.0.0
sudo dpkg -i libssl1.0.0_1.0.1t-1+deb7u3_amd64.deb

@leemorton Thank you very much that helped solve the issue for now!
az didn't hang on my Debian Stretch but got the same error as others.
Just for recap: az requires libssl1.0.0, but Stretch comes with 1.1.0f version. Get the Wheezy version as leemorton specified and install with dpkg -i ibssl1.0.0_1.0.1t-1+deb7u3_amd64.deb. They are compatible.
Once again - thank you.

@ernescz @leemorton Thank you for looking into the SSL issue. The insallation instructions for the CLI will be updated to indicate that OpenSSL 1.0.2 is required.

The fix is out.
We have .debs for Ubuntu: trusty, xenial, artful & Debian: wheezy, jessie, stretch.
export AZ_REPO=$(lsb_release -cs)
echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ $AZ_REPO main" | sudo tee /etc/apt/sources.list.d/azure-cli.list

Then follow the rest of the instructions at https://docs.microsoft.com/en-us/cli/azure/install-azure-cli-apt?view=azure-cli-latest#install

Thanks!

I use azure-cli on testing. I normally reference xenial in my sources.list but as testing evolved I eventually ran into this issue. For those of us running testing or above, it's going to be really hard to rely on debs until a snap is available. In the meantime, I just go the pip way here:
sudo apt install python3 libffi6 libssl1.1 -y
sudo pip3 install azure-cli
sudo sed -i 's/python/python3/' /usr/local/bin/az

All of which seems to be very unsupported.

@derekbekoe Seeing this issue's exact symptoms on Ubuntu Bionic (inside Windows Subsystem for Linux) using az 2.0.58 installed from apt. Did this fix get missed as Ubuntu advanced?

For those of us running testing or above, it's going to be really hard to rely on debs until a snap is available

BTW, I did start using the snap and as soon as I did it was outdated in the stable channel so I had to switch to the edge channel so that isn't viable either. I'm now testing the nix overlay for azure-cli and if that doesn't work, there's linuxbrew as of a few weeks ago. None of which is really a substitute for first-party support 😢


some kind of docker file for dotmesh

a lot of the value in docker is having a reproducible way of getting to a certain state in the image
could we have a similar datamesh file which gives you the steps to recreate a certain state?

Related to data provenance in dotscience.

Transfer this to roadmap.


Convolution Bias

Hello again,
the bias variable in convolution need not to be of shape: convolution.shape. Only the channel bias value should be trainable:
                let biasSeq = (0 ..< outChannels.intValue).map { _ in Float32.random(in: biasInitRule.range(forNormal: k)) }
                let biasData = Data(bytes: biasSeq, count: biasSeq.count * MemoryLayout<Float32>.stride)
                biasVar = graph.variable(with: biasData, shape: convolution.shape!, dataType: .float32, name: biasName)
                weightsBiases[biasName] = biasVar

I would assume the shape should be [1,1,1,outChannels]. Just not clear, how to implement the addition.

You can't use bias of shape different from convolution shape, because addition op need tensors with same size. (or maybe I don't know and don't understand how and why you need this)
The only way I can imagine how to train ONLY channel bias I can image is:

Use variable of conv. shape as always.
But before adding it, made this move: use 2 constants a and b (of conv shape) where a is 0 everywhere except channel positions, and 1 at channels positions; and b is zeros at channel positions and Float32.random(in: biasInitRule.range(forNormal: k) in others

take weights, multiply it with a (it would erase everything except channel info), and then add b it would not affect channel positions and restore basic random values in other places.
what I mean:
var variables = [1, 2, 3, 4, 5, 7, 10, 15, 23] // imagine if channels are every 3th
let a = [0, 0, 1, 0, 0, 1, 0, 0, 1]
let b = [1, 2, 0, 4, 5, 0, 10, 15, 23]

let conv = [...]
let biasedConv = conv + ((variables * a) + b)

variable would be trainable all the shape, but it doesn't matter because in the inference you will use only channel values

Thanks again for your proposal and I will think over it.
BTW: Have you once applied dropout ? As soon as I throw in a dropout layer, the graph fails to generate the gradients.


Move the crytpo headers out of public/internal and into private folders within src.

Part of https://github.com/Azure/azure-sdk-for-cpp/issues/6118

API change check
API changes are not detected in this pull request.


registrations: don't show "Create Admin" on signup error if there is an admin

Devise does not redirect to the 'new' page on signup error, but it renders it.
This means that on signup error the @admin view variable will be nil, thus
showing the "Create Admin" button. In this commit a before_filter has been
added for both the 'new' and the 'create' actions, so this case is always
handled consistently.
Signed-off-by: Miquel Sabaté<EMAIL_ADDRESS>

Thanks


Using PACT for integration tests

Hi,
We would like to use the pact fragment above in order to run a mock server for our tests using the following code:
        DslPart testInput = new PactDslJsonBody()
                .stringType("name","Temporary name")
                .stringType("description", "Temporary description")

        JSONObject testOutput = new JSONObject()
                .put("name", "my name")
                .put("description", "my description")
                .put("enabled", true)
                .put("size", 10)

        // /Header data:
        Map<String, String> headerData = new HashMap<String, String>();
        headerData.put("Content-Type", "application/json");

        // Compose the pact Fragment
        PactFragment pactFragment = ConsumerPactBuilder
                .consumer("serviceA")
                .hasPactWith("serviceB")
                .given("name exist")
                .uponReceiving("postService_Nominal")
                .path("/v1/services")
                .method("POST").body(testInput.toString())
                .willRespondWith()
                    .status(201)
                    .headers(headerData)
                    .body(testOutput.toString())
                .toFragment();

new Thread(new Runnable() {
            @Override
            public void run() {
                MockProviderConfig config = MockProviderConfig.httpConfig("localhost", 8884);
                VerificationResult result = pactFragment.runConsumer(config, new TestRun() {
                    @Override
                    public void run(MockProviderConfig config) {
                        try {
                            System.out.println("Pact server started!");
                            Thread.sleep(100000);
                            System.out.println("Pact server ended!");
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                    }
                });
                assertEquals(ConsumerPactTest.PACT_VERIFIED, result);
            }
        }).start();

The question is the following one:
How to check only keys and not values from pact?
For instance, we have the following input:
{
"name": "my name 01",
"description": "my description 02"
}
As you can see this one is not exactly the same than the above pact fragment.
Keys are correct but values are not.
And this check fails with this implementation....
Thanks for helping us
Regards,

We saw some methods like .matchPath(), .matchHeader() or .matchQuery().
Is there any equivalent for body content check ?
Moreover, we saw that with pact provider we can validate only the type for a field and it works, why not the same for pact consumer side ?

If you use body but pass the PactDslJsonBody class directly instead of calling toString(), you can use the matching functions that it provides.
i.e.,
// Compose the pact Fragment
        PactFragment pactFragment = ConsumerPactBuilder
                .consumer("serviceA")
                .hasPactWith("serviceB")
                .given("name exist")
                .uponReceiving("postService_Nominal")
                .path("/v1/services")
                .method("POST").body(testInput) // <-- don't call toString()
                .willRespondWith()
                    .status(201)
                    .headers(headerData)
                    .body(testOutput.toString())
                .toFragment();

Hi, thanks for the response !
As you recommended, we removed the .toString(), but now, it doesn't work. So, just to be sure, can you verify if we are wrong or not with the following syntax :
DslPart testInput = new PactDslJsonBody()
        .stringType("name","Temporary name")
        .stringType("description", "Temporary description")
        .stringType("field1", "foo")
        .booleanType("enabled", true)
        .object("data")
            .minArrayLike("records", 1)
                .numberType("position", 1)
                .object("payload")
                    .stringType("uio", "602")
                    .stringType("tfr", "03")
                .closeObject()
                .closeObject()
            .closeArray()
        .closeObject();

It generates the following matching rules :
.data.records[*].position={match=integer},
.name={match=type},
.data.records[*].payload.uio={match=type},
.enabled={match=type},
.data.records[*].payload.tfr={match=type},
.data.records={min=1, match=type},
.field1={match=type},
.description={match=type}}

And this json validation fails even if it's exactly the same values as we wrote in the java code :
{
    "field1":"foo",
    "enabled":true,
    "data":{
        "records":[{
            "payload":{
                "uio":"03",
                "tfr":"602"
             },
             "position":1
        }]},
"name":"Temporary name",
"description":"Temporary description"
}

But again, it works with .toString(), why ? What can we do in order to see what we do wrong ? Because for the moment, we just know it's a failure without any details.

By calling toString() converts the DSL object graph into a JSON document, so you loose all the matching rules. In essence, you are providing an interaction that can only ever match that exact JSON document.
When you call runConsumer the result will be either a PactMismatch or a PactError which will have more details as to what failed.


[Refactor][UI]Add a back button when viewing an error file

Purpose of the pull request

make dolphinscheduler-ui/src/service/service.ts look friendly
Add a back button when viewing an error file

Brief change log

make dolphinscheduler-ui/src/service/service.ts look friendly

Before

After

Add a back button when viewing an error file

Before

After

Verify this pull request
This change added tests and can be verified as follows:

Manually verified the change by testing locally.

Codecov Report

Merging #13354 (f0e93cb) into dev (1edee62) will decrease coverage by 0.02%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev   #13354      +/-   ##
============================================
- Coverage     39.47%   39.44%   -0.03%
+ Complexity     4313     4308       -5
============================================
  Files          1083     1083
  Lines         40756    40726      -30
  Branches       4673     4654      -19
============================================
- Hits          16088    16066      -22
+ Misses        22880    22875       -5
+ Partials       1788     1785       -3

Impacted Files
Coverage Δ

...r/plugin/registry/zookeeper/ZookeeperRegistry.java
43.54% <0.00%> (-6.46%)
:arrow_down:

...er/master/dispatch/host/assign/RandomSelector.java
77.77% <0.00%> (-5.56%)
:arrow_down:

...org/apache/dolphinscheduler/remote/utils/Host.java
42.55% <0.00%> (-2.13%)
:arrow_down:

...hinscheduler/plugin/alert/script/ScriptSender.java
70.58% <0.00%> (-1.64%)
:arrow_down:

...e/dolphinscheduler/remote/NettyRemotingClient.java
51.38% <0.00%> (-1.39%)
:arrow_down:

...cheduler/plugin/alert/dingtalk/DingTalkSender.java
34.13% <0.00%> (-0.78%)
:arrow_down:

...pache/dolphinscheduler/common/utils/DateUtils.java
68.30% <0.00%> (-0.55%)
:arrow_down:

...rver/master/runner/task/BlockingTaskProcessor.java
75.86% <0.00%> (-0.55%)
:arrow_down:

...inscheduler/plugin/registry/etcd/EtcdRegistry.java
50.69% <0.00%> (-0.35%)
:arrow_down:

.../dolphinscheduler/plugin/task/datax/DataxTask.java
36.62% <0.00%> (-0.26%)
:arrow_down:

... and 18 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


IndicatorsControl overflow

First, thanks for the tool!
I want to put the Indicators Control between the cards and the colored button group, but when I try to TranslateY it is being cut by the end of the CarouselView.

I tried making the CarouselView bigger and the Card smaller, so there would be a spare space to the Controls, but this way I was not able to set the sizes according to the screen size (I use Grids to achieve it right now).
Any help?
Thanks!

I to need to control the location of the IndicatorsControl. I defined an IndicatorsControl outside of the Carousel/Cardview which allowed me to move it wherever I needed to in a layout. Then the IndicatorsControl properties need to be bound to the Carousel/CardView.
	<panIndicators:IndicatorsControl
                UseParentAsBindingContext="False"
                HorizontalOptions="Center"
                BindingContext="{x:Reference PanCardView}"
                Margin="5"
                SelectedIndex="{Binding SelectedIndex}"
                ItemsCount="{Binding ItemsCount}"
                IndicatorsContexts="{Binding ItemsSource}"
                IsUserInteractionRunning="{Binding IsUserInteractionRunning}"
                IsAutoInteractionRunning="{Binding IsAutoInteractionRunning}"/>

Its important to assign false to the UseParentAsBindingContext property. The current implementation of the control assumes you're using it as a child of Carousel/Cardview and then sets the BindingContext to the parent.

Hi all
@ronaldosena yes, as @eamreyes said, it's possible.
But as I remember, you needn't have to bind every property, next lines would be enough:
<StackLayout>
    <cards:CarouselView x:Name="Carousel" />
    <panIndicators:IndicatorsControl
                UseParentAsBindingContext="False"
                BindingContext="{x:Reference PanCardView}"
</StackLayout>

Because all bindings are defined at constructor. Indeed, as @eamreyes noted, you should set UseParentAsBindingContext to False and bind indicators bindingContext to your Carousel/Cards control.


Switch Gnosis Chain rpc, old one deprecated

https://developers.gnosischain.com/for-developers/developer-resources/update-rpc-url

@PeterTheOne reach me in the Discord 1Hive, my handle Felipe Novaes Rocha#2364


Frequent disconnects with DSC panel and EVL4

All of my alarm panel entities go unavailable after being connected for an hour. After a reboot they come back online.
I've added all the errors in my Logs that I can see.
This error originated from a custom integration.

Logger: custom_components.envisalink_new.pyenvisalink.envisalink_base_client
Source: custom_components/envisalink_new/pyenvisalink/envisalink_base_client.py:138
Integration: Envisalink_new
First occurred: June 21, 2023 at 7:20:08 PM (1483 occurrences)
Last logged: June 22, 2023 at 12:29:12 PM

Caught unexpected exception: ConnectionResetError(104, 'Connection reset by peer')
Caught unexpected exception: TypeError('EnvisalinkController.async_login_timeout_callback() takes 1 positional argument but 2 were given')

This error originated from a custom integration.

Logger: custom_components.envisalink_new.pyenvisalink.envisalink_base_client
Source: custom_components/envisalink_new/pyenvisalink/envisalink_base_client.py:139
Integration: Envisalink_new
First occurred: June 21, 2023 at 7:20:08 PM (1467 occurrences)
Last logged: June 22, 2023 at 12:29:12 PM

Exception while closing connection: [Errno 104] Connection reset by peer

This error originated from a custom integration.

Logger: custom_components.envisalink_new.pyenvisalink.envisalink_base_client
Source: custom_components/envisalink_new/pyenvisalink/envisalink_base_client.py:109
Integration: Envisalink_new
First occurred: June 21, 2023 at 7:19:38 PM (580 occurrences)
Last logged: June 22, 2023 at 12:29:42 PM

Unable to connect to envisalink at <IP_ADDRESS>: OSError(113, "Connect call failed ('<IP_ADDRESS>', 4025)")
Unable to connect to <IP_ADDRESS>; it is likely that another client is already connected
Timed out connecting to the envisalink at <IP_ADDRESS>

This error originated from a custom integration.

Logger: custom_components.envisalink_new.pyenvisalink.alarm_panel
Source: custom_components/envisalink_new/pyenvisalink/alarm_panel.py:240
Integration: Envisalink_new
First occurred: June 21, 2023 at 6:29:31 PM (3 occurrences)
Last logged: June 22, 2023 at 12:29:54 PM

Unable to connect to <IP_ADDRESS>; it is likely that another client is already connected
Unable to determine panel type from connection data: '51110F8'
Unable to determine panel type from connection data: '60900130'

Logger: homeassistant.config_entries
Source: config_entries.py:1247
First occurred: June 22, 2023 at 12:29:54 PM (1 occurrences)
Last logged: June 22, 2023 at 12:29:54 PM

Config entry 'Home Alarm' for envisalink_new integration not ready yet: Unrecognized/undetermined panel type at <IP_ADDRESS>:4025; Retrying in background

This error originated from a custom integration.

Logger: custom_components.envisalink_new.pyenvisalink.envisalink_base_client
Source: custom_components/envisalink_new/pyenvisalink/envisalink_base_client.py:503
Integration: Envisalink_new
First occurred: June 21, 2023 at 7:19:06 PM (2 occurrences)
Last logged: June 22, 2023 at 12:54:04 PM

Command '000' failed due to timeout waiting for response from EVL

This error originated from a custom integration.

Logger: custom_components.envisalink_new.pyenvisalink.envisalink_base_client
Source: custom_components/envisalink_new/pyenvisalink/envisalink_base_client.py:144
Integration: Envisalink_new
First occurred: June 21, 2023 at 7:19:06 PM (2049 occurrences)
Last logged: June 22, 2023 at 12:54:04 PM

Reconnection attempt in 30s

Has it always been doing this for you (with envisalink_new) or is this new behaviour?
Can you confirm what version of the EVL firmware you are running?
These errors are indicative of the integration having trouble reliably communicating with the EVL.  While I can't rule out a problem with the integration itself, these types of problems are often related to the EVL or network (or a combination).
A full debug log from startup to some point after it's gotten into a bad state could be helpful in tracking down what's going  on.

It's been happening for a while. I'm going to try to replace the network cable and reboot the board.

Make sure you check the firmware version too as there have been bugs in older versions that can contribute to these types of issues.
If I understand correctly, this never recovers on its own and requires an HA reboot to fix it?  If so, regardless of what might be going on with the EVL itself, I'd love to take a look at the debug logs because I would expect it to eventually recover.


'reset' not working with 'wait'

Hello, i just found out that using 'wait' will work only the first time when you reveal it, and if you want to use 'reset' with it, it is not waiting anymore. :/

Oh, i found out it configration that i have to set delay to "always"! :)

Hey @nikola1970
Glad you figured it out. Do you think always is a more intuitive default?

Yep, i do man. Also, "mobile" should be set to true by default too, for responsive. I have to say that ScrollReveal is the best plugin i used so far! Thank you for making it to be so awesome! :)

I really appreciate the kind words @nikola1970, and I’ll make sure those will be the defaults in ScrollReveal 3!
:beers:

Cool! Thanks! :+1: :)


Update libraries and fix unit tests

Bug description
Unit tests from DeleteLinksTests class were having compilation errors.
Fix
This is a example, this type of fix was added in every method of DeleteLinksTests
-   IActionResult result = await _linkOperations.DeleteLink(this.AuthenticatedRequest, docs, null, "userid", fakeLogger);
...
+   Binder fakeBinder = A.Fake<Binder>();
+   IActionResult result = await _linkOperations.DeleteLink(this.AuthenticatedRequest, docs, null, "userid", fakeBinder, fakeLogger);

@cecilphillip just a friendly reminder 😄

@ptjuanramos Thanks. I'll check this out today


Adding overdamped system

This should be switched to e.g. the conjugate gradient method

Now integrated as minimise_nopassing


Add support for multiple ip addresses for a network interface

A network interface can have multiple IP addresses. Change the interface json
to accept a list of IP addresses instead of a single value.
Signed-off-by: Archana Shinde<EMAIL_ADDRESS>

Proposed json for interface:
{
 "device":"enp0s1",
 "ipAddresses":[
     {"ipAddress":"<IP_ADDRESS>","netMask":"<IP_ADDRESS>"},
     {"ipAddress":"<IP_ADDRESS>","netMask":"<IP_ADDRESS>"}
   ],
 "newDeviceName":"eth0"
}

this changes the format of interface json, runv/hyperd will fail since this change.  can you take care of this? hyperstart should handle both of the new and old format.

@gao-feng Got a bit caught up, will give this a go next week.

@gao-feng  I have pushed code to support both new and old interface format. Please have a look.

Any update on this?

LGTM, thanks!


CI: Fix circular import error for Airflow 2.2.5

This should fix the following in CI:
File "/home/runner/work/astro-sdk/astro-sdk/python-sdk/src/astro/custom_backend/astro_custom_backend.py", line 6, in <module>
    from astro.custom_backend.serializer import deserialize, serialize
  File "/home/runner/work/astro-sdk/astro-sdk/python-sdk/src/astro/custom_backend/serializer.py", line 17, in <module>
    from astro.files import File
  File "/home/runner/work/astro-sdk/astro-sdk/python-sdk/src/astro/files/__init__.py", line 6, in <module>
    from astro.files.operators.files import get_file_list_func  # noqa: F401 # skipcq: PY-W2000
  File "/home/runner/work/astro-sdk/astro-sdk/python-sdk/src/astro/files/operators/files.py", line 5, in <module>
    from airflow.decorators.base import get_unique_task_id
  File "/home/runner/work/astro-sdk/astro-sdk/python-sdk/.nox/test-3-8-airflow-2-2-5/lib/python3.8/site-packages/airflow/decorators/__init__.py", line 20, in <module>
    from airflow.decorators.python import PythonDecoratorMixin, python_task  # noqa
  File "/home/runner/work/astro-sdk/astro-sdk/python-sdk/.nox/test-3-8-airflow-2-2-5/lib/python3.8/site-packages/airflow/decorators/python.py", line 20, in <module>
    from airflow.decorators.base import DecoratedOperator, task_decorator_factory
  File "/home/runner/work/astro-sdk/astro-sdk/python-sdk/.nox/test-3-8-airflow-2-2-5/lib/python3.8/site-packages/airflow/decorators/base.py", line 26, in <module>
    from airflow.models import BaseOperator
ImportError: cannot import name 'BaseOperator' from partially initialized module 'airflow.models' (most likely due to a circular import)

With this it means we are exposing now get_file_list_func as from astro.files.operators.files import get_file_list_func, instead of the previous from astro.files import get_file_list_func from PR #1380 and that should not be an issue, right?

yup


How to install Azure-Kinect-Sensor-SDK and Azure_Kinect_ROS_Driver for Ubuntu 18 - ros Melodic

I want to question : Do I install for true ? Did I skip any step ?
 -GNinja
     ninja
     sudo ninja install

install Azure_Kinect_ROS_Driver
1 :
     git clone https://github.com/microsoft/Azure_Kinect_ROS_Driver
     cd catkin_ws/
     catkin_make

After I install follow above : I have issue when I catkin_make to install Azure_Kinect_ROS_Driver :

Base path: /home/sti/catkin_ws
Source space: /home/sti/catkin_ws/src
Build space: /home/sti/catkin_ws/build
Devel space: /home/sti/catkin_ws/devel
Install space: /home/sti/catkin_ws/install
####
#### Running command: "make cmake_check_build_system" in "/home/sti/catkin_ws/build"
####
-- Using CATKIN_DEVEL_PREFIX: /home/sti/catkin_ws/devel
-- Using CMAKE_PREFIX_PATH: /home/sti/catkin_ws/devel;/opt/ros/melodic
-- This workspace overlays: /home/sti/catkin_ws/devel;/opt/ros/melodic
-- Found PythonInterp: /usr/bin/python2 (found suitable version "2.7.17", minimum required is "2")
-- Using PYTHON_EXECUTABLE: /usr/bin/python2
-- Using Debian Python package layout
-- Using empy: /usr/bin/empy
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /home/sti/catkin_ws/build/test_results
-- Found gtest sources under '/usr/src/googletest': gtests will be built
-- Found gmock sources under '/usr/src/googletest': gmock will be built
-- Found PythonInterp: /usr/bin/python2 (found version "2.7.17")
-- Using Python nosetests: /usr/bin/nosetests-2.7
-- catkin 0.7.20
-- BUILD_SHARED_LIBS is on
-- BUILD_SHARED_LIBS is on
-- Using CATKIN_WHITELIST_PACKAGES: azure_kinect_ros_driver
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- ~~  traversing 1 packages in topological order:
-- ~~  - azure_kinect_ros_driver
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- +++ processing catkin package: 'azure_kinect_ros_driver'
-- ==> add_subdirectory(Azure_Kinect_ROS_Driver)
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
Finding K4A SDK binaries
-- Body Tracking SDK found: compiling support for Body Tracking
K4A Libs: k4a::k4a;k4a::k4arecord;k4abt::k4abt
K4A DLLs: /usr/local/lib/libk4a.so.1.3.0;/usr/local/lib/libk4arecord.so.1.3.0;/usr/lib/libk4abt.so.1.0.0
K4A Install Needed: FALSE
-- Configuring done
-- Generating done
-- Build files have been written to: /home/sti/catkin_ws/build
####
#### Running command: "make -j8 -l8" in "/home/sti/catkin_ws/build"
####
Scanning dependencies of target azure_kinect_ros_driver_nodelet
Scanning dependencies of target azure_kinect_ros_driver_node
[ 10%] Building CXX object Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_node.dir/src/k4a_ros_bridge_node.cpp.o
[ 20%] Building CXX object Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_nodelet.dir/src/k4a_ros_bridge_nodelet.cpp.o
[ 30%] Building CXX object Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_node.dir/src/k4a_ros_device.cpp.o
[ 40%] Building CXX object Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_node.dir/src/k4a_ros_device_params.cpp.o
[ 50%] Building CXX object Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_node.dir/src/k4a_calibration_transform_data.cpp.o
[ 60%] Building CXX object Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_nodelet.dir/src/k4a_ros_device_params.cpp.o
[ 70%] Building CXX object Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_nodelet.dir/src/k4a_ros_device.cpp.o
[ 80%] Building CXX object Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_nodelet.dir/src/k4a_calibration_transform_data.cpp.o
[ 90%] Linking CXX shared library /home/sti/catkin_ws/devel/lib/libazure_kinect_ros_driver_nodelet.so
[100%] Linking CXX executable /home/sti/catkin_ws/devel/lib/azure_kinect_ros_driver/node
[100%] Built target azure_kinect_ros_driver_nodelet
CMakeFiles/azure_kinect_ros_driver_node.dir/src/k4a_ros_device.cpp.o: In function `cv::Mat::Mat(int, int, int, void*, unsigned long)':
k4a_ros_device.cpp:(.text._ZN2cv3MatC2EiiiPvm[_ZN2cv3MatC5EiiiPvm]+0x296): undefined reference to `cv::Mat::updateContinuityFlag()'
collect2: error: ld returned 1 exit status
Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_node.dir/build.make:215: recipe for target '/home/sti/catkin_ws/devel/lib/azure_kinect_ros_driver/node' failed
make[2]: *** [/home/sti/catkin_ws/devel/lib/azure_kinect_ros_driver/node] Error 1
CMakeFiles/Makefile2:519: recipe for target 'Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_node.dir/all' failed
make[1]: *** [Azure_Kinect_ROS_Driver/CMakeFiles/azure_kinect_ros_driver_node.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j8 -l8" failed

Looks like an OpenCV error. Can you check what OpenCV version you have? You might need a newer verison.
cv::Mat::updateContinuityFlag() was added somewhere after 3.3.1.
See also this link.

This might actually be a bug - the dockerfile and the setup-ubuntu.sh script indeed use sudo apt-get install libopencv-dev which installs an OpenCV version which might be too old (seems to be 3.2.0 per Ubuntu).

I must use version OpenCV for install Azure kinect ?  Can you tutorial for me ?

The default Ubuntu 18.04 installation has unresolvable linking issues with ROS and OpenCV, so the Kinect ROS driver can't be built on a clean system. You have to not only build OpenCV-3.4.9 from source, but ROS melodic as well.

I can confirm that the following works on a fresh Ubuntu 18.04. virtual machine (in VirtualBox) and builds the Azure Kinect ROS driver without error:
# install necessary tools
sudo apt update && sudo apt -y upgrade
sudo apt install curl

# install ROS following http://wiki.ros.org/melodic/Installation/Ubuntu
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
sudo apt update
sudo apt install ros-melodic-desktop-full
sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential python-rosdep
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo rosdep init
rosdep update

# install Azure Kinect SDK following https://github.com/microsoft/Azure-Kinect-Sensor-SDK/blob/develop/docs/usage.md
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
sudo apt-add-repository https://packages.microsoft.com/ubuntu/18.04/prod
sudo apt update
sudo apt install -y libk4a1.3 libk4a1.3-dev k4a-tools

# clone Azure Kinect ROS drivers, make workspace
mkdir -p catkin_ws/src
cd catkin_ws/src
git clone https://github.com/microsoft/Azure_Kinect_ROS_Driver
cd ..
catkin_make

# [optional] make Azure Kinect available without being root
# sudo curl https://raw.githubusercontent.com/microsoft/Azure-Kinect-Sensor-SDK/develop/scripts/99-k4a.rules >> /etc/udev/rules.d

@roelofvandijk I'm sure that works on x86, but not ARM.

@tkircher Thanks for pointing that out, let's hope OP tries to install it on x86.
I see that ARM support will be released in 1.4 of the SDK - exciting.

@roelofvandijk To be honest, I forgot that people use ROS on non-ARM platforms when I responded. ;)

@roelofvandijk Thank you very much ! Your tutorial very detail . I tried and it work .