fix: [M3-8590] - Restrict access to Database Create page for restricted users

Description 📝
Discovered during release testing for v1.128.0:
A recent PR updated the UI for users who have restricted access (read only or no access) to Databases: https://github.com/linode/manager/pull/10794
This included disabling buttons and providing helper tooltip text to explain the reason why restricted users couldn't access these features.
The PR did not include the same treatment for the databases/create page, which a restricted user can still navigate to via the URL (https://cloud.linode.com/databases/create) or via the top menu's Create button. The restricted user is able to fill out the form and submit it, and only then do they receive an error.
Thank you @mjac0bs for your inputs! :)
Changes  🔄
List any change relevant to the reviewer.

Added an error message on the create database page for restricted users
Disabled all controls on /databases/create
Updated DatabaseCreateAccessControls to disable inputs through a prop

Target release date 🗓
NA
Preview 📷

How to test 🧪
Reproduction steps

Login as a user with full access and add databases. Grant read_only permissions to these new resources to the restricted user
Login as the restricted user and navigate to the databases page. The "Create Database Cluster" button should be disabled, but if you go to directly to https://cloud.linode.com/databases/create via the URL or via the top menu, notice that the form is accessible.

Verification steps
Pull the PR, login as a restricted.
Navigate to /databases/create via the URL or via the top menu. The form should be disabled and an error notice should appear on top.
As an Author I have considered 🤔
Check all that apply

[ ] 👀 Doing a self review
[ ] ❔ Our contribution guidelines
[ ] 🤏 Splitting feature into small PRs
[x] ➕ Adding a changeset
[ ] 🧪 Providing/Improving test coverage
[ ] 🔐 Removing all sensitive information from the code and PR description
[ ] 🚩 Using a feature flag to protect the release
[ ] 👣 Providing comprehensive reproduction steps
[ ] 📑 Providing or updating our documentation
[ ] 🕛 Scheduling a pair reviewing session
[ ] 📱 Providing mobile support
[ ] ♿  Providing accessibility support

Added the changeset. I missed this - thanks for pointing it out @dwiley-akamai !
@mjac0bs I marked it as a fix since this was meant to fix a bug on a change released earlier. Let me know if you still prefer Changed. I'll update the PR title as well to keep things consistent

@mjac0bs I marked it as a fix since this was meant to fix a bug on a change released earlier. Let me know if you still prefer Changed. I'll update the PR title as well to keep things consistent

@zaenab-akamai Good call on Fixed since there was a previous PR for this. That works for me. 👍🏼


feat: add the ignore user_agent ability

Codecov Report
Patch coverage: 100.00% and no project coverage change.

Comparison is base (ce900be) 100.00% compared to head (9dfcae5) 100.00%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
Additional details and impacted files
@@            Coverage Diff            @@
##             alpha       #66   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           19        19
  Lines          611       640   +29
  Branches        48        57    +9
=========================================
+ Hits           611       640   +29

Flag
Coverage Δ

unittests
100.00% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

controller/sentry/admin.py
100.00% <ø> (ø)

controller/sentry/serializers.py
100.00% <ø> (ø)

controller/sentry/metrics/celery.py
100.00% <100.00%> (ø)

controller/sentry/metrics/wsgi.py
100.00% <100.00%> (ø)

controller/sentry/models.py
100.00% <100.00%> (ø)

controller/sentry/utils.py
100.00% <100.00%> (ø)

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


DeprecationWarning: pkg_resources is deprecated as an API

liccheck should migrate to importlib.metadata.distributions()

I get this:
liccheck -s liccheck.ini -r requirements.txt >> lisensstatus.txt
Traceback (most recent call last):
File "C:\Users\terje\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 196, in _run_module_as_main
return run_code(code, main_globals, None,
File "C:\Users\terje\AppData\Local\Programs\Python\Python310\lib\runpy.py", line 86, in run_code
exec(code, run_globals)
File "C:\Users\terje\AppData\Local\Programs\Python\Python310\Scripts\liccheck.exe_main.py", line 7, in
File "C:\Users\terje\AppData\Local\Programs\Python\Python310\lib\site-packages\liccheck\command_line.py", line 529, in main
sys.exit(run(args))
File "C:\Users\terje\AppData\Local\Programs\Python\Python310\lib\site-packages\liccheck\command_line.py", line 509, in run
return process(
File "C:\Users\terje\AppData\Local\Programs\Python\Python310\lib\site-packages\liccheck\command_line.py", line 317, in process
pkg_info = get_packages_info(requirement_file, no_deps)
File "C:\Users\terje\AppData\Local\Programs\Python\Python310\lib\site-packages\liccheck\command_line.py", line 195, in get_packages_info
packages = [transform(dist) for dist in resolve_func(requirements)]
File "C:\Users\terje\AppData\Local\Programs\Python\Python310\lib\site-packages\liccheck\command_line.py", line 195, in
packages = [transform(dist) for dist in resolve_func(requirements)]
File "C:\Users\terje\AppData\Local\Programs\Python\Python310\lib\site-packages\liccheck\requirements.py", line 51, in resolve
for dist in pkg_resources.working_set.resolve(requirements):
File "C:\Users\terje\AppData\Local\Programs\Python\Python310\lib\site-packages\pkg_resources_init.py", line 777, in resolve
raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (websockets 12.0 (c:\users\terje\appdata\local\programs\python\python310\lib\site-packages), Requirement.parse('websockets<11,>=10; python_version > "3.6" and extra == "websockets"'), {'gql'})
Python 3.10
Win 11


Include requirements

Check rebar.config to see if a non-strict version requirement is used and use that in the package instead of what is in the lock file. And if just the package name is in the rebar.config use ~> (lock version)

@tsloughter I think this can be closed...
 cat rebar.config                                                                                Sun Apr 14 21:48:03 2019
{erl_opts, [debug_info]}.
{deps, [{elli, "~> 3.1"}]}.
 ~/d/e/jb_test rebar3 compile
===> Fetching hex_core ({pkg,<<"hex_core">>,<<"0.5.0">>})
===> Version cached at /Users/starbelly/.cache/rebar3/hex/hexpm/packages/hex_core-0.5.0.tar is up to date, reusing it
===> Compiling hex_core
===> Compiling rebar3_hex
===> Verifying dependencies...
===> Fetching elli ({pkg,<<"elli">>,<<"3.2.0">>})
===> Version cached at /Users/starbelly/.cache/rebar3/hex/hexpm/packages/elli-3.2.0.tar is up to date, reusing it
===> Compiling elli
===> Compiling jb_test


Compatibility with mongodb 5 and 6?

Nova pins mongodb to version 4, is there a reason why it does not support v5 or v6? Could we change it to "mongodb": "4 - 6"?
Maybe we could keep track of what is required to allow higher versions of the mongodb package.

There's no reason it shouldn't. We should also be aware of running tests for the mentioned versions. I wonder if there's a way, for that.

<EMAIL_ADDRESS>supports all mongo versions.


Sync reports and searches with SDF

Last week I converted a Suitebundle in a SDF zip files.
The suitebundle contained saved searches and reports but when I tried to deploy that project I got validation problems and there was no way to get it to work.

I thinks that, as Suitebundler did, SDF should also allow to sync and deploy both saved searches and reports.
Thanks!

This issue is not with the tool itself, The issues with server side validations etc have to be reported to Netsuite support.
This is not a problem with the CLI itself. Its the response coming from Netsuite SDF.
Please open a ticket with NS Support.


Incorrect URL behind link "Create a fully qualified domain name in the Azure portal"

The link titled "Create a fully qualified domain name in the Azure portal" - takes you to an article that describes building a Linux VM in Azure, but does not include any details on DNS.
Create a fully qualified domain name in the Azure portal.

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

ID: 8af3a0e6-6629-3044-4bdc-4f73a6f77861
Version Independent ID: a93c0dc1-678d-2319-d850-ca3dca213b74
Content: Run a Linux VM on Azure - Azure Reference Architectures
Content Source: docs/reference-architectures/n-tier/linux-vm.yml
Service: architecture-center
Sub-service: reference-architecture
GitHub Login: @martinekuan
Microsoft Alias: architectures

@dtrac
Thanks for your feedback! I've assigned this issue to the author who will investigate and update as appropriate.

@dtrac Thank you for your feedback.  I've updated the document with a more relevant link.  If still are experiencing issues, please feel free to re-open.


uploader should reset after 1 minute if missing service definition

When discovering a new service, wait until bus stabilizes and restart esp.
Or disconnect azure hub, reload services, reconnect hub

@pelikhan , @mmoskal  - is this still an issue?

this was fixed in pxt uploader long time ago, and the C one doesn't even download specs


smallfile benchmark still requires es_index in CR

in resources/crds/ripsaw_v1alpha1_smallfile_cr.yaml there is no es_index field and the CR fails, but if you include es_index: ripsaw-smallfile as done in the tests/test_crs/valid_smallfile.yaml, the CR works.   This field should not be necessary, have to fix in snafu/smallfile_wrapper/

@bengland2 this looks to have been resolved based on my testing
The es_index variable has a default set
          - name: es_index
            value: "{{ elasticsearch.index_name | default("ripsaw-smallfile") }}"

We should remove the redundant line from the test cr but it does not hurt anything. Can you confirm this is good?

@bengland2 ?

Will clean this up later.


feat: Bot API 7.0

https://core.telegram.org/bots/api#december-29-2023

Wow, what a big spec update. 🤯 Finally, bots can work with reactions. 🤩 In general, I would just like to express my respect for your quick work on the update. 👍 I anticipate a lot of work on our documentation. 🙃

@all-contributors @AbbassAlmusawi for bug

@all-contributors add @AbbassAlmusawi for bug

I anticipate a lot of work on our documentation. 🙃

It will not be a lot, but there will definitely be some. I am going to get started with that now.

@niusia-ua check out https://github.com/grammyjs/website/pull/971


⬆(project) upgrade base python version to 3.11

Purpose
Python 3.11 is the most recent python stable release. We should support it.
Proposal

[x] upgrade project base Docker image to python 3.11
[x] upgrade CI base Docker image to python 3.11
[x] update the documentation

@jmaupetit maybe the opportunity to uncomment this line !
https://github.com/openfun/ralph/blob/upgrade-python-3.10/src/ralph/models/xapi/fields/common.py#L35

@jmaupetit maybe the opportunity to uncomment this line ! https://github.com/openfun/ralph/blob/upgrade-python-3.10/src/ralph/models/xapi/fields/common.py#L35

Yes! Well spotted, hawk-eye!


Is there any script for metrics?

The paper has a table for different metrics for comparison , is there any script?

The paper has a table for different metrics for comparison , is there any script?

You can find some of them in  https://github.com/cvzoya/saliency/tree/master/code_forMetrics


Change permission logic to break correctly on windows and unix

What does this PR do?
#5686 introduced a bug where on windows machines, the addParentPerms function would get stuck as the logic for breaking the loop was specific to stop on unix root "/". This fix makes the break condition more general.
Describe your test plan
The usual tests + manually test a flare on a windows VM.

Has this been tested on Windows?

I did a local build (win10), the flare command was working and agent operations were nominal.


Automated cherry pick of #2014: region: fix server create input params not correct when detach sub resource

Cherry pick of #2014 on release/2.11.
#2014: region: fix server create input params not correct when detach sub resource

/lgtm
/approve

Codecov Report

:exclamation: No coverage uploaded for pull request base (release/2.11@ff09039). Click here to learn what that means.
The diff coverage is 0%.

@@              Coverage Diff               @@
##             release/2.11   #2015   +/-   ##
==============================================
  Coverage                ?   7.19%
==============================================
  Files                   ?     445
  Lines                   ?   69262
  Branches                ?       0
==============================================
  Hits                    ?    4985
  Misses                  ?   63865
  Partials                ?     412

Flag
Coverage Δ

#aFlag
7.19% <0%> (?)

Impacted Files
Coverage Δ

pkg/compute/models/guests.go
0.69% <0%> (ø)

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 ff09039...e3db4d0. Read the comment docs.


Unexpected token, expected {

./src/posts.js
Syntax error: Unexpected token, expected { (3:7)
1 | import React from 'react';
2 | import { List, Datagrid, Edit, Create, SimpleForm, DateField, TextField, EditButton, DisabledInput, TextInput, LongTextInput, DateInput } from 'admin-on-rest';

3 | export PostIcon from 'material-ui/svg-icons/action/book';
|        ^
4 |
5 | export const PostList = (props) => (
6 |     <List {...props}>

Probably your syntax is incorrect. See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/export for a reference.

@wedneyyuri What @shenshouer describes is the error you get by just following the admin-on-rest documentation. I have the same error.

The export from syntax isn't standard ES6, and it requires an extension. We should use a more standard approach in the doc.


[WFLY-12190] EJB: EJB over HTTP discovery configuration

https://issues.redhat.com/browse/EAP7-1236
https://issues.redhat.com/browse/WFLY-12190
Depends on:
https://github.com/wildfly/wildfly/pull/13305
Thanks for submitting your Pull Request!
Please make sure your PR meets the following requirements:

[ ] Pull Request title is properly formatted: [WFLY-XYZ] Subject or WFLY-XYZ Subject
[ ] Pull Request contains link to the JIRA issue(s)
[ ] Pull Request contains description of the issue(s)
[ ] Pull Request does not include fixes for issues other than the main ticket
[ ] Attached commits represent units of work and are properly formatted

For bigger changes, major and minor component upgrades make sure your PR also meets following requirements:

[ ] Pull Request requires a change to the documentation
[ ] Documentation have been updated accordingly
[ ] Tests were added to cover changes

For new features ensure as well:

[ ] Analysis was done
[ ] Test Plan has been done
[ ] Tests were verified in advance

If you are not an active contributor of the WildFly project you can request sponsorship by one of the members to help guide you through the process.

@darranl I have updated the description. I have also added the possibility of HTTP discovery from standalone client (in attached PRs). Regarding security, EJB over HTTP protocol is integrated with Elytron and the invocations are secured. Specifically, I had to provide Elytron configuration for the tests to pass (discovery invocations to succeed). I agree that it has to be double-checked though.

@tadamski I know the server side is already covered by Elytron security, the bit I am not sure about is the client side of these server to server connection.  In this case there are a few scenarios that may need some integration: -

SSLContext
Authentication Configuration
Identity Propagation using Delegated Credential

@tadamski we haven't really followed up on this together, it looks like it has a merge conflict anyway but do we want to set something up so we can look at the security implications in more detail?

@darranl I have to update this PR but this is mostly config stuff. The key PR is https://github.com/wildfly/wildfly-http-client/pull/29 on which this PR relies. I would be happy to discuss it.

test, please ignore

I've removed the missing-reqs label as there was an agreement the test development can be late on this feature.

This PR depends on https://github.com/wildfly/wildfly/pull/13305

@jamezp merged; failing test seem unrelated; this should be ready to merge

I see all checks passing, do anything else prevent this PR from merging? Thanks

/retest

The issues I've raised have all been addressed, but the discussion with Darran remains open.

I have one comment for testing that I don't think should hold up this PR so is something more general.  At the moment our testsuite is becoming very slow to execute so the pattern of Configure -> Deploy -> Single Test -> Undeploy -> Revert Configuration adds a lot of steps for one test.  Ideally if we can find ways a common deployment can be used for multiple scenarios we can execute multiple tests for a single pair or configure and pair of deploy tasks.  Ideally finding ways to test the success and failure scenarios under the same test case.
But in the case of this specific change I see we have some simple authentication client configuration where a single configuration is available but I would still like to see something where we test a configuration where the correct configuration is only resolved / resolvable after discovery.  I don't necessarily have an issue with that being in a follow up PR if we can make sure it happens.
The reason I am seeing this piece as important is because it will be an area of code we must maintain for backwards compatibility so once we release a Final version we will not be able to change the resolution logic without the risk of breaking something developed against the original behaviour.

@tadamski https://issues.redhat.com/browse/WFLY-13878 is to track my last request.

@bstansberry I'll update the transformer to handle the new element remote-http-connection


Implement Zero Trust Authentication for Web Applications

I've been thinking about a feature of implementing Zero Trust authentication for web applications.
Essentially, I'm imagining extending the current capabilities to support Zero Trust principles by adding support for web application authentication based on emails, groups, and other identity factors, similar to what Cloudflare Tunnel does for web apps.
Implementing this also provides isolation for self-hosted applications, requiring users to authenticate before they can access anything.
Is this something that’s possible to implement? I’m really excited about the potential of this feature and would love to hear your thoughts on it.

Hey @gr4n73
This is possible. And I think that this is a great idea. Could you please point out to this feature of Cloudflare Tunnel?  A link to the docs would do.
Are you looking into protecting internal/self-hosted apps or SaaS (e.g., salesforce)

Hey @braginini,
Link to the Docs: https://developers.cloudflare.com/cloudflare-one/applications/configure-apps/self-hosted-apps/.
The below image is the architecture from the above docs.

Hey @gr4n73
The way it works right now is that you install a routing peer in your private network (data center) and configure a network route using this peer to route traffic.
Every NetBird client app will need to authenticate before being able to access that routed network and apps inside it. The auth session is configurable and defaults to 24h.
You can create DNS routes pointing to specific internal apps.
Is it something that could work for you? Or are you missing auth on every request to the internal app?


Home/end scrolls to start/end of file

Apparently one of the stated goals of this project is "Common keybindings", so I think home/end should do the normal thing and move the cursor to the start or end of the line. Repeatedly pressing home should move between the start of the line and start of non-whitespace.

There is .config/micro/bindings.json file where you can map these movements to Home or End key
{
    "Home": "StartOfLine`,
    "End": "EndOfLine"
}

"Home": "StartOfLine`, causes: Error reading bindings.json: invalid character '\n' in string literal
this works:
{
"Home": "StartOfLine",
"End": "EndOfLine"
}

But shouldn't it be the standard bindings by default?
On 13 Aug 2016 9:41 a.m., "dodona2"<EMAIL_ADDRESS>wrote:

"Home": "StartOfLine`, causes: Error reading bindings.json: invalid
character '\n' in string literal
this works:
{
"Home": "StartOfLine",
"End": "EndOfLine"
}
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/zyedidia/micro/issues/206#issuecomment-239610211, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAXACmUYh-j5VjcEwuiVJOUuNHg4kPX2ks5qfYMbgaJpZM4JjBb-
.

it's only typo @dodona2 :)
@Timmmm  you are right. I think that author should remove this claim from features, it's very unfortunate. Every one remaps his key bindings. Here is mine:
{
	"Alt-j": "CursorDown",
	"Alt-k": "CursorUp",
	"Alt-h": "CursorLeft",
	"Alt-l": "CursorRight",
	"Alt-d": "CutLine",
	"Alt-v": "NextSplit",
	"Alt-r": "ShellMode",
	"Home": "StartOfLine",
	"End": "EndOfLine"
}

I would be glad if insert new line bellow current line would be possible no matter what is the cursor position. Also command chaining would be cool. Something like:
{
        "Alt-o": "EndOfLine,InsertEnter"
}

Yeah I see what you mean about the word common but I'm trying to convey the fact the default keybindings aren't (or at least shouldn't be) too surprising.
Additionally I think the differences in opinion in what is common mostly comes from common keybindings on mac vs linux. I primarily use mac, where home/end by default bring you to the start and end of the file. But it seems like on linux they do start and end of line. There was a debate around this issue earlier and there seems to be quite a bit of support for start/end of line so perhaps it would be a good idea to change the defaults.
@is73 command chaining is supported and that expression you have for Alt-o should work.

You made my day @zyedidia  :) InsertLine(Bellow|Above) would be better. Do you have some intention to allow assign shell command to keyboard shortcut? It would be nice to run "go run [current-file]" using shortcut. Something like "Save,ShellMode,'go run %'".

Currently (with the most recent commit 28897c01ea8355d44a31403795848d15f97aec5b) you can do that, but you need to use lua. You need to create a new plugin so create the file ~/.config/micro/plugins/pluginName/pluginName.lua. This lua script will be run on startup, so you can name the plugin init or whatever you like (just make sure you use the name everywhere I write pluginName).
Then in the pluginName.lua put
function gorun()
    -- The second argument `true` means micro will close the editor and run the command interactively
    -- If the argument is `false` it will run the command in the background
    HandleShellCommand("go run " .. CurView().Buf.Path, true)
end

Then you can bind this function in bindings.json:
{
    "Alt-r": "pluginName.gorun"
}

You can also bind it directly in the lua script with
BindKey("Alt-r", "pluginName.gorun")

I know that all this stuff isn't very well documented and I am working on writing a much more comprehensive help system. But you can look at the existing go and autoclose plugins for some more examples of what you can do with the plugin system (although I think it still needs to be fleshed out more).

It works perfectly. Is it possible to create more run functions for other languages called following the current file extension?

Yeah you can just use an if statement with the current filetype which you can get with CurView().Buf.FileType. For example:
local ft = CurView().Buf.FileType
if ft == "Go" then
    ...
elseif ft == "Java" then
    ...
elseif ft == "shell" then
    ...
end

Man! Micro needs docs :) Thank you.

there should be uppercase L in InsertNewline

I think it's better the way it is because it's inserting a newline character, so it's newline as one word. If it's InsertNewLine then that means it is inserting a new (empty) line, but that's not necessarily true, because it could be splitting a line in two.
Anyway I don't really think it's a big deal.

WARNING: Pedant mode engaged.
@zyedidia I'm a bit late to this conversation, but HOME and END on the mac does not move the cursor--it just moves the view area to the beginning or end while keeping the cursor where it is. This is sort of the way PCs are supposed to work (with CTRL-HOME and CTRL-END) when  SCROLL LOCK is on, if everyone hadn't forgotten what the hell the SCROLL LOCK key was for long ago.
If the cursor is to move, the PC convention is probably (beginning/end of line) the least surprising.
P.S. - Great editor. Thanks.


gofmt

Just ran
gofmt -w .

on the project root. That's all.

https://blog.golang.org/go-fmt-your-code

Please re-open when the DCO once signed, thanks


guzzle ignore http proxy

Dear all, I am using this example to do async calls
<?php

include './vendor/autoload.php';
use GuzzleHttp\Client;
use GuzzleHttp\Psr7\Request;
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\RequestInterface;
use GuzzleHttp\Psr7\Response;

$handler = \GuzzleHttp\HandlerStack::create();

$iterator = function () use ($handler) {
    $index = 0;
    while (true) {
        if ($index == 1) {
            break;
        }else{
$index ++;
        }

       $proxy = "http://username:63636336@proxy.com:2235";
       $client = new Client(['timeout' => 20, 'handler' => $handler, 'debug' => TRUE]);
       $url = "https://www.mywebsite.com/ip.php";
       $request = new Request('GET', $url, ['proxy' => ['http' => $proxy]]);
        yield $client
            ->sendAsync($request)
            ->then(function (Response  $response) use ($request) {
                return [$request, $response];
            });
    }
};

$promise = \GuzzleHttp\Promise\each_limit(
    $iterator(),
    1,  /// concurrency,
    function ($result, $index) {
        /** @var GuzzleHttp\Psr7\Request $request */
        list($request, $response) = $result;
        echo (string)$response->getBody() . ' completed ' . PHP_EOL;
    }
);
$promise->wait();

the Debug
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to www.mywebsite.com (<IP_ADDRESS>) port 443 (#0)
* ALPN, offering http/1.1
* Cipher selection: ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH
* successfully set certificate verify locations:
*   CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none
* SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384
* ALPN, server accepted to use http/1.1
* Server certificate:
*  subject: CN=mywebsite.com
*  start date: Oct 23 23:56:53 2018 GMT
*  expire date: Jan 21 23:56:53 2019 GMT
*  subjectAltName: host "www.mywebsite.com" matched cert's "www.mywebsite.com"
*  issuer: C=US; O=Let's Encrypt; CN=Let's Encrypt Authority X3
*  SSL certificate verify ok.
> GET /ip.php HTTP/1.1
Host: www.mywebsite.com
User-Agent: GuzzleHttp/6.3.3 curl/7.62.0 PHP/5.6.38
proxy: http://username:63636336@proxy.com:2235

< HTTP/1.1 200 OK
< Date: Sat, 17 Nov 2018 00:50:46 GMT
< Server: Apache
< Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
< Content-Length: 13
< Content-Type: text/html; charset=UTF-8
<
* Connection #0 to host www.mywebsite.com left intact
<IP_ADDRESS> completed <===============

It is my server Ip address not the proxy how can I fix that
how come does that happen!

I found it :)
       $client = new Client(['timeout' => 20, 'handler' => $handler,
    'proxy' => [

        'https' => $proxy

    ]
]);


SPIKE Proposal

Context
This is a refactor proposal for our existing components
Changes proposed in this pull request
This is a refactor proposal for our existing components
Link to Trello card

Generally speaking looks good - separating out the logic and data is a real win here

Looks good to me.

The Spike has been done.


⚠ Bofrost.at has degraded performance

In 1b2f454, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1026 ms

Resolved: Bofrost.at performance has improved in 344b732 after 7 minutes.


Add panel with component props

Yeah! Something like this would be great.
We are discussing something similar here: https://github.com/kadirahq/react-storybook/issues/19#issuecomment-206584563


Use more robust python package management system instead of pip (Poetry, ...)

My actions before raising this issue

[ ] Read/searched the docs
[ ] Searched past issues

Using pip as a package manager has many issues with dependency resolution which we are faced before. Poetry has some advantages here. https://python-poetry.org/

but poetry can shoot you in the face :(

I can help with transition to poetry if wanted

@breznak, it would be great! Please send us a PR with Poetry and also look at #4633.

Fixed https://github.com/opencv/cvat/pull/6048


Add Breadcrumbs

Added breadcrumb navigation to the directory display

Thanks for your pull request. Will take a look soon!


[factory-sensors] Add test for temperature of 0 degrees

This exercise should reject solutions with !temperature.

In the story null is a special signal that the sensor is broken. That means in-universe the sensor will needlessly be replaced if it happens to encounter temperatures of 0 degrees.

In our world, the assignment requires that students make distinction between nulls and numbers. 0 is a valid number. There is no reason to have it intentionally be handled differently than -1 or 1 and lumped with null.

This is supported by the existing exemplar solution; it uses if (temperature === null)

Yah this makes a lot of sense.


Releases

Not a big problem but on releases page version is showed as 2.15.0 where it should have been 3.15.0.

Fixed, thanks.


Kiwi Browser Feature Recommendation

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

Describe the solution you'd like

Describe alternatives you've considered

Additional context

First of all, I was just inspired to feel that this function is very user-friendly, and in line with the mobile browser mode of operation.
I am a user from China and I like kiwi very much.
I want Android to come up with a tablet mode that can be switched on and off according to the user's needs.

UIAs above, this is just a personal suggestion, if it is difficult to implement, or if other users object. You can also not update.

Is your feature request related to a problem? Please describe.
Describe the solution you'd like
Describe alternatives you've considered
Additional context
First of all, I was just inspired to feel that this function is very user-friendly, and in line with the mobile browser mode of operation.
I am a user from China and I like kiwi very much.
I want Android to come up with a tablet mode that can be switched on and off according to the user's needs.

UIAs above, this is just a personal suggestion, if it is difficult to implement, or if other users object. You can also not update.

May I ask what's the name of the browser you are using in ss?

@qingwan123 请问你用的ss浏览器叫什么名字？

I am from China, and this browser is domestic. It's called Yujian browser. I don't know if you can download it.

https://play.google.com/store/apps/details?id=com.yjllq.internet This one?

#146


vespa-http-client-jar-with-dependencies.jar null pointer exception

When reading from stdin, with --verbose param, the client throws exception:
Exception in thread "main" java.lang.NullPointerException
        at java.base/java.io.File.<init>(File.java:278)
        at com.yahoo.vespa.http.client.runner.Runner.main(Runner.java:89)

It seems, there should be null check on commandLineArgs.getFile()
https://github.com/vespa-engine/vespa/blob/2686f79b2df3e52e2d43521db4c0b09597c07e73/vespa-http-client/src/main/java/com/yahoo/vespa/http/client/runner/Runner.java#L89

Thank you for the detailed report, we will fix this.


CoreTest.testCamelContextAwareRegistryBeansInitialized failing after RouteBuilder started implementing CamelContextAware

Not sure what's going on with this. In the failure case, a bunch of RouteBuilder impls have been found via registry.findByType(CamelContextAware.class) and they all have a null CamelContext. On success they never show up in the registry lookup at all.
I can't replicate this locally. Maybe its related to the order of test execution.
2021-08-10T01:10:42.5347701Z 2021-08-10 01:10:42,525 WARN  [org.apa.cam.qua.cor.CoreResource] (executor-thread-1) Found a CamelContextAware bean of type org.apache.camel.quarkus.core.languages.it.CustomDataFormatRoutes with null CamelContext
2021-08-10T01:10:42.5352909Z 2021-08-10 01:10:42,525 WARN  [org.apa.cam.qua.cor.CoreResource] (executor-thread-1) Found a CamelContextAware bean of type org.apache.camel.quarkus.component.bean.RouteBuilderWithProducer with null CamelContext
2021-08-10T01:10:42.5357507Z 2021-08-10 01:10:42,525 WARN  [org.apa.cam.qua.cor.CoreResource] (executor-thread-1) Found a CamelContextAware bean of type org.apache.camel.quarkus.core.languages.it.RefLanguageRoutes with null CamelContext
2021-08-10T01:10:42.5361434Z 2021-08-10 01:10:42,525 WARN  [org.apa.cam.qua.cor.CoreResource] (executor-thread-1) Found a CamelContextAware bean of type org.apache.camel.quarkus.eip.it.EipRoutes with null CamelContext
2021-08-10T01:10:42.5365142Z 2021-08-10 01:10:42,525 WARN  [org.apa.cam.qua.cor.CoreResource] (executor-thread-1) Found a CamelContextAware bean of type org.apache.camel.quarkus.component.bean.eip.EipRoutes with null CamelContext

Observation: All of those RouteBuilders contain at least one bean producer method, although they themselves do not bear any Bean defining annotation.
Hypothesis (without checking any code): Arc handles them as beans because of those methods, but we (mistakenly) do not consider them as managed by Arc. As a result of that two instances of each of those Builders exist at runtime. One auto-created by Arc and one created by our recorder. Let me investigate more.

It took me some time till I realized that RouteBuilder became CamelContextAware very recently through this change: https://github.com/apache/camel/commit/148ce23162cd59b4c9548f00175f1749fac06d30#diff-f5f5e129daa69bcc30b62eac7c3ef1dffd748c1da3637d9c9d724d3ce8a316ccR40
This can thus only be reproduced with our camel-main branch

Indeed, it is reproducible in camel-main with a test like this https://github.com/ppalaga/camel-quarkus/commit/fc0834439bb782137a84264f63fbfd9fe0c64888 Also my hypothesis seems to work: the problem disappears when the RoutesBuilder is annotated with some Bean defining annotation, e.g. @ApplicationScoped.

Also my hypothesis seems to work: the problem disappears when the RoutesBuilder is annotated with some Bean defining annotation, e.g. @ApplicationScoped.

Are you planning to provide a fix on camel-main? I'd like to have that branch building again so that we know where things stand.

The real cause is a little bit different than my original guess. As I assumed, there are two instances of the builder per class: one with context set properly, and one with no context. But it is not because one is created by us and the other one by Arc. Both are created by Arc and it is correct so. Because the builder class has no explicit CDI scope, it gets the default @Dependent pseudo-scope. That basically means that each lookup or injection gives a new instance. Listing container beans once (when adding builders to the context) gives another instance than when listing them second time (when checking that they have context set).
I wonder what contract was the test actually supposed to check? I am not aware that we promise auto-setting the context to each and every bean (including end user ones) that implements CamelContextAware. Yes, we set the context on the RouteBuilders and perhaps also in some other special cases, but there's no general contract about that, is there?
Perhaps we just wanted to make sure that all RouteBuilders managed by Arc get the context set properly? If so, then the test should IMO lookup only some specific RouteBuilder bean that we fix to have proper scope set.
While having RouteBuilders in @Dependent scope is perhaps mostly not a good idea, I am still not quite sure we should introduce any measures to prevent/warn about it. WDYT?

Perhaps we just wanted to make sure that all RouteBuilders managed by Arc get the context set properly?

This was surely not the original intention of the test. RouteBuilder did not implement CamelContextAware at that time.

Digging a bit more into the implementation if the Registry and what CamelContextAware beans are there, I'd say that the idea behind the test was to ensure that the CamelContextAware items in the fallbackRegistry have context set, not the ones managed by Arc. Let me propose a fix to the test.

Hi @ppalaga ,
Can we also cherrypick this fix to camel-main branch?
Thanks!
Freeman

Can we also cherrypick this fix to camel-main branch?

Given that the fix was merged to main, cherry-picking to camel-main should not be necessary. camel-main may need rebasing on top of main though.


Add pango-collapse.txt

If no pango-collapse.txt file is supplied, pango-collapse tries to download the pango-collapse.txt file - which causes errors in our cloud system.

Addressed in https://github.com/UPHL-BioNGS/Cecret/pull/298


Consider making / directory separator for file paths the default for consistency against other operating systems

Environment

Item
Value

OS, Version / Build
10.0.19042.0 (any applies)

Description

Historically, Windows is odd one out by using \ over / for dir separators. For developers this is especially annoying.
Windows 10 understands / everywhere as far as I am aware.
With Microsoft pushing for developer ecosystem on Windows, I think this might a good idea to revist these artifacts of history and perhaps update the defaults, or at least provide some kind of option for developers to set.
https://twitter.com/thexpaw/status/1361263999468384257
Steps to reproduce

Open a terminal, paths will be using \ for directory separators.

Expected behavior

Terminal and other software should use / for directory separators.

Actual behavior

There are many programs which still treat \ as "the only" path separator on Windows, despite this not being true for a while (I've recently had to fix a library for that myself: https://github.com/gabime/spdlog/pull/1787).
Such a change (making APIs return paths with forward slashes instead of backslashes) will have significant backwards compatibility consequences.

Such a change (making APIs return paths with forward slashes instead of backslashes) will have significant backwards compatibility consequences.

It can be opt-in with a manifest declaration, just like it was done with UTF-8.

Polite ask: Please file separate issues for separate problems/suggestions.
Closing this issue as won't fix because:

Preventing the use of \ as a path separator would break hundreds of millions of scripts, apps, and tools, cause many businesses and potentially several countries to collapse. This is not an exaggeration - many of the systems that support modern businesses and economies rely on decades-old scripts, apps, and tools that contain/generate paths separated by \ and will fail and crash if they could not.

There isn't some magical function in Windows that parses/emits CRLF as a line ending - this behavior is hard-coded into hundreds of millions of apps, tools, scripts, etc. many of which will break if CRLF is replaced with LF, again, likely crashing millions of systems, businesses, and even several nations.

As an aside, CRLF is actually something Microsoft got right. CR moves the cursor all the way to the left, LR moves the cursor down one line. Abbreviating CRLF to LF is a lossy *NIXism.

👉 Note: Rather than preventing the use of \ as a path separator, Windows now also supports / as a path separator in many places, including File Explorer, and PowerShell.

Preventing the use of \ as a path separator

The suggestion is not to prevent it, but change the default which is used to display paths, like in the terminal: xPaw in C:\Users.

Your arguments don't hold water IMO, Rich. Similar things have done before without breaking compatibility. Those things can be opt-in and co-exist while being in a deprecation phase. But I think the real reason it won't happen is because it's work, which costs time and money, for an annoying inconsistence that people just learned to live with.

The suggestion is not to prevent it, but change the default which is used to display paths, like in the terminal: xPaw in C:\Users. or when pressing tab to auto complete paths.

Opening an issue specifically for that (support forward / in auto-completion and path display for CMD/PowerShell) would hold much more ground than a blanket "make / the separator" issue.

Opening an issue specifically for that (support forward / in auto-completion and path display for CMD/PowerShell) would hold much more ground than a blanket "make / the separator" issue.

But that doesn't really get us anywhere in terms of the whole Windows ecosystem. I didn't expect this issue to gain any traction, I just threw it out there.

Doubt the whole Windows ecosystem will ever completely move away from the 30+ years legacy of \

@justanotheranonymoususer You have opt-in today - you can choose to use the / path separator in your PowerShell scripts if you wish.
This isn't about it causing us (Microsoft) work - it's about not breaking existing apps, tools, customers, businesses, etc.
And while this may be an annoyance for *NIX users, The \ path separator is the norm for Windows users who are the majority of users on Windows.

you can choose to use the / path separator in your PowerShell scripts

Yes, but you can't make powershell display or auto-complete /, right?
Or, for example, type C:/ in the Run dialog or in file explorer. No auto-complete, unlike C:\.
Basically, it's not a first class citizen.

The \ path separator is the norm for Windows users who are the majority of users on Windows.

That I agree with.
I don't have strong feelings about it, and I hardly see it happen, I just thought that your arguments weren't convincing enough.

No - the formal path separator is . The forward slash / is an accommodation and cannot be used everywhere as it will sometimes be interpreted as a switch separator.
If you'd like to petition the PowerShell team to provide a config setting controlling which path separator char to display in file paths etc., then please do so: http://github.com/powershell/powershell. However, note that this won't change the way paths are displayed in Cmd, nor Explorer, etc.

FWIW, The decision for which chars were used for switches and path-separators date all the way back to ~1982 when the switch char (/) and path separator char () were declared in the source code of MS-DOS 2.0 which added hierarchical directories/folders.
https://github.com/microsoft/MS-DOS/blob/04a3d20ff411409ab98474892b2bb1713bde0f7f/v2.0/source/COMMAND.ASM#L518-L521

I'm not here to achieve that. I just provide my opinion on @xPaw's issue which I think is worth a discussion, as unreal as it might be short term.
Actually, I'm here (in this repo) because of this issue. Something is really wrong there in the help catalog, and I'm upset because I rely on it for some task. @bitcrazed, using a chance of talking with a Microsoft guy, can you help me find the contact for that? I tried everything I found - the forums, the feedback hub, the feedback at the lower part of the website, this repo. What else can I do apart from screaming about it in the forests?


[ICE: 20] ezETH bridge from L1 allowance issue (call revert exception)

Describe the bug

Link to ticket in discord
https://discord.com/channels/454734546869551114/1232897391233994774
Additional context
A bunch of different users facing the same issue bridging ezETH from L1.
@oncall

A bunch of other related tickets:

https://discord.com/channels/454734546869551114/1232919697574334496
https://discord.com/channels/454734546869551114/1232956836848865321
https://discord.com/channels/454734546869551114/1232858203021377658

Is this a token allowance issue? Are they supposed to be able to bridge without setting an allowance here? Any info would help

New one: https://discord.com/channels/454734546869551114/1233845569420525690

I guess two more:
https://discord.com/channels/454734546869551114/1236563765370294272
https://app.intercom.com/a/inbox/qge2vd8z/inbox/shared/all/conversation/670?view=List

2 tickets now in Intercom
Continue collecting
https://app.intercom.com/a/inbox/qge2vd8z/inbox/conversation/837?view=List

Now here is 6 tickets:
https://app.intercom.com/a/inbox/qge2vd8z/inbox/conversation/837?view=List

@ekbainova I'm looking through Intercom. I see one user indicates they have 0 allowance, which I believe is why we're throwing an error when calling allowance(). Other users don't specify their allowance.
At this point, I'm assuming the allowance() call is failing when the user does not have the required allowance.
What should we do in this situation to resolve this issue?

@regexpressyourself what sort of allowance? I don't get it, sorry.

@regexpressyourself  There's an sdk.approveIfNeeded call that should happen prior to xcall. The approveIfNeeded call checks if the asset is an xERC20. If so, it looks up the allowance on the LockboxAdapter otherwise it looks it up for the Connext contract. If there isn't sufficient allowance, the txn object returned by approveIfNeeded should be sent by the user first. Only after that should the txn object returned by xcall be sent to the user to send. I think we need to look into the sequencing of these events.

@regexpressyourself There's an sdk.approveIfNeeded call that should happen prior to xcall. The approveIfNeeded call checks if the asset is an xERC20. If so, it looks up the allowance on the LockboxAdapter otherwise it looks it up for the Connext contract. If there isn't sufficient allowance, the txn object returned by approveIfNeeded should be sent by the user first. Only after that should the txn object returned by xcall be sent to the user to send. I think we need to look into the sequencing of these events.

@just-a-node Got it.
The sequence appears correct when looking through the code and cross referencing the logs in the screenshot above. The approveIfNeeded call happens before the "set for an XERC20" logs, which we see in the screenshot logs. So it appears the sequencing there is ok.
Following the approveIfNeeded call, we "setup for an XERC20". The first step from there is a series of allowance() calls.
The failure here seems to occur on one of the calls to allowance() when working with an XERC20 asset. For XERC20 assets, we make 6 different allowance() calls at once. At least one of these calls is failing and returning the "call revert exception" error.
I've still been unable to reproduce this myself. When bridging XERC20 assets, I see the correct sequence of calls, and am able to approveIfNeeded and get through to the next txn:

Any more info on how to reproduce this, or some extra logging data would be super helpful in tracking this down. In the meantime, I've opened a PR with some additional logging that we can collect when reports of this come in: https://github.com/connext/frontend/pull/74

#6272 - connected?


Refactoring backend and frontend

Acceptance criteria

Definition of done (DoD)

The code has been peer-reviewed by at least one team member
The documentation was updated if necessary
The bill of materials was updated if necessary
Working dev setup was created

DoD general criteria

Feature has been fully implemented
Feature has been merged into the mainline
All acceptance criteria were met
Product owner approved features
All tests are passing
Developers agreed to release

Acceptance criteria to be modified after the meeting with cooperation between SD


Unable to resolve dependency tree when installing @salesforce/sfdx-lwc-jest

Note
Before you submit your issue, make sure that:

You're using the latest version of Salesforce CLI.
You've searched both open and closed issues for related posts.
You've used the doctor command to diagnose common issues.
You understand that GitHub Issues don't adhere to any agreement or SLA.

If you require immediate assistance, use official channels such as Salesforce Customer Support.

Summary
Unable to resolve dependency tree when installing installing @salesforce/sfdx-lwc-jest on Windows 11 using cli version 2.61.8-ec7097b.
Steps To Reproduce
Create a new standard project on Windows 11 using sf cli version 2.61.8-ec7097b
Run the command sf force lightning lwc test setup
Expected result
Jest is added to the project
Actual result
Installing @salesforce/sfdx-lwc-jest node package...
npm error code ERESOLVE
npm error ERESOLVE unable to resolve dependency tree
npm error
npm error While resolving<EMAIL_ADDRESS>npm error Found<EMAIL_ADDRESS>npm error node_modules/eslint
npm error   dev<EMAIL_ADDRESS>from the root project
npm error   peer<EMAIL_ADDRESS>|| ^8.0.0 || ^9.0.0" from<EMAIL_ADDRESS>npm error   node_modules/@babel/eslint-parser
npm error     peer @babel/eslint-parser@"^7" from<EMAIL_ADDRESS>npm error     node_modules/@lwc/eslint-plugin-lwc
npm error       dev<EMAIL_ADDRESS>from the root project
npm error
npm error Could not resolve dependency:
npm error peer eslint@"^7 || ^8" from<EMAIL_ADDRESS>npm error node_modules/@lwc/eslint-plugin-lwc
npm error   dev<EMAIL_ADDRESS>from the root project
npm error
npm error Fix the upstream dependency conflict, or retry
npm error this command with --force or --legacy-peer-deps
npm error to accept an incorrect (and potentially broken) dependency resolution.
npm error
npm error
npm error For a full report see:
npm error npm-cache\_logs\2024-10-12T11_33_32_828Z-eresolve-report.txt
npm error A complete log of this run can be found in: npm-cache\_logs\2024-10-12T11_33_32_828Z-debug-0.log
ERROR running force:lightning:lwc:test:setup:  Error installing @salesforce/sfdx-lwc-jest: 'Command failed: npm install --save-dev @salesforce/sfdx-lwc-jest'

System Information
Using Powershell

{
  "architecture": "win32-x64",
  "cliVersion"<EMAIL_ADDRESS>  "nodeVersion": "node-v20.17.0",
  "osVersion": "Windows_NT 10.0.22631",
  "rootPath": "sf\\client\\2.61.8-ec7097b",
  "shell": "powershell",
  "pluginVersions": [
    "@oclif/plugin-autocomplete 3.2.5 (core)",
    "@oclif/plugin-commands 4.0.16 (core)",
    "@oclif/plugin-help 6.2.13 (core)",
    "@oclif/plugin-not-found 3.2.22 (core)",
    "@oclif/plugin-plugins 5.4.10 (core)",
    "@oclif/plugin-search 1.2.10 (core)",
    "@oclif/plugin-update 4.5.10 (core)",
    "@oclif/plugin-version 2.2.14 (core)",
    "@oclif/plugin-warn-if-update-available 3.1.18 (core)",
    "@oclif/plugin-which 3.2.15 (core)",
    "@salesforce/cli 2.61.8 (core)",
    "@salesforce/lwc-dev-mobile 2.3.0 (user) published 351 days ago (Thu Oct 26 2023)",
    "apex 3.5.0 (core)",
    "api 1.2.2 (core)",
    "auth 3.6.65 (core)",
    "data 3.6.8 (core)",
    "deploy-retrieve 3.12.15 (core)",
    "info 3.4.9 (core)",
    "limits 3.3.32 (core)",
    "marketplace 1.2.26 (core)",
    "org 4.6.0 (core)",
    "packaging 2.8.10 (core)",
    "schema 3.3.34 (core)",
    "settings 2.3.23 (core)",
    "sobject 1.4.40 (core)",
    "source 3.5.21 (core)",
    "telemetry 3.6.15 (core)",
    "templates 56.3.21 (core)",
    "trust 3.7.32 (core)",
    "user 3.5.32 (core)",
    "@salesforce/sfdx-plugin-lwc-test 1.2.0 (user) published 220 days ago (Tue Mar 05 2024) (latest is 1.2.1)"
  ]
}

I've changed the default package.json to use eslint ^8.57.0 like eslint-plugin-lwc does for now and it's working.

There's an open issue for this: https://github.com/salesforce/eslint-config-lwc/issues/128


Add startup file for deploying and starting karaf

Fixes #454

Refer to this link for build results (access rights to CI server needed):
https://fabric8-ci.fusesource.com/job/fabric8-quickstarts-master-pullreq/516/
Test PASSed.

thanks. We likely need the same in the other 3 karaf quickstarts. Was hoping the base image would do this automatic, just like fabric8/java etc. But this is okay. The forge tooling would need to be adjusted so when its a karaf project it adds that same run command too.


Add SectionDict

We're currently processing your upload.  This comment will be updated when the results are available.


Revise groupAllBy to just use an Ordering function

Description of the change
Fixes #189
Also modified the tests and examples to demonstrate which grouping functions involve sorting.
One of the commits reverts demoing the convenience of the :|| infix operator proposed in #190. We can redo those changes if that operator is accepted.

Checklist:

[x] Added the change to the changelog's "Unreleased" section with a reference to this PR (e.g. "- Made a change (#0000)")
[x] Linked any existing issues or proposals that this pull request should close
[x] Updated or added relevant documentation
[x] Added a test for the contribution (if applicable)

Can you please include only the changes for groupAllBy in this PR, and not the other documentation changes?

Can you please include only the changes for groupAllBy in this PR, and not the other documentation changes?

I can thin down this change and then make a follow-up PR with the docs consistency changes. Ideally, those could be merged back-to-back.

I can thin down this change and then make a follow-up PR with the docs consistency changes. Ideally, those could be merged back-to-back.

Yes please, these two things should ideally be reviewed separately.

Yes please, these two things should ideally be reviewed separately.

Rebased and ready for another review

@JordanMartinez Please add "breaking change" label.

@milesfrain Done thanks!


Add albedo correction

PR Description
A a function to read in precomputed greens table and return spectrum with albedo correction, would close #128

[ ] Split function
[ ] Turn in to astropy model e.g. spec | albedo
[ ] Doc and test

Recreated Fig 2 upper from the paper

I have found IDL code used in 2005 to generate Green Matrices for OSPEX and put it on github:
https://github.com/edkontar/albedo

I have added the changes we made to the albedo model during the workshop. For now we made the model "unitless" until we resolve the astropy model unit problems with SRM. All the units-related lines are commented so it can be easily updated.


Maybe more a feature request, but a basic one - New folder

When clicking on New Folder, it creates a new folder New Folder but I have to right click on it to rename it, ideally it should allow me to directly name the folder

Oh you mean more like how vscode does it? Creates a line item with an input box?
Seems neat, can put it behind a flag since some prefer fast creation vs this.
But i generally like your idea, since New Folder and Untitled aren't usually names people want to keep anyway!

I didn't think VSCode but yes indeed, and that's pretty much how how folder creation works everywhere, ie, in the OSX Finder, if you right click somewhere to create a new folder, it will have the title untitled folder but the text will be selected and if you start typing it will override untitled folder with the title I want to give to this new folder...


Add metric for GOMAXPROCS

It would be really great to see what the goruntime thinks it should use for the number of CPU cores.
Please add a metric to all webpa-common/server users that includes the output of GOMAXPROCS(0)
https://golang.org/pkg/runtime/#GOMAXPROCS

Added by #259 .


RuneLite plugins run into issues when run through Steam

Game
Old School Runescape
Engine
Runelite
Linux Distribution
Steam Deck 3,3
Luxtorpeda Version
v56
Bug description
When running the game through luxtorpeda on Steam, the KeePassXC plugin doesn't work.
https://github.com/abextm/keepassxc-runelite
This works fine if running the appimage directly as well as the scripts luxtorpeda uses, but fails if automatically running it with luxtorpeda set as the compatibility tool.
Because of this, I believe it's an issue with this script rather than an issue with the plugin.
Steps To Reproduce

Install KeePassXC
Set the compatibility tool for Old School Runescape to Luxtorpeda
Go to the plugin hub in RuneLite and install the KeePassXC plugin
An error will be thrown when trying to use the plugin

Expected Behavior
The plugin should work and open KeePassXC, as it does when running the appimage directly
Additional Context
No response
Relevant log output
The following error is thrown by the plugin in the runelite log;
2022-08-14 10:38:51 [KeePassXCSocketConnection] WARN  abex.os.keepassxc.KeePassXcPanel - error connecting to KeePassXC
java.io.IOException: Cannot run program "keepassxc-proxy": error=2, No such file or directory
	at java.base/java.lang.ProcessBuilder.start(Unknown Source)
	at java.base/java.lang.ProcessBuilder.start(Unknown Source)
	at abex.os.keepassxc.proto.KeePassXCSocket.<init>(KeePassXCSocket.java:72)
	at abex.os.keepassxc.KeePassXcPanel.lambda$load$2(KeePassXcPanel.java:60)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.io.IOException: error=2, No such file or directory
	at java.base/java.lang.ProcessImpl.forkAndExec(Native Method)
	at java.base/java.lang.ProcessImpl.<init>(Unknown Source)
	at java.base/java.lang.ProcessImpl.start(Unknown Source)
	... 5 common frames omitted

@Jademalo
It sounds like this plugin is in two parts, a browser extension (that I'm assuming would be run on the steam deck's firefox, and the game plugin. Is that correct?
luxtorpeda by design runs inside the steam linux runtime (soldier), which has an isolation from the rest of the system. Because of that, it can't find applications installed at the normal system.
Do the changes that they mentioned in the new release help with this, from the ticket that you created related to appimages and flatpaks? - https://github.com/abextm/keepassxc-runelite/issues/11
The reason why the script is extracting the appimage instead of running it, is that an appimage can't be run directly in the runtime environment.

The game plugin is the browser extension, and there's also the KeePassXC software.
The plugin implements itself as a Chromium browser extension to be able to communicate with KeePassXC.
I didn't realise luxtorpeda ran in soldier, that probably explains it. My setup to run it was ~/.local/bin/keepassxc & %command%, which I'm assuming is running keepass outside of soldier so the plugin can't communicate with it.
I've spent the last few hours attempting to get this to work, and unfortunately I think I'm at a dead end. Modifying the luxtorpeda script I can get both KeePass and RuneLite to run through it, however this requires extracting the KeePassXC appimage which breaks the plugin's ability to launch the proxy.
I can at least run the appimages manually through a launch arg with a custom "None" compatibility tool that lets me run windows flagged games without proton or SLR, and that seems to work. Obviously it's not as elegant a solution as using luxtorpeda (which is excellent I have to say!), but it at least gives me the right functionality.

OK, that makes sense. I'll go ahead and close this, but if you end up finding any way to make it work inside luxtorpeda, feel free to comment here!


Forward zones and recursive DNSSEC validation

Do forward zones do a fully local recursive DNSSEC validation or just trust the AD bit from the remote server?
Specifically, with a config like the one below (that unconditionally forwards all requests to an upstream server), will Unbound walk the whole path to the trust anchor and verify DNSSEC signatures there locally (like, for example, Stubby does)?
Or will it just trust the answer from the remove server (like the AD bit)?
Example config:
forward-zone:
        name: "."
        forward-tls-upstream: yes
        forward-addr: <IP_ADDRESS>@853#some-DoT-server

Cursory glance at the unbound code would suggest that the validator module would run.
But I am not sure that any conditions in already_validated() or needs_validation() won't trigger, skipping validation for such request.

Unbound is a serious DNS implementation and would always verify signed records itself if AD bit is present. I don't think any good software should present AD bit in reply unless it were able to ensure it is genuine. Unbound does not support anything like dnsmasq's proxy-dnssec.

Indeed, if the validator module is used (on by default) Unbound validates all the records it gets.


Add authorization caching support

Based on the discussion this PR adds caching support for authorization queries against the k8s/openshift API server. The basic tenet here is to protect the api server from pulling the same authz response on each request.

Reading @squat 's comment

It would be considerably less load to use a Kubernetes client informer to watch for all of the namespaces and store them in a local cache, which can later be queried on every request.

This PR implements our own caching, rather than using the Kubernetes client informer as suggested - is that deliberate? Is that because we need to pass along the subjects auth token?

The PR implements a cache for authorization DataResponseV1 results per auth token for two particular reasons instead of a cache on the informer level:

There are two different clients for two api servers in openshift. One for the k8s apiserver (used for the SelfSubjectAccessReviews) and one for the openshift apiserver (used to list accessible projects). This would require two individual caches for a single token with all the burden to evict in parallel.
Talking to both k8s/openshift clients is combined in a single authz response. If we would cache on the client level, this adds the complexity to evict hiearchically, i.e. if an an initial SelfSubjectAccessReview returns status.allowed: true is cached along with a list of accessible projects, we need on a subsequent status.allowed:false for the same auth token evict first the cache holding the SelfSubjectAccessReview response and in lock-step the other cache holding the list of projects.

In summary maintaining two client-level caches would introduce some extra premium on eviction with all the locking required to do this safely. Thus, the PR introduces a high level cache on the OPA DataResponseV1 level.

Also - it is not clear to me why we need both in-memory and memcache clients? My preference would be to KISS, especially if we don't explicitly need one of the options (probably memcache?) - it can be added when needed.

The opa-openshift service can and will be used in different scenarios, where the availability of a memcached instance is not given. In addition the apiserver on k8s/openshift is not a typical HA-proofed component, scaling horizontally indefinitely. An HA-proofed apiserver always holds a single replica answering queries and a set of (2-4 replicas) in stand-by to take over if the first replica fails. The worst thing one can do is to push the cluster into constant leader-election because each replica is flooded in sequence with requests and gives up. Thus the opa-openshift should work also self-sufficiently to not push unnecessary to the api server. One scenario in particular it will be used is for in-cluster Loki instances w/o memcached.


OSD-8555 allow CEE to read node-logs

Allow CEE to read node-logs.
The permission nodes/proxy is too wide, so we use a wrapper managed-script to allow them to read journal log on that node only.

Why not just add these permissions in MCC?

Bvm, answered myself by reading the title

/lgtm
/hold
Holding as it might be better for someone with that use case to test this

/lgtm

/unhold


Added a test case(distributed) and a fix

The Problem (User perspective)
The problem is an edge case of a distributed record update in a transaction.
Consider the following series of events:

Create new document with value 2L

Node 0 starts a transaction, and loads document with version 0 and value 2

Node 1 starts a transaction, loads the document with version 0 and value 2, updates it to value 4, and commit(v1)

3*. Node 1 starts a transaction, loads the document with version 1 and value 4, updates it to value 5, and commit(v2)

Node 0 update his document (v0, 2) to value 5, and commit.

Note: event 3 isn't necessary, it just shows the versions don't have to be consecutive nor have any relation. They have no impact on the result what so ever.
 Even though the content is the same, the versions in the beginning of the transactions aren't, and we do not know the intention of the transaction.
For example, consider the use case of two people trying to increment the same field, starting at 0. The result should always be 2, even if the above scenario happens, which currently, it isn't.
The problem (code perspective)
When we try to commit a new update to a document it is distributed to the nodes.
Each node will attempt to merge the new document with the old one, and if the content is different, it will set it as dirty.
If the result document is not dirty, it won't even check the versions.
The solution
When a node will attempt to merge a new document with an old one, on a distributed update task, it will now also check if the versions match. If not, it will set it as dirty.
Not sure how 'correct' it is, but it definitely works, and not a performance hit either.
Extra: a test case
I also added a test case, which you can run, and see it fails (don't forget to comment out the fix part).

@matanshukry thanks for this PR, it's high quality contribution with a test case and rich comment about it. Thanks, I'm reviewing it asap.

@matanshukry yesterday I pushed a fix on a problem close to this. Please could you check that 2.0.5 (just released) still has this problem? if not, please close this PR.

I'm afraid not, this PR is still required. I did merged the new commits though, so a merge can be made again without conflicts.

Merged, thanks!


Unable to get Android device token through registerRemoteNotificationsRegistered

I am using the following versions and followed all the steps outlined in
https://wix.github.io/react-native-notifications/docs/installation-android
react-native-notifications": "^4.2.4"
"react-native": "0.68.0",
registerRemoteNotificationsRegistered callback is not getting called after  Notifications.registerRemoteNotifications(). So I am unable to get device token.
Here is the code snippet:
  Notifications.events().registerRemoteNotificationsRegistered(event => {.
      console.log(" Device Token Received" + event.deviceToken);
  }
  );
  Notifications.events().registerRemoteNotificationsRegistrationFailed((event) => {
      console.error(event);
  });

  Notifications.registerRemoteNotifications();

I ensured all changes are done to build.grade, gradle.settings as outlined in the document.
Any details about why callback is not  called will be helpful.
Thanks!

I am having the same problem right now. Any solutions or workarounds?

any solutions?

Same on IOS device

Has anyone manage to resolve this issue yet? or have a workaround?

Hmm, how to fix it :(

I am having the same issue.
Notifications.events().registerRemoteNotificationsRegistered( (event) => {
  // Code execution never reaches this point
  console.log("registerRemoteNotificationsRegistered - deviceToken:", event.deviceToken, );
});

react-native: 0.68.2
react-native-notifications: 4.3.1

Same issue here, any progress??

In case it's helpful to anyone else, updating settings related to Google FCM fixed this issue for me. I was clued in by this comment and re-downloaded the google-services.json file. I also updated some of the gradle code based on what's in the docs. After updating all of that info, the token started magically appearing and the function body was now accessible.
My guess is the function body isn't reached unless a valid token is present, which may not be returned if Google FCM isn't set up correctly.
"react-native": "0.67.4",
"react-native-notifications": "^4.2.4",

I'm getting stuck on this issue too.
"react-native": "0.69.7",
"react-native-notifications": "4.3.5"


[$1000] App crashes after changing default contact method

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Precondition: You should have an account with more than one contact methods set up and should have a money request threads
Action Performed:

Go to settings > Profile > Contact method
Change the current default contact method
Open an IOU thread from the LHN
Click on the IOU card to open the thread
Go to settings > Profile > Contact method
Change the current default contact method to the previous one

Expected Result:
App should not crash
Actual Result:
App crashes
Workaround:
Can the user still use Expensify without this being fixed? Have you informed them of the workaround?
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: 1.3.18-1
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/43996225/c60daab5-6c59-4064-adc1-dcfbcb5bb1a2
https://github.com/Expensify/App/assets/43996225/0730e23b-bc81-4657-a655-fd9dcae8b4a8
Expensify/Expensify Issue URL:
Issue reported by: @natnael-guchima
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1684833850028879
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~015600b3c5d6d8f7f3
Upwork Job ID:<PHONE_NUMBER>902030336
Last Price Increase: 2023-05-26

Proposal
Please re-state the problem that we are trying to solve in this issue.
App crashes after changing default contact method
What is the root cause of that problem?
When user change the default contact methods, even the reportRecipient is undefined,  shouldShowReportRecipientLocalTime return true.

The problem came from here:
https://github.com/Expensify/App/blob/0f33e2c22bb3670e7c47d78f2f3c604f3af29ca3/src/libs/ReportUtils.js#L620-L634
and here:
https://github.com/Expensify/App/blob/63f314c054d82ad0ee5e59ec5349d9b35d656bea/src/pages/home/report/ReportActionCompose.js#L906-L908
When user change their default contact method, sessionEmail get updated to new contact method email, mean while this.props.currentUserPersonalDetails.login is still the old email.

Because of that, when user changed their contact methods, in some case even the reportRecipient inside ReportActionCompose was undefined, shouldShowReportRecipientLocalTime is true, which make ParticipantLocalTime rendered, it will lead to crash since we don't have a safe way to get value:
https://github.com/Expensify/App/blob/63f314c054d82ad0ee5e59ec5349d9b35d656bea/src/pages/home/report/ParticipantLocalTime.js#L56
What changes do you think we should make in order to solve the problem?

We should use the same email for to calculate the reportParticipants inside ReportActionCompomse and canShowReportRecipientLocalTime. Let say that we should use sessionEmail.
// Report Action Compose
 const reportParticipants = _.without(lodashGet(this.props.report, 'participants', []), this.props.sessionEmail);

We also should use lodashGet to get user name inside ParticipantLocalTime
const reportRecipientDisplayName = lodashGet(this.props, "participant.firstName") || lodashGet(this.props, "participant.displayName")

What alternative solutions did you explore? (Optional)
N/A

Proposal
Please re-state the problem that we are trying to solve in this issue.
App crashes after changing default contact method
What is the root cause of that problem?
When user change the default contact methods, even the reportRecipient is undefined,  shouldShowReportRecipientLocalTime return true.

The problem came from here:
https://github.com/Expensify/App/blob/63f314c054d82ad0ee5e59ec5349d9b35d656bea/src/libs/ReportUtils.js#L622
and here:
https://github.com/Expensify/App/blob/63f314c054d82ad0ee5e59ec5349d9b35d656bea/src/pages/home/report/ReportActionCompose.js#L906-L908
We are using difference email variable between ReportActionCompose and canShowReportRecipientLocalTime. When user changeed their default contact method, sessionEmail got updated to new contact method email, mean while this.props.currentUserPersonalDetails.login was still the old email.

Because of that, when user changed their contact methods, in some case even the reportRecipient inside ReportActionCompose was undefined and shouldShowReportRecipientLocalTime is true, which make ParticipantLocalTime rendered, it will lead to crash since we don't have a safe way to get value:
https://github.com/Expensify/App/blob/63f314c054d82ad0ee5e59ec5349d9b35d656bea/src/pages/home/report/ParticipantLocalTime.js#L56
What changes do you think we should make in order to solve the problem?

We should use the same email for to calculate the reportParticipants inside ReportActionCompomse and canShowReportRecipientLocalTime. Let say that we should use sessionEmail.
// Report Action Compose
 const reportParticipants = _.without(lodashGet(this.props.report, 'participants', []), this.props.sessionEmail);

We also should use lodashGet to get user name inside ParticipantLocalTime
const reportRecipientDisplayName = lodashGet(this.props, "participant.firstName") || lodashGet(this.props, "participant.displayName")

What alternative solutions did you explore? (Optional)
N/A

Reviewing

Hmm - I reproduced the crash just by changing the default contact method alone. @Natnael-Guchima @kavimuru - are the IOU steps required for reproduction?

 Dope. :) Lemme know what you think about @hungvu193's proposal above

@hungvu193 Thanks for your proposal. Your RCA seems correct but I think the proposed solution isn't catering the root cause that you defined. It's just hiding the fact that this.props.currentUserPersonalDetails.login does not update when the contact method changes. I'm more interested in finding why this.props.currentUserPersonalDetails.login doesn't update when changing the default contact method and fixing it. Although, once fixed, I agree that we should use the same email variable at both places.

@allroundexperts Thanks for your feedback. Yeah, problem came from the way we set our optimisticData when we changed default contact methods.
    const optimisticData = [
        {
            onyxMethod: Onyx.METHOD.MERGE,
            key: ONYXKEYS.SESSION,
            value: {
                email: newDefaultContactMethod,
            },
        },
        {
            onyxMethod: Onyx.METHOD.MERGE,
            key: ONYXKEYS.LOGIN_LIST,
            value: {
                [newDefaultContactMethod]: {
                    pendingFields: {
                        defaultLogin: CONST.RED_BRICK_ROAD_PENDING_ACTION.UPDATE,
                    },
                    errorFields: {
                        defaultLogin: null,
                    },
                },
            },
        },
        {
            onyxMethod: Onyx.METHOD.MERGE,
            key: ONYXKEYS.PERSONAL_DETAILS,
            value: {
                [newDefaultContactMethod]: {
                    ...myPersonalDetails,
                    login: newDefaultContactMethod,
                    displayName: PersonalDetails.getDisplayName(newDefaultContactMethod, myPersonalDetails),
                },
                [oldDefaultContactMethod]: null,
            },
        },
    ];

As we can see the optimisticData, we updated the session email first that will trigger the withCurrentUserPersonalDetailsHOC.
https://github.com/Expensify/App/blob/ec9bc04108992ff400b3fb86d8a31091d727310e/src/components/withCurrentUserPersonalDetails.js#L39-L41
While the email session is new email, the new contact methods email detail is added to the ONYXKEYS.PERSONAL_DETAILS yet, that will make 2 email from ReportActionCompose and  canShowReportRecipientLocalTime have difference values as I said.

@allroundexperts  Sure, I updated my proposal https://github.com/Expensify/App/issues/19611#issuecomment-1563277027

We can go to any report, that no need to be thread and log the value of props.personalDetails[currentUserEmail] inside WithCurrentUserPersonalDetails while changing contact method, we'll always see the value of it turned into undefined first (as I explained in my proposal). Anyway, the currentUserPersonalDetails is not really needed for the ReportActionCompose, we should use one email variable for both place (ReportActionCompose and inside canShowReportRecipientLocalTime).
https://github.com/Expensify/App/assets/16502320/319693aa-c9f4-4595-8125-ae0fec912714
https://github.com/Expensify/App/assets/16502320/22fbf480-447e-4583-8391-5e06e1065c5a

Although, once fixed, I agree that we should use the same email variable at both places.

@allroundexperts @hungvu193  Hi, just wanna weigh in here. I don't think "same email" fixes the root cause since if you apply "same email" in both places, it will still crash. The part of @hungvu193 that makes it not crash is the lodashGet usage, which might hide the issue rather than fixing it.
Hope this helps 👍

@allroundexperts yes I did.
Since this is due to the update to session.email in Onyx happen before the personalDetails update, causing the personalDetails[session.email] record to be undefined, what I think is a good fix for the root cause is to reorder the Onyx update such that personalDetails is updated first and personalDetails[session.email] will always has correct result (never undefined).
Current:

Update session.email
Update personalDetails with new key session.email

After fix:

Update personalDetails with new key of the to-be session.email
Update session.email (at this time the personalDetails is already updated, so there'll be no crash)
Optional - We can even make it more non-disruptive by ensuring that the old email key in personalDetails is only removed after the session.email is updated, at this step

I tested and it works well, if @allroundexperts thinks this is a promising approach that we can explore, I'm happy to create a proposal for it.

ok so I was testing it according to the original suggestion from @hungvu193 's proposal and it still crashes. I tested it by replacing this line
with
const reportParticipants = _.without(lodashGet(this.props.report, 'participants', []), this.props.session.email);

@allroundexperts  Your changes here does make the crash go away but it's due to another coincidence:

This line is supposed to exclude the current user from the list of participants
Since the email passed in will become undefined for some time when changing the default contact method, the logic in 1 will not work as intended and it will include the current user in the list of participants 😅
Then the reportRecipient here becomes undefined because the current user doesn't yet exist in the personalDetails, making the canShowReportRecipientLocalTime false and thus avoiding the crash

The above can easily be verified by adding some logs to the canShowReportRecipientLocalTime function, so I can say it "accidentally" avoids the crash by making the function not working correctly (see 2) rather than fixing the root cause which is to make sure the session.email and currentUserPersonalDetails.login always consistent with each other.
With that said, @allroundexperts would you be interested in a potential solution here, that can make session.email and currentUserPersonalDetails.login always consistent?

Wait, why the email is sometimes indefined since it's always added in iptimistic data?? Can you explain?

The outline of the solution is here, I'll post a full proposal tomorrow after in-depth testing!

We need to reorder the optimisticData here
https://github.com/Expensify/App/blob/8afd126ec4443a983f9bd9eb922461c3eab31a58/src/libs/actions/User.js#L773
so that the ONYXKEYS.PERSONAL_DETAILS update comes first, before the ONYXKEYS.SESSION update. This will make sure that once session.email is updated, the personalDetails already contains the key for session.email and personalDetails[session.email] never undefined.

This didn't work, personalDetails is updated, and also the oldDefaultContactMethod is set to null. This still lead to undefined value.

The alternative broke the Onyx Merge method, which is originally batched.
Calls to Onyx.merge() are batched so that any calls performed in a single tick will stack in a queue and get applied in the order they were called. Note: Onyx.set() calls do not work this way so use caution when mixing

Just to make sure I'm clear here @allroundexperts - are we still going with @hungvu193's proposal or are we still in the process of evaluating the right approach?

@NikkiWines thoughts on the above?

Sorry, didn't get to this today but will review first thing tomorrow 🙇

Sorry for the delay here, I agree with @allroundexperts. @hungvu193's proposal makes sense and I agree we shouldn't rely on re-ordering the onyx updates to resolve this issue.

This PR is merged

Offers sent to @allroundexperts, @hungvu193, @Natnael-Guchima

I have accepted the offer. Thanks, @greg-schroeder.

Friendly bump on the checklist! :)

Sounds good. Created regression test issue.


Append items in mosaicflow with ajax

Hi, i like to append my mosaicflow list with new items after i clicked on a button with an ajax call, but i can' figure it out how it can work correctly..
I tried to use the add event, but it adds items only to the smallest column not to every column.
Do you have any ideas to solve this?
Thanks in advance!

@Duncee I encountered the same issue that it adds to the same columns every time, did you find a way to resolve this problem? or did you find any other way to do ajax image mosaic display?
Thanks.


Failed to run mongo find

Possible duplicate of https://github.com/Microsoft/vscode-cosmosdb/issues/860
Repro steps:
I'm trying to run this command:
db.products.find( { "qty": { "$gt": 25 } }, { "item": 1, "qty": 1 } )
I got it from these examples:
https://docs.mongodb.com/manual/reference/method/db.collection.find/#specify-the-fields-to-return
Action: cosmosDB.executeMongoCommand
Error type: SyntaxError
Error Message: Unexpected token o in JSON at position 1
Version: 0.8.1-alpha
OS: darwin

Looks like it. It seems to work in my PR branch, so I'm going to assume my PR fixes that too.


After ended event not playing again on first time

after listen ended event, i reset the play prop to true then it show paused event in status then i press again true it show paused event then after this it start playing

@imadarif iOS / Android? can you reproduce this with the example app?

RN 0.59.5
MAC OSX MOJAVE
BOTH PLATFORM,
REPRODUCE:
i control playing of video by state.
just set the state to false
play : false,
then user do it by self by press button of play to play video and pause to pause video.
state change on each click.
if video end then i try to again play video by changing state to true. youtube props of status return paused status 2 time then i change state again then it start playing.
MY CODE:
import YouTube from "react-native-youtube";
<YouTube           resumePlayAndroid={false}           apiKey={API_KEY}           showFullscreenButton={true}           videoId={this.props.youtubeId} // The YouTube video ID           play={this.state.play} // control playback of video with true/false           modestbranding={true}           controls={2}           // fullscreen={this.state.fullscreen}           rel={false}           showinfo={false}           onReady={e => this.setState({ isReady: true })}           onChangeState={e => {             if (               this.state.status === "ended" ||               this.state.status === "stopped"             )               this.setState({                 status: e.state,                 play: false               });             else this.setState({ status: e.state });           }}           onChangeQuality={e => this.setState({ quality: e.quality })}           onError={e => this.setState({ error: e.error })}           style={{ alignSelf: "stretch", height: 200 }}         />


[SDP-1438] Make Kafka optional in docker compose

What

Split kafka in its own docker compose file.

Why

Simplify the local setup-up.

Checklist
PR Structure

[x] This PR has a reasonably narrow scope (if not, break it down into smaller PRs).
[x] This PR title and description are clear enough for anyone to review it.
[x] This PR does not mix refactoring changes with feature changes (split into two PRs otherwise).

Thoroughness

[x] This PR adds tests for the new functionality or fixes.
[x] This PR contains the link to the Jira ticket it addresses.

Configs and Secrets

[x] No new CONFIG variables are required -OR- the new required ones were added to the helmchart's values.yaml file.
[x] No new CONFIG variables are required -OR- the new required ones were added to the deployments (pr-preview, dev, demo, prd).
[x] No new SECRETS variables are required -OR- the new required ones were mentioned in the helmchart's values.yaml file.
[x] No new SECRETS variables are required -OR- the new required ones were added to the deployments (pr-preview secrets, dev secrets, demo secrets, prd secrets).

Release

[x] This is not a breaking change.
[x] This is ready for production.. If your PR is not ready for production, please consider opening additional complementary PRs using this one as the base. Only merge this into develop or main after it's ready for production!

Deployment

[ ] Does the deployment work after merging?

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr481.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr481.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr481.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr481.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr481.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr481.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr481.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr481.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr481.previews.kube001.services.stellar-ops.com

stellar-disbursement-platform-backend-preview is available here:SDP:      https://sdp-backend-pr481.previews.kube001.services.stellar-ops.com/healthAP:       https://sdp-ap-pr481.previews.kube001.services.stellar-ops.com/healthFrontend: https://sdp-backend-dashboard-pr481.previews.kube001.services.stellar-ops.com


Fixed compatibility with Posgresql, interited AutoField, closed #90

I think that it also simplifies the future development.

@hynekcer: Seems like we should do a point-release for something like this. Anything on the horizon I should wait for?
Incidentally, I'll soon be back to using django-salesforce again fairly heavily at my main job. I'm encouraging the sales/marketing deparments to convert fully to Salesforce from a home-grown CRM specifically so I can have a standard interface to interact with their data ;-)

I have currently 24 commits not added to any pull request, waiting for final testing, and 10 commits waiting in the queue for finalizing. The most important open feature is the fix for ForeignKey filter (issue 43) from the end of October. It was relative easy but it is complicated to write tests
I'm reoganizing the majority of commits listed in the release draft. Sometimes is the order important for better testing, sometimes I want to do folow-up steps of one feature in a successive group of commits even though I developed them like multiplexed by othe features, sometimes I changed anything in the example model and tests must be updated. Once I found a bug much later that a test did not tested anything. I try to follow the standard that every commit in PR works as expected or a known bug is described in the commit message that will be fixed exactly in the next commit, if it is better to separate them
E.g. the SFDC API 32.0 caused a bug, because they added an incorrect ForeignKey that is not related to any model (undocumented and probably also unused). So I first demonstrated the bug by increasing the API, then I fixed inspectdb and finally I fixed also the guaranted validity of the exported Django model. (by automatic renaming such ForeignKey to TextField and writing a big comment behind it)

So you found a bug in the Salesforce v32.0 API because of the django-salesforce unit tests? That's great!
I'm glad to do a release whenever. At this point it seems like mostly edge cases that have been fixed since the last release.
-phil

On Jan 25, 2015, at 11:09 AM, Hynek Cernoch<EMAIL_ADDRESS>wrote:
I have currently 24 commits not added to any pull request, waiting for final testing, and 10 commits waiting in the queue for finalizing. The most important open feature is the fix for ForeignKey filter (issue 43) from the end of October. It was relative easy but it is complicated to write tests
I'm reoganizing the majority of commits listed in the release draft. Sometimes is the order important for better testing, sometimes I want to do folow-up steps of one feature in a successive group of commits even though I developed them like multiplexed by othe features, sometimes I changed anything in the example model and tests must be updated. Once I found a bug much later that a test did not tested anything. I try to follow the standard that every commit in PR works as expected or a known bug is described in the commit message that will be fixed exactly in the next commit, if it is better to separate them
E.g. the SFDC API 32.0 caused a bug, because they added an incorrect ForeignKey that is not related to any model (undocumented and probably also unused). So I first demonstrated the bug by increasing the API, then I fixed inspectdb and finally I fixed also the guaranted validity of the exported Django model. (by automatic renaming such ForeignKey to TextField and writing a big comment behind it)
—
Reply to this email directly or view it on GitHub.


TPS always zero

From some build of rocket at the command /tps it says always 0

"From some build of rocket" Please elaborate... What version, and does this happen even from a clean world?

Not know the precise build, certainly after <IP_ADDRESS>

Is it just visual, does the server run fine but its reading 0, or are the players lagging with a high ping?

Hello，I have the same problem with Sergix44. Server vision is <IP_ADDRESS> Rocket vision <IP_ADDRESS>.
Problem is High ping ，Tps 0 or 3. All Players Disconnect。

The players disconnections is a problem of power of your machine, not rocket, tps can't never be 0,  this is the bug.

TPS will be removed in the new version of Rocket anyway. TPS is not a indicator for lag, but for LOAD.