ComPtr support

Is it possible to let the D3D12MA::Allocator inherit from IUnknown and provide implementations for AddRef (this won't conflict with the current use of the member method, AddRef), Release and QueryInterface to be used with Microsoft's intrusive ComPtr? This would be consistent with D3D12 types themselves and with 3th-party tools such as DirectXShaderCompiler which also mimic this former behavior.

I was thinking about making the classes of the library real COM objects inheriting from IUnknown, but I decided not to, because that would have some memory and performance overhead for using virtual function table etc. While the Allocator object could be a COM object, Allocation-s should be small and fast. What do you think?

Good points. As an alternative, why not use the destructor for releasing (as well)? If the destructors are public instead, the callee can use whatever he/she prefers (std::unique_ptr/std::shared_ptr without requiring a custom deleter for this library only, or just put it on the stack (as the destructor is non-virtual and no virtual inheritance is involved). The benefit is that most of the callee's own destructors can be explicitly defined as = default.

I'd love the library objects to be deleted with just the destructor. Problem is that Allocation objects are created out of a free-list pool and all other objects (Allocator, Pool) may be allocated using custom, user-provided CPU heap allocation functions, which is needed because many game developers use them in their engines. How to make it working with default destructor?

I do not mean using a default destructor in D3D12MemoryAllocator itself, but in the applications/libraries depending on D3D12MemoryAllocator, which as of writing is not possible as one needs to directly or indirectly (using a custom smart pointer) call Release.

I just found a good generic solution for this ubiquitous problem. Apparently, there is something called unique_resource added to LFTS v3 that can be used for arbitrary resource RAII (similiar to unique_ptr for memory resource RAII).

unique_resource is not intrusive and thus does not impose a certain interface on the resource (compared to ComPtr);
unique_resource does not require a pointer-like resource (compared to unique_ptr), but can just store the resource by value (e.g., handle, Allocation);
unique_resource is pretty light weight with regard to size (resource + deleter + bool) (in case of empty base optimization, this would just be resource + bool for D3D12MA's purposes);
unique_resource is pretty light weight with regard to includes.

Of course, nothing is restricting a user of D3D12MA to use or not use unique_resource (i.e. it does not need to be embedded in the API of this library), so I am going to close this issue.

Thanks for this conclusion. I can see the unique_resource is experimental, while std::unique_ptr can also work with custom deleters and can even work with handles which are not pointers. See for example https://www.asawicki.info/news_1494_unique_ptr_in_visual_c_2010
I still plan to consider whether the way of destruction of D3D12MA objects can be improved, e.g. by maybe using standard destructor and overloaded member operator delete, or something else, so ideas are welcomed.

True, though much pointer-like semantics is added like the std::nullptr_t constructor and comparison and logical operators. But you're right that there is quite a resemblance between unique_resource and unique_ptr.
Some insightful presentation about unique_resource. I am not that convinced by his arguments, however, that std::FILE and Windows HANDLE are not suited for unique_ptr.


Upgrade of DetailedList core and iOS

added on_select functionality
refresh is now only possible when a on_refresh handler was set.
added documentation.

Signed-off-by: Jonas Schell<EMAIL_ADDRESS>

@freakboy3742 DetailedList uses now ListDataSource. I also included a example app.
The on_refresh handler is called when the user does a 'pull down to refresh'. I'm open for a better name that represents the fact that it is a user initialised callback.
I still have to come up with a good way for styling of rows, but I think this is going to be another PR. Other than that I'm ready for a final review.


Added basic routing and stubs

@enisoc

This change is

Reviewed 16 of 16 files at r1.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

web/vtctld2/src/app/app.routes.ts, line 7 [r1] (raw file):

import { TopoComponent } from './topo/topo.component'

//import { CrisisListComponent }  from './crisis-list.component';

You can remove these lines now. I only left them in as examples, but now we have real examples above.

web/vtctld2/src/app/dashboard/dashboard.component.ts, line 6 [r1] (raw file):

@Component({
  moduleId: module.id,
  selector: 'dashboard',

I think they recommend to prefix selectors so they don't conflict across libraries. Let's use vt-dashboard, vt-schema, etc.

Comments from Reviewable

Reviewed 5 of 5 files at r2.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


Experimental message lenses support and new naming scheme.

This pull request primary for discussion
Hello! Attached code has a two features.
New message naming scheme.
The problem
Currently a lot of generated message has the same record name, for example:
data Char = Char { _data :: Int.Int8 ...
data Int64 = Int64 { _data :: Int.Int64 ...
data String = String { _data :: P.String ...

Many same names should be qualified by module system, this is a solution. BUT very simple program with 5-7 message types or composit message e.g. PoseStamped makes ugly listing header:
import qualified Ros.Std_msgs.Header as Header
import qualified Ros.Geometry_msgs.Point as Point
import qualified Ros.Geometry_msgs.Quaternion as Quaternion
import qualified Ros.Geometry_msgs.Pose as Pose
import qualified Ros.Std_msgs.String as S
...

Composit names
Offered scheme is camelCase composition of message name and row name e.g
data Char = Char { charData :: Int.Int8 ...
data Int64 = Int64 { int64Data :: Int.Int64 ...
data String = String { stringData :: P.String ...

Lens(https://github.com/ekmett/lens) support in message generator
The second feature is using lenses as getter/setter of message parts insead / together records.
Example:
Increase Z component of Vector3 by 10:
runNode "n" $ subscribe "a" >>= advertise "b" . fmap (vector3Z +~ 10)

Big profit of this approach presented on big composit messages e.g.
runNode "n" $ subscribe "a" >>= advertise "b" . fmap (
    poseStampedPose.posePosition.pointX +~ 10)

This is awesome! I'm not entirely sure about the record field prefixing in general, but the addition of lens accessors is fantastic, and it looks like it plays well with the prefixing in your example. That example is pretty much solid gold, actually.
I haven't had a chance to look at the PR in full detail yet and Travis is taking a while, but it seems like it's missing a file (Instances.Lens). Are there any areas you think we should focus on to make sure everything looks good?

My mistake, file is not under VCS.
Yes, for lens accessors prefixing names is desirable but not necessarily. The aim of new names is ability to write one import string for common message types, e.g.
import Ros.Std_msgs (Byte(..), Int64(..), Header(..), Time(..))
import Ros.Geometry_msgs (Vector3(..), Quaternion(..))

The message generation tests are failing on Travis. Can you take a whack at updating the expected output, @akru?
While this is ongoing, @rgleichman, do you have any thoughts on the field name prefixes?

Using Lens looks very useful. With prefixes, I am concerned about long message names. For example this code uses the JointTrajectoryControllerState message:
import qualified Ros.Pr2_controllers_msgs.JointTrajectoryControllerState as JTS

used as
JTS.actual
with prefixing, I think this would become
jointTrajectoryControllerStateActual
which is way too long.

Right, that's a good example. Just thinking through this... an advantage of lenses is that they give us first-class accessors, so one can define short aliases like jtsActual = jointTrajectoryControllerStateActual. Is there any way we could do some of that automatically? One option is to say that such definitions will be manually created in little manually-created wrappers to make usage nicer. Alternately, we could have a heuristic on the module name that would collapse multi-word camel case names into their initialisms. So we could offer, in addition to the long name, jtcsActual as an auto-generated alias.
Is that too unpredictable? Loading the generated module into the REPL would be how a user finds these short names. There's a chance of conflicts when importing, but maybe that risk is preferable to other options.
Yet another option is to generate an entirely separate module with the lenses, but I think that's just moving the same issue around.

@rgleichman provided a powerful example,
use qualified modules is a good idea seems to me.
Pull request with clean history, tests and updated examples without name prefixes created on #34.


Protractor update

All the E2E tests are working again with the new version of protractor and selenium webdriver.
To execute the tests, we have this command
grunt test-e2e

The last commit seems passing so we're ok right?

Yess, it seems this error has been a connection problem between travis-ci.org and github.com. This PR is only E2E tests

Cool lgtm


Don't start kube-proxy until after all startup hooks are finished; ensure config modified by hooks is sent to clients.

In rancher/rke2#1455 it was determined that the intended behavior was not working for multiple reasons:

kube-proxy is started before the startuphooks are executed
the configuration struct modified by the RKE2 startuphooks is not reflected in the config sent to the clients

We need to modify K3s to:

wait for the startup hooks to complete before sending kube-proxy config to the agent
ensure that any configuration modified by startup hooks is reflected in the data structure sent to clients

This issue was mostly for a change in k3s that was required to allow a feature in rke2 to work properly. I kept this around pending an rc in order to perform standard sonobuoy and regressions checks, but those will be validated as part of standard patch testing so I will close this issue.
I did confirm using master commit 90960ebf4e7a08df075526f411e3afe06731b01e that kube-proxy does wait until the server is ready per the new v1-k3s/readyz endpoint before attempting to start:
Sep 10 18:31:36 ip-172-31-23-183.us-east-2.compute.internal k3s[1839]: time="2021-09-10T18:31:36Z" level=info msg="Waiting to retrieve kube-proxy configuration; server is not ready: https://<IP_ADDRESS>:6443/v1-k3s/readyz: 500 Internal Server Error"
...
Sep 10 18:31:41 ip-172-31-23-183.us-east-2.compute.internal k3s[1839]: time="2021-09-10T18:31:41Z" level=warning msg="Unable to watch for tunnel endpoints: unknown (get endpoints)"
Sep 10 18:31:41 ip-172-31-23-183.us-east-2.compute.internal k3s[1839]: time="2021-09-10T18:31:41Z" level=info msg="Running kube-proxy --cluster-cidr=<IP_ADDRESS>/16 --conntrack-max-per-core=0 --conntrack-tcp-timeout-close-wait=0s --conntrack-tcp-timeout-established=0s --healthz-bind-address=<IP_ADDRESS> --hostname-override=ip-172-31-23-183.us-east-2.compute.internal --kubeconfig=/var/lib/rancher/k3s/agent/kubeproxy.kubeconfig --proxy-mode=iptables"


Issue #39269

Issue #39269
This makes it easier to differenciate the selected / not selected state of the "Find in selection" button of the find/replace dialog in the dark theme.
To actually solve the issue, the "editor.find.autoFindInSelection" must be set to true.

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

As we didn't plan to have feature in in near future, I'd like to close it for now to help us better maintain issues. We can reopen it when we are going to implement this feature in a proper way. Thanks anyway for your contribution!


Add deadlocked rmx by ...

Song Name
deadlocked rmx
Artist Name
...
Source
Youtube
Youtube Link
6HwIddaRecrDy_Zo
Direct File Link
No response
Song ID
19
Start Offset [ms]
0
Extra
Created from Auto Nong.
Created for level: 11549880

reject
invalid YouTube link


Add better color support

This PR fixes/implements the following bugs/features

[X] Updates oklch() color support
[X] Add support for lab() color
[X] Add support for lch() color
[X] Add support for oklab() color
[X] Add support for color() function
[X] Add unittests for new functionality

Fixes #1

No problem, I think the only thing left unsupported with colors now should be relative colors, as I only added relative support to the color() function.
If I find time or the need for relative colors in the other functions (rgb(), hsl(), oklch() etc.) I will update further.


Tutorial http://angular-meteor.com/tutorials/angular1/search-sort-pagination-and-reactive-vars angularutils:pagination doesn't work

$meteor add angularutils:pagination
While checking for<EMAIL_ADDRESS>error: No compatible binary build found for this package. Contact the package author and ask them to publish it for your platform.
OS. Mac 10.11
If someone can help me.

Duplicate of https://github.com/michaelbromley/angularUtils/issues/247


AG-iRODS message queue

Make the AG-iRODS listen to the iRODS message queue, to know when to (re)publish data and metadata.

I'm working on making a library to get events from iPlant Message Queue (RabbitMQ) to combine it with Syndicate AG. Implementing the library is not challenging but verifying whether the message server at iPlant is working correctly and what kind of messages we can receive are still unknown as the message server is a lab test version. I'll figure it out soon.

The client code of iPlant DataStore and it's message queue (RabbitMQ) is under following repository. AG just need to use it.
https://github.com/iychoi/ids_client


fix hexadecimal example

https://github.com/jdf/Processing.py-Bugs/issues/296

Maybe I should change it to make clear that in Python mode the hexadecimal notation does not work with color(), only with fill() and stroke()

Currently the wording is a bit awkward. Saying something like:
"In Python Mode, color() does not support hexadecimal notation." might be a bit more blunt and to the point. Since fill() and stroke() both go over using hexadecimal values, I don't know if it's worth mentioning here as well.
I also just noticed that the link to color datatype leads to a 404: https://py.processing.org/reference/color_datatype.html
Not sure if you want to tackle adding that in this PR? Or make a new issue?

That's odd. Builds are now failing on Travis with:

$ curl -L -O http://py.processing.org/processing.py-linux64.tgz
curl: (60) SSL certificate problem: certificate has expired
More details here: http://curl.haxx.se/docs/sslcerts.html

Thank you


Need test data

Hi Folks, I'm testing the "PROXY" flow, and I was able to setup the pipeline in Cloudera VM
Can you folks help me with some sample proxy log files , even if its 10 lines its fine. The data I prepared is bit messed up.

you can download a sample from the following location
https://s3-us-west-2.amazonaws.com/apachespot/public_data_sets/proxy_aws/Bluecoat_ProxySG_Sample

thanks for the reply and data


Update CI in test-infra

/assign @rjsadow
Thank you for making the changes ❤
https://github.com/kubernetes/test-infra/pull/30433


[Feature Request] Ability to execute a custom query for visualisation

Community Note

Please use a 👍 reaction to provide a +1/vote. This helps the community and maintainers prioritize this request.
If you are interested in working on this issue or have submitted a pull request, please leave a comment.

Graph Explorer Version (and Graph Database and Version used if applicable)
All versions
Is your feature request related to a problem? Please describe.
Including a feature that allows users to enter a custom SPARQL, Gremlin or openCypher query, and then have it rendered as part of the visualisation.
Describe the solution you'd like
A new "query" section and associated toggle button - similar to the "table view" - where custom queries can be run. A toggle button to include the results in the current graph pane, or clear the graph pane and only render the results. All rendered items would be displayed using the visual effect settings. Any query exceptions generated by submitting the query to Neptune would be returned and displayed on the screen below the query box.

Adding a Notebook like experience is not in scope for the Graph Explorer.
Having a list of custom queries a business user can trigger and see the graphical result is.

Related issue #300

FYI, this feature request is being tracked by the roadmap item:

#686
#687
#688


Okta App not visiable in myapps page after following all steps

Hi Team,
After following all the steps as mentioned in the doc, I can not find the app in the Myapps dashboard (post 15-20 mins)
Did anyone face a similar issue?

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

ID: 0b4eb058-63aa-900d-9e64-e28eabc225ff
Version Independent ID: f3589424-d704-c815-e0b6-0d4441772b74
Content: Tutorial to migrate Okta federation to Azure Active Directory-managed authentication - Active Directory
Content Source: articles/active-directory/manage-apps/migrate-okta-federation-to-azure-active-directory.md
Service: active-directory
Sub-service: app-mgmt
GitHub Login: @Gargi-Sinha
Microsoft Alias: gasinh

@pm-bhatt Thank you for your query . We will investigate and update the thread on this.

Hi Team,
It seems the problem is with Azure Tenent, so we will investigate it separately.
When we assign the Okta app to any end-user, it takes 1-2 hours to get the same reflected


fix(#749): now should work with SSR

Description
Now for SSR and all other cases when document is missing hook is stubbed with noop function.
Type of change

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as before)

Checklist

[x] Read the Contributing Guide
[x] Perform a code self-review
[x] Comment the code, particularly in hard-to-understand areas
[x] Add documentation
[x] Add hook's story at Storybook
[x] Cover changes with tests
[x] Ensure the test suite passes (yarn test)
[x] Provide 100% tests coverage
[x] Make sure code lints (yarn lint). Fix it with yarn lint:fix in case of failure.
[x] Make sure types are fine (yarn lint:types).

:tada: This PR is included in version 13.2.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Fix line-endings for Windows in convert-video.

Very similar to 2859a278ed5fab2c2abd2b48a8210a14d9effef8, but for the convert-video command. Makes the output from ffmpeg work as expected, without spewing a bunch of stuff to the console

@samhutchins D'oh! I can't believe I missed that when I made the other change. :) Nice catch, sir!
OK, I'll very likely take this patch as soon as I'm back at my development machine to test it. That might be a day or two though.
And thanks!

@samhutchins Dang. It looks like there are three other places I missed in transcode-video which need the same change for calls to mkvpropedit and mp4track. There are also other calls to mkvpropedit and mp4track in convert-video which need it. I'll make those fixes after I test yours and merge it.
This may take awhile to do all the testing.

@samhutchins OK, this works fine for me on macOS. Thanks again!

@samhutchins It looks like all the other similar calls to mkvpropedit and mp4track in transcode-video and convert-video only spew to the console when debugging is enabled, i.e. when you add -vv to your command line options.
Is this still worth fixing? Can you try those cases on Windows and see how bad it is? Thanks!

I'll have a look tonight (BST time). But we might as well, I can't think of a reason not to. I think if I'd realised the other stuff logged as well I'd probably have fixed it in this PR

@samhutchins Thanks! Well, if it hadn't been for your patch here, I would never have thought to look at these other cases. :)

@donmelton I think it'd be nice to apply the same patch to all the logging calls throughout the gem, just so it's consistent. If nothing else it'll make parsing -vv logs from Windows users easier to read when the paste them in an issue.
I'm happy to try find them all and submit a PR, but I suspect it's easier for you 😉

@samhutchins OK, I'll probably check in that change later today or tomorrow since, as you surmised, I've already done it. :) Thanks for the brain power on this one!

@samhutchins The changes are in. But I'll probably wait to release it for a few days so I can get some other fixes done.
Thanks!


Page Template for a list of items

Component Description
Page Template for a list of items

Special Behavior
Style Variants

[ ] Dark Mode
[ ] Light Mode

Time Estimate
3 hrs

@ninjha01 Maybe I can start on this?

That sounds good to me!

1/2 way point: Light and dark mode for primary intent completed. Added a second theme based around the brand color for light mode under secondary intent. Added control over colors for card descriptions,titles, etc.


add _to_eltype supports

Bidiagonal
TwicePrecision
StepRangeLen
AbstractArray
AbstractSet
Dict
AbstractDict
BitArray

Codecov Report
Attention: Patch coverage is 53.33333% with 7 lines in your changes are missing coverage. Please review.

Project coverage is 63.63%. Comparing base (ed73c99) to head (9a42251).

Files
Patch %
Lines

src/EltypeExtensions.jl
53.33%
7 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #20      +/-   ##
==========================================
- Coverage   69.76%   63.63%   -6.14%
==========================================
  Files           1        1
  Lines          43       55      +12
==========================================
+ Hits           30       35       +5
- Misses         13       20       +7

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


WebSocket compatibility with Node.js 18.x

Current Behavior
WebSocket client ("connect to") nodes fail to connect to server ("listen to") nodes when the latter are running under Node.js 18.12.1.
Expected Behavior
WebSocket connections should work consistently on LTS version of Node.js as well as earlier versions.
Steps To Reproduce

Install Node.js LTS
Install Node-RED using the standard Debian script without specifying a version of Node.js
Create a pair of "listen to" and "connect to" websocket nodes using the corresponding URI and URL values such that they should connect, e.g. "listen to" URI = /test and "connect to" URL = ws://localhost:1880/test

In my case, the latter works when the "listen to" node is running under Node.js 16.x but not when it is running under 18.x.
If it helps in debugging, "connect to" nodes running under Node.js 18.x do appear able to connect to "listen to" nodes on the network when the "listen to" nodes are running under 16.x. I.e. the issue appears to be on the server side.
Example flow
[
    {
        "id": "ef1453a3ef0962a6",
        "type": "tab",
        "label": "WebSocket Test",
        "disabled": false,
        "info": "",
        "env": []
    },
    {
        "id": "4cfc8d3ec3a4b40b",
        "type": "websocket in",
        "z": "ef1453a3ef0962a6",
        "name": "",
        "server": "1f015a9cb54deefa",
        "client": "",
        "x": 240,
        "y": 180,
        "wires": [
            [
                "d7ee73bf93a4919a"
            ]
        ]
    },
    {
        "id": "29e40922241ebcd3",
        "type": "websocket out",
        "z": "ef1453a3ef0962a6",
        "name": "",
        "server": "1f015a9cb54deefa",
        "client": "",
        "x": 600,
        "y": 180,
        "wires": []
    },
    {
        "id": "d7ee73bf93a4919a",
        "type": "change",
        "z": "ef1453a3ef0962a6",
        "name": "",
        "rules": [
            {
                "t": "delete",
                "p": "_session",
                "pt": "msg"
            }
        ],
        "action": "",
        "property": "",
        "from": "",
        "to": "",
        "reg": false,
        "x": 420,
        "y": 180,
        "wires": [
            [
                "29e40922241ebcd3"
            ]
        ]
    },
    {
        "id": "eeba8377b2b3fae4",
        "type": "websocket in",
        "z": "ef1453a3ef0962a6",
        "name": "",
        "server": "",
        "client": "78b63c8224717d1a",
        "x": 300,
        "y": 280,
        "wires": [
            [
                "1402b256df6187d6"
            ]
        ]
    },
    {
        "id": "1402b256df6187d6",
        "type": "debug",
        "z": "ef1453a3ef0962a6",
        "name": "debug 1",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": true,
        "complete": "payload",
        "targetType": "msg",
        "statusVal": "",
        "statusType": "counter",
        "x": 500,
        "y": 280,
        "wires": []
    },
    {
        "id": "1f015a9cb54deefa",
        "type": "websocket-listener",
        "z": "ef1453a3ef0962a6",
        "path": "/test",
        "wholemsg": "true"
    },
    {
        "id": "78b63c8224717d1a",
        "type": "websocket-client",
        "z": "ef1453a3ef0962a6",
        "path": "ws://localhost:1880/test",
        "tls": "",
        "wholemsg": "true",
        "hb": "5",
        "subprotocol": ""
    }
]

Environment

Node-RED version: 3.0.2
Node.js version: 18.12.1
npm version: 8.19.2
Platform/OS: Raspberry Pi OS (bullseye)
Browser: Chromium 104.0.5112.105 (Official Build) Built on Raspbian , running on Raspbian 11 (32-bit)

Can you try <IP_ADDRESS> instead of localhost ?

I'm thinking you have ipv6 enabled and localhost is resolving to that and the websocket isn't liking it. I think in node18 they have changed the priority of dns results - eg https://github.com/nodejs/node/issues/40537

I suspect that you are correct. Using the loop back address does work. Meanwhile, using localhost fails with http request nodes in addition to websocket. To be clear, I get this behavior using all default installation and configuration options for the OS, Node.is and Node-RED so IPV6 being “turned on” in this should be considered the norm. Too bad Node.js appears to have made this breaking change.

I thought the default bind address was for both IPv4 and IPv6, but it looks not:
https://github.com/node-red/node-red/blob/4d202a7a3790222706b532865235bd919d63d5e7/packages/node_modules/node-red/red.js#L335
We should look at what changing that to
    settings.uiHost = settings.uiHost||"::";

(or set uiHost in your settings.js and restart)

I did a quick test here and that does seem to fix the issue - even if I disable ipv6 via /etc/sysctl.conf. Of course this was a one off test on a Pi - so other OS may well be different (if we wanted to change the default - which would seem to be where this is headed).
Another option is to "knobble" nodejs to use ipv4 dns lookup result first as per some of the suggestions in the thread I linked.
PS. I think this "new" dns behaviour is also behind some of the email node failures we've seen recently where it is unable to connect again as it is being given an ipv6 server address to talk to then failing to connect to that.

 settings.uiHost = settings.uiHost||"::"; should definitely be the preferred option. The change - as it is indeed a breaking change - was already introduced in Node 17 to give people the time needed to adapt before releasing it to the LTS version. At some point this change had to be introduced. In general DNS ordering should be left to the operating system. Preferring IPv4 was just a workaround that probably sticked around for too long already.

Yes - def one we should probably introduce when we release 4.x


Shared Engine

Hi,
is there are any way that I can use this as plugin in a shared engine ?

Hi,
thanks for the answer but is there a way for the tomcat which provided by camunda ?

Tomcat will be easy as well. Just have look at https://docs.camunda.org/manual/latest/installation/full/tomcat/configuration/#ldap

Add the KeycloakIdentityProvider JAR to $TOMCAT_DISTRIBUTION/lib/
Edit bpm-platform.xml and configure the plugin

Ok. I tried this but it didn't work. Because in jar are dependencies e.g. for Spring Resttemplate etc. which are not in the jar. So I have to add all the depedencies, and the dependencies of the dependencies etc. also to the lib folder. Or is there something I am missing ?

Ah, that's right. According to maven dependeny management you will need the following further libraries:

org.springframework:spring-web:5.1.8

spring-beans 5.1.8
spring-jcl 5.1.8

org.apache.httpcomponents:httpclient:4.5.9

httpcore 4.4.11
commons-codec 1.11
Let me know if this works for you.

Ok. This will work I think. But it looks like you are using just the Spring RestTemplate from the dependencies. When the Resttemplate is changed to Http(s)UrlConnection the Plugin can be used without adding other dependencies. Will it be ok when i make a contribution for this ?

For the time being, I prefer to stay with the SpringRestTemplate.

I benefit from a very simple and well known programming interface. Including configuration.
I benefit from any security challenges that may arise to solve this either out-of-the-box by updating a dependency or by using very simple known methods. Instead of implementing them extensively myself.
The disadvantage, that I have to add a few libraries from the Spring-Framework, I consider to be small. The main use of Keycloak is within cloud scenarios. From an architectural point of view Spring Boot is currently the most recommended approach for such scenarios and the Spring libraries are already available.
For JBoss/Wildfly it is very easy to set up a clean module with these libraries. And the number of dependent libraries is kept within a manageable range.
The standalone Tomcat architecture is the only one that would seriously benefit from a keycloak-with-all-dependencies-included.jar. Perhaps an approach like Camunda has choosen with its spin-dataformat-all.jar is appropriate for this. This could be an additional provided artifact in future.

A first step will be to add some installation documentation. As long as the use in non-Spring boot architectures is basically possible, the biggest focus is on other important features. Many thanks, however, for your feedback.

Hi,
sorry for the late answer.
spin-dataformat-all can be used for the JSON parsing which in is done manually in the project so it can be used instead the custom solution, sounds like a good improvement, looking forward to it.
Should I close the issue or do you want to leave it open for the documentation improvements ?

I didn't intend to use spin-dataformat-all within the plugin. I just mentioned it as a sample for packaging a component including foreign dependencies.
Please leave the issue open - I will close it after documentation has improved.

Hint: a configuration using bpm-platform.xml for Tomcat would look like follows:
<?xml version="1.0" encoding="UTF-8"?>
<bpm-platform xmlns="http://www.camunda.org/schema/1.0/BpmPlatform"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.camunda.org/schema/1.0/BpmPlatform http://www.camunda.org/schema/1.0/BpmPlatform ">
  ...
  <process-engine name="default"> ...
	<properties>...</properties>
	<plugins>
	  <plugin>
		<class>org.camunda.bpm.extension.keycloak.plugin.KeycloakIdentityProviderPlugin</class>
		<properties>

		  <property name="keycloakIssuerUrl">https://somehost:8443/auth/realms/master</property>
		  <property name="keycloakAdminUrl">https://somehost:8443/auth/admin/realms/master</property>
		  <property name="clientId">camunda-identity-service</property>
		  <property name="clientSecret">42xx42xx-42xx-42xx-42xx-42xx42xx42xx</property>
		  <property name="useUsernameAsCamundaUserId">true</property>
		  <property name="useGroupPathAsCamundaGroupId">true</property>
		  <property name="administratorGroupName">camunda-admin</property>
		  <property name="disableSSLCertificateValidation">true</property>

		</properties>
	  </plugin>
	</plugins>
  </process-engine>
</bpm-platform>

I just discovered and build the sso-kubernetes example.  Worked like a charm with my Keycloak instance!!  I will try to make a build in OpenShift based on this.
Thank you for all the hard work and effort on this project!!!

Fat-JAR is already available as 1.3.0-SNAPSHOT. See Camunda Nexus: https://app.camunda.com/nexus/repository/camunda-bpm-community-extensions-snapshots/org/camunda/bpm/extension/camunda-bpm-identity-keycloak-all/1.3.0-SNAPSHOT/camunda-bpm-identity-keycloak-all-1.3.0-20200110.092500-2.jar
Fat-JAR will be officially published with the upcoming 1.3.0 release.
Release task for 1.3.0 has already been created: https://jira.camunda.com/browse/CAM-11248
Installation instructions can be found here: https://github.com/camunda/camunda-bpm-identity-keycloak/tree/master/examples/tomcat


Feel free to open a PR on the original repo

Quick Question
Do you want to pull your changes to the original repository? Feel free to open a PR if you like. I can make you a maintainer so you pull your own PRs as I rarely have the time to look through code reviews these days.
Also, I am in the middle of a typescript rewrite of the repository that is much more stable (currently 100% coverage). Feel free to check that guy out as well if you like.  The long term plan (assuming I ever get the time) is to fully transition to typescript.

I dont know whats going on with the maintainers. No responds to any request. I have a pull request open which never has been answered. Due to the Licence, feel free to merge it back to your repo :D

Any news on that?

@cmseaton42  @SerafinTech  As another maintainer of a node-ethernet-ip fork (https://github.com/TheTechCompany/node-ethernet-ip) it'd be great to collaborate on a shared repo. I'll be supporting my fork for the next 10-15 years out of necessity so it'd be great to share the work with the community and get to the bottom of this lib.


Grape recognize_path incorrectly recognizes path

Problem
I faced an issue with path recognizing using recognize_path from Grape::API ancestor, here is an example of the API structure I have
class Books < Grape::API
  resource :books do
    route_param :id, type: Integer do
      # GET /books/:id
      get do
        #...
      end
    end

    resource :share do
      # POST /books/share
      post do
      # ....
      end
    end
  end
end

If I try to use Books.recognize_path('/books/share') Then it will recognize it as GET /books/:id request instead of the POST /books/share
I guess this happens because the recognize_path does not rely on the request method. In this case Grape recognizer treats share as :id param instead of path

Do you think you can you turn this into a failing test?

If there is a way to predefine two routes or somehow simulate this then yes. Where should I set up this test?

You can make a pull request on top of the existing specs, so https://github.com/ruby-grape/grape/blob/d39031567b913834d9e586ac8a2733ecf3166057/spec/grape/api/recognize_path_spec.rb#L4.
Looking at the problem though, I wonder if this is a bug at all. AFAIK routes in Grape are matched in order of declaration, not like Ruby methods where the last one wins - it's the first one that matches. Amazingly, I actually couldn't find anything on this in our README, and I think we need to state it unambiguously in it. In fact, there's https://github.com/ruby-grape/grape/issues/1858 that asks for the same. Want to take it on? I would add recognize_path specs for all combinations (your example, nested routes, inherited APIs, mounted APIs) and add a section to README about the order of matching.

@glebsonik Btw, in your specific example you have a type: Integer in the first route, and so it does make sense that it shouldn't match in theory, so could be a bug anyway.

@dblock I've done a commit but I can neither create a PR to the grape repo nor commit and push my changes. I think, I just don't have access to do this. Is there any other way I should address my PR?

Okay nvm, I've just created the PR in the fork https://github.com/ruby-grape/grape/pull/2352

Hi 👋
I was taking a look at this issue, and as the first step I can add a section in the README talking about the order of matching, as you suggested in your comment above @dblock. Agree?
On the other hand, I find this issue pretty interesting, as it's not the first time I need to change the order of my endpoints to make them work. So I was trying to debug the issue following the tests added by @glebsonik in #2352.
Seems that the problem is that the regular expression that Mustermann generates is not taking into account the type of the parameter. This is the current regular expression generated by Mustermann::Grape for the /books/:id pattern:
[/(?-mix:\A(?-mix:\/(?:b|%62)(?:o|%6f|%6F)(?:o|%6f|%6F)(?:k|%6b|%6B)(?:s|%73)\/(?<id>(?:(?!(?:\.|%2e|%2E)(?:(?!(?:\.|%2e|%2E))[^\/\?#.])+?$)[^\/\?#.])+)(?:(?:\.|%2e|%2E)(?<format>[^\/\?#.]+))?)\Z)/](url)

This regular expression should only match if the content of the :id group are digits, but is not the case as you can see in this quick irb check:
3.2.2 :001 > regex = /(?-mix:\A(?-mix:\/(?:b|%62)(?:o|%6f|%6F)(?:o|%6f|%6F)(?:k|%6b|%6B)(?:s|%73)\/(?<id>(?:(?!(?:\.|%2e|%2E)(?:(?!(?:\.
|%2e|%2E))[^\/\?#.])+?$)[^\/\?#.])+)(?:(?:\.|%2e|%2E)(?<format>[^\/\?#.]+))?)\Z)/
 => /(?-mix:\A(?-mix:\/(?:b|%62)(?:o|%6f|%6F)(?:o|%6f|%6F)(?:k|%6b|%6B)(?:s|%73)\/(?<id>(?:(?!(?:\.|%2e|%2E)(?:(?!(?:\.|%2e|%2E))[...
3.2.2 :002 > "/books/1".match?(regex)
 => true
3.2.2 :003 > "/books/share".match?(regex)
 => true
3.2.2 :004 >

So I was trying to see the options that we are sending to instantiate the Mustermann::Grape object, and these are:
Mustermann::Grape.new("/books/:id(.:format)", {:uri_decode=>true})

However, the options received when initialising the pattern class contains much more interesting information that can be really useful for generating a much more precise regular expression.
{:params=>{"id"=>{:required=>true, :type=>"Integer"}}, :namespace=>"/books/:id", :version=>nil, :requirements=>{}, :prefix=>nil, :anchor=>true, :settings=>{}, :forward_match=>nil, :suffix=>"(.:format)"}

I can see that Grape is using its own Mustermann pattern , so don't know if adding extra information to the pattern options we can generate much more precise regular expression, or if we need to update the Mustermann::Grape implementation for allowing to receive those parameters. Also, maybe is not a problem from Mustermann::Grape and we need to check if Mustermann can generate this more precise regex by itself.
What do you think @dblock ? Any suggestion for start digging on it?
Thanks!
Don't know if it can be solved extending the

I was taking a look at this issue, and as the first step I can add a section in the README talking about the order of matching, as you suggested in your comment above @dblock. Agree?

Yes.

I can see that Grape is using its own Mustermann pattern , so don't know if adding extra information to the pattern options we can generate much more precise regular expression, or if we need to update the Mustermann::Grape implementation for allowing to receive those parameters. Also, maybe is not a problem from Mustermann::Grape and we need to check if Mustermann can generate this more precise regex by itself.
What do you think @dblock ? Any suggestion for start digging on it?

This is a bit over my head, by now you understand way more than me of what's happening here ;) @namusyaka though might have an opinion.
I do see that musterman-grape hasn't been updated for a while, generally a good place to contribute!

Hey @dblock @namusyaka ,
I've added a PR with the proper changes in the mustermann-grape project for being able to provide the params information to the Mustermann::Grape instance and to obtain a more precise regular expression that can solve this problem.
Can you take a look? https://github.com/ruby-grape/mustermann-grape/pull/21
After that, and if you consider this change is appropiated, I would continue passing the params when initialising the Mustermann::Grape class, so we will be able to pass the red suite provided by @glebsoni
Comments, suggestions and feedback are totally welcome.

Solved in #2379


Add TestUpdateState using mock vm for 08-wasm

Summary
Add TestUpdateState using mock vm. See commented out test

For Admin Use

[ ] Not duplicate issue
[ ] Appropriate labels applied
[ ] Appropriate contributors tagged/assigned

Closed by #4914


fixing some web bugs

What does this Pull Request change?
Fixes:
https://github.com/GTBitsOfGood/motherhood-beyond-bars/issues/98#issuecomment-1435767988
https://github.com/GTBitsOfGood/motherhood-beyond-bars/issues/98#issuecomment-1435768505
https://github.com/GTBitsOfGood/motherhood-beyond-bars/issues/98#issuecomment-1436227365
https://github.com/GTBitsOfGood/motherhood-beyond-bars/issues/98#issuecomment-1436241926
Important Changes
Fixes:
https://github.com/GTBitsOfGood/motherhood-beyond-bars/issues/98#issuecomment-1435767988
https://github.com/GTBitsOfGood/motherhood-beyond-bars/issues/98#issuecomment-1435768505
https://github.com/GTBitsOfGood/motherhood-beyond-bars/issues/98#issuecomment-1436227365
https://github.com/GTBitsOfGood/motherhood-beyond-bars/issues/98#issuecomment-1436241926
Anything else?
NOTE: I could not replicate the other bugs, so I might have to go through them later?


MSID: 98759 Version: 1 DOI: 10.1101/2<IP_ADDRESS>09564

MSID: 98759
Version: 1
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>09564
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=98759
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>09564

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/98759v1
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>09564
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/98759/v1/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

warn: [mixed-citation-other-publication-flag] mixed-citation in reference (id=c13) has a publication-type='other'. Is that correct?
warn: [mixed-citation-other-publication-flag] mixed-citation in reference (id=c16) has a publication-type='other'. Is that correct?
warn: [title-lower-case] Content of  element is entirely in lower-case case: Is that correct? 'statistical approach'
warn: [article-email-corresp-author-count-equivalence] The number of corresponding authors (1: Yongbing Deng) is not equal to the number of distinct email addresses (2<EMAIL_ADDRESS>710836163@qq.com). Is this correct?

Fixing the above


Covering ECM elements from Telematics

We need to make sure to cover this list of ECM Certificate properties from telematics administrative information present in some exchange messages:
RollingStockDataset.AdministrativeDataSet.ECMCertificate.EINNumber.countryCodeISO
RollingStockDataset.AdministrativeDataSet.ECMCertificate.EINNumber.typeDocumentEIN
RollingStockDataset.AdministrativeDataSet.ECMCertificate.EINNumber.counterAcreditedRecognizedBody
RollingStockDataset.AdministrativeDataSet.ECMCertificate.EINNumber.EINYear
RollingStockDataset.AdministrativeDataSet.ECMCertificate.EINNumber.EINCounter
RollingStockDataset.AdministrativeDataSet.ECMCertificate.ECMCertificateValidFrom
RollingStockDataset.AdministrativeDataSet.ECMCertificate.ECMCertificateValidTo
RollingStockDataset.AdministrativeDataSet.ECMCertificate.coversTankWagonsForDangerousGoods
RollingStockDataset.AdministrativeDataSet.ECMCertificate.coversNonTankWagonsForDangerousGoods
RollingStockDataset.AdministrativeDataSet.ECMCertificate.ECMCertificateSuspended
RollingStockDataset.AdministrativeDataSet.ECMCertificate.dateECMCertificateSuspended

This must be solved by extending the vpa:DocumentedEvidence class, as has been done with era:ECCertificate here. Can be assigned to me.


Hovering on View in horizontal menu bar obstructs the viewing of next menu item

VSCode Version: 1.6.1
OS Version: Microsoft Windows 10 Pro (Build) 10.0.1506

3
Steps to Reproduce:

Try to hover over the "View" menu on the top horizontal menu bar.
Instead of the sub items from the menu appearing on the bottom of the menu item, appears on to the side of the item.

Reproduces without extensions: Yes/No

I believe this happens when there is not enough space to show the complete menu below

Yeah. So isn't this a design glitch which needs to be fixed.

https://github.com/Microsoft/vscode/issues/17457


Docs: make ToServices selectors work for in-cluster services too

Part of  https://github.com/cilium/cilium/pull/34208
Env
# kubectl get pods -o wide
NAME                              READY   STATUS    RESTARTS   AGE   IP             NODE                 NOMINATED NODE   READINESS GATES
details-v1-6448f9bdc8-p7b7l       1/1     Running   0          18d   <IP_ADDRESS>   kind-worker2         <none>           <none>
nginx-77b4fdf86c-968pb            1/1     Running   0          10d   <IP_ADDRESS>   kind-worker2         <none>           <none>
nginx-77b4fdf86c-bfj9w            1/1     Running   0          10d   <IP_ADDRESS>    kind-control-plane   <none>           <none>
nginx-77b4fdf86c-wg8dx            1/1     Running   0          10d   <IP_ADDRESS>    kind-worker          <none>           <none>
productpage-v1-65b8499c86-jbq8b   1/1     Running   0          18d   <IP_ADDRESS>    kind-worker          <none>           <none>
ratings-v1-56687d6766-c2pv5       1/1     Running   0          18d   <IP_ADDRESS>   kind-worker2         <none>           <none>
reviews-v1-5c785db578-c4p6v       1/1     Running   0          18d   <IP_ADDRESS>    kind-worker2         <none>           <none>
reviews-v2-6d8c88978b-6cc9k       1/1     Running   0          18d   <IP_ADDRESS>   kind-worker2         <none>           <none>
reviews-v3-678b968858-2kkwb       1/1     Running   0          18d   <IP_ADDRESS>    kind-worker          <none>           <none>

Access
# kubectl exec -it nginx-77b4fdf86c-968pb -- curl <IP_ADDRESS>:9080/details/1
{"id":1,"author":"William Shakespeare","year":1595,"type":"paperback","pages":200,"publisher":"PublisherA","language":"English","ISBN-10":"1234567890","ISBN-13":"123-1234567890"}

#
# kubectl exec -it nginx-77b4fdf86c-968pb -- curl <IP_ADDRESS>:9080
<!DOCTYPE html>

    <title>Simple Bookstore App</title>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="static/bootstrap/css/bootstrap.min.css">

<link rel="stylesheet" href="static/bootstrap/css/bootstrap-theme.min.css">

Hello! This is a simple bookstore application consisting of three services as shown below

......
....

Test
# cat to_services.yaml
apiVersion: "cilium.io/v2"
kind: CiliumNetworkPolicy
metadata:
  name: "l4-rule"
spec:
  endpointSelector:
    matchLabels:
      app: nginx
  egress:
    - toServices:
      - k8sServiceSelector:
          selector:
            matchLabels:
              app: "details"
      toPorts:
      - ports:
        - port: "9080"
          protocol: TCP
#  k apply -f to_services.yaml
ciliumnetworkpolicy.cilium.io/l4-rule created

Access
# kubectl exec -it nginx-77b4fdf86c-968pb -- curl <IP_ADDRESS>:9080/details/1
{"id":1,"author":"William Shakespeare","year":1595,"type":"paperback","pages":200,"publisher":"PublisherA","language":"English","ISBN-10":"1234567890","ISBN-13":"123-1234567890"}#

# kubectl exec -it nginx-77b4fdf86c-968pb -- curl <IP_ADDRESS>:9080
curl: (28) Failed to connect to <IP_ADDRESS> port 9080 after 129288 ms: Couldn't connect to server
command terminated with exit code 28

hubble

hubble observe -f --to-port 9080
Oct 29 06:46:44.262: default/nginx-77b4fdf86c-968pb:59604 (ID:7824) <> default/productpage-v1-65b8499c86-jbq8b:9080 (ID:9909) from-endpoint FORWARDED (TCP Flags: SYN)
Oct 29 06:46:44.262: default/nginx-77b4fdf86c-968pb:59604 (ID:7824) <> default/productpage-v1-65b8499c86-jbq8b:9080 (ID:9909) policy-verdict:none EGRESS DENIED (TCP Flags: SYN)
Oct 29 06:46:44.262: default/nginx-77b4fdf86c-968pb:59604 (ID:7824) <> default/productpage-v1-65b8499c86-jbq8b:9080 (ID:9909) Policy denied DROPPED (TCP Flags: SYN)
Oct 29 06:46:45.273: default/nginx-77b4fdf86c-968pb:59604 (ID:7824) <> default/productpage-v1-65b8499c86-jbq8b:9080 (ID:9909) from-endpoint FORWARDED (TCP Flags: SYN)
Oct 29 06:46:45.273: default/nginx-77b4fdf86c-968pb:59604 (ID:7824) <> default/productpage-v1-65b8499c86-jbq8b:9080 (ID:9909) policy-verdict:none EGRESS DENIED (TCP Flags: SYN)

/test

@chaunceyjiang please avoid something like this in the PR description:
```release-note
None
```

This will cause a release note to be created that just says:

None (#35506)

Instead, it is better to just completely remove the ```release-note ... ``` section. Thanks!

/ci-e2e-upgrade

/test

I don't quite understand why, but several of the tests are failing with the errors in https://github.com/cilium/cilium/issues/35666 . I don't see any evidence of the same failure affecting the main branch. Is it possible this PR somehow triggers those failures? Several of the failures have recurred multiple times when retriggering the workflow test runs.

/test

/ci-ipsec-e2e

I don't quite understand why, but several of the tests are failing with the errors in https://github.com/cilium/cilium/issues/35666 . I don't see any evidence of the same failure affecting the main branch. Is it possible this PR somehow triggers those failures? Several of the failures have recurred multiple times when retriggering the workflow test runs.

@joestringer I just rebased the main branch and all the tests passed the check.


Bugfixes

IU fixed both shift and control key handling (for US kb layout only) and scree display (including scrolling)

Hey Lennart, thank you for this pull request. I did already merge the scrolling commit, but the keyboard one is only helpful for us layout keyboards. I have an idea how to make an easy universal change to the keyboard input, but in the long run the emulator needs to mimic the fabgl mappings. But that looks like a lot of work to do.


switch to cssnano from csso

Why?

cssnano is more stable and has more minification features.
csso doesn't have active maintainers https://github.com/jakubpawlowicz/clean-css/issues/1044.
Based on postcss (using in many popular tools like prettier, stylelint, webpack and etc).

Or maybe we should avoid install css minificator and minification css, developers must decide for himself what to use.

Did you mean to title this issue “switch to cssnano from csso”?

@tigt yes, sorry :disappointed:

Actually, CSSO has got active maintainer recently, and he is the person who adopted it in SVGO 😛.

@GreLI Maybe we can feature to switch on other minification, now a lot of people use another minification like cssnano, cssmin and etc, it is not god have two package for same purpose in your node_modules

/cc @GreLI csso still doesn't has updates and fixes, cssnano still supports. Have you changed your mind?

@evilebottnawi, @GreLI: See this PR https://github.com/svg/svgo/pull/1127.
It can be merged when css-nano is released with sync support.

Closing, since there is no reasonable answer to question «why» in practical matter. Changing just in praise of changes is not an option. CSSO also has unique feature, that cssnano doesn't have.

@GreLI: Would having an extra plugin "minifyStyles-cssnano", that can be enabled, an alternative?

@GreLI

CSSO also has unique feature, that cssnano doesn't have.

Example?

Example?

See #640

@GreLI: So cssnano would have to support element usage data to be considered as an alternative to csso?


Support delete room api.

Coverage increased (+0.9%) to 10.377% when pulling 7128c5f7ec86c1b03eead62331678c0dfa1de5ea on feature/delete-room-api into 61de82470e3bdc15372f50f958b87663312e71d8 on dev.


[Storage] Added support for HttpsTrafficOnly

Description

This checklist is used to make sure that common guidelines for a pull request are followed.

[x] I have read the contribution guidelines.
[x] The pull request does not introduce breaking changes.

General Guidelines

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[ ] Pull request includes test coverage for the included changes.

SDK Generation Guidelines

[ ] If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
[ ] The generate.cmd file for the SDK has been updated with the version of AutoRest, as well as a link to the swagger spec, used to generate the code.
[x] The project.json and AssemblyInfo.cs files have been updated with the new version of the SDK.

Related Swagger PR: https://github.com/Azure/azure-rest-api-specs/pull/1120

@azuresdkci retest this please

@shahabhijeet Comments are addressed.


crash catalog view with an opds feed

opds : http://manybooks.net/opds/
readium-desktop:main/converter/opds getSearchUrlFromOpds1Feed TypeError: Cannot read property 'Url' of undefined
[2]     at OpdsFeedViewConverter.<anonymous> (/Users/Pierre/Documents/thorium/dist/main.js:2658:49)
[2]     at Generator.next (<anonymous>)
[2]     at fulfilled (/Users/Pierre/Documents/thorium/node_modules/tslib/tslib.js:107:62)
[2]     at processTicksAndRejections (internal/process/task_queues.js:89:5) +793ms

click on the first arrow

crash and return to bookshelf
When i return on catalog, it's blocked on manybook/new Titles
and i cannot click on the return arrow
eadium-desktop:renderer:bookshelf_ Warning: Hash history cannot PUSH the same path; a new entry will not be added to the history stack +256ms

whith the opds1 converter : https://readium2.herokuapp.com/opds-v1-v2-convert/http%3A%2F%2Fmanybooks.net%2Fopds%2Fnew_titles.php
The publication is located in the navigation and not into the publication array.
How to fix thorium for not crash on bad opds feed implementation ?

I can't reproduce this issue, this is has been probably fixed
Can we close it @danielweck ?

I cannot reproduce. Closing.


Vape: Shown UTC date instead of locale one

Maybe this will need to setup user's locale.

This is probably a problem of locale. Closing as not interesting now, but I've take a look later in user stuff.


GPUs that don't support float16?

ValueError: Requested float16 compute type, but the target device or backend do not support efficient float16 computation.

Is it going to be possible to run on my hardware?

Wondering the same thing. I have a GTX 1070 TI which does support float16, but at a low-rate.

Same with my GTX1060. It seems that only FasterWhisper is broken since I can pull v1.0.6-gpu and run that just fine but not the latest image.

Good to know it WAS working on the previous version. I just spun up this container last night so I was sure my GPU was the issue.

Running into the same issue here; GPU is compatible with float16, reverting to v1.0.6-gpu and it works as expected.

Same issue here, 1.06 works. Glad I found this :)

Same issue here, 1050TI 4GB, was previously working good widht nice speeds, now I updated and its reporting the same issue

Could anyone please test debug image to verify GPU issue is gone?
docker run -d --gpus all -p 9000:9000 -e ASR_MODEL=base onerahmet/openai-whisper-asr-webservice:debug-gpu

Can confirm debug image is working. The option to choose faster-whisper is gone tho?

can confirm current head still throws error, using faster_whisper:
 File "/app/.venv/lib/python3.10/site-packages/faster_whisper/transcribe.py", line 101, in __init__     self.model = ctranslate2.models.Whisper( ValueError: Requested float16 compute type, but the target device or backend do not support efficient float16 computation.

In my case, I just changed to float32 and it worked. Maybe it'll help someone :)
diff --git a/app/faster_whisper/core.py b/app/faster_whisper/core.py
index aac9b10..72de2c1 100644
--- a/app/faster_whisper/core.py
+++ b/app/faster_whisper/core.py
@@ -14,7 +14,7 @@ model_path = os.path.join("/root/.cache/faster_whisper", model_name)
 model_converter(model_name, model_path)

 if torch.cuda.is_available():
-    model = WhisperModel(model_path, device="cuda", compute_type="float16")
+    model = WhisperModel(model_path, device="cuda", compute_type="float32")

Amazing, the debug image works great!

Hello y'all, v1.1.1 has been released and it will be available on docker hub when GitHub pipeline finish.


Remove pool start time from GAMM

We want to go with another approach for fixing the problem that this was created for. This code currently has a bug anyways (#262)

TODO: Revisit in morning, maybe this is useful and we should instead just fix the bug


Adding meshes of the reference elements [ref-meshes-dev]

These meshes pull together information about the reference elements to make it more readily available to the users. Specifically, it combines the vertices of the reference elements (currently encoded in the 1st order H1 basis functions) and the numbering convention for the faces (also available in fem/geom.cpp).

This PR is now under review (see the table in the PR description). To help with the review process, please do not force push to the branch.

Mention in the CHANGELOG?
I was also debating if tetrahedron should be shortened to tet as in the other meshes in data/, but maybe it is better to keep to the geom.hpp names.

Mention in the CHANGELOG?
I was also debating if tetrahedron should be shortened to tet as in the other meshes in data/, but maybe it is better to keep to the geom.hpp names.

I can add a brief comment in the CHANGELOG.
I do prefer the full names precisely because they connect with the geom.?pp files.

Merged in next for testing...


use json-smart to parse the query

As I see it, the JsonProvider is only responsible to read the data, not the query.
See also #305, #275, but also #274.

I guess, `JsonNode' shouldn't use the provider at all.

This reverts parts of #101

Is this the only reason for JsonSmart to be a mandatory dependency?

IMHO, Using json-smart as the default provider makes it a mandatory dependency, otherwise we ship a broken default config, don't we?

In the build.gradle, the dependency is mandatory already. I must admit though that I don't know anything about the whole OSGi topic.

I think it's common to exlude JsonSmart in some scenarios like Android. The main reason for this has been the ASM issues in JsonSmart. That should not be an issue now?

Yes, that should be dealt with in #334.
But excluding the dependency and marking the classes as optional in the OSGi manifest are two different things. I'm just not away of the effects of the latter.


cmd/commands: always show developer commands

[x] Have you followed the guidelines in our Contributing document?
[x] Have you checked to ensure there aren't other open Pull Requests for the same change?
[x] Have you added an explanation of what your changes do and why you'd like us to include them?
[ ] Have you written new tests for your changes? Here's an example.
[ ] Have you successfully run brew tests with your changes locally?

Per discussion in #900.
Closes #900.

you beat me to it https://github.com/Homebrew/brew/commit/01d5be22fa8acdfb49e9b64baf2cf768097b7857
:)

👍

Nice work, thanks!


Using DecontX

I am wondering if the count matrix returned from DecontX can be used for downstream analysis like stats comparison and visualisation with FeaturePlot in Seurat?

Yes it can! Generally, the corrected count matrix can replace the original count matrix as the primary input into Seurat. We are in the process of updating our vignette to show how to move counts back and forth between Seurat and a SingleCellExperiment object. For now, here is a brief snippet of code which you can use to get decontX counts into a Seurat object:
# Read counts from CellRanger output
library(Seurat)
counts <- Read10X("sample/outs/filtered_feature_bc_matrix/")

# Create a SingleCellExperiment object and run decontX
sce <- SingleCellExperiment(list(counts = counts))
sce <- decontX(sce)

# Create a Seurat object from a SCE with decontX results
seuratObject <- CreateSeuratObject(round(decontXcounts(sce)))

Optionally, the "raw" matrix can be also be imported and used as the background:
counts.raw <- Read10X("sample/outs/raw_feature_bc_matrix/")
sce.raw <- SingleCellExperiment(list(counts = counts.raw))
sce <- decontX(sce, background = sce.raw)

Note that the decontaminated matrix of decontX consists of floating point numbers and must be rounded to integers before adding it to a Seurat object. If you already have a Seurat object containing the counts matrix and would like to run decontX, you can retrieve the count matrix, create a SCE object, and run decontX, and then add it back to the Seurat object:
counts <- GetAssayData(object = seuratObject, slot = "counts")
sce <- SingleCellExperiment(list(counts = counts))
sce <- decontX(sce)
seuratObj[["decontXcounts"]] <- CreateAssayObject(counts = decontXcounts(sce))

I am going to move this into the Discussions section rather than Issues and edit the title to say "Using DecontX with Seurat" so others will be able to see easily find it.


Revert "chore(deps): update dependency yaml to v1.0.0-rc.3"

Reverts ikatyang/yaml-unist-parser#35
Ref: renovatebot/renovate#2180

Codecov Report

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

@@          Coverage Diff          @@
##           master    #36   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          26     26
  Lines         530    530
  Branches      103    103
=====================================
  Hits          530    530

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 2e3d23a...4ee07d1. Read the comment docs.


crash when seek online streaming song or play a finished playing song again

crash when seek online streaming song or play a finished playing song again on let diff = lastOffsetPolled - oldValue inside didSet var lastOffsetPolled: UInt64 = 0 on AudioThrottle.swift
tested on:
ios: 10.3,13.1.2
iphone: iphone 5,iphone 6

I believe this should be resolved in version 1.1.1.


Make panels useable in another project as a separate library

Panels is currently only useable for only using panels. Please make it so that I can call panels at any moment in a game. and close it at any moment so that it can be used for cutscenes!

Can you explain more about how you would expect this to work?

So ofcourse it all depends if this is within scope of the project. I completely understand if it's not and then you can close this. But what I am trying to do is use Panels for cutscenes.
Currently when Panels is imported, it overwrites the playdate.update() function with the one from Panels. It would be cool if this was optional so you could manually call the Panels update from your project only when needed.
So for instance my update would look something like.
function playdate.update()
    if isRunningPanels then
        Panels.Update() -- a custom update function for Panels.
        return
    end

   -- otherStuff not related to panels.

end

function startPanels()
   isRunningPanels = true
   Panels.Start(myPanelsData)
end

function stopPanels()
   isRunningPanels = false
   Panels.Stop(myPanelsData) -- a new Stop function for Panels
end

Then when I want to start running Panels; I would call startPanels()
Then when I want to stop running Panels; I would call stopPanels()

Thanks for the info.
As you noted, Panels comics are meant to be their own standalone game. I'm considering this out of scope for now, but may come back to it later. Feel free to continue to add comments here if you have more thoughts about it.
Some notes:
How would the game know when to stop Panels?

Set callbacks to notify the game when each sequence is complete.
The game would halt the comic and resume the gameplay when the desired sequence is reached.
A mode where Panels quits automatically after completing the comic (instead of returning to the menu).
In this mode, the game would set just the comicData for the current cut scene, start Panels and wait for it to complete. Probably still need a callback in this mode to know when to resume gameplay.

Menus
When used for cutscenes Panels wouldn't add the Credits or Chapters options to the system menu.
Would have to provide an alternate way for games to display the Panels credit & link since it currently appears in the Credits menu.
Start & Stop
Panels.stop() is probably not needed. You'd just stop calling Panels.update() once your game gets the callback that the cutscene is complete.
Most of what happens in start() is creating the system menus etc. which also wouldn't be needed. Perhaps you invoke the cutscene with a different method that also signals Panels to use cutscene mode.
Panels.start(data) creates a standalone game as it does now, and Panels.startCutscene(data) starts a comic in cutscene mode.

Reopening to take another look at this.

@unbelievableflavour @simjnd
I added cutscene support in a temporary dev branch: panels/cutscene-support
The way this works is instead of calling Panels.start(), you call Panels.startCutscene(data, callback) where data is the comicData for the entire cutscene and callback is a function in your game that will be called when the cutscene finishes.
While the cutscene is running (until your callback is called) call Panels.update() from your main Playdate update loop.
When the cutscene completes, simply stop calling Panels.update().
It's up to you to keep track of when a cutscene is running (and which one to start) in your main game code.
I created a very simple example of how this works: panels-cutscene-example
In this game you use the arrow keys to move a box around, and press the A button to trigger a cutscene and move to the next "level".
The main caveat is that input handlers and button callbacks in your main game may continue to get triggered while the cutscene is active unless you code around that in your main game (see example).
Let me know if this will work for your use case, or if you'd need some other functionality I haven't thought of.

Here is an example of it working with Cotton! very cool

Added a wiki page for integration in Cotton here.
https://github.com/unbelievableflavour/Cotton/wiki/How-to:-Integrate-Panels-(Beta)

Very cool.
Ideally the transition between game and comic would be less abrupt somehow, but I think that might have to be up to the game (like wipe or fade to a blank screen before starting the comic). Let me know if you think there's something I can do on my end to make that easier.
Also, I'll eventually be merging that change into the main branch at which point you might need to update your wiki.

Yeah, the transition is completely up to the game dev. Let me know when you merge this into master. I'll update it immediately after :)
I was also thinking. That it might be nice to move the cutscenes stuff into a separate library since the use is completely different. There might be a lot of stuff now that will never be used when you use Panels only for cutscenes.
Or is that everything still necessary?

It's mostly all still needed except for the parts that do the menus for chapters, credits, etc.

Maybe just keep it together then for now. Easier to manage.

This change is now merged into the main branch and released as v1.1

Thnx, updated docs to use master. So you can remove the branch!


Build docs as part of Travis-CI testing, failing on any warnings raised

This PR depends on #122.

Thanks for this! Been meaning to do this for a while.


Access log location configurable and support Node v4

I got this with npm install:
npm ERR! notsup Unsupported
npm ERR! notsup Not compatible with your version of node/npm<EMAIL_ADDRESS>npm ERR! notsup Required: {"node":">= 0.10.0 < 0.11.0 || >= 0.11.13 < 0.13.0 || >= 1.0.0 < 2.0.0"}
npm ERR! notsup Actual:   {"npm":"2.14.3","node":"4.1.0"}
The sqlite3 version did not support latest Node version. This commit fixes this and works on my machine :)

This PR is also available for testing by "npm install -g fakit"

Would like to merge it, but can't. Because the rename to fakit is already in there. So will add the changes in manually and mention you in the comment. Hope that is okay.
Sorry it took so long!

Sqlite is already updated btw. Did that a month ago.


API Topic Threshold error

i find when I have this less than 1, it gives an error - intended?
If so, can add to docs?

or
payload = '{"text": ["Astronauts go on space walks.","Basalt rocks and minerals are on earth."],"probability_threshold":"0.5", "topic_threshold":"2.0", "request_id":"example_id10"}'

headers = {}
res = requests.post(url, data=payload, headers=headers)
print(res)
print(res.json())
<Response [500]>
{'msg': 'Internal Service Error', 'service_version': 'unspecified'}

Same thing if you leave it out, I think.

e.g.
payload = '{"text": ["NASA Concept Tagging API works.","Web interface to go."]}'


debugging focus statement should be detected

debugging focus statement is not caught by linting, while binding.pry and
byebug statements are correctly detected.
Pretty useful gem minitest-focus (https://github.com/seattlerb/minitest-focus)
helps run a single test by putting a focus statement above test:
focus
test 'only run this test' do
  # debugging something important
end

These focus statements sometimes get accidentally left in commits, while
binding.pry and byebug are caught by cop Cop::Lint::Debugger
rubocop -V
0.46.0 (using Parser <IP_ADDRESS>, running on ruby 2.3.0 x86_64-darwin15)

RuboCop RSpec has a cop to detect focused specs. Perhaps this belongs in Rubocop Minitest. (I'm not sure that gem exists yet.)

If it doesn't belong here, I'll make a separate gem for it @mikegee

Yeah, I think this should be outside RuboCop's core, as it's specific to a particular testing library.

Alright, thanks for taking a look!