GDL90 GPS Altitude msl vs WGS-84 ellipsoid

This pull request introduces a switch to the settings page to switch between GPS altitude MSL or height above WGS-84 ellipsoid for the GDL90 ownship geometric altitude message. GDL90 specifies ownship geometric altitude as height above WGS-84 ellipsoid but some EFBs expect MSL altitude. We leave the default to MSL but allow switching to height above ellipsoid.

@PepperJo - all of the EFBs on our compatibility list expect the altitude to be MSL. It was implemented wrong by most ADS-B portables, so we deviated from the spec on this since MSL was the "de-facto" standard. What EFBs expect it to be WGS-84, and is it possible to auto-detect them so that we can avoid adding extra options?

From this forum posts: http://forums.skydemon.aero/Topic19950-11.aspx
Skydemon expects WGS-84. Autodetection might be possible but what e.g. multiple different EFBs are connected?

Stratux tracks client states. We used to shut off AHRS output only for detected ForeFlight clients because of a bug in ForeFlight. Something similar can be done to output WGS-84 if SkyDemon can be detected.

I will take a look and update the pull request accordingly if I find a decent solution.

See networkConnection in main/network.go, this is where connection-level states are stored. We could make another capability flag to extend NETWORK_GDL90_STANDARD.

@PepperJo - all of the EFBs on our compatibility list expect the altitude to be MSL. It was implemented wrong by most ADS-B portables, so we deviated from the spec on this since MSL was the "de-facto" standard. What EFBs expect it to be WGS-84, and is it possible to auto-detect them so that we can avoid adding extra options?

@cyoung - your EFB compatibility list is missing some very popular European EFBs which I already tested successfully with Stratux:
SkyDemon (only Traffic):

Stratux Settings: GDL90 MSL Altitude: off

Sky-Map (Traffic & AHRS):

Setup - IP Adresse: UDP, Port: 4000
Stratux Settings: GDL90 MSL Altitude: on

Air Nav Pro (only Traffic):

Stratux Config: https://github.com/0sander/stratux_air_nav_pro
Stratux Settings: GDL90 MSL Altitude: on

EasyVFR (Traffic & AHRS):

Stratux Settings: GDL90 MSL Altitude: on

Airmate (only Traffic):

Stratux Settings: GDL90 MSL Altitude: (not determined yet)

I will split this pull request since it tackles 3 different problems...


White screen for few seconds after splash screen in nativescript ios

there is white screen displaying after splash screen for few seconds in nativescript ios, it is happen only for our project but sample project is working fine. i checked both simulator and iPhone 5, iPhone 6 , iPad mini ,white screen is displaying in all devices. i  am using Nativescript with Angular 4,  here i included my package.json

{
  "description": "NativeScript Application",
  "license": "SEE LICENSE IN <your-license-filename>",
  "readme": "NativeScript Application",
  "repository": "<fill-your-repository-here>",
  "nativescript": {
    "id": "com.preludesys.calladoc",
    "tns-ios": {
      "version": "3.1.0"
    }
  },
  "scripts": {
    "tslint": "tslint -p tsconfig.json",
    "ns-bundle": "ns-bundle",
    "publish-ios-bundle": "npm run ns-bundle --ios --publish-app",
    "generate-android-snapshot": "generate-android-snapshot --targetArchs arm,arm64,ia32 --install",
    "start-android-bundle": "npm run ns-bundle --android --run-app",
    "start-ios-bundle": "npm run ns-bundle --ios --run-app",
    "build-android-bundle": "npm run ns-bundle --android --build-app",
    "build-ios-bundle": "npm run ns-bundle --ios --build-app"
  },
  "dependencies": {
    "@angular/animations": "~4.1.0",
    "@angular/common": "~4.1.0",
    "@angular/compiler": "~4.1.0",
    "@angular/core": "~4.1.0",
    "@angular/forms": "~4.1.0",
    "@angular/http": "~4.1.0",
    "@angular/platform-browser": "~4.1.0",
    "@angular/router": "~4.1.0",
    "nativescript": "^3.2.0",
    "nativescript-angular": "~3.0.0",
    "nativescript-camera": "^3.0.1",
    "nativescript-drop-down": "^3.1.0",
    "nativescript-google-maps-sdk": "^2.3.2",
    "nativescript-imagepicker": "^3.0.6",
    "nativescript-iqkeyboardmanager": "^1.1.0",
    "nativescript-loading-indicator": "^2.3.2",
    "nativescript-phone": "^1.3.1",
    "nativescript-ripple": "^2.0.0",
    "nativescript-telerik-ui": "^3.0.4",
    "nativescript-theme-core": "~1.0.2",
    "nativescript-unit-test-runner": "^0.3.4",
    "nativescript-xml2js": "^0.5.2",
    "reflect-metadata": "~0.1.8",
    "rxjs": "~5.3.0",
    "tns-core-modules": "^3.1.1",
    "zone.js": "~0.8.2"
  },
  "devDependencies": {
    "@angular/compiler-cli": "~4.1.0",
    "@ngtools/webpack": "^1.3.0",
    "babel-traverse": "6.24.1",
    "babel-types": "6.24.1",
    "babylon": "6.17.1",
    "codelyzer": "^3.0.1",
    "copy-webpack-plugin": "~4.0.1",
    "extract-text-webpack-plugin": "~2.1.0",
    "filewalker": "^0.1.3",
    "jasmine-core": "^2.6.2",
    "karma": "^1.7.0",
    "karma-jasmine": "^1.0.2",
    "karma-nativescript-launcher": "^0.4.0",
    "lazy": "1.0.11",
    "nativescript-css-loader": "~0.26.0",
    "nativescript-dev-typescript": "~0.4.0",
    "nativescript-dev-webpack": "next",
    "raw-loader": "~0.5.1",
    "resolve-url-loader": "~2.0.2",
    "tslint": "^5.4.2",
    "typescript": "~2.2.1",
    "webpack": "~2.6.1",
    "webpack-bundle-analyzer": "^2.8.2",
    "webpack-sources": "~1.0.1",
    "nativescript-worker-loader": "~0.8.1"
  }
}

i dont know what is the issue and how can i fix it. so please j=help me.

i have  fixed this issue through webpack

Hi @BhuvaneswariVajravel , Could you please share the steps to fix this issue?

this issue fixed while taking webpack build
i think u aware of wepack build

if u not tell me

Ok. Thanks

cdf

"this issue fixed while taking webpack build" Really? What does that mean? Back to anuragd7 question--Could you please share the steps to fix this issue?

@tontojones check this doc steps https://docs.nativescript.org/best-practices/bundling-with-webpack

Do we know what the underlying cause is?  I've configured webpack and followed the variations in the tutorial steps from the link above and still see this issue.

The link above does not seem to work anymore. The ones who found the solution: could you please elaborate a little more on the webpack fix?

@Maxeeezy this is a very old issue and probably not applicable anymore. I suggest opening a new issue describing your scenario on https://GitHub.com/NativeScript/angular


feat: in-built json-schema generator

I and community(e.g. teleport - link to charts) use json-schemas quite often to validate values.
I have to do it in a way that's not quite native, and invent a bicycle.:

https://objectpartners.com/2021/01/21/why-we-started-using-json-schema-in-our-internal-helm-charts/
https://www.arthurkoziel.com/validate-helm-chart-values-with-json-schemas/

As far as I know, there are already recommended ways to do this using golang: https://json-schema.org/implementations.html#schema-generators .
Is it possible to integrate the json-schema generator directly into the helm binary(e.g. like a go-templates by Masterminds/sprig)?
To make it work like this:
helm schema ....

Source code of generator: https://github.com/invopop/jsonschema

If you'd be interested in contributing such a feature, please read the contributing guidelines. This feature would also need to start with a helm improvement proposal.


Rework DAL DDL logic

Currently, some of the DDL is already performed automatically.
When you create a new model for a table that doesn't yet exist -- the table and the columns are created.
Now, with the addition of schema alterations, this will need to change.
The functions to manage schema alterations should go directly on the DAL service in the pkg/dal package.
The service should be extended to get a thing to let us interact with these alterations (the package should not do it directly with the database).
The service will need these functions:

ApplyOperation(alterationID, ...operationID): which applies the specified operations for the alteration.
Consult the original issue on how transactions should look like.
DismissOperation(alterationID, ...operationID): which marks the specified operations as dismissed (were dismissed by the user).
Any operation can freely be dismissed under the assumption the user handles them on their own.

for today: Fix the bug.

for today: have a working POC

for today: continue working on POC

Ran into a big blocker with struct encoding/decoding... will probably have to refactor a (larger) bit or do a tmp. workaround.
We decided to delay this to the next patch (t not rush it) so I'll have the ^ sorted by end of week

for today: add finishing touches to POC

This was done; to be merged with the rest of the feature


component trigger is not a function

i have followed this four time to the T, checking my project's status along the way, and when i get to writing the js for the log-in component my page then refuses to load and i am stuck with "component.trigger is not a function(…)". deleting my component js or even removing with the command line does not remedy my project and i have to revert back to an old function. thoughts?

This is either unrelated or if not impossible for anyone to help you with as you provide 0 detail. See the contribution guidelines.


add-enclave-functionality

Changes

Linear: https://linear.app/thirdweb/issue/INF-171/
Here is the problem being solved.
Here are the changes made.

How this PR will be tested

[ ] Open the dashboard and click X. Result: A modal should appear.
[ ] Call the /foo/bar API. Result: Returns 200 with "baz" in the response body.

Output
(Example: Screenshot/GIF for UI changes, cURL output for API changes)

PR-Codex overview
This PR introduces support for enclave wallets, enhancing the functionality of the transaction processing system. It includes new types, utility functions, and modifications to existing methods to accommodate enclave parameters throughout the codebase.
Detailed summary

Added MemoryStorage class for asynchronous storage.
Introduced EnclaveWalletParams type across multiple files.
Updated SendTransactionData and SendTransactionQueue to support enclave.
Modified doSimulateTransaction to accept enclave parameters.
Enhanced getAccount to retrieve account using enclave.
Implemented parseEnclaveHeaders to extract enclave details from headers.
Updated transaction queueing and insertion logic to handle enclave wallets.
Adjusted schemas to include enclave wallet headers.

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

#820  👈 (View in Graphite)
main

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


fingerprint is always one build behind

It seems that every other build, the fingerprint system in Metalsmith leaves things one step behind in the gulp builds. This means having to build twice, or refresh the browser a bunch of times, which is counter-productive for an auto-build/live-reload system.
I might need to find a new way to fingerprint (maybe solving the fingerprint in gulp?), or remove the feature all together. I am afraid that if I fingerprint in gulp, it will be harder to include the fingerprinted files in the metalsmith templates.
must ponder a bit. :thought_balloon:

Actually, fingerprint seems to be causing more problems for now, so I have opted to remove it for the time being. I need a solution that starts in gulp, and can "travel" to metalsmith.


⚠ Bofrost.lu has degraded performance

In f45646d, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 989 ms

Resolved: Bofrost.lu performance has improved in 1893707.


Add python modules required for rospeex in rosdep/python.yaml

The modules are required for the next version of rospeex, which will be updated later.

Please consider using the available Debian package instead. Otherwise you won't be able to release any packages depending on this.

Do you mean the package should be obtained by apt-get instead of pip? If so, the solution would be the following. What do you think?
Before:
  debian:
    pip:
      packages: [autobahn]

After:
   debian: [python-autobahn]

Yes, correct. The same for Ubuntu.

For Ubuntu 14.04 or later, we can install python-autobahn by apt-get. For Ubuntu 13.10 or earlier, python-autobahn is not included in the default packages. Therefore, I think the following will work. What do you think?
+python-autobahn:
+  debian: [python-autobahn]
+  fedora:
+    pip:
+      packages: [autobahn]
+  osx:
+    pip:
+      packages: [autobahn]
+  ubuntu:
+    lucid:
+      pip:
+        packages: [autobahn]
+    maverick:
+      pip:
+        packages: [autobahn]
+    natty:
+      pip:
+        packages: [autobahn]
+    oneiric:
+      pip:
+        packages: [autobahn]
+    precise:
+      pip:
+        packages: [autobahn]
+    quantal:
+      pip:
+        packages: [autobahn]
+    raring:
+      pip:
+        packages: [autobahn]
+    saucy:
+      pip:
+        packages: [autobahn]
+    trusty: [python-autobahn]
+    utopic: [python-autobahn]
+    vivid: [python-autobahn]

That looks good. Though I'd suggest not including the past EOL'd distros. We don't have a policy, but usually retain existing records for EOL'd distros. However adding EOL'd distros doesn't make a lot of sense.

Thank you for your suggestion. EOL'd distros are included because some users want to install from source code.
I'll close this and send another pull request.


More Descriptive Webpage Titles

Got rid of "The Officially Unofficial" in all the page titles.
Added more descriptive titles based on the current page (e.g. "Contest Entry - Khan Academy Contest Judging System").
Changed the nav title to say "Khan Academy Contest Judging System" across the board.

We're never not going to be "The Officially Unofficial CJSKA"...

Also, we are not allowed to use names such as Khan Academy Contest Judging System.
We have to use the  for Khan Academy format.

So... "Contest Judging System for Khan Academy"?

Yes sir.

Here goes...

Done.

Thanks for the PR, will review shortly.

Do you mind rebasing your commits?

Why? What do I do, run those commands?

You have twelve commits here, so run git rebase -i HEAD~12.
Then, a text editor will come up. In front of all of the lines except the first one, replace pick with squash. This will rebase all of the commits into one commit.
Then, another text editor will come up. This is the commit message of the new rebased commit, so put the new commit message here.


Cannot download file

I cannot download any file.
$ ulozto-downloader --auto-captcha --parts 15 "https://ulozto.cz/file/eMRf6hjD/doremi-nobita-and-the-legend-of-the-green-giant-doraemon-movie-2008-f988be25-mkv"

Starting downloading for url 'https://ulozto.cz/file/eMRf6hjD/doremi-nobita-and-the-legend-of-the-green-giant-doraemon-movie-2008-f988be25-mkv'
Getting info (filename, filesize, ...)

Cannot download file: Cannot parse Ulozto.cz page to get download information, no direct download URL and no CAPTCHA challenge URL found

Try reinstall the whole thing. Maybe try to install ulozto-downloader on Windows inside WSL or in Ubuntu server VM and try it there.

I gave up a while ago. closing this issue for now.
Thank you.


Compatibility with ekhbx016ab

Hi
I've found an very old Daikin altherma ekhbx016ab in my new home. I check the install manual but no X10A mention I think. How to be sure if ESPAltherma is compatible or not ?
Thanks

Hello @dgaussin
Look closely on the board. But if you cannot find the x10a port, then it's probably too old.

@dgaussin did you find your port?
You can have a look at #145, it's also a very old one but has a x10a port.

Hello @dgaussin, can you give some update? Can we close this issue?


data-validator function

Hi @JimmyChoi16, thanks for your interest to contribute to DVT!
Could you please elaborate your PR's description? You can take a look in our previous merged PRs as references. We usually close an open issue, address a specific purpose, provide more reasoning/explanation about the implementation.
After that, we can start reviewing it, thank you!


Clarification around artifact download

What it's stated on the docs it's not exactly correct. If you do multiples uploads of the same artifact, when we do an artifact download specifying a folder path (for example buildkite-agent artifact download 'folder/*' . ), it's going to download the most recent one (the complete folder). But if you want to download a specific file (like buildkite-agent artifact download 'folder/filename1.jpg' .) it will throw an error because there is an ambiguity.
In the case of duplicates, Buildkite will require disambiguation. If you are going to upload multiples files with the same path/filename, you have to incorporate $BUILDKITE_JOB_ID.
I'm leaving to you the correct wording for this 😊

Thanks @pzeballos , I've made more changes than expected, can you take a look and verify?

@pzeballos did you manage to take a look at this?


Update xlf file

xlf file didnt get updated for string added in this commit https://github.com/Microsoft/vstest/commit/f2a02e9b8c9d4a2aa644827505bf5800b2a720ac

@dotnet-bot test Windows_NT / Debug Build please


Debug console only shows automatically for first debugging session.

From @seraku24 on August 11, 2016 2:59
Environment data
dotnet --info output:
.NET Command Line Tools (1.0.0-preview2-003121)

Product Information:
 Version:            1.0.0-preview2-003121
 Commit SHA-1 hash:  1e9d529bc5

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.10586
 OS Platform: Windows
 RID:         win10-x64

VS Code version: 1.4.0
C# Extension version: 1.3.0
Steps to reproduce

Create a new C# project (e.g. use dotnet new and dotnet restore for the "Hello, World!" template).
Launch VSCode and open the created project.
Start a debugging session.
Observe: The output window appears and displays the build process.
Observe: The debug console appears (replacing the output window) as the debugger launches the program.
After the program completes, start another debugging session.
Observe: The output window appears (replacing the debug console) and displays the build process, which in this case is a message that the project was already compiled.

Expected behavior
The debug console, again, appears (replacing the output window) as the debugger launches the program.
Actual behavior
The debug console is not shown and requires manual activation via the button on the debug UI toolbar or the keyboard shortcut (Ctrl+Shift+Y).
This could be a case where it might be wise to introduce a user-configurable setting that controls the behavior of the debug console.  I see at least three potentially useful modes:

"always" The debug console is always shown automatically upon starting a debugging session.
"preserve" The debug console will be re-shown automatically provided it was visible before being replaced by the output window.
"never" The debug console will never be shown automatically when starting a debugging session.

Copied from original issue: OmniSharp/omnisharp-vscode#653

@seraku24 thank you for reporting this issue. This issue an issue with VS Code itself rather than the C# extension, so I will port your bug over to them.

This is already supported, more details can be found here https://github.com/Microsoft/vscode/issues/4045


Can't get 1.3.3 version of nifty-lwjgl-slick-renderer

Hi,
i added the repo
    <repositories>
        <repository>
            <id>nifty-maven-repo.sourceforge.net</id>
            <url>http://nifty-gui.sourceforge.net/nifty-maven-repo</url>
        </repository>
    </repositories>

but I can't get the version 1.3.3. I can only get the version 1.3 which does not include the method setResourceLoader in the LwjglInputSystem.
        <dependency>
            <groupId>lessvoid</groupId>
            <artifactId>nifty-lwjgl-slick-renderer</artifactId>
            <version>1.3</version>
        </dependency>

So if I run :
    LwjglInputTest inputSys = new LwjglInputTest();
    input.startup();
    nifty = new Nifty(new LwjglRenderDevice(), new NullSoundDevice(), inputSys, new AccurateTimeProvider());

It just crash, I must use new NullInputSystem()...
Any solution ?
Thanks

I honestly can't remember what the lwjgl-slick renderer was used for :frowning: Is there anything super special about it that the regular lwjgl or slick renderer can't do?
I'm sorry o_O

I'm not seeing any artifacts by that name in the 1.4 or 1.3 branch. Where is that even coming from? It sounds like it might have been just an old name for the Slick2D renderer, since slick is based on LWJGL.

Indeed sorry I should have posted the reference link.
Here is the instructions I followed. https://github.com/void256/nifty-gui/wiki/Getting-Started
As an additionnal info, take a look at the repository here : http://nifty-gui.sourceforge.net/nifty-maven-repo/lessvoid/nifty-lwjgl-slick-renderer/

Wow ok.. I just removed the dependency from lwjgl-slick-renderer and it doesn't crash anymore...
That was... crazy.
My mouse still does not work, but I guess that is because I don't handle it. Where can I find a good tutorial from this version of Nifty GUI ?
Thanks

Waaaah ... my appologies for the outdated wiki :disappointed:
Have you tried the manual pdf yet? https://github.com/void256/nifty-gui/tree/1.4/nifty-core/manual

No, thanks :)
I'll reopen if there's a problem but I think that should be good.
:smiling_imp:


Istio sets the sidecar CRD for the current namespace, but services in other namespaces are still accessible.

Is this the right place to submit this?

[X] This is not a security vulnerability or a crashing bug
[X] This is not a question about how to use Istio

Bug Description
"Istio sets the sidecar CRD for the current namespace, but services in other namespaces are still accessible. I hope someone can help answer this question. Thank you!

Version
1.13

Additional Information
No response

I assume you're running in ALLOW_ANY mode, and request go with PASSTHROUHT.
Sidecar is not design for block/allow request, you should try with Authz.
BTW, 1.13 is EOL

duplicated with https://github.com/istio/istio/discussions/53084


Modernize snowhouse

It uses stuff that actually fails to compile like auto_ptr:
/tmp/bandit/bandit/assertion_frameworks/snowhouse/snowhouse/exceptions.h:59:109: error: ‘auto_ptr’ is deprecated (declared at /usr/include/c++/4.9.0/backward/auto_ptr.h:87) [-Werror=deprecated-declarations]

Should be fixed as of v2.0.1 (b9bb2f2)


MAINT: approx_derivative with FP32 closes #12991

#12991 reports that optimize.least_squares stops prematurely when the problem is specified with np.float32. This is because approx_derivative only chooses step sizes suitable for working with np.float64. This PR changes approx_derivative to choose a step size that is determined by np.finfo(fun(x0).dtype).eps.
I tried to add some tests, but they are basic, and might need more improving.
closes #12991

Looks reasonable, so let's get this in to keep the ball rolling.
ISTM a big fat warning is warranted somewhere to warn against using finite differencing in float32 , but that cam wait for a separate PR.

Thanks @andyfaff , merged.
I took a liberty to squash-merge it since the resulting commit is small enough and self-contained.
Hope this unblocks some of the work you are doing.

@ev-br, squashing was fine.
The next PR's I'd like looked at at are:  #12889, #13009, #11263 (this is in the order of pain they're causing users)

No ETA from me on these ones, sorry.


Support for HorizontalAlignment.center

Thanks for creating such a well documented clean framework for dealing with an often frustrating API.
I tried to stay true to your coding style, let me know if I should change anything
When using the new layout, Item are centered horizontally
X X X
  X

X X X
 X X

X X X
X X X

Thanks for your pull request!
I had considered implementing a .center horizontally alignment option but I decided against it because I thought it might be laggy:
With the current approach for .left and .right alignment we already have an overhead because for computing an item's frame we first need to compute the frame for the previous (or following) item (and so on, recursively) and we currently have no option for caching those frames. When we have 10 items in a row then we need to recursively call the layout attributes function ∑i (i = 1 ... 10) times just for the last item. For the second last item we'll have to call that function ∑i (i = 1 ... 9) times etc.
Thus, for computing the frames for all items in that row we have to call the layout attributes function
∑(∑i (i = 1 ... n)) times where n = 1 ... 10.
That's 220 calls just for one row.
Now for implementing the .center option we additionally need to compute the current line's content width for each item in that line which effectively calls layoutAttributesForElements(in: lineFrame) in the end. From a gut feeling that was just too much.
However, it seems to be performing well on my device – at least with the very simple cells in the example project. So I am considering to merge your pull request.

Thanks for the detailed response! I'll take a look soon and see what I can do.

because for computing an item's frame we first need to compute the frame for the previous (or following) item (and so on, recursively) and we currently have no option for caching those frames.

In fact there are some ways to cache the frames.
I have been working with UICollectionViewLayout recently and have written a custom layout to accomplish alignment and header, which refers to CHTCollectionViewWaterfallLayout and your AlignedCollectionViewFlowLayout.
The Main idea is to cache the layoutAttributes rather than only the frames. I hope this may help~

@Phelthas: Thanks for your input!
It's a good idea to cache the layout attributes inside the prepare() method, after calling the super implementation. (Though I'd rather not use associated objects for this purpose.) I will implement caching as soon as possible.

@Phelthas:
On a second thought it's dangerous to do that because you cannot rely on the assumption that the UICollectionViewFlowLayout has finished all its layout calculations right after its prepare() method returns. It might also be possible that it caches only some attributes or that it behaves differently for large collection views with thousands of items. Apple's Collection View Programming Guide states:

When your app is not dealing with thousands of items, it makes sense to create these instances while preparing the layout, because the layout information can be cached and referenced rather than computed on the fly. If the costs of computing all the attributes up front outweighs the benefits of caching in your app, it is just as easy to create attributes in the moment when they are requested.

Thus, caching the layout attributes in the prepare() method after calling super.prepare() is not safe. It might work for most cases but we cannot rely on this.
The only way out of this is to create a custom layout that does not inherit from UICollectionViewFlowLayout and do all the layout calculations by hand. However, I do not want to go this path...

@mischa-hildebrand
Maybe we have some different understanding of what the documentation states, In my opinion, if it is possible to create attributes on the fly, then it must be possible to create attributes in the prepare().  We created the attributes using super.layoutAttributesForItem(at: indexPath),  and cache them with added property, which means we does not use the cached attributes provided by UICollectionViewFlowLayout , but compute them once again with public API provided by UICollectionViewFlowLayout . I think it is a method of trading memory for time and it is quite safe...

@Phelthas:
You're right. I was in error. You should be able to obtain the correct layout attributes this way in prepare().
However, my goal was to create a collection view layout that only adds alignment options – without changing anything else of its behavior, including the caching behavior.
As stated above, it's not efficient to compute and cache all layout attributes upfront when you're dealing with several thousand collection view items. So I'd rather pay the price of accepting that I cannot cache any layout attributes than implementing some caching that doesn't scale.

@mischa-hildebrand
Your concern is right,  All the code serve for certain purpose and in my cases there are not too much items,  so my code is good for me and your code is good for you, that is enough~
If you find any better way, don't forget to tell me

Any progress with this request?


Can you make YouTube live bot

As above YouTube live stream view bot should do same but with function to control how
Much views user want for example ask user how much views 1) manually enter (does not exceed that number) 2) unlimited :)

This won't be efficient I guess. Because say you need 100 live viewer you need to open 100 chrome driver with good proxies so that every chrome driver can watch video... This is huge resources intensive..

I’m taking about YouTube live stream I guess you don’t need chrome or anything for that
There is one working without any driver https://github.com/KevinLage/YouTube-Livestream-Botter
Works with Linux ^^ Need update if u can take over would be great :)
and this https://github.com/Airkek/Youtube-Viewers
These works with less usage windows only^^

In another issue someone mentioned these don't work anymore.. also they have archived the repository.. Maybe youtube patched it. It was nice of you saying to take over. But I don't know if it would work with the request module they would have just done it.


[#17] Improve S3-FIFO

Description

Added eviction of an item from the main queue at 20 reinsertions into the main queue.

Performed a small refactoring of the algorithm

Related issue(s)
#17

:white_check_mark: Checklist for your Pull Request

Related changes (conditional)

Tests

[x] If I added new functionality, I added tests covering it.
[x] If I fixed a bug, I added a regression test to prevent the bug from
silently reappearing again.

Documentation

[x] I checked whether I should update the docs and did so if necessary:

README

Public contracts

[x] My changes doesn't break project license.

Stylistic guide (mandatory)

[x] My code complies with the styles guide.

[x] My commit history is clean (only contains changes relating to my
issue/pull request and no reverted-my-earlier-commit changes) and commit
messages start with identifiers of related issues in square brackets.
Example: [#42] Short commit description
If necessary both of these can be achieved even after the commits have been
made/pushed using rebase and squash.

Before merging (mandatory)

[x] Check target  branch of PR is set correctly

Codecov Report
Attention: 22 lines in your changes are missing coverage. Please review.

Comparison is base (f1b9436) 82.64% compared to head (a71450d) 81.18%.
Report is 3 commits behind head on main.

Files
Patch %
Lines

cache.go
52.17%
19 Missing and 3 partials :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #18      +/-   ##
==========================================
- Coverage   82.64%   81.18%   -1.47%
==========================================
  Files           9        9
  Lines         657      691      +34
==========================================
+ Hits          543      561      +18
- Misses         99      115      +16
  Partials       15       15

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


Feature request: Exception handling for Idempotency utility

Is your feature request related to a problem? Please describe.

As part of #218 RFC, we had a brief discussion about exception handling but didn't implement in the first iteration as we weren't sure.
This is to enable a discussion on this before we make Idempotency G, or to agree on whether we should do this.
Describe the solution you'd like

A mechanism to allow an external function to handle individual or all exceptions raised as part of the Idempotency utility.
At present, customers using API Gateway might want to return a different response to their end customers if an operation is already in progress. This is not currently possible and requires a custom middleware - This brings operational and maintenance complexity.
Haven't put much thought on the UX yet hence why creating this to enable this discussion.
Example for handling a given exception
import os

from aws_lambda_powertools.utilities.idempotency import (
    DynamoDBPersistenceLayer, IdempotencyConfig, idempotent
)
from aws_lambda_powertools.utilities.idempotency.exceptions import IdempotencyAlreadyInProgressError

persistence_layer = DynamoDBPersistenceLayer(table_name=os.getenv("TABLE_NAME"))
config =  IdempotencyConfig(
    event_key_jmespath="body",
    use_local_cache=True,
    exception_handler=my_custom_exception_handler,
    exceptions_list=[IdempotencyAlreadyInProgressError]
)

def my_custom_exception_handler(event: Dict[str, Any], exception: BaseException):
    ...

@idempotent(config=config, persistence_store=persistence_layer)
def handler(event, context):
    ...

Example for handling all exceptions
import os

from aws_lambda_powertools.utilities.idempotency import (
    DynamoDBPersistenceLayer, IdempotencyConfig, idempotent
)

persistence_layer = DynamoDBPersistenceLayer(table_name=os.getenv("TABLE_NAME"))
config =  IdempotencyConfig(
    event_key_jmespath="body",
    use_local_cache=True,
    exception_handler=my_custom_exception_handler,
)

def my_custom_exception_handler(event: Dict[str, Any], exception: BaseException):
    ...

@idempotent(config=config, persistence_store=persistence_layer)
def handler(event, context):
    ...

Describe alternatives you've considered

Create a custom middleware using middleware factory utility.
Additional context

I don't think we need to change how we remove idempotency keys from the store when exceptions are raised. This is mostly to give customers an option to handle exceptions as they see fit.
FAQ
Does this include exceptions raised in your own handler, or only for the Idempotent related parts?
I'd vote for Idempotent related only, though I also see the point of catching all of them as it can quickly become confusing. I'm on two minds here - Either building a separate scoped utility to handle exceptions as a whole, or handle Idempotency exceptions only to give customers a chance to provide a non-error response when needed.
I like the former because it allows other utilities like the future Circuit Breaker, integration with Error Tracking systems like Sentry, and a clean intent with batteries included (e.g. retry on X exceptions, etc.).
Would the idempotent library have standard error responses defined for API Gateway proxy requests?
No. This could get out of hand quickly, as the next would be Circuit Breaker, or any other utility we might want to provide.
If it is the result of the handler, then if it does not re-raise the error, does this result then get saved in the idempotent persistence layer?
That's where I think it's tricky and I'd like to not touch the current Idempotency mechanics - It's a complex sequence already, and an additional branch flow could make this harder to maintain and reason.

I'd vote for Idempotent related only, though I also see the point of catching all of them as it can quickly become confusing.

Yes, it would get confusing and would remind me of old java code:
try {
  try {
    try {
       doSomething();
    } catch (Exception e) {
       // ...
    }
    doSomethingElse();
   } catch (Exception e) {
      // ...
   }
   // etc ..

Coz if i wanted exception handling i would it done in one place.

I'm thinking here... one of the ways we also solve these in other utilities is to provide a non-decorator option - be that a stand-alone function, context manager, etc.
What do you think?

try:
    with idempotency(....):
except....
    ....

@heitorlessa i guess we need to get more feedback on what people want.

Yes. I'll primarily wait for @cakepietoast or @am29d

@heitorlessa  i am not sure if this is needed for 1.14.0 using lambda_handler_decorator works for me
@lambda_handler_decorator(trace_execution=True)
def custom_exception_handler(
    handler: Callable[[Dict, LambdaContext], Dict],
    event: Dict,
    context: LambdaContext,
) -> Dict:
    """Utility to convert errors to api gateway response"""
    try:
        return handler(event, context)
    except IdempotencyAlreadyInProgressError:
        return build_response(400, {"message": "Transaction in progress, please try again later"})
    except IdempotencyKeyError:
        return build_response(400, {"message": "Request is missing an idempotent key"})
    except IdempotencyPersistenceLayerError:
        return build_response(503, {"message": "Failure with idempotency persistent layer"})
    except AuthenticationError:
        return build_response(403, {"message": "Unauthorized"})
    except SchemaValidationError:
        return build_response(400, {"message": "Request Validation Error"})
    except Exception:
        return build_response(503, {"message": "Something went wrong"})

@custom_exception_handler
@tracer.capture_lambda_handler
@idempotent(
    config=IdempotencyConfig(
        event_key_jmespath='[requestContext.authorizer.claims."ds:account", powertools_json(body).orderKey]',
        use_local_cache=True,
        raise_on_no_idempotency_key=True,
    ),
    persistence_store=DynamoDBPersistenceLayer(table_name=IDEMPOTENT_TABLE_NAME),
)
def lambda_handler(event: dict, _) -> dict:
     ....

I agree on both options tbh: dedicated exception handler and context manager. While it is really useful to have an option for handling all exceptions in one method, I think it might be an overload for simple cases.

Thinking a bit more on this... I believe we could change idempotency to offer a standalone function so customers can make any other function within their code idempotent not only the Lambda handler.
This would also be an opportunity to make @idempotent decorator to accept any other function/method.


Bump abseil-cpp to fix building on GCC 11

Trying to build Bazel on GCC 11 is failing with:
ERROR: /home/davido/.cache/bazel/_bazel_davido/0fa756dec521553dbe2dde6b6eac99b4/external/com_google_absl/absl/synchronization/BUILD.bazel:30:11: Compiling absl/synchronization/internal/graphcycles.cc failed: (Exit 1): gcc failed: error executing command /usr/bin/gcc -U_FORTIFY_SOURCE -fstack-protector -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer '-std=c++0x' -MD -MF ... (remaining 31 argument(s) skipped)

Use --sandbox_debug to see verbose messages from the sandbox gcc failed: error executing command /usr/bin/gcc -U_FORTIFY_SOURCE -fstack-protector -Wall -Wunused-but-set-parameter -Wno-free-nonheap-object -fno-omit-frame-pointer '-std=c++0x' -MD -MF ... (remaining 31 argument(s) skipped)

Use --sandbox_debug to see verbose messages from the sandbox
external/com_google_absl/absl/synchronization/internal/graphcycles.cc: In member function 'void absl::lts_2020_02_25::synchronization_internal::GraphCycles::RemoveNode(void*)':
external/com_google_absl/absl/synchronization/internal/graphcycles.cc:451:26: error: 'numeric_limits' is not a member of 'std'
  451 |   if (x->version == std::numeric_limits<uint32_t>::max()) {
      |                          ^~~~~~~~~~~~~~
external/com_google_absl/absl/synchronization/internal/graphcycles.cc:451:49: error: expected primary-expression before '>' token
  451 |   if (x->version == std::numeric_limits<uint32_t>::max()) {
      |                                                 ^
external/com_google_absl/absl/synchronization/internal/graphcycles.cc:451:52: error: '::max' has not been declared; did you mean 'std::max'?
  451 |   if (x->version == std::numeric_limits<uint32_t>::max()) {
      |                                                    ^~~
      |                                                    std::max
In file included from /usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/algorithm:62,
                 from external/com_google_absl/absl/synchronization/internal/graphcycles.cc:38:
/usr/lib/gcc/x86_64-redhat-linux/11/../../../../include/c++/11/bits/stl_algo.h:3467:5: note: 'std::max' declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
Target //src:bazel-bin-dev failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 52.484s, Critical Path: 7.30s
INFO: 75 processes: 16 internal, 59 linux-sandbox.
FAILED: Build did NOT complete successfully

abseil-cpp probably fixed it in abseil/abseil-cpp@5bf048b
grpc doesn't have this in master yet https://github.com/grpc/grpc/blob/e745f8cb558798f1c8b91baa42d46228a9d4a0c4/bazel/grpc_deps.bzl#L245
See also this Bazel issue.

@davido Thanks for bring this issue! Definitely this should be addressed before gcc 11 is officially released. But gRPC only depends on the LTS version of abseil so I think we need to start communicating with the Abseil team.

@davido Thanks for bring this issue! Definitely this should be addressed before gcc 11 is officially released. But gRPC only depends on the LTS version of abseil so I think we need to start communicating with the Abseil team.

@veblush New abseil-cpp release is here: https://github.com/abseil/abseil-cpp/releases/tag/20200923.3.

@veblush New abseil-cpp release is here: https://github.com/abseil/abseil-cpp/releases/tag/20200923.3.

@davido Yeah, gRPC will get it soon.

@davido Yeah, gRPC will get it soon.


JAR with Documentation

Where can I find the JAR with its respective documentation?

The jars can be found on maven central: https://repo1.maven.org/maven2/guru/nidi/graphviz-java/
But it's way better to use a build tool like maven or gradle because the jar itself is not enough because it has several dependencies that must also be put on the classpath.


Fix/type in ld proof

Fix issue described in Rocket chat
Allow type property in proof validation schema
Set default proof type if property is not provided

Currently only Ed25519Signature2018 is allowed anyways...

Codecov Report

Merging #1154 (6e05be8) into main (6f03406) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main    #1154   +/-   ##
=======================================
  Coverage   98.69%   98.69%
=======================================
  Files         441      441
  Lines       24475    24476    +1
=======================================
+ Hits        24156    24157    +1
  Misses        319      319


0.6.1-beta.0 JSgrid BUG: plugin: get_viewable_fields is not defined

Installed locally from github
ReferenceError: In table_grid view (JsGrid viewtemplate):
get_viewable_fields is not defined
    at Object.run (/opt/saltcorn/plugin_packages/@saltcorn/jsgrid/index.js:99:19)
    at async View.run (/usr/local/lib/node_modules/@saltcorn/cli/node_modules/@saltcorn/data/models/view.js:281:14)
    at async View.run_possibly_on_page (/usr/local/lib/node_modules/@saltcorn/cli/node_modules/@saltcorn/data/models/view.js:311:18)
    at async /usr/local/lib/node_modules/@saltcorn/cli/node_modules/@saltcorn/server/routes/view.js:42:22
A report has been logged and a team of bug-squashing squirrels has been dispatched to deal with the situation.

I'm not sure who's playing the squirrel here :smile:

i never finished that plugin, sorry. in any case I will probably switch the admin grid editor to Tabulator and then also do a plug-in for that instead.

Oh, nice! Tabulator is coming soon?
jsgrid plugin was working fine around 0.5.X. I wonder what happened.

Closing this one to lower my open tickets :smile:


Can't retrieve connection id.

Hi there. First of all, thanks for your library!
I'm struggling to retrieve the signalR connection id. With the jquery signalR library I can do something like this:
var signalrClientId = $.connection.hub.connection.id;

But so far as I see, you wrap this inside:
var _client = {
connection: {
            state: states.connection.unbound,
            token: null,
            id: null
        }
};

Is it possible that you could expose the connection object through a getter, something like this:
client.__defineGetter__('connection', function () {
        return _client.connection;
    });

Or is there another way to obtain the id? I need this to map my signalR connections to a known id.
Thanks in advance for your help!

Check out the "connected" service handle.  The connectionToken and connectionId will not be populated until after a connection is established.
-Thanks,
Matt
-----Original Message-----
From: "NightkingCH"<EMAIL_ADDRESS>Sent: 8/25/2015 7:08 AM
To: "mwwhited/signalr-client-nodejs"<EMAIL_ADDRESS>Subject: [signalr-client-nodejs] Can't retrieve connection id. (#4)
Hi there. First of all, thanks for your library!
I'm struggling to retrieve the signalR connection id. With the jquery signalR library I can do something like this:
var signalrClientId = $.connection.hub.connection.id;But so far as I see, you wrap this inside:
var _client = {
connection: {
state: states.connection.unbound,
token: null,
id: null
}
};Is it possible that you could expose the connection object through a getter, something like this:
client.defineGetter('connection', function () {
return _client.connection;
});Or is there another way to obtain this id? I need this to map my signalR connections to a known id.
Thanks in advance for your help!
—
Reply to this email directly or view it on GitHub.

Sorry, you are correct that I never exposed this in the client. I didn't really see a need as the hub knows your connectionId on every call.  Having a message that allows the client to tell the hub what connectionId it thinks is correct opens you for a spoof attack. I can look at adding this value but I'd suggest you should consider changing how you get this information on the hub side of your signalR service.

You should have the entire connection object on the connect and reconnect serviceHandles.


Remove RootCache

RootCache is an optimization that prevent having to walk the tree repeatedly when processing attestations.
After merging https://github.com/ChainSafe/lodestar/pull/3760 the optimization may not be necessary anymore:

[x] Add performance test with current impl and RootCache https://github.com/ChainSafe/lodestar/pull/4374
[ ] Remove RootCache and ensure performance is as good or better https://github.com/ChainSafe/lodestar/pull/4375

After discussing with @tuyennhv RootCache still provides a noticeable performance improvement even with ssz v2, so we are keeping the optimization


Lack of REST API decorators causes uncaught exceptions in system log

@pkdash @hyi @Maurier @aphelionz @dtarb I have been monitoring the system logs for problems unseen so far. I am working from the 1.10.0 release candidate. There are a lot of messages like this:
[14/May/2017 14:24:37] ERROR Internal Server Error: /hsapi/_internal/6041109de34f4ab2b8c82b6982d71311/creator/add-metadata/
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 132, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/hydroshare/hs_core/views/__init__.py", line 270, in add_metadata_element
    res, _, _ = authorize(request, shortkey, needed_permission=ACTION_TO_AUTHORIZE.EDIT_RESOURCE)
  File "/hydroshare/hs_core/views/utils.py", line 222, in authorize
    raise PermissionDenied()
PermissionDenied: You do not have permission to perform this action.
[14/May/2017 14:24:38] ERROR Internal Server Error: /hsapi/_internal/6041109de34f4ab2b8c82b6982d71311/creator/add-metadata/

Looking further, these result from lack of decorators on the REST API functions, so that raised exceptions are not caught by the REST system and are treated as system errors. Solution is to appropriately decorate the REST functions.

Stale, close

Stale, close


Hardcoded value for the duration of Storm local topology execution

In Storm local mode, the topology always executes for at most 10 minutes.
Refer to com.yahoo.labs.samoa.LocalStormDoTask line 72.
Possible solutions:

Add a new option to determine local topology execution duration in bin\samoa-storm.properties, use bin\samoa to parse the new option and pass to LocalStormDoTask as program argument.
Add the same new option as solution 1, use commons-configuration package to parse bin\samoa-storm.properties.

Ported to SAMOA-29.


Update runcrons.py

Correct print() line 92 for compatibility with Python 3

Already done. Thanks!


React Native 0.60 support

Summary:
Updated an example to use react native 0.60.0-rc.3, updated the module to work with following RC, updated the dependencies to the latest versions.
This should be an RC release as soon as it gets merged.
Disabled detox tests until full 0.60 support lands in place. Tracking issue: https://github.com/react-native-community/react-native-slider/issues/88
Test Plan:
Run the example app and test if everything works correctly.

FYI, let's wait for this to ship, should be in the next RC: https://github.com/react-native-community/cli/pull/451

I tried to use react-native-slider with<EMAIL_ADDRESS>but I encountered the following error on iOS:

Is this related by the lack of support for React Native ^0.60?

Yes, this is fixed in this PR


Clicking top-level group shows items from the first nested group

Make sure you are running the latest version of Home Assistant before reporting an issue.
You should only file an issue if you found a bug. Feature and enhancement requests should go in the Feature Requests section of our community forum:
Home Assistant release (hass --version): 0.60.0
Python release (python3 --version): Python 3.6.3
Component/platform: Group
Description of problem: Clicking the header of a group which contains another group opens a dialog containing all of the children from the first child group, as well as the first child group itself and all other child groups.
Expected: Only the immediate children of the group clicked would be visible.
Problem-relevant configuration.yaml entries and steps to reproduce:
frontend:

group:
  default_view:
    name: Default View
    view: true
    entities:
      - group.parent
  parent:
    name: Parent
    entities:
      - group.child_1
      - group.child_2
  child_1:
    name: Child 1
    entities:
      - input_boolean.switch_1
      - input_boolean.switch_2
  child_2:
    name: Child 2
    entities:
      - input_boolean.switch_3
      - input_boolean.switch_4

homeassistant:
  name: Example HASS

http:

input_boolean:
  switch_1:
    name: "Switch #1"
  switch_2:
    name: "Switch #2"
  switch_3:
    name: "Switch #3"
  switch_4:
    name: "Switch #4"

Click "Parent" heading
Observe that "Switch #1" and "Switch #2" are visible in the list

Additional info:
I wasn't sure whether this belonged here or in home-assistant/home-assistant-polymer.
Edit: After some investigation, it looks like it's something to do with the more-info-dialog Polymer component, although I don't have enough of an understanding of Polymer to investigate it further.
Screenshot of the issue;

So this definitely belongs in polymer and not here. This is not actually an issue with the groups themselves, more with how we display them.
Switch 1 and Switch 2 are part of the groupedControlDetails which, to be honest, I don't particularly understand why they are displayed this way. It basically picks the first element/group and shows the details for that for the card.
I would reopen this as an issue there, and include this. I think it warrants discussion.

Created home-assistant/home-assistant-polymer#768.


fix: add cursor pointer to api in application subscriptions

see https://gravitee.atlassian.net/browse/APIM-397

🚀 CI was able to deploy the build of this PR, so you can now try it directly here
Notes: The deployed app is linked to the management API of APIM master. (Same login and password as APIM master)

📚  View the storybook of this branch here

Closing this PR since the bug will be fixed with that PR: https://github.com/gravitee-io/gravitee-api-management/pull/2821


Adds Role and Title to HTML Canvas

In reviewing The Getty's image-viewer for accessibility one of the issues that I found was that we were not setting a role and title for the canvas. It was possible to add them to the canvas-panel and sequence-panel components, but because our controls are nested in those components our controls would be flagged as nested. I took a look in to the iiif-canvas-panel repo and found that we could set the role and title on the canvas itself using the generic-atlas-component. Here's a draft PR with a basic implementation (I think we would probably want to flesh this out a little bit more), but wanted to get feedback from folks about the approach itself before going further. @abrin @danieltbrennan @stephenwf

I don't know enough about how assistive technology reads the shadow DOM, I know it will read browser built in elements, such as the media controls on an audio element.. I think these attributes are fine to pass down though, if they are indeed picked up correctly. Deep accessibility of high resolution images will always have challenges, both for navigating and also describing the content inside. This feels like a good first step though

So, I think we just need the props added to the generic-atlas-component to get the title and role added to the canvas. I think this is ready to go and we can do some follow on PRs if I see anything else that might be needed down the line. Are the failed checks expected @stephenwf? I looked at some past closed PRs and it looks like they may have had issues as well.

@stephenwf is this another node version issue? I was looking at one of the header build logs and it was complaining about an issue with a Hash algorithm. @jasoncorum this makes sense to me, thanks!

@abrin yes, storybook and node versions. The one we are using doesn't support 18. Tried to update to version 8 - but got stuck in the weeds with it. Will circle back soon and set it up again.

@stephenwf - this adds a couple updates that allows for updating the role and title after the initial value is passed in (@abrin mentioned the issue i was having here: https://github.com/digirati-co-uk/iiif-canvas-panel/pull/263#issuecomment-2101096049)

@jasoncorum good to merge and release now? I saw you added the extra variables to the dependency array - has that solved the issue with updating those attributes?

@jasoncorum good to merge and release now? I saw you added the extra variables to the dependency array - has that solved the issue with updating those attributes?

yup! that did the trick

published as<EMAIL_ADDRESS>🎉


Update deploy

Pack all files (e.g. into tarball) before transfer instead of transferring many small files

Will instead be deployed as docker container


update service typing import rules to enforce fixed paths and service typing namespaces

Fixes #105

tested working with process's pr branch


[REQUEST] make a function for component builiding.

Extract the x-times-copied component creating code into a function and call that function instead of having the code there

No description provided.

mb, forgot it


Update .NET Core SDK

Update the build scripts to read the version of the .NET Core SDK to use from global.json.
Update to version 2.1.101 of the .NET Core SDK.

Codecov Report

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

@@           Coverage Diff           @@
##           master      #27   +/-   ##
=======================================
  Coverage   99.86%   99.86%
=======================================
  Files           8        8
  Lines         720      720
  Branches       96       96
=======================================
  Hits          719      719
  Partials        1        1

Continue to review full report at Codecov.

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


istioctl create_named_ports_list

A big advantage of outbound protocol sniffing is that we do not need to declare ports.
It comes with some additional moving parts and some a potential for things to go wrong due to incorrect detection and timeout.
We can help a user label ports

Enable protocol sniffing for a short duration.
Collects metrics
Use metrics to create a labeled list of ports to help the user.

Create an istioctl tool that can read from prometheus, (and or stackdriver) to read metrics and produce a list services / ports and their labels.
Alternatively, enable access logging for a short time and use the output from access logs to determine the same information.
cc @douglas-reid @carolynhu

Is your vision for this purely user-in-the-loop suggestion-style?

Yes, "suggestion style" is safer. We can output it yaml files that can be consumed by customize for example."


Incorrect size ui-select-search input using multiple select w/Bootstrap theme

I'm in the process of migrating from ui-select2 and have found that many of my multiple-select widgets have sizing issues. Basically, it appears that the inner ui-select-search input is not spanning the full width of the outer ui-select-container. This is problematic b/c the inner search border is generally styled to be transparent and the user tries to click on the select element but they may not get the option menu to appear if it doesn't span the whole width.
Also, it seems this is more reproducible when the select is within a table. I put together a Plunkr with a minimal example to show the problem. Notice I've purposely set the inner border to 1px so you can see when it doesn't span the whole width:
http://plnkr.co/edit/EaLQj1s9DCpHCPCogfFf?p=preview

Same here! Anyone know how this resize working ?
Plus, the close button contain a   which is bad! ;-)

Ok, for now, as a quickfix, I'll use this:
.ui-select-container {
    &.ui-select-multiple {
        position: relative;

        .ui-select-match {
            position: absolute;
        }

        .ui-select-search {
            min-width: 100%;
        }
    }
}

Can you update the Plunker to be based off of the latest release?

Ok, updated the Plunker example to 0.16:
http://plnkr.co/edit/peUwP3m9acqZX97ANEbx?p=preview


Remove tailwind

@flauc Many components use variables (color palette). Should I make it so that there's a default CSS file that needs to be imported at the top level of the project for components to display properly or should I just replace all variables with color values?

@KovaCro let's go with the global css file.


AnimationPlayer not working right fo ranimations that last less than 1 second

it's all in the title
When i tried that, the animation would simply not play. If i extended the animation time to be more than 1 second, it worked (even if all the animation points were before 1 second).

Hello.
I tried to reproduce your bug on 1.1 as well as nightly from 3.10.2015 without luck. Everything works fine for me... Probably simple sample project would be helpful.

i can't... can't reproduce anymore..... i worked this around somehow, it must have been something else... sprry for the noise, i'll reopen if i stumble upon it again with reproducible steps.


Fetch query compatible error from header to support service

Motivation
As we decided to parse AwsQuery Compatible Error in the Http response header, the required changes need to take in place on both SDK client and Service.
This will be a pre-requisite for migrating services from AWSQuery wire protocol to AWSJson.
What changed
Error code can be fetched from response content (for example __type#fooException). This PR takes another scenario into consideration, of which when x-amzn-query-error header with valid value is found from the Http response.

The parsed error code remains unchanged if this header is missing, or contains null or invalid value.

Codecov Report
Base: 95.25% // Head: 95.21% // Decreases project coverage by -0.04% :warning:

Coverage data is based on head (ff80c5e) compared to base (d9a5e06).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #2768      +/-   ##
===========================================
- Coverage    95.25%   95.21%   -0.05%
===========================================
  Files           62       62
  Lines        12899    12904       +5
===========================================
- Hits         12287    12286       -1
- Misses         612      618       +6

Impacted Files
Coverage Δ

botocore/parsers.py
99.47% <100.00%> (+<0.01%)
:arrow_up:

botocore/compat.py
91.33% <0.00%> (-1.34%)
:arrow_down:

botocore/httpsession.py
91.43% <0.00%> (-0.39%)
:arrow_down:

botocore/utils.py
93.37% <0.00%> (-0.22%)
:arrow_down:

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

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

@nateprewitt Thanks so much for reviewing this PR and providing valuable comments. Commit with changes have been made accordingly.


Title Screen Rework

As a product owner, I want the title screen to be text rather than buttons so the menu can have a modern design.
As a user, I want the title screen UI to be less cluttered and minimalist to make the menu more usable and direct.
Some inspiration images:

It was also suggested that the planet background should be the black hole with the ship floating past.

7 Title screen mockups

The circles in the background represent the black hole which I think is a core element of the game so should get a placement in the title, rather than a planet because there are many of them and none have higher importance over the other.
Adding onto the black hole background, using Adon's suggestion, I drew inspiration from the Dune and Alien Isolation planets being off-centred.
Some images use a divider, which would be especially needed for the usability of the title screen to help differentiate what is clickable buttons and what is the title name for the user, especially if the title uses smaller text.
I use minimal text for a minimalist design. Settings and keybinds could be merged into one options menu that uses tabs for different sections, just to clean up the look of the title screen.
Something to consider is the use of balance between larger text and the black hole. In the design hierarchy, the larger text draws the attention of the user, but also anything that sits left of the screen where the user's eyes go first.
I also want to use a mixture of GUI and the 3D assets which is why I mention the black hole, rather than full GUI.
Adding onto the above statement, I had the funny idea to occasionally have animals floating past to reference that one bug where animals migrated from the planet scene to the minigame scene and their gravity would make them float around.

Liking your ideas so far,
Personally I like concepts 3 , 4 and 5 the most. Like the idea of keeping the menu minimalistic and using the black hole as a background graphic.

I love the concepts. I think 1 looks really good in wireframe but the black hole being there might make it awkward to read.
4 and 5 are my favorites. I'd have to see how the larger title text looks with the font we are using? I really like the title with dividing line though. Looks very clean. Not sure why I don't like top right menu as much. I think it just doesn't visually flow as well as title menus on the bottom half of the screen.

I think the animals could be funny. Maybe as a very rare easter egg later 😆


Implement stringconfig trigger

:tada: This issue has been resolved in version 1.5.0 :tada:
The release is available on:

v1.5.0
GitHub release

Your semantic-release bot :package::rocket:


give Command execution takes serious amount of time holding the main thread

Paper 1.13.2
CC 1.8.6
We have a very basic setup with three different crates and our CrazyCrate user file is quite small as our server is more or less fresh.
When adding vkeys with crazycrates give v level_3 15 player it let the server hang for a noticable time.
See here:
https://pastebin.com/iKDaCsBJ
An idea would be to have one file per user. That way the plugin does not have to search the whole file with hundreds of uuids/names

Hmmm, well my plugin should auto-purge anyone with no keys but ill take it into consideration thanks.


treat import timestamps as UTC

Overview
This addresses what I consider a bug in timestamp imports. See #1650 for a description.
Fixes #1650
Pull request checklist

[x] I have read the contributing guide.
[x] I have agreed to the Contributor License Agreement.
[ ] I have updated the documentation.
[x] I have resolved any merge conflicts.
[ ] I have included tests that cover my changes.
[x] All new and existing tests pass.

Code review checklist
This is the checklist that the reviewer will follow while reviewing your pull request. You do not need to do anything with this checklist, but be aware of what the reviewer will be looking for.

[ ] Ensure that any changes to external docs have been included in this pull request.
[ ] If the changes require that minor/major versions need to be updated, tag the PR appropriately.
[ ] Ensure the new code is properly commented and follows Idiomatic Go.
[ ] Check that tests have been written and that they cover the new functionality.
[ ] Run tests and ensure they pass.
[ ] Build and run the code, performing any applicable integration testing.

I'm not sure how to test this. I basically need the pilosa server to be running on a VM with local time set to something non-UTC. Or I need something like a time.SetLocal() function, which doesn't exist.

I supposed I could write the test such that it would apply when run locally (on my non-UTC laptop for example). But there wouldn't be a guarantee that the test would be exercised correctly in a CI test suite.
Anyone have any other ideas?

I agree that if the local time is set to UTC, this will be hard to test reliably, but I think that between dev environments and CI, the following would probably catch any regressions before they made it to a release:

Import some data into a field that is at the very beginning of a year (as in your example), and at the very end of the same year.
Verify that no views are created for either the previous year, or the next year.

@jaffee I added a test to cover this. I confirmed that the test fails on my local machine if I remove the .UTC() conversion.


Picture object

[x] Object that takes in Ascii array
[x] Stores the data in a way that members are easily indexed and retired
[x] Keep track of char per row

At this point would It make more sense to store everything as a list, and have an array of lists.

[ ] Discuss

Created picture class, created seed class to use as temp storage for greyscale values
Going to store many pictures in a list for easy index

Removed Seed, just a picture with a 1d array split with \n's
Also stores height and width


The property type validation failed as always return type with null

I just use stoplight Application to run test scenario. For the contract testing, I have defined the response body should be one array with object in it. But it always failed with error:
output.body [validate.contract] [schema object not shown for now]
(root): Invalid type. Expected: null, given: array

The document is not valid. see errors
The scheme I defined at yaml file at Modeling part is like below:
"responses": {
          "200": {
            "description": "Get feedback successfully",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/definitions/Feedback"
              }
            }
          }
}

Definition is like below:
  "definitions": {
    "Feedback": {
      "type": "object",
      "description": "Model of Feedback",
      "properties": {
        "text": {
          "type": "string",
          "example": "test"
        },
        "id": {
          "type": "integer",
          "example": 1
        },
        "timestamp": {
          "type": "string",
          "format": "date-time",
          "example": "2019-03-25T03:20:42.492Z"
        }
      },
      "required": [
        "text"
      ]
    }
  }

I am working on Windows system, the stoplight application I install is stoplight-next-setup-4.8.1.exe

Hey @GabbyChang, I edited your post a little for formatting (three backticks give you code fences!).
I think this might be the incorrect place to post for help with Platform issues in general, as this is for Prism specifically.
For now I can try and help though, maybe you could post me the entire YAML file and the JSON instance (the data it is trying to validate)? If you dont want to post it pubicly, you can fire it over to<EMAIL_ADDRESS>for now.
Future people please do not just send things directly at me this is just for @GabbyChang right now.

@philsturgeon did you get an email? Prism v2 runs scenarios, so this is the correct place to post this issue :).

@pytlesk4 I did not!


Diagnostic Logs still in Preview?

The note at the top of the page mentions that Azure Function to Azure Monitor integration is a preview feature. Is this actually still the case? There was a announcement late last year that App Service Diagnostic logs is a GA feature. It is a bit strange that it is GA for App Service but it is still in preview for Azure Functions.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: bceaf516-a1b0-eb1e-e106-62c31db3e69c
Version Independent ID: abbbd2d6-e0fc-d370-f4a7-ac669fc4acd6
Content: Monitoring Azure Functions with Azure Monitor Logs
Content Source: articles/azure-functions/functions-monitor-log-analytics.md
Service: azure-functions
GitHub Login: @ggailey777
Microsoft Alias: glenga

@pnarsi Thanks for the feedback! We are currently investigating and will update you shortly.

@pnarsi Thanks for bringing this to our attention. Your feedback has been shared with the content owner for further review.


Using name instead of ID for router labeling

The ID in Azure contains '/' which is not a valid character for labels.
Using name ensures that it is valid in all providers (will map to ID in AWS and OS (alphanumeric with dashes), and to 'Name' in Azure (restrictions in CB conform to label restrictions).
This is a fix for cloudbridge resources, but for a better fix, we could make a helper method to change the label to be conforming while leaving it easily indicative of the resource we are trying to represent.

Coverage remained the same at 19.884% when pulling e3e119ad3995931b3c4ccffcdbb81855e048338f on almahmoud:patch-1 into f4bfff44d67e57b8a5f3630af7f83eae2df139c4 on galaxyproject:dev.


Added stricter test cases and made bug fixes on distribution detection

The bugs this commit fixes:

_detect_dist_continuous No longer centers the empirical/observed distribution around a 0 mean. In the previous implementation norm and skewnorm were working properly but uniform was not.  For example let's assume the empirical sample follows a uniform distribution with low=0 and high=1, in such a case the mean would theoretically be 0.5. The mean would get subtracted from each observed value meaning the new low=-0.5, high=0.5 and mean=0 (gets centered around 0 mean). But the uniform distribution the empirical distribution was being tested against would have low=0 and high=1. Therefore the KS test would test uniform(-0.5, 0.5) against a uniform(0, 1) resulting in a low p value as the distributions were not properly aligned thus resulting in uniform distribution never being detected even if the empirical sample was uniform.
_detect_dist_discrete Enforces categories to have a 0 min. A binom distribution has values from 0 to a set parameter n. In the presence of a discrete column with a non zero min (let's assume the min=3 and max=7 and has a sample_size=150), the test samples binom distribution creates would contain 150 values ([0,1,2,...7]). Then number of frequency of each category ([3,...7]) is counted. Therefore the sum of observed frequencies would be less than 150 (as we are not counting 0,1 and 2). In this case scipy.stats.chisquaredtest raises an error because the sum of frequencies of the samples being compared are not equal. To alleviate this, shift observed categories to start at 0 and all test distributions to start at 0 as well.

Also added stricter test cases.

---------- coverage: platform darwin, python 3.8.13-final-0 ----------
Name                               Stmts   Miss  Cover   Missing
----------------------------------------------------------------
synthetic_data/__init__.py             0      0   100%
synthetic_data/marginal_dist.py       48      0   100%
synthetic_data/parser.py              40     17    58%   39, 43-48, 52, 58, 68-82
synthetic_data/synthetic_data.py     126     32    75%   73, 299-301, 349-409
synthetic_data/utils.py               16      3    81%   16-20
----------------------------------------------------------------
TOTAL                                230     52    77%

====================================================== 14 passed, 176 warnings in 8.84s =======================================================
(synthetic_data)


Support Typescript instead of plain Javascript

Since playwright is most used along with typescript, it would be great if the conversion is done in Typescript

The package has been updated with a working typescript version in 1.0.2. Read the readme and let me know if it works.

The package has been updated with a working typescript version in 1.0.2. Read the readme and let me know if it works.

Since playwright is most used along with typescript, it would be great if the conversion is done in Typescript

This has been implemented and tested @grajesh690 so I will close this issue


Rename to material and damage id

It should look like that:
 Physics:
    Material Models:
      Mat_1:
        Material Type: "PD Solid Elastic"
  Blocks:
    block_1:
      Material Id: "Mat_1"

Up for discussion, should we stick with Material Model and Damage Model or rename to Material Id and Damage Id @CWillberg

Its fine for me.


Adding Test Suite for Prometheus Printer and Handling Invalid Scores

PR Type:
Tests

PR Description:
This PR introduces the following changes:

Adds a comprehensive test suite for the Prometheus Printer.
Implements handling of invalid scores in the Score function of the Prometheus Printer.

PR Main Files Walkthrough:
 files:

core/pkg/resultshandling/printer/v2/prometheus.go: Added handling for invalid scores in the Score function. If the score is greater than 100, it is set to 100. If it is less than 0, it is set to 0.
core/pkg/resultshandling/printer/v2/prometheus_test.go: Introduced a new test suite for the Prometheus Printer. This includes tests for the NewPrometheusPrinter, SetWriter, and Score functions. The Score function tests include various scenarios such as scores less than 0, greater than 100, and scores of 0, 50, and 100.

@VaibhavMalik4187 don't spend too much time on that... we should drop the Prometheus code pretty soon, once we have our https://github.com/kubescape/prometheus-exporter is ready

@VaibhavMalik4187 don't spend too much time on that... we should drop the Prometheus code pretty soon, once we have our https://github.com/kubescape/prometheus-exporter is ready

Thanks for the heads up, I'll mark this ready as it is.

/describe

I'm closing this PR as I've raised a separate PR to address the invalid scores bug.


TRPO import problem

When I run wgail.py, I find that it seems like missing trpo module? Can you provide some details about running this file? Thanks very much!

Sorry, it seems that we forgot to upload trpo.py. We just updated the repo and hope this can solve the problem. Please let me know if there are any further questions~

Thanks a lot! I will have a try to run it!


Replace ffmpeg-cli with ffbinaries for generating audio

Hopefully the install step of the CI-workflow becomes more predictable this way... 🤞

Closes #1875


Light Command to Lighting Command

Resolving #439

Hope you don't mind but I just fixed the CSV file to have the trailing comma

Not at all. Thanks!

Sure, I'm fine with it.

@jbkoh @gtfierro - reading through this discussion and the PR, I'm tempted to propose an alternative naming. I work with a team that sends many different commands to our fixtures. Light level (or sometime called dim level) is just one of those commands. We also send color change commands, sense commands (used during commissioning), and in some cases we send a command to alter the driver's modulation.
An alternative naming could be Light_Level_Command?

Here's a related issue: Add ColorTemperatureLightingCommand #445

@cbupp Thanks for brining that up! I added a comment to the other thread, but Lighting Command presumed to change the levels but I think your idea of being more explicit is better. I will create a separate PR and close this one then.

@jbkoh is the plan still to close this PR and continue the development discussion?

Yes, let me close this one.


[🐛 in esl-trigger]: aria-label dissapears when a11y configuration is empty

aria-label is incorrect when both a11yLabelActive
and a11yLabelInactive is empty.
To Reproduce

Create an esl-trigger with aria-label but witout a11y attributes
Observe element attributes in browser

Current behavior
aria-label atribute us not presented
Expected behavior
aria-label stays untouched if none of a11y attributes configured
Environment

ESL v4.0.0-beta.8

Note: Requested to be fixed in bounds of nearest beta release.

:tada: This issue has been resolved in version 4.0.0-beta.9 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 4.0.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Vue2

Vue - Official extension or vue-tsc version
2.0.24
VSCode version
1.90.2
Vue version
2.7.10
TypeScript version
5.4.5
System Info
System:
    OS: macOS 12.7.3
    CPU: (8) x64 Apple M2
    Memory: 26.81 MB / 16.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 14.21.3 - /usr/local/bin/node
    npm: 6.14.18 - /usr/local/bin/npm
  Browsers:
    Chrome: 126.0.6478.127
    Safari: 15.6.1

Steps to reproduce

I get "any" type on custom component "HelloWorld" in template.
How can I get exact type instead of "any"?
Link to minimal reproduction
No response
Any additional comments?
No response

I have the same issue with Nuxt 3.11.2 and Typescript 5.4.5

Same issue with Nuxt 2

I have the same issue, I've been waiting for this feature for a long time, praying for it

Same issue with Nuxt 2, disable hybrid mode fixes the problem

This worked for me.
Also, setting the hybrid mode to typescriptPluginOnly also worked.
So, the workaround for now is to set the setting vue.server.hybridMode to either typescriptPluginOnly or false.

I try to disable hybrid mode, but it seems not working for me.

this issue seems use vue-property-decorator problem，if you use setup model with ts, type will work as expected.

this issue seems use vue-property-decorator problem，if you use setup model with ts, type will work as expected.

True


add loading spinner to FeatureInfoPanel

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

7 of 7 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.005%) to 99.607%

Totals

Change from base Build<PHONE_NUMBER>:
-0.005%

Covered Lines:
12451

Relevant Lines:
12453

💛  - Coveralls


Add a section with potential projects

To attract people, adding illustrations of potential projects could be cool

When we have gathered a couple of projects, I can also reach out to the main Brainhack Global team and ask them to display on the main site.


Camera devices in simulator❓

Question
I'd like to test this against a simulator. However, I'm not getting any devices returned when I try this
What I tried
  const getDevices = useCallback(async () => {
    try {
      const deviceList = await Camera.getAvailableCameraDevices();
      console.log({ deviceList });
      setDevices(deviceList);
    } catch (e) {
      console.error("trouble getting devices:", e);
    }
  }, []);

  useEffect(() => {
    getDevices();
  }, []);

deviceList just ends up being an empty array though
Also tried this:
  const devices = useCameraDevices();
  const device = devices?.back;

  console.log({ devices, device });

devices object exists in this case, but all keys (front/back/external/unspecified) are undefined
VisionCamera Version
2.13.5
Additional information

[ ] I am using Expo
[X] I have read the Troubleshooting Guide
[X] I agree to follow this project's Code of Conduct
[X] I searched for similar questions in the issues page as well as in the discussions page and found none.

Please do not spam issues. This is an almost identical duplicate of #1136, and I gave an answer there.
Also @mikerodham gave a pretty good answer, thanks Mike!

No worries :)


Add lookup_tables, custom confdir, custom targets, and managed_service options

Due to the interconnected nature of the changes made regarding issues #15, #18, and #19 I had to combine the commits addressing those features/changes in a single Pull Request.
Here are the changes:
Enhancements:

Allow Service to be managed (#17)
Allow custom confdirs and target files (#19)

Features:

Add Rsyslog 8.x lookup_tables (#15)

Bugfixes:

Solve the lack of errors when a component concat::fragment doesn't generate content due to a missing parent concat resource (#19)

This invalidates PRs #16 and #18

Realized that docs hadn't been updated and found some bugs relating the new features I added.
Let me know if you want me to squash some of these commits down


Oversaturated colors on P3 monitors

Hello,
I recently purchased a modern monitor capable of displaying more colors than sRGB.
I'm using this monitor with macOS, and now the colors of images in Fiji look oversaturated.
When I export the image to TIF from Fiji and open it in Photoshop or macOS Preview, the colors do not look oversaturated.
Please see attached image - usually the oversaturated colors don't show in browsers, but they should be apparent when downloaded and opened in Preview on a wide gamut monitor.
The image on the left is the image as opened in Fiji. The image in the middle is the image exported as TIF and opened in macOS Preview. The image on the right is the exported image assigned a sRGB profile in Photoshop, saved, then opened in Preview.
I suppose this could complicate preparing images for figures because the look of the colors are changing from Fiji to Photoshop and so on. I'm not sure about PC monitors, but most of Apple's Mac products now have P3 monitors?
Is there any way to address this issue?
Thank you.
Sincerely,
Hyung-song Nam, PhD

Got around to this, and tried a couple of things: (1) the "sRGB" preset on the Dell monitor was selected and (2) the sRGB calibration icc files from Dell were installed and selected. With these changes, it looks like the problem is fixed. These are not well documented by Dell, so I don't really know - check out this link.
HN

I guess the sRGB monitor preset is exactly what it sounds like.
However, testing the same files on my MacBook Pro's Retina P3 screen, I see the same over-saturated colors in Fiji, but not in Preview or Photoshop. So perhaps at some point this will need to be addressed somehow.

Thanks @hyungsongnam for the report and your investigations. I don't have the first idea how to go about troubleshooting this, but here are a couple of questions:

Does the same problem happen with plain ImageJ? Or only with ImageJ2/Fiji?
"a modern monitor capable of displaying more colors than sRGB" → Which monitor?
Have you done any web searching into the which sorts of applications have this problem? E.g. other Java apps? Any sort of article on what goes wrong, and how to fix, could be helpful for fixing it in ImageJ/Fiji.

Thank you for your time.
Yes, the same problem happens with plain ImageJ downloaded from the link (see image below).
The external monitor mentioned in the initial post is a Dell U3023E display. Last night, I also tried the same images on the internal monitor of a MacBook Pro (15-inch, 2018), the Retina P3 screen.
I'm guessing this has to do with implementation of icc profiles - now, this is way out of my area of knowledge, so I definitely do not know what I'm talking about. But there is another program that I'm using with the P3 monitors (i.e., the Dell U3023E and the Retina on the MacBook Pro), and this program also shows over-saturated colors in these monitors, presumably also because this program doesn't correct for the icc profiles. I'm searching for what I can find, and will post it here when I find some.
Thank you.
Sincerely,
Hyung-song Nam, PhD

I just noticed the Java implementation of FlowJo, the v10.8.1, also shows the similar over-saturated colors in graphs on the P3 monitors.
Thank you.
Sincerely,
Hyung-song Nam, PhD


better color code to slack

A good setup using 'doom' icons and 'colors' to severity

Thanks for submitting the pull request! I do like the idea of color for severity and using the "attachment" functionality within Slack web-hooks, but if those changes are included, I would want to do additional technical updates to the documentation/README and in-line code comments to reflect those adjustments.
I also don't plan on having my repository rely on the icons/emojis from Doom - sorry, just not my style, but you're more than welcome to keep those changes locally in a fork of this repository.


CompilerMSL support and tests for OpUndef.

Changes outside spirv_msl.hpp/cpp are result of running format_all.sh.

It seems like we have mismatching clang-format versions, mine is on 5.0.0 at least.

Thanks.
I've upgraded to clang-format 5.0.0 now.
I wonder if there is a way of validating or enforcing the minimum clang-format version within format_all.sh...to avoid successive submissions flipping the formatting back and forth as different submitters drift versions of clang-format over time.

Right, I'm a bit concerned that putting some mandate on the clang-format would drive potential contributors away. I'm on Arch, so I always have the bleeding edge stuff, but not everyone will have that. I suppose I could look into adding some kind of warning at least when running ./format_all.sh and try to keep that up-to-date.

Hmmm...is it possible to run format_all.sh on the server during a pull request submission (like Travis, etc)...and avoid devs having to think about it at all?

This implies that TravisCI is able to magically modify the commit in question ... I doubt that is possible or practical.


SAML with LDAP groups

Our vmware Tanzu version: 2.9.X
We use  SAML as the "authentication and enterprise SSO" provider and use cf-mgmt in "SAML only" mode -->  https://github.com/vmwarepivotallabs/cf-mgmt/blob/master/docs/config/README.md#saml-configuration
So far so good.
Does "SAML with LDAP groups" enable us use LDAP groups/users authenticate to "cf api"  while  "authentication and enterprise SSO" provider is still SAML? https://github.com/vmwarepivotallabs/cf-mgmt/blob/master/docs/config/README.md#saml-configuration-with-ldap-group-lookups
Got this error when we ran "cf-mgmt update-org-users".
LDAP credentials are  good and 'ldapserach' command with those credentials come back just fine.
error: LDAP Result Code 200 "Network Error": remote error: tls: handshake failure

Hi @pcf-user!

Does "SAML with LDAP groups" enable us use LDAP groups/users authenticate to "cf api" while "authentication and enterprise SSO" provider is still SAML?

The "SAML with LDAP groups" options means it uses SAML for the authentication, but it allows you to define access to orgs/spaces using the users in your LDAP groups assuming they match the users in your SAML. You can control which attribute of the LDAP user matches the SAML username by checking your ldap.yml configuration.
For example, if I have an LDAP group called "app-team", then I can use cf-mgmt-config update-space --org=ORG --space=SPACE --developer-ldap-group=app-team to add app-team to my ORG/SPACE/spaceConfig.ymls space-developers ldap group.
The next time the pipeline ran and updated space users, it would ask the configured LDAP who is in the "app-team" group, and then add those users individually as space-developers in CF. It would be the equivalent of going through each member of the ldap group and running cf set-space-role<EMAIL_ADDRESS>ORG SPACE SpaceDeveloper.
As for the TLS handshake error, that's a little trickier to debug. My first recommendations would be to double check your ldap.yml to ensure it all looks good and to make sure that any changes to your ldap.yml have been committed and pushed if you're using a Concourse pipeline. It may also be worthwhile to use a tool like yq to parse your ldap.yml to ensure the fields are formatted correctly. A field like the ca-cert can easily get malformed.
You can check out how the LDAP connection is made in case that helps you debug the problem as well.
Hope that helps!

Hi @ryanmattcollins  - Attaching our LDAP.yml file.  Line # 12 - We use the same origin that we use with our SAML.

Attaching ldap.yml again

@pcf-user If you set insecure_skip_verify: true does it work?  If so this suggests there is an issue with the ca chain and that would help with troubleshooting

@calebwashburn :  Hi - Setting insecure didn't make any difference.
Attaching screenshot

With LOG_LEVEL=debug
with use_tls=false
bash-4.4# cf-mgmt update-org-users
2020/11/04 21:56:18 D1104 21:56:18.656439 42 initialize.go:52] Using Version: [1.0.47], Commit: [1ed639f5e2a82f0074224d5cb8321cd619854a3d] of cf-mgmt
2020/11/04 21:56:18 D1104 21:56:18.893669 42 connection.go:68] Connecting to ldap.OUR-DOMAIN.com:636
LDAP Request: (Universal, Constructed, Sequence and Sequence of) Len=72 ""
MessageID: (Universal, Primitive, Integer) Len=1 "1"
Bind Request: (Application, Constructed, 0x00) Len=67 ""
Version: (Universal, Primitive, Integer) Len=1 "3"
User Name: (Universal, Primitive, Octet String) Len=45 "uid=OUR_LDAP_USER,ou=OUR_OU,dc=OUR-DOMAIN,dc=com"
Password: (Context, Primitive, 0x00) Len=15 "PASSWORD"
2020/11/04 21:56:18 flags&startTLS = 0
2020/11/04 21:56:18 1: returning
2020/11/04 21:56:18 1: waiting for response
2020/11/04 21:56:18 Sending message 1
2020/11/04 22:02:18 reader error: unexpected EOF
2020/11/04 22:02:18 Sending quit message and waiting for confirmation
2020/11/04 22:02:18 Shutting down - quit message received
2020/11/04 22:02:18 Closing channel for MessageID 1
2020/11/04 22:02:18 Closing network connection
2020/11/04 22:02:18 1: got response 0x0
error: cannot bind with uid=OUR_LDAP_USER,ou=OUR_OU,dc=OUR-DOMAIN,dc=com: unable to read LDAP response packet: unexpected EOF
with use_tls=true
bash-4.4# cf-mgmt update-org-users
2020/11/04 22:02:06 D1104 22:02:06.371107 25 initialize.go:52] Using Version: [1.0.47], Commit: [1ed639f5e2a82f0074224d5cb8321cd619854a3d] of cf-mgmt
2020/11/04 22:02:06 D1104 22:02:06.572658 25 connection.go:68] Connecting to ldap.OUR-DOMAIN.com:636
error: LDAP Result Code 200 "Network Error": remote error: tls: handshake failure

Just a heads up @pcf-user, those screenshots can be pretty easily manipulated to extract some information about your configuration, even with the blacked out bits. I'd highly recommend you remove the posted screenshots and replace them with code blocks that have the text redacted/changed manually. Or make sure that when you do redact the information, you're doing so with a tool that is completely opaque.
We're still looking into the issue and hopefully can propose a solution, just wanted to let you know ASAP!

@ryanmattcollins : Thank you. I removed the screenshots.

So since it's failing with use_tls=false, my guess is there is an issue with the bindDN or bindPassword since the error message is being produced from these lines in the code:
if err = connection.Bind(config.BindDN, config.BindPassword); err != nil {
	connection.Close()
	return nil, fmt.Errorf("cannot bind with %s: %v", config.BindDN, err)
}

I noticed in your ldap.yml there was no bindPassword field though, is it possible you're missing that field?

@ryanmattcollins.  We are passing LDAP_PASSWORD from pipeline --> https://github.com/vmwarepivotallabs/cf-mgmt/blob/fc3f42e5ceab28f52df100c9b7c7d25e0105544e/generated/files/pipeline.yml#L242
Also, ldap.yml doesn't have any bindPassword entry --> https://github.com/vmwarepivotallabs/cf-mgmt/blob/master/docs/config/README.md#saml-configuration-with-ldap-group-lookups
It shouldn't  have one either if it is to be on Github or some other  code hosting sites.

For additional context you can see what the TLS certificate chain that is being presented back from ldap with the following command.
openssl s_client -host your.ldap.server -port 636 -showcerts </dev/null 2>/dev/null

Also since 636 is a TLS endpoint you need to keep that enabled.  So the settings to see if it's just a cert trust would be the following in ldap.yml
use_tls: true
insecure_skip_verify: true
ldapPort: 636

if above works then it's a problem with the following field having incorrect information
ca_cert: |

if you want to test without TLS then you need to use port 389 (typical non TLS ldap port) with the following settings:
use_tls: false
ldapPort: 389 #or whatever you non-TLS ldap port is

OK. I get a cert chain and cert from the SSL command. Should I use that cert or the chain in my ldap.yml?

You can use the entire chain but should only really need the root ca part of the chain.  So would start with entire and then remove things from the top until it doesn't work to see what you really need to complete the chain.

Did this configuration work?
use_tls: true
insecure_skip_verify: true
ldapPort: 636

@calebwashburn
Had set configuration to this and used root and chain certs as seen with the openssl command. Still failing with the same TLS error.
use_tls: true
insecure_skip_verify: true
ldapPort: 636

Only other thing I can think of is that your dns name you are using to connect is not one of the subject alternative names.
openssl s_client -host "ldap.yourserver.com" -port 636 -showcerts </dev/null 2>/dev/null | openssl x509 -outform PEM | openssl x509 -text -noout

and making sure the DNS entry is present in the certificate output.

@calebwashburn : We are  checking this.

We rechecked all our settings. They all appear to be OK. Chose the option "insecure_verify=true" as well. None of these worked. It is still failing with that TLS error.
We did some additional testing and here is what we found.
With ldapsearch and no cert, works
With python and no cert, works
We used the Go ldap module with Dial() method and it doesn't work

Hi,
Updating this issue. We recreated the ldap connection portion:
package main

import "github.com/go-ldap/ldap"
import "log"
import "crypto/tls"

func main() {
    ldapURL := "ldaps://ldapserver.example.com:636"
    l, err := ldap.DialURL(ldapURL, ldap.DialWithTLSConfig(&tls.Config{InsecureSkipVerify: true}))
    if err != nil {
            log.Fatal(err)
    }
    defer l.Close()
}

This resulted in the similar output described above:
LDAP Result Code 200 "Network Error": remote error: tls: handshake failure
Am I missing additional parameters to pass in to the ldap client?

This is the code that runs which is slightly different than above.
package main

import (
	"crypto/tls"
	"fmt"
	"log"

	"github.com/go-ldap/ldap"
)

func main() {
	ldapURL := "ldap.yourdomain.com:636"
	connection, err := ldap.DialTLS("tcp", ldapURL, &tls.Config{InsecureSkipVerify: true})
	if err != nil {
		log.Fatal(err)
	} else {
		fmt.Println("Connection is successful")
	}
	if connection != nil {
		connection.Close()
	}
}

To test you have the right certificate you can do this....
package main

import (
	"crypto/tls"
	"crypto/x509"
	"fmt"
	"log"

	"github.com/go-ldap/ldap"
)

var CACert string = `
-----BEGIN CERTIFICATE-----
<the root ca>
-----END CERTIFICATE-----
`

func main() {
	host := "ldap.yourserver.com"
	ldapURL := fmt.Sprintf("%s:636", host)
	rootCAs, _ := x509.SystemCertPool()
	if rootCAs == nil {
		rootCAs = x509.NewCertPool()
	}

	// Append our cert to the system pool
	if ok := rootCAs.AppendCertsFromPEM([]byte(CACert)); !ok {
		log.Println("No certs appended, using system certs only")
	}

	// Trust the augmented cert pool in our client
	tlsConfig := &tls.Config{
		RootCAs:    rootCAs,
		ServerName: host,
	}

	connection, err := ldap.DialTLS("tcp", ldapURL, tlsConfig)
	if err != nil {
		log.Fatal(err)
	} else {
		fmt.Println("Connection is successful")
	}
	if connection != nil {
		connection.Close()
	}
}

Got it to work but we had to specify the min/max tls versions.
l, err := ldap.DialTLS("tcp", ldapURL, &tls.Config{InsecureSkipVerify: true, MinVersion: tls.VersionTLS12, MaxVersion: tls.VersionTLS12,})

The settings below leads to TLS handshake errors
l, err := ldap.DialTLS("tcp", ldapURL, &tls.Config{InsecureSkipVerify: true, MinVersion: tls.VersionTLS12, MaxVersion: tls.VersionTLS13,})

@calebwashburn : We see that you updated the code to use a min and max TLS version. When are we planning to release a new binary with this updated code?

I'll do that now

With the release of v1.0.48 this can probably be marked closed. Thanks for your incredibly support @calebwashburn.