onActivityResult is not called for phone auth.

Android device: OnePlus One
Android OS version: 7.1.2
Google Play Services version: 11.0.55
Firebase/Play Services SDK version: 11.0.0
FirebaseUI version: 2.0.0

Describe the problem:
onActivityResult is not called for cancelled/successful phone auth
Steps to reproduce:

Start phone number verification.
Cancel phone number verification.

Observed Results:
onActivityResult is not called.
Expected Results:
onActivityResult is called when cancelled or successful.
Relevant Code:
startActivityForResult(
  AuthUI.getInstance()
      .createSignInIntentBuilder()
      .setAvailableProviders(
          Arrays.asList(
              new AuthUI.IdpConfig.Builder(AuthUI.PHONE_VERIFICATION_PROVIDER).build())
          )
      .build(),
  RC_SIGN_IN);

Maybe due to RC_PHONE_FLOW not being handle in SignInDelegate.java?

@owcs thanks for reporting this and also for pointing at a possible solution in SignInDelegate.  I will take a look.

The same issue happens to me...in code of SignInDelegate.java I read:
@Override
    public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        switch (requestCode) {
            case RC_CREDENTIALS_READ:
                if (resultCode == ResultCodes.OK) {
                    // credential selected from SmartLock, log in with that credential
                    Credential credential = data.getParcelableExtra(Credential.EXTRA_KEY);
                    handleCredential(credential);
                } else {
                    // Smart lock selector cancelled, go to the AuthMethodPicker screen
                    startAuthMethodChoice();
                }
                break;
            case RC_IDP_SIGNIN:
            case RC_AUTH_METHOD_PICKER:
            case RC_EMAIL_FLOW:
                finish(resultCode, data);
                break;
            default:
                IdpSignInContainer signInContainer = IdpSignInContainer.getInstance(getActivity());
                if (signInContainer != null) {
                    signInContainer.onActivityResult(requestCode, resultCode, data);
                }
        }
    }

I am facing the same issue too. After verified the SMS code, onActivityResult() is not called

Seems that @samtstern fix this on next release. We have to wait version 2.0.1 ;)

This is fixed in 2.0.1

Issue still reproduce in version 2.3.0 on Galaxy Nexus (Android 4.3) and on Samsung Galaxy S4 (Android 4.2.2) maybe on other devices with Android 4.x.x. In this case onActivityResult called immediately after press button "Verify phone number" with null IdpResponse.


Will this work for Chef Local Mode?

Hi - we host our cookbooks in BitBucket and build organization repos using local mode (Chef Zero / Solo).
Is chefdoc going to work for us?
Thanks, M.

Hmm not directly, but with minimart [1] it should be possible. Chefdoc uses Berkshelfs 'universe' [2] endpoint to fetch cookbooks. This allows specifying different versions of the cookbooks etc. which would be problematic in git (everyone tags and releases differently). Minimart could create that endpoint for you from git and you could then point chefdoc to the minimart endpoint. However, I have never tested this but would be very glad about feedback if this works.
[1] https://github.com/electric-it/minimart
[2] https://supermarket.chef.io/universe


[discussion]: Questions about the open-source of this project

感谢你们的开源，想咨询一下这是基于声网传输服务的收费开源项目吗？
Update (i18n)
Thank you for the open source, I would like to inquire about this is based on the sound network transmission service fee open source project?

This project is based on the Agora sdk for development. Although the Agora sdk is charged, this project is free to use without any restrictions.

所以rtc和rtm相关的授权并不会涉及到收费？

This is an open source project for the world, so for the convenience of others, please use English.

There will be a fee, but that's for us, not the user. So you can use it for free, don't worry.


fix: resolving relative paths in symlinks

This fixes https://github.com/nodejs/node/issues/49107 (relative paths in symlinks resolved incorrectly).
When following a symbolic link that points to a target using a relative path, the uvwasi__resolve_path() function resolves and normalizes the link's target as a relative path starting from fd->real_path. This should be treated as a relative path starting from the parent directory of the symbolic link.
For example, given the directory structure below:
.
├── source_file
└── dir
    └── link -> ../source_file

When fd->real_path is ., the link target for link is resolved as ../source_file, not ./source_file. As a result, this resolution ends with an ENOTCAPABLE error.

Sorry, I forgot to remove the unused variable 🤦🏼


Cannot parse scss files with default vue-cli webpack config. Unexpected character

Hello
I cant get my styles work in storybook from default vue-cli webpack config.
I tried to make a custom webpack config, but it seems doesnt work for me: throws even more different errors
Webpack with default vue-cli config throws errors like:
ERROR in ./src/assets/bootstrap.scss
Module parse failed: Unexpected character '@' (1:0)
You may need an appropriate loader to handle this file type.
| @import "variables";

I`m using:

webpack 3.11.0
"@storybook/vue": "^3.4.3"
"vue-loader": "^13.3.0"

full error log, if it helps:
info @storybook/vue v3.4.3
info
=> Loading custom .babelrc
=> Loading custom addons config.
=> Using default webpack setup based on "vue-cli".
webpack built f522c0d3949a4154f37b in 9046ms
Hash: f522c0d3949a4154f37b
Version: webpack 3.11.0
Time: 9046ms
                       Asset       Size  Chunks                    Chunk Names
    static/manager.bundle.js    4.69 MB       0  [emitted]  [big]  manager
    static/preview.bundle.js     2.9 MB       1  [emitted]  [big]  preview
static/manager.bundle.js.map    5.74 MB       0  [emitted]         manager
static/preview.bundle.js.map     3.4 MB       1  [emitted]         preview
                  index.html    1.21 kB          [emitted]
                 iframe.html  839 bytes          [emitted]
  [48] ./node_modules/global/window.js 232 bytes {0} {1} [built]
 [279]<EMAIL_ADDRESS>113 bytes {0} {1} [built]
 [280] ./node_modules/core-js/es6/symbol.js 131 bytes {0} {1} [built]
 [298] ./node_modules/core-js/fn/array/iterator.js 107 bytes {0} {1} [built]
 [501]<EMAIL_ADDRESS>773 bytes {1} [built]
 [718]<EMAIL_ADDRESS>2.43 kB {0} [built]
 [803] multi<EMAIL_ADDRESS>./.storybook/addons.js<EMAIL_ADDRESS>52 bytes {0} [built]
 [804] ./.storybook/addons.js 392 bytes {0} [built]
 [805]<EMAIL_ADDRESS>38 bytes {0} [built]
[1049]<EMAIL_ADDRESS>38 bytes {0} [built]
[1273]<EMAIL_ADDRESS>423 bytes {0} [built]
[1448] multi<EMAIL_ADDRESS><EMAIL_ADDRESS>./node_modules/webpack-hot-middleware/client.js?reload=true ./.storybook/config.js 64 bytes {1} [built]
[1449]<EMAIL_ADDRESS>103 bytes {1} [built]
[1450] ./node_modules/webpack-hot-middleware/client.js?reload=true 7.72 kB {1} [built]
[1462] ./.storybook/config.js 729 bytes {1} [built]
    + 1575 hidden modules

ERROR in ./src/assets/variables.scss
Module parse failed: Unexpected character '#' (1:4)
You may need an appropriate loader to handle this file type.
| $w: #fff;
| $b: #000;
| $body-bg: #f2f1ed;
 @ ./src/stories/st-grid.stories.js 9:0-35
 @ ./src/stories .stories.js$
 @ ./.storybook/config.js
 @ multi<EMAIL_ADDRESS><EMAIL_ADDRESS>./node_modules/webpack-hot-middleware/client.js?reload=true ./.storybook/config.js

ERROR in ./src/assets/style.scss
Module parse failed: Unexpected character '@' (1:0)
You may need an appropriate loader to handle this file type.
| @import "./variables";
| * {
|   margin: 0;
 @ ./src/stories/st-grid.stories.js 15:0-31
 @ ./src/stories .stories.js$
 @ ./.storybook/config.js
 @ multi<EMAIL_ADDRESS><EMAIL_ADDRESS>./node_modules/webpack-hot-middleware/client.js?reload=true ./.storybook/config.js

ERROR in ./src/assets/bootstrap.scss
Module parse failed: Unexpected character '@' (1:0)
You may need an appropriate loader to handle this file type.
| @import "variables";
|
| @import "~bootstrap/scss/mixins/text-truncate";
 @ ./src/stories/st-grid.stories.js 13:0-35
 @ ./src/stories .stories.js$
 @ ./.storybook/config.js
 @ multi<EMAIL_ADDRESS><EMAIL_ADDRESS>./node_modules/webpack-hot-middleware/client.js?reload=true ./.storybook/config.js
Child html-webpack-plugin for "iframe.html":
          Asset    Size  Chunks  Chunk Names
    iframe.html  568 kB       0
       [0]<EMAIL_ADDRESS>1.23 kB {0} [built]
       [1] ./node_modules/lodash/lodash.js 540 kB {0} [built]
       [2] (webpack)/buildin/global.js 509 bytes {0} [built]
       [3] (webpack)/buildin/module.js 517 bytes {0} [built]
Child html-webpack-plugin for "index.html":
         Asset    Size  Chunks  Chunk Names
    index.html  569 kB       0
       [0]<EMAIL_ADDRESS>1.7 kB {0} [built]
       [1] ./node_modules/lodash/lodash.js 540 kB {0} [built]
       [2] (webpack)/buildin/global.js 509 bytes {0} [built]
       [3] (webpack)/buildin/module.js 517 bytes {0} [built]

From the error above I can understand that the sass-loader was not applied at all.
Try something like this:
module.exports = (storybookBaseConfig, configType, defaultConfig) => {
  defaultConfig.module.rules.push({
    test: /\.scss$/,
    use: [require.resolve('style-loader'), require.resolve('css-loader'), require.resolve('sass-loader')],
  });

  return defaultConfig;
};

also, make sure that all of the loaders are installed.


Add 'wait sshd' subcommand

Issue: #11

[ ] Update setup.py
[ ] Define _Login class based on _Mount class
[ ] Define WaitSShD class
[ ] Update README


Mesos master failed to connect to framework(Jenkins Scheduler) running inside Docker when trying to send offers

Hi,
I've got 3 Mesos masters running in HA mode, then launched a Jenkins master running inside Docker through Marathon on another Mesos slave using bridge network mode, but now we have a communication problem between Mesos master and Jenkins Scheduler framework. As logs shown below:
I0925 09:41:02.009752  4949 master.cpp:1767] Received registration request for framework 'Jenkins Scheduler' at scheduler-f0e1eeb2-4e5b-4fb7-b3fe-6859272a7f66@<IP_ADDRESS>:33708
I0925 09:41:02.010115  4949 master.cpp:1834] Registering framework 20150924-151723-1996531904-5050-4923-1937 (Jenkins Scheduler) at scheduler-f0e1eeb2-4e5b-4fb7-b3fe-6859272a7f66@<IP_ADDRESS>:33708 with checkpointing enabled and capabilities [  ]
I0925 09:41:02.010637  4950 hierarchical.hpp:386] Added framework 20150924-151723-1996531904-5050-4923-1937
I0925 09:41:02.011610  4950 master.cpp:4290] Sending 2 offers to framework 20150924-151723-1996531904-5050-4923-1937 (Jenkins Scheduler) at scheduler-f0e1eeb2-4e5b-4fb7-b3fe-6859272a7f66@<IP_ADDRESS>:33708
E0925 09:41:05.014533  4951 socket.hpp:107] Shutdown failed on fd=27: Transport endpoint is not connected [107]
I0925 09:41:05.014544  4944 master.cpp:952] Framework 20150924-151723-1996531904-5050-4923-1937 (Jenkins Scheduler) at scheduler-f0e1eeb2-4e5b-4fb7-b3fe-6859272a7f66@<IP_ADDRESS>:33708 disconnected
I0925 09:41:05.014632  4944 master.cpp:2166] Disconnecting framework 20150924-151723-1996531904-5050-4923-1937 (Jenkins Scheduler) at scheduler-f0e1eeb2-4e5b-4fb7-b3fe-6859272a7f66@<IP_ADDRESS>:33708
I0925 09:41:05.014649  4944 master.cpp:2182] Deactivating framework 20150924-151723-1996531904-5050-4923-1937 (Jenkins Scheduler) at scheduler-f0e1eeb2-4e5b-4fb7-b3fe-6859272a7f66@<IP_ADDRESS>:33708
I0925 09:41:05.014837  4944 master.cpp:974] Giving framework 20150924-151723-1996531904-5050-4923-1937 (Jenkins Scheduler) at scheduler-f0e1eeb2-4e5b-4fb7-b3fe-6859272a7f66@<IP_ADDRESS>:33708 0ns to failover
I0925 09:41:05.014871  4946 hierarchical.hpp:469] Deactivated framework 20150924-151723-1996531904-5050-4923-1937
I0925 09:41:05.015666  4946 hierarchical.hpp:761] Recovered cpus(*):4; mem(*):10831; disk(*):762855; ports(*):[8000-9000, 50000-60000] (total: cpus(*):4; mem(*):10831; disk(*):762855; ports(*):[8000-9000, 50000-60000], allocated: ) on slave 20150924-151723-1996531904-5050-4923-S1 from framework 20150924-151723-1996531904-5050-4923-1937
I0925 09:41:05.015741  4946 hierarchical.hpp:761] Recovered mem(*):6735; disk(*):762855; ports(*):[8000-9000, 50001-55484, 55486-60000] (total: cpus(*):4; mem(*):10831; disk(*):762855; ports(*):[8000-9000, 50000-60000], allocated: cpus(*):4; mem(*):4096; ports(*):[50000-50000, 55485-55485]) on slave 20150923-164039-1996531904-5050-938-S9 from framework 20150924-151723-1996531904-5050-4923-1937
I0925 09:41:05.016724  4943 master.cpp:4155] Framework failover timeout, removing framework 20150924-151723-1996531904-5050-4923-1937 (Jenkins Scheduler) at scheduler-f0e1eeb2-4e5b-4fb7-b3fe-6859272a7f66@<IP_ADDRESS>:33708
I0925 09:41:05.016778  4943 master.cpp:4718] Removing framework 20150924-151723-1996531904-5050-4923-1937 (Jenkins Scheduler) at scheduler-f0e1eeb2-4e5b-4fb7-b3fe-6859272a7f66@<IP_ADDRESS>:33708
I0925 09:41:05.016896  4943 hierarchical.hpp:423] Removed framework 20150924-151723-1996531904-5050-4923-1937

It seems when Jenkins Scheduler registered itself to Mesos master, the IP it uses is the private IP of its container(<IP_ADDRESS>), so the connection cannot be established when Mesos Master tried to send resource offers to framework.
Is this a common problem for all cases that I launch framework with Docker? And what's the best practice to solve this problem?
Thanks. :-)
BR,
Zhz

On Thu, Sep 24, 2015 at 6:50 PM, shizhz<EMAIL_ADDRESS>wrote:

Is this a common problem for all cases that I launch framework with
Docker? And what's the best practice to solve this problem?

Yes. It's a common problem. You need to use host networking mode.
-- Vinod

Thanks @vinodkone for quick response, the framework is registered successfully now.
But I have another issue similar to [issue 90] (https://github.com/jenkinsci/mesos-plugin/issues/90), the jenkins master is in a infinite loop of starting slave but failed for all tries. This is the log from Mesos Master:
I0925 13:47:33.486268  4950 master.cpp:1767] Received registration request for framework 'Jenkins Scheduler' at scheduler-803435d8-9a1b-4177-a109-a69a1b9642b5@<IP_ADDRESS>:57669
I0925 13:47:33.486409  4950 master.cpp:1834] Registering framework 20150924-151723-1996531904-5050-4923-2016 (Jenkins Scheduler) at scheduler-803435d8-9a1b-4177-a109-a69a1b9642b5@<IP_ADDRESS>:57669 with checkpointing enabled and capabilities [  ]
I0925 13:47:33.486573  4948 hierarchical.hpp:386] Added framework 20150924-151723-1996531904-5050-4923-2016
I0925 13:47:33.486776  4948 master.cpp:4290] Sending 1 offers to framework 20150922-115032-2030086336-5050-2643-0000 (marathon) at scheduler-af16a135-4ac7-4612-9fb1-01c8f4a54a37@<IP_ADDRESS>:55082
I0925 13:47:33.486910  4948 master.cpp:4290] Sending 1 offers to framework 20150924-151723-1996531904-5050-4923-2016 (Jenkins Scheduler) at scheduler-803435d8-9a1b-4177-a109-a69a1b9642b5@<IP_ADDRESS>:57669
I0925 13:47:33.489395  4949 master.cpp:2884] Processing DECLINE call for offers: [ 20150924-151723-1996531904-5050-4923-O33193 ] for framework 20150922-115032-2030086336-5050-2643-0000 (marathon) at scheduler-af16a135-4ac7-4612-9fb1-01c8f4a54a37@<IP_ADDRESS>:55082
I0925 13:47:33.496690  4950 hierarchical.hpp:761] Recovered mem(*):6735; disk(*):762855; ports(*):[50000-60000, 8000-8089, 8091-9000] (total: cpus(*):4; mem(*):10831; disk(*):762855; ports(*):[8000-9000, 50000-60000], allocated: cpus(*):4; mem(*):4096; ports(*):[8090-8090]) on slave 20150923-164039-1996531904-5050-938-S9 from framework 20150922-115032-2030086336-5050-2643-0000
I0925 13:47:33.516717  4949 master.cpp:2884] Processing DECLINE call for offers: [ 20150924-151723-1996531904-5050-4923-O33194 ] for framework 20150924-151723-1996531904-5050-4923-2016 (Jenkins Scheduler) at scheduler-803435d8-9a1b-4177-a109-a69a1b9642b5@<IP_ADDRESS>:57669
I0925 13:47:33.517112  4947 hierarchical.hpp:761] Recovered cpus(*):4; mem(*):10831; disk(*):762855; ports(*):[8000-9000, 50000-60000] (total: cpus(*):4; mem(*):10831; disk(*):762855; ports(*):[8000-9000, 50000-60000], allocated: ) on slave 20150924-151723-1996531904-5050-4923-S1 from framework 20150924-151723-1996531904-5050-4923-2016
I0925 13:47:33.791988  4943 master.cpp:4290] Sending 1 offers to framework 20150924-151723-1996531904-5050-4923-2016 (Jenkins Scheduler) at scheduler-803435d8-9a1b-4177-a109-a69a1b9642b5@<IP_ADDRESS>:57669
I0925 13:47:33.797773  4949 master.cpp:2884] Processing DECLINE call for offers: [ 20150924-151723-1996531904-5050-4923-O33195 ] for framework 20150924-151723-1996531904-5050-4923-2016 (Jenkins Scheduler) at scheduler-803435d8-9a1b-4177-a109-a69a1b9642b5@<IP_ADDRESS>:57669
I0925 13:47:33.798142  4945 hierarchical.hpp:761] Recovered mem(*):6735; disk(*):762855; ports(*):[50000-60000, 8000-8089, 8091-9000] (total: cpus(*):4; mem(*):10831; disk(*):762855; ports(*):[8000-9000, 50000-60000], allocated: cpus(*):4; mem(*):4096; ports(*):[8090-8090]) on slave 20150923-164039-1996531904-5050-938-S9 from framework 20150924-151723-1996531904-5050-4923-2016

This is the log from Jenkins Master:
INFO: Jenkins is fully up and running
Sep 25, 2015 5:46:02 AM hudson.triggers.SCMTrigger$Runner run
INFO: SCM changes detected in xxxxxx-ci. Triggering  #75
Sep 25, 2015 5:46:02 AM hudson.triggers.SCMTrigger$Runner run
INFO: SCM changes detected in xxxxxx-ci. Triggering  #352
Sep 25, 2015 5:46:05 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Started Mesos pending deletion slave cleanup
Sep 25, 2015 5:46:06 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Finished Mesos pending deletion slave cleanup. 12 ms
Sep 25, 2015 5:47:05 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Started Mesos pending deletion slave cleanup
Sep 25, 2015 5:47:05 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Finished Mesos pending deletion slave cleanup. 1 ms
Sep 25, 2015 5:47:12 AM org.jenkinsci.plugins.dockerbuildstep.DockerBuilder$DescriptorImpl configure
SEVERE: Docker URL is empty, Docker build test plugin cannot work without Docker URL being set up properly
Sep 25, 2015 5:47:33 AM org.jenkinsci.plugins.mesos.MesosCloud restartMesos
INFO: Mesos master changed, restarting the scheduler
Sep 25, 2015 5:47:33 AM org.jenkinsci.plugins.mesos.JenkinsScheduler <init>
INFO: JenkinsScheduler instantiated with jenkins http://<IP_ADDRESS>:8090 and mesos zk://<IP_ADDRESS>:2181,<IP_ADDRESS>:2181,<IP_ADDRESS>:2181,<IP_ADDRESS>:2181,<IP_ADDRESS>:2181/mesos-cluster
Sep 25, 2015 5:47:33 AM org.jenkinsci.plugins.mesos.MesosCloud provision
INFO: Provisioning Jenkins Slave on Mesos with 1 executors. Remaining excess workload: 0 executors)
Sep 25, 2015 5:47:33 AM hudson.slaves.NodeProvisioner$StandardStrategyImpl apply
INFO: Started provisioning MesosCloud from MesosCloud with 1 executors. Remaining excess workload: 0
Sep 25, 2015 5:47:33 AM org.jenkinsci.plugins.mesos.MesosComputerLauncher <init>
INFO: Constructing MesosComputerLauncher
Sep 25, 2015 5:47:33 AM org.jenkinsci.plugins.mesos.MesosSlave <init>
INFO: Constructing Mesos slave mesos-jenkins-1faf4ffc-7f7f-42a2-aac7-7a97932f01e2 from cloud
Sep 25, 2015 5:47:33 AM org.jenkinsci.plugins.mesos.JenkinsScheduler$1 run
INFO: Initializing the Mesos driver with options
Framework Name: Jenkins Scheduler
Principal:
Checkpointing: true
2015-09-25 05:47:33,467:6(0x7fa08b20e700):ZOO_INFO@log_env@712: Client environment:zookeeper.version=zookeeper C client 3.4.5
2015-09-25 05:47:33,467:6(0x7fa08b20e700):ZOO_INFO@log_env@716: Client environment:host.name=ci125
2015-09-25 05:47:33,467:6(0x7fa08b20e700):ZOO_INFO@log_env@723: Client environment:os.name=Linux
2015-09-25 05:47:33,467:6(0x7fa08b20e700):ZOO_INFO@log_env@724: Client environment:os.arch=3.10.0-229.14.1.el7.x86_64
2015-09-25 05:47:33,467:6(0x7fa08b20e700):ZOO_INFO@log_env@725: Client environment:os.version=#1 SMP Tue Sep 15 15:05:51 UTC 2015
2015-09-25 05:47:33,467:6(0x7fa08b20e700):ZOO_INFO@log_env@733: Client environment:user.name=(null)
2015-09-25 05:47:33,467:6(0x7fa08b20e700):ZOO_INFO@log_env@741: Client environment:user.home=/var/jenkins_home
2015-09-25 05:47:33,467:6(0x7fa08b20e700):ZOO_INFO@log_env@753: Client environment:user.dir=/var/jenkins_home
2015-09-25 05:47:33,467:6(0x7fa08b20e700):ZOO_INFO@zookeeper_init@786: Initiating client connection, host=<IP_ADDRESS>:2181,<IP_ADDRESS>:2181,<IP_ADDRESS>:2181,<IP_ADDRESS>:2181,<IP_ADDRESS>:2181 sessionTimeout=10000 watcher=0x7fa08e4ff988 sessionId=0 sessionPasswd=<null> context=0x7fa11c00bbb0 flags=0
I0925 05:47:33.468199   174 sched.cpp:157] Version: 0.23.0
2015-09-25 05:47:33,469:6(0x7fa088a09700):ZOO_INFO@check_events@1703: initiated connection to server [<IP_ADDRESS>:2181]
2015-09-25 05:47:33,478:6(0x7fa088a09700):ZOO_INFO@check_events@1750: session establishment complete on server [<IP_ADDRESS>:2181], sessionId=0x34ff95ce9d4000c, negotiated timeout=10000
I0925 05:47:33.478389   182 group.cpp:313] Group process (group(1)@<IP_ADDRESS>:57669) connected to ZooKeeper
I0925 05:47:33.478435   182 group.cpp:787] Syncing group operations: queue size (joins, cancels, datas) = (0, 0, 0)
I0925 05:47:33.478457   182 group.cpp:385] Trying to create path '/mesos-cluster' in ZooKeeper
I0925 05:47:33.482455   178 detector.cpp:138] Detected a new leader: (id='14')
I0925 05:47:33.482830   178 group.cpp:656] Trying to get '/mesos-cluster/info_0000000014' in ZooKeeper
W0925 05:47:33.484148   181 detector.cpp:444] Leading master master@<IP_ADDRESS>:5050 is using a Protobuf binary format when registering with ZooKeeper (info): this will be deprecated as of Mesos 0.24 (see MESOS-2340)
I0925 05:47:33.484233   181 detector.cpp:481] A new leading master (UPID=master@<IP_ADDRESS>:5050) is detected
I0925 05:47:33.484439   178 sched.cpp:254] New master detected at master@<IP_ADDRESS>:5050
I0925 05:47:33.485165   178 sched.cpp:264] No credentials provided. Attempting to register without authentication
I0925 05:47:33.489980   178 sched.cpp:448] Framework registered with 20150924-151723-1996531904-5050-4923-2016
Sep 25, 2015 5:47:33 AM org.jenkinsci.plugins.mesos.JenkinsScheduler registered
INFO: Framework registered! ID = 20150924-151723-1996531904-5050-4923-2016
Sep 25, 2015 5:47:43 AM org.jenkinsci.plugins.mesos.MesosComputerLauncher launch
INFO: Launching slave computer mesos-jenkins-1faf4ffc-7f7f-42a2-aac7-7a97932f01e2
Sep 25, 2015 5:47:43 AM org.jenkinsci.plugins.mesos.MesosComputerLauncher launch
INFO: Sending a request to start jenkins slave mesos-jenkins-1faf4ffc-7f7f-42a2-aac7-7a97932f01e2
Sep 25, 2015 5:47:43 AM org.jenkinsci.plugins.mesos.JenkinsScheduler requestJenkinsSlave
INFO: Enqueuing jenkins slave request
Sep 25, 2015 5:47:43 AM hudson.slaves.NodeProvisioner$2 run
INFO: MesosCloud provisioning successfully completed. We have now 2 computer(s)
Sep 25, 2015 5:48:05 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Started Mesos pending deletion slave cleanup
Sep 25, 2015 5:48:05 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Finished Mesos pending deletion slave cleanup. 0 ms
Sep 25, 2015 5:49:03 AM hudson.triggers.SCMTrigger$Runner run
INFO: SCM changes detected in xxxxxx-ci.  Seems resource offer is declined by Jenkins Scheduler but I don't know why. The target slave is running under root, BTW.

Update: I started a standalone Jenkins and it works perfectly with mesos plugin. There's must something wrong with the dockerized jenkins master:-(

I think this is the right place for this.  Today I hinted the same error and found it stemmed from having many network interfaces and mesos/marathon being unsure which one was primary.  After I used --IP(specify listen address) things were right as rain.

@faddat  could you show the detail solution? I'm also stuck in this issue :(

@Colstuwjx I had the issue that the framework got connected but when trying to connect the client failed. I solved with this:
First the TCP port for JNLP agents is disabled, enabled by setting it in Random:

Then, use a container that already has Java installed (an obvious one, but not when I started to mess with jenkins/mesos):

I have the same issue. How can I see the log ? It is stuck on this :

In my case, I have been fixed that by manually pull jenkins image  on docker host & ``, and things works well.

@Colstuwjx I have created my own issue https://github.com/jenkinsci/mesos-plugin/issues/292
If people can help. I don't think this is due to docker at all. Why would it need a jenkins image?

@kopax you need to set a fixed tcp port for JNLP, and use it:

and don't forget to specify that in your json file in Marathon:

and some env variables:
HOST_IP={YOUR_SERVER_IP}
JENKINS_SLAVE_AGENT_PORT=50555

This is my DockerFile:
FROM jenkins:2.46.1

USER root
ARG MESOS_VERSION=1.1.1
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv E56151BF && \
    echo "deb http://repos.mesosphere.com/debian jessie main" > /etc/apt/sources.list.d/mesosphere.list && \
    apt-get update && apt-get install -y --force-yes --install-recommends mesos=$MESOS_VERSION\* && \
    #apt-get install -y sudo && \
    apt-get clean && \
    echo "jenkins ALL=NOPASSWD: ALL" >> /etc/sudoers

COPY lib_export.sh /

EXPOSE 9090 50555

RUN /usr/local/bin/install-plugins.sh mesos:0.14.1

ENTRYPOINT ["bash", "/lib_export.sh"]

and the lib_export.sh file that is copied:
#!/bin/bash

if [ -z "$HOST_IP"]; then
    HOST_IP=$(ip a show eth0 | grep -oP 'inet\s\K[^/]+')
fi

export LIBPROCESS_PORT="9090"
export LIBPROCESS_ADVERTISE_IP="${HOST_IP}"
export LIBPROCESS_ADVERTISE_PORT="${PORT2}"

/bin/tini -- /usr/local/bin/jenkins.sh

Hi @iax7. Thanks a lot for sharing your configuration.
Are you using network HOST or BRIDGE?
My mesos slave runs in a docker container (host mode with docker socket mounted). I only installed mesos on jenkins so that jenkins can have the libmesos.so in order to connect to the mesos cluster as a framework.
The mesos slave already have it's interface configured, I am using a private network interface eth3 on <IP_ADDRESS>/22 to expose my marathon application using the /etc/default/docker.json configuration.
I can't understand why you are using a 3rd port for libprocess. Would you mind telling why exactly jenkins needs it?

It is BRIDGE, about the extra port is required for libprocess to connect from Jenkins to mesos. I don't remember the details.

Hi Guys, I think I have a very similar problem and I get:
E0928 07:44:05.240464  6967 process.cpp:2455] Failed to shutdown socket with fd 393, address <IP_ADDRESS>:56038: Transport endpoint is not connected
I think this comes from when the mesos-master has SSL Enabled and the clients try to connect to it via non ssl. Can someone provide the confs on how to configure the mesos client lib with ssl ?


Allow externally specified config

I'm using this module with confit which will allow me to split my (relatively complex) config files up, generate some dynamic configs, etc. This simple change allows me to bypass loading config.json cleanly.

looks good :)


[New Feature require] Tutorial update.

Windows Nottify with powershell script:
[reflection.assembly]::loadwithpartialname("System.Windows.Forms")
[reflection.assembly]::loadwithpartialname("System.Drawing")
$notify = new-object system.windows.forms.notifyicon
$notify.icon = [System.Drawing.SystemIcons]::Information
$notify.visible = $true
$notify.showballoontip(10,"Script Completed!","Your script ran succesfully!",[system.windows.forms.tooltipicon]::None)

I'm confused what you are suggesting? You've provided PowerShell code to display a notification bubble. What do you think should be updated in the docs? Or: Alternatively, I'm happy to accept pull requests to update the docs.

What do you think should be updated in the docs?

You haven't answered the question. Please provide details on what you think is missing from the docs and where exactly you think I should provide more detail.


APPS-238 fix double checkouts

The payment state does not fully reflect the enabled/disabled state of the checkout - fulfillments and exit codes also play a role, and that is currently all summarized in the polling state.

That is correct but then we should add a variable or function like isCompleted on the checkoutProcess. The Polling is just a mechanism we use to determine a state and not the state we are actually looking for.
Maybe this state can also be used to determine the state of continuePolling in the ViewModel.
What do you think?

177a74fb adds isComplete


Decide on the format of info shared on spike card

We want to come up with very specific type of required Ac's of Spike Card for Complaint-Manager 2.0
When developer picks up a Spike Card they have good understanding of the context and requirements so they work on card within scope of the card for timely manner.
Business Context: Short context about what we are trying to look into (Tech stack, Library, Extension, etc)

Definition of Done:

Timebox: Amont of days

Ac's: Do research/play around and answer:
    [] Is there possible tech solution library ? Name and link to documentation
    [] What are the advantages and disadvantages ?
    [] Is the value add is worth it?
    [] How difficult is implementation ?
    [] Record your findings in form of documentation(markdown or ADR)
    [] Present/Deskcheck your findings.
    [] If approved write down the steps in a new Story Card

Notes:
N/A

This Spike Card has been approved and will be to Issues Template


Save Sphere as 3d object

On the off chance that this is still active.
Would it be possible to save the generated sphere as a 3d object uv-mapped to the various equirectangular displays?

Well, its not necessarily inactive. I left it for a while after finding no easy answer for improvement to the supercontinent cycle.
3d models were something I hoped for as a long term objective, however I had not considered how to store the model, nor even whether to a uv map should be involved. From some preliminary research saving a texture to a file is easy enough. Besides that, ease of implementation depends greatly on the model file format. JSON could be used to easily store the model, but its a format not commonly used by modeling apps. Stl could allow for 3d printed globes, but would require something other than a uv map to implement. What sort of model format did you have in mind?

I use Blender, Wings and... um... Bryce. I can Import and if necessary translate a lot of formats. I've seen JSON /exporters/ for Blender and one script that promised to implement /import/ "any time now." JSON tools seemed to barf up UV maps in any case... Stl, as I understand it, is pure geometry. The data here is in the surface texture(color, whatever), so that is probably a no-go.
Wavefront OBJ is pretty portable and there's a lot of code floating around for it. I'm not sure how easy it is to implement in javascript, but that would probably be the best go-to choice all else being equal.
As I understand it, tectonics.js implements the globe as a mesh with the surface faces being voronoi polygons rather than a Buckminsteresque icosphere with triangular faces or a conventional uv-sphere. Is that accurate?

No, it actually does use icospheres. Actually, its a bit more complex than that. Each plate has its own icosphere geometry, with each vertex representing a grid cell in the model. Shaders modify the height and color of each vertex/grid cell in an icosphere. If the plate isn't present at a grid cell, the vertex is rendered with height set to something way below sea level. I've considered switching to a single icosphere and get the entire model to run through shaders, but there are a few nasty tradeoffs and it would take a major overhaul to perform. That's an aside, anyways.
The Voronoi stuff you see is only used for collision detection. A Voronoi diagram is used to map lat/lon coordinates to grid cell indices. This way we can detect collision between plates with O(1) efficiency.
So how this relates to generating 3d models: I don't expect it would be too difficult to generate textures. It doesn't matter how many icospheres are in play, they all get rendered to the screen in the end. What needs to be done is to take what's normally rendered to the screen and stick it in a texture, instead. Mesh generation should be trivial since its just a sphere. The real uncertainty for me is file format.
OBJ seems workable given its use of plain text. I see plenty of work done on javascript/three.js importers for obj. Not so much for exporters, though.

OK, so there is an obj exporter included in the three.js project space: https://github.com/mrdoob/three.js/blob/master/examples/js/exporters/OBJExporter.js

Another thing: OBJ appears only to store mesh information and texture mapping information - it does not appear to store the texture itself.
A full implementation of this feature would presumably include a zip file including the obj and texture files. Is this correct? If this is the case, could an intermediate solution work as well? I'm considering the following roadmap:

Create a new option for the projection dropdown. This option would be very similar to the "equarectangular" projection, but would render to the entire screen, that is, in a manner resembling the contents of a texture file.

Output the render to a texture file.

Output an icosphere mesh to an obj file, then zip it together with the texture.

Yeah. Doesn't necessarily need to be zipped, but what you need is the OBJ for geometry and(I think) the uv-mapping. You also need an MTL material file which describes the material(!) and gives the, hopefully relative, path to the texture image file. Presumably, the texture would be treated as the diffuse color. Finally, you need all the associated image textures. I'm not sure if javascript has the kind of filesystem permissions that would allow it to create a new directory and pack everything in that. If it can't, then a zipfile may be the only way to fly.
If the jagged edges on the fully zoomed out image that renders now actually represent an existing behind-the-scenes uv-mapping then you're golden. In fact, If I knew the actual arrangement of the icosphere used(in Blender terms, the number of subdivisions on an initial icosahedron), I could(probably…) create an equivalent icosphere in Blender and uv-map it to match. Could be difficult, so if the process could be automated, then Bully!
If pixels outside of the 90N,180W/90S,180E bounding box can accurately be recalculated back to the appropriate latitudes and longitudes(I'd have to pull out my old geometry texts to re-acquaint myself with the math), then creating a ball model may be superfluous. Any monkey(me) could simply create a ball in their favorite 3d modelling tool and use a simple spherical mapping for the texture. Although, as I understand it after a bit of googling and perusal of Stack Exchange, outputting the mesh ain't terribly hard in itself. Says the guy who couldn't actually do it, regardless of how "easy" it might be... :/

Try this out for size. First, let's set the coordinate system so that the west edge of the final bounding box of the equirectangular projection is at x=0º, the north edge is at y=0º, the east edge is at x=360º, and the south edge is at y= 180º. This is basically a phi, theta map rather than latlong.
First thing to do is to check the phi-ccordinate of the current pixel, if it is less than 0 then the phi-coordinate is reset to abs(phi), and the theta coordinate is set to (theta + 180º) mod 360º. If phi is greater than 180º, then phi is reset to 360º-phi and theta is set to (theta + 180º) mod 360º. Now the phi or y-coordinate is dealt with, now to assure that the theta or x-coordinate is in range.
If theta is less than zero, then theta is reset to theta + 360º, phi is untouched. If theta is greater than 360º then theta should be reset to theta-360º, phi is unmodified.
This check, and if necessary change, should be made for each pixel before drawing to the screen. Obviously, this should take into account the actual coordinate system, and should be converted to radians if, as is likely the case, necessary.
Does this make sense, and did the math come out correctly?

I'm not sure if javascript has the kind of filesystem permissions that would allow it to create a new directory and pack everything in that.

Almost certainly not, given the security concerns that go into browsers.

If the jagged edges on the fully zoomed out image that renders now actually represent an existing behind-the-scenes uv-mapping then you're golden

The jagged edges do indirectly correspond to uv mapping, but there are multiple icospheres at play here and they're all rotated in their own unique way, so it's not certain the jagged edges wouldn't propagate to the 3d model. The jagged edges are something I let slide when I first implemented but now they simply have to get fixed.

In fact, If I knew the actual arrangement of the icosphere used(in Blender terms, the number of subdivisions on an initial icosahedron), I could(probably…) create an equivalent icosphere in Blender and uv-map it to match

That's why I propose the incremental step of downloading the texture file. I'd suspect a simple spherical map should suffice. I plan to use the equirectangular projection as a basis for the texture file. On this projection, u = lon/360 and v = (lat+90)/180

Although, as I understand it after a bit of googling and perusal of Stack Exchange, outputting the mesh ain't terribly hard in itself.

Probably true, but it never hurts to release in small increments. Releasing functionality in large blocks risks bottlenecks that jeopardize everything from seeing use.
I'm not quite getting the explanation on phi/theta map. What problem is this addressing?

I'm not sure if javascript has the kind of filesystem permissions that would allow it to create a new >>directory and pack everything in that.
Almost certainly not, given the security concerns that go into browsers.
No surprise.

If the jagged edges on the fully zoomed out image that renders now actually represent an existing >>behind-the-scenes uv-mapping then you're golden
The jagged edges do indirectly correspond to uv mapping, but there are multiple icospheres at play >here and they're all rotated in their own unique way, so it's not certain the jagged edges wouldn't >propagate to the 3d model.
To make the existing render work with uv-mapping, you'd probably have to save all of the nested icospheres with their rotation intact and probably mostly textured as transparent. I'm not sure if OBJ saves the rotation... That would still probably be a headache.

The jagged edges are something I let slide when I first implemented but now they simply have to >get fixed.

In fact, If I knew the actual arrangement of the icosphere used(in Blender terms, the number of >>subdivisions on an initial icosahedron), I could(probably…) create an equivalent icosphere in >>Blender and uv-map it to match
That's why I propose the incremental step of downloading the texture file. I'd suspect a simple >spherical map should suffice. I plan to use the equirectangular projection as a basis for the texture >file. On this projection, u = lon/360 and v = (lat+90)/180
Absolutely. For me, that fixes a lot of problems right there.

it never hurts to release in small increments. Releasing functionality in large blocks risks >bottlenecks that jeopardize everything from seeing use.
Further support. Especially since the first increment serves my purposes perfectly!

I'm not quite getting the explanation on phi/theta map. What problem is this addressing?
Probably because it's a poor explanation and it's not addressing the problem at hand very well. Basically, it's an attempt to deal with the jagged edges.

Unfortunately, while I was able to play around with some of the simpler case problems. Like hiding the Icecap shading. This problem is completely outside of what I've been able to understand of the code(obviously). So a lot of what I'm doing depends a bit on conjecture as to how things are implemented. For a guy whose interests revolve so much around maps and imagery, my programming skills are very text-oriented. :-o

Okay, my attempt at quote highlighting failed miserably.

d28d663b01e7ba19d03a101a63a36abaf60c86ce adds the full screen view needed for texture export. That's part 1 of the road map.

Nice. Still got the edge effects going on, but, because I can rely on the extents, I can make a second screenshot rotated somewhat to the east or west. Then all I have to do is use them as layers in Photoshop, use the Offset filter to realign the layers and delete the edges from the top layer.
That takes care of the side jaggies, for top and bottom I just have to rely on the fact that the north edge is all one thing as is the south edge.
Not quite perfect. Not altogether effortless. But workable. A very promising start.

So fixing the jaggies I expect will have to be an additional step in the roadmap, between items 1 and 2.
There does not seem to be a well defined solution for this kind of problem using webgl's graphics architecture. We cannot move the coordinates of a pixel fragment, and we can't map a vertex to multiple clipspace coordinates. I believe this exhausts all possible solutions that are confined to glsl code, so something must be done in javascript. The solutions I envision all revolve around emulating what you do in photoshop: take two screencaps with different offsets, then stitch them together. This entails either:
Rendering two icosphere geometries for each plate. An offset is assigned to each geometry that is used with equirectangular projections.
Rendering two icosphere meshes for each plate, each with their own material. The offset is assigned through the material.
Creating a 2 or 3 pass render pipeline. The offset is reassigned before each pass is rendered.
Option 1 is right out. I could create two icosphere geometries for each plate but then I would have to do everything twice when updating the simulation.
Option 3 is better, but would require setting up a new pipeline, potentially also requiring me to re-flesh out classes for projection and view that I had abandoned in favor of much simpler vertex and fragment shader text. That, plus I'd have to swap offset values twice every frame.
Option 2 seems best so far.

commit 8e0d3a859839823fa2e72d6032c5bff5988066d4 fixes the jaggies.

Thank you. Thank you! Thank You!!!
For my own purposes, that's 99-100% of the game. I, speaking only for myself, mostly wanted the model output so I could endrun my way to the jaggy-free full planet map.
The obj-file mesh would definitely simplify things, particularly for users less experienced with 3d modeling tools(less experienced, even, than me(oh dear(!)). As it is, a simpleton like me could apply the texture to an image in Bryce in just a few minutes.
Just sayin',"Awesome work!"
BTW: Did'ja go with option 2 or 3?

Option 2 worked as expected. It helps that the model and the view are partitioned - the mesh that stores rotation information about the plate is not the same as the meshes that get rendered to the screen.

Well, I clearly don't understand what milestones do :\


Missmatch in typings in Popover

Describe the bug
Popover seems to check if onCLose is null, but type props state that type is either undefined or () => void
This makes it so that line this line:
https://github.com/equinor/design-system/blob/7c4b75d5eded584c5f371078382c5ba4fd3e883b/packages/eds-core-react/src/components/Popover/Popover.tsx#L133
and  this line
https://github.com/equinor/design-system/blob/7c4b75d5eded584c5f371078382c5ba4fd3e883b/packages/eds-core-react/src/components/Popover/Popover.tsx#L142
will always return oneclose !== null => true
You get a error in the logs if you dont provide an onClose
Expected behavior
Suggest either opdating the input prop type to support undefined or updating the checks to support undefined
Specifications

Version:
Browser:
OS:

Additional context
Add any other context or screenshots about the bug. An example in CodeSandbox is very helpful

Thanks for reporting this!
We'll have a look at it soon :)


OSPP 2021: sync manual translation from transfix

@Gnimuc is this all we need to do to update https://docs.juliacn.com/latest/?

Yeah. Just sync and merge. You could get the preview here: https://juliacn.gitlab.io/JuliaZH.jl/


Proxy to Rest API

I have a couple of questions about how server side rendering would work my existing API. How can I run an API under the same port during development? For example, with create-react-app, I would use webpack's proxy configuration. Is there some similar configuration that I can use with next?
Also, in production, how would I run an API and still take advantage of the server side rendering from next?
I'm sure there are simple answers to these questions. I feel like I'm missing some fundamental concepts. Thanks for the help.

There are discussions about how to allow the usage of custom webpack configurations (#40 and #222), that will allow you to use the webpack's proxy configuration.
Meanwhile you can run your API in another port or made use of NGINX as a reverse proxy to do that (I think the different port is the best for development right now because it doesn't require to configure another an NGINX).
In production you can use NGINX as a reverse proxy, so the user made a HTTP request to the NGINX server and it will map the requests to the next.js servers (you can have multiple and load-balance them) or if the request are in /api or api.domain.com (for example) you can map them to your API servers.

Great comment by @sergiodxa. We should probably start a wiki page on this as well.
tl;DR: We recommend talking from getInitialProps to something like api.yourdomain.com, or a proxied yourdomain.com/api
Keep server APIs separate. Keep your Next.js app small and scoped to the frontend code.


Added Castle drawing with canvas

Zero To Mastery - Canvas 2022 🎉🎉
PR contains:

I made a castle drawing using canvas tag of HTML 🤜

Breaking changes

None

Screenshots

None

Looks good to me, nice job 👍


lxd/cluster: Don't warn about pending nodes

Signed-off-by: Stéphane Graber<EMAIL_ADDRESS>

@tomponline I think this is good to go, the failures are all unrelated but suggest that @brauner may have broken some stuff with our cgroup handling...


Create-Secret.ps1 - set explicit az output to json

If you have a different output format than json, this command will fail.
$(az acr show -n $acrName -g $resourceGroup | ConvertFrom-Json).loginServer
add -o json.
It is the same problem on the next line also.

Thanks for the suggestion.
We really need to do it!

Fixed in #38
Thank you @buzzfrog!

Solved in commit c5b93d4


Fix TransactionRequest-related API spec missing base responses

Issue/Task Number: T133
Overview
Add base responses to the API spec for transaction request/request consumption endpoints
Changes

Wrap base responses to the following endpoints

/me.create_transaction_request
/me.get_transaction_request
/me.consume_transaction_request

Implementation Details
Textual changes
Usage
Navigate to https://ewallet.staging.omisego.io/api/docs and see the example responses for the 3 TransactionRequest endpoints.
Impact
N/A

Merci!


update swagger YAML

Coverage remained the same at 53.946% when pulling a8a00a425f203ab662d5db36e3472f5340330572 on reasonerjt:clair-integration into 38b09f9f3fbf7d5cd1b8ed30991b72a10625a960 on vmware:master.


Reorg tabs for tools/workflows

Labels should be moved outside of tabs to be top level
Launch with to a tab
Display table of test json (With verification) #1454
Take out google plus sharing, also fix so that links include versions

The display table of test json has not been implemented, but everything else has been.


Solved issue #103- Add the footer

PR Description 📜
Please include summary related to the issue you have fixed and describe your PR in brief over here by specifying the issue number on which you were working below
The issue was to add a footer to the webpage. By including the appropriate HTML markup for the footer element and applying the necessary CSS styling, I ensured that the footer appeared at the bottom of the page. This addition enhances the overall layout and design of the webpage, providing important information or copyright details to the users.
Fixes #103  <your_issue_number>

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for review.

## Add your screenshots(Optional) 📸
![Screenshot 2024-05-15 012917](https://github.com/GameSphere-MultiPlayer/Dot-Box/assets/142652964/4385b9f9-edc7-4cc0-bb52-f0f0f0d935b6)

Thank you soo much for contributing to our repository 💗

@Durgesh4993 Kindly review it

@Durgesh4993
Kindly review this PR too

@Durgesh4993
Kindly review the PR
I have resolved the conflicts
Thankyou

@Durgesh4993
Kindly review this PR also
Thankyou

Also update your PR by pulling from develop branch. And I can't start the game while in your PR. You might have unintentionally broke something

done @Lovelyfin00

And also what you've added here is different from the screenshot you attached in the issue.

Ok


ideas about speech recognition and other speech processings

hey i was wondering about how to use this repo for some speech recognition and diarization purpose


docker-files metadata

initiate metadata file of all images that are used in content-repo for this point of time

lets merge this in the same pr as the update script change

will implement it in the same PR along with schema @kobymeir @JudahSchwartz , closing it


A short syntax for v-bind .prop modifier

What problem does this feature solve?
Make things shorter and easier to write.
What does the proposed API look like?
:foo="bar" is a syntax shortcut for v-bind:foo="bar".
Similarly, .foo="bar" would be a nice shortcut for :foo.prop="bar" (and the leading . even makes sense!).

What do you think of .foo.bar.baz="..." to set a path in the object?
In my case, I can do stuff like following with my elements:
el.rotation = [30, 30, 30]

// or

el.rotation.y = 30
el.rotation.x = 30
el.rotation.z = 30

Anything more than a shorthand is beyond the original scope of this proposal. And no, I don't think magic path extensions are a good idea. That's like reaching into the child component's private state.

It's interesting, because then, do you suggest that I refactor my custom elements to have attributes and properties like the following?
<i-mesh .rotation="" .rotation-y="" .rotation-x="" .rotation-y="">

and
el.rotation = [...];
el.rotationY = ...;
el.rotationX = ...;
el.rotationZ = ...;

It makes the JavaScript API less clean.

Or <i-mesh .rotation="{ x, y, z }">?

Yeah, it's easy to work around.
But that one is less performant:
<template>
  <!-- creates a new object every frame -->
  <i-mesh .rotation="{ x, y, z }"></i-mesh>
</template>
<script>
  export default {
    // more variables
    data: () => ({ x: 0, y: 0, z: 0 }),
    mounted() {
      // animate this.y at 60fps
    },
  }
</script>

vs
<template>
  <!-- passes only a number every frame -->
  <i-mesh .rotation.y="y"></i-mesh>
</template>
<script>
  export default {
    data: () => ({ y: 0 }),
    mounted() {
      // animate this.y at 60fps
    },
  }
</script>

I'll just make more attributes on the custom elements, and use .rotation-y="y". Plus, this has the benefit of expanding the attribute API which may make it more flexible in other libraries.

Plus, this makes it clear which attributes map directly to properties, without reaching into places that are not represented as attributes. Maybe this is a good thing!

Well, maybe it's moot, because it's also possible that .property exists on a custom element instance without a property="" attribute being part of the element's HTML API. So, for example, SSR would just have to send the data to the client (not as an attribute, but as JS) then during hydration just send the data to the element instance property. In this case, having a notation like .rotation.y="" would work the same.


orchestra: refacor remote.py and remote_ops.py

Depends on https://github.com/ceph/teuthology/pull/1626.


Does not escape the # character to %23 when in the password

I'm trying to connect to a database with the following URL:
var client = new pg.Client('postgresql://dwuser:<PASSWORD>@dw:5433/dwdev');

dwuser is my data warehouse user, and dw is a network-defined alias of my data warehouse pointing to its IP. The password, port, and database are self-evident. When I try to use this string, I get the following:
Connection failed!  { Error: getaddrinfo ENOTFOUND dwuser dwuser:5432
    at errnoException (dns.js:28:10)
    at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:73:26)
  code: 'ENOTFOUND',
  errno: 'ENOTFOUND',
  syscall: 'getaddrinfo',
  hostname: 'dwuser',
  host: 'dwuser',
  port: 5432 }

It recognizes my username as the hostname and does not accept the custom port.
EDIT: It turns out that my data warehouse has a # sign in it. This needs to be escaped to %23 or manually replaced on my end in order to work

I wrote a quick test to see what was going on:
  it('password contains #', function(){
    var sourceConfig = {
      user:'brian',
      password: 'password#',
      port: 5432,
      host: 'localhost',
      database: 'postgres'
    };
    var connectionString = 'postgres://' + sourceConfig.user + ':' + sourceConfig.password + '@' + sourceConfig.host + ':' + sourceConfig.port + '/' + sourceConfig.database;
    var subject = parse(connectionString);
    console.log(subject);
    subject.password.should.equal(sourceConfig.password);
  });

Here is the result:
{
  user: '',
  password: '',
  port: null,
  host: 'brian',
  database: ':password'
}

The # character is denoting a url fragment.
I am loathe to try and fix this though. I think some of the existing behavior going on is already dangerous. I believe the caller should be wrapping username and password in encodeURIComponent before constructing the URL.
Example:
encodeURIComponent('password#')

This PR will fix it, if merged.

As mentioned earlier, the caller should be wrapping username and password in encodeURIComponent before constructing the URL.


Clock not initialized in LPC Flexcomm UART driver

Enabling LPC55S69 Flexcomm UART interface in DTS does not enable its clock.
board.dts
...
&flexcomm4 {
    compatible = "nxp,lpc-usart";
    current-speed = <115200>;
    status = "okay";
};
...

Calling uart_poll_out() in main() causes CPU to hang, because UART clock is not running. This can be verified by dumping FCCLKSEL4 value via GDB:
(gdb) x 0x500002c0
0x500002c0:     0x00000007

Setting FCCLKSELx value manually (or using CLOCK_EnableClock() from fsl_clock.h) works, but IMO it breaks hardware abstraction.
I think Flexcomm clock should be enabled during initialization, inside uart_mcux_flexcomm.c:mcux_flexcomm_init().

I've done some more digging and discovered that this is probably a bug in NXP HAL. Namely, FLEXCOMM_Init() should set FCCLKSELx value, if I'm reading LPC55S6x User Manual correctly (section 32.4, Flexcomm Basic configuration).


Check for control flow event before let binding

Fixes #1906 (trying to destructure the result of continue).
Future possibilities: represent control flow events in return value instead of in Vm::flow?

Thanks!


Skip kubeadm coredns installation

What this PR does / why we need it
Towards https://github.com/giantswarm/giantswarm/issues/24276
With these changes, we don't create the job that updates coredns manifests to adopt it as an app. Instead, we tell kubeadm not to deploy coredns, and later on, the app platform will deploy coredns as a default app.
Checklist

[X] Update changelog in CHANGELOG.md.

Trigger e2e tests

/test create
/test upgrade

/test create

/test upgrade


BABE randomness

This comes after #2084.

Can you do a brief writeup of how this will be accomplished? Either here or when you open a PR -- just to provide some background for reviewers.

Building on #2372 and #2656 :
At a very high level, what we'll want is to make sure there's an inherent digest which contains the (checked) VRF proof. Then we'll have the BABE logic inspect the VRF proof somehow and fold it into the randomness beacon. But as a first step we'll just want to get the VRF into srml-babe.

We only produce the random beacon from the the VRF outputs at the end of the epoch, but you could accumulate the eventual random beacon with each block, so new_vrf_output_sum = f(old_vrf_output_sum,current_vrf_output).   In this, f could be some hash function, but f could equally be Ristretto + on RistrettoPoint, or any + on [u8; 32] like xor, lexicographic, wrapping_adds, etc.

@burdges

We only produce the random beacon from the the VRF outputs at the end of the epoch, but you could accumulate the eventual random beacon with each block, so new_vrf_output_sum = f(old_vrf_output_sum,current_vrf_output). In this, f could be some hash function, but f could equally be Ristretto + on RistrettoPoint, or any + on [u8; 32] like xor, lexicographic, wrapping_adds, etc.

Would a low influence function be desirable here?
Also, it seems to me that the best way to avoid various attacks is to look at “What fraction of the VRF outputs satisfy predicate X?”, not “Does the beacon satisfy predicate X?”.  The main reason is that it requires more validators to collaborate if they want to maliciously control the outcome.

I do not think so..  These low influence functions normally increase colluding adversaries influence.  And worse for Ouroboros/BABE they can do so "out of sequence".
As an example, you run bitwise majority vote then the malicious block producers can push specific bits in specific directions, so some later honest block producers have no influence over some bits.  If otoh you just do xor then everyone has equal influence and adversaries control exactly as many bits as they have tailing block producers, with the caveat that they cannot analyze so many really.
Ouroboros/BABE only really requires one honest block producer succeeding within the right time frame, although any honest block producer succeeding require more honest block producers.  I'd think the analysis must be altered for a low influence function, but maybe that's an interesting exercise @hndnklnc and we might learn something interesting if done carefully.
Anyways the "naively" conservative choice would be f being a hash function.  It's more likely using 256 bits over 128 makes some small difference though, in which case do not add elliptic curve points.

There are two problems of using a low influence function for the randomness beacon

We cannot guarantee that the randomness is truly random. For example, if we use a median function then the malicious parties can easily make that the VRF output that they want is the median.

The malicious parties should not know the randomness beacon until the end of the epoch for security. However, with the low influence function, we may not guarantee this because it is not truly random. If they knew the randomness beacon before the end of the epoch, they would update the validator set (or key update) for 2 epoch's later so that the malicious validator's selected more than honest ones.


v-model support with functional components

Version
2.5.16
Reproduction link
https://codesandbox.io/s/0mj5l70xwn
Steps to reproduce
Set two inputs with v-model, one directly and another using a functional component as wrapper.
What is expected?
The same binding behaviour on both inputs.
What is actually happening?
Only the standard input works, the functional component input doesn't get bind the value but it does get binded an input event with an unexpected behaviout.

The reason I would wrap an input into a functional component is to customize it look, while expecting vue to still apply all the v-model workarounds around it.

v-model is already supported in functional components, you need to do things manually (as with render functions) though:
export default {
  functional: true,
  render(h, { data, props }) {
    console.log(data)
    return h("input", {
      on: {
        input: e => data.on.input(e.target.value)
      },
      domProps: {
        value: props.value
      },
      attrs: {
        type: "text"
      }
    });
  }

(you can also use data.model)
See https://vuejs.org/v2/guide/render-function.html#v-model

Thank you for your answer @posva. I think we can work on a better balance here between conveniance and low level features. There are a lot of edge cases workarounds covered by v-model that are getting lost. And I mean, a lot:
// input text
domProps: {
  "value": (value)
},
on: {
  "input": function($event) {
    if ($event.target.composing) return;
    value = $event.target.value
  }
}

// input radio
domProps: {
  "checked": _q(value, null)
},
on: {
  "change": function($event) {
    value = null
  }
}

// input checkbox
domProps: {
  checked: Array.isArray(value) ? _i(value, null) > -1 : value
},
on: {
  change: function($event) {
    var $$a = value,
      $$el = $event.target,
      $$c = $$el.checked ? true : false;
    if (Array.isArray($$a)) {
      var $$v = null,
        $$i = _i($$a, $$v);
      if ($$el.checked) {
        $$i < 0 && (value = $$a.concat([$$v]));
      } else {
        $$i > -1 && (value = $$a.slice(0, $$i).concat($$a.slice($$i + 1)));
      }
    } else {
      value = $$c;
    }
  }
}

// input range
domProps: {
  "value": (value)
},
on: {
  "__r": function($event) {
    value = $event.target.value
  }
}

// select
on: {
  change: function($event) {
    var $$selectedVal = Array.prototype.filter
      .call($event.target.options, function(o) {
        return o.selected;
      })
      .map(function(o) {
        var val = "_value" in o ? o._value : o.value;
        return val;
      });
    value = $event.target.multiple ? $$selectedVal : $$selectedVal[0];
  }
}
...

And that code is not even including the v-model number, lazy and trim modifiers.
Low level rendering should not mean automatically loose all the conveniance. The v-model could set the domProps and events listeners workarounds on the data object as if it was a real input, because it is, and in my code I could choose to use those directly with the input, ignore it completely, or do some adjustments.
Perhaps there are some technical limitations I am ignoring here. Is that the case, @yyx990803?


Bump to version 1.0.0

@optimizely/fullstack-devs

LGTM

Coverage decreased (-0.0003%) to 99.24% when pulling d1c57a0f290a0f0c26ceb83d7c60683f15ea5180 on haley/bump-to-1.0.0 into 57e1e73017f9e46de587d23f415168ceffcfe690 on devel.


Switch to Googles Sha3

I've seen that the lib imports an external Sha3 implementation from leb.io/hashland/keccakpg. There is already a Sha3 implementation from Google in golang.org/x/crypto/sha3
The Google one has assembler optimized code for amd64. Is there a reason to use the 3rd party lib instead of the Google one?
Just curios.

I tried swapping it out (just edit the import in kerl.go) but it fails the tests. This is very interesting, as I wonder why the official google packages dont work but this seemingly random third-party package does.

sha3 is not the same as keccak. The difference is small though. From the /x/crypto/sha3 repo:
func New384() hash.Hash { return &state{rate: 104, outputLen: 48, dsbyte: 0x06} }
For keccak dsbyte should be 0x01, but there is no way to set it using that lib. You would have to fork it and modify.

switched to golang.org/x/crypto/sha3 in next branch using a fork with dsbytes adjusted.


[dev] Run rosetta connectivity in stable pipelines

port rosetta fix on compatible again [empty commit]

!ci-build-me


SafeArea removed in React-Native

Hi, I want to thank you for the library, it works perfectly. However, I am having issues with safe-area things. After I add screenshot protection, the bottom inset of the safe-area becomes 0. If I disabled it, it worked normally. I tried to detect the safe-area insets using react-native-safe-area-context. I tried to move the secureTextField to a subview instead of direct view, but no luck. Any advice?

Hello @gulsher7 , could you please take a look at the React-Native issue that @RZulfikri  has raised?

I think it's due to this code,
      layer.superlayer?.addSublayer(secureTextField.layer)
      secureTextField.layer.sublayers?.last?.addSublayer(layer)

that code will trigger safeAreaInsetsDidChange and change the safeAreaInsets.bottom value to 0

Hi @RZulfikri,
If you've found a solution for the issue, could you please fork this branch to update the code? Additionally, if you'd like to contribute by raising an MR, please feel free to do so. I'll review it and merge it later. Thank you!

finally I found the solution.

I comment this code

    @objc func setScreenCaptureProtection() {

the code below makes the main view become blank
//        if viewWithTag(Constants.secureTextFieldTag) is UITextField {
//            return
//        }
//
//        guard superview != nil else {
//            for subview in subviews {
//                subview.setScreenCaptureProtection()
//            }
//            return
//        }

       ...

the code below cause an error when implementing with window
//        secureTextField.topAnchor.constraint(equalTo: self.topAnchor, constant: 0).isActive = true
//        secureTextField.bottomAnchor.constraint(equalTo: self.bottomAnchor, constant: 0).isActive = true
//        secureTextField.leadingAnchor.constraint(equalTo: self.leadingAnchor, constant: 0).isActive = true
//        secureTextField.trailingAnchor.constraint(equalTo: self.trailingAnchor, constant: 0).isActive = true

    }

I call window ( [self.window setScreenCaptureProtection];) instead of using view. The view trigger SafeArea changed.


Documenting Pebble IFTTT integration

Pebble + IFTTT + OpenAPS == AWESOME!

Much cleaner than my original gist! Nice pictures. I suggest checking you have the recipe set up correctly. You can test on the Maker Channel by looking under How To Trigger Events. If correctly setup, you should see a new temp target event on your Nightscout site after IFTTT says it successfully triggered.
You can also add the DoButton app as a short cut. If you don’t have shortcuts already, press and hold either the up or down button and follow the prompts. If you have both shortcuts programmed and want to change one, go to menu > settings> quick launch and follow prompts.

@audiefile ThisButton not DoButton, right?  I didn't see an official pebble app.

I'll add this to my docs tomorrow night so @danamlewis / @scottleibrand if you want to wait until then, I will get it all added in...And will let you know when it it is good to go...

Correct @jasoncalabrese ThisButton not DoButton for the pebble app

Added @audiefile 's notes to the page as well here: https://github.com/openaps/docs/commit/ec9c3c4a4718e2995c76b2283c5172187992300d


gsi-ArrowOS-arrow-13.1-sounddrill

I don't know if it's going to work lol

Let it run now, it will work


Question: would it be possible to use extensions

Having annotation is quite small code change. But would it be possible to have extension which accepts an object and saves/load it from parcel.
At least current API could be improved with extension to avoid using util classes

What do you mean by extensions? The next feature I'm thinking of adding is a way for apps to customize how a type should be parceled. E.g. by default a date is added to a parcel via serialization, but a more efficient way would be to read/write a long value directly to the parcel. Would this cover what you are after?

I was thinking about better API. Instead of:
val example = Example(42)
val parcel = ExampleParcel.wrap(example)

// e.g. use in a bundle
someBundle.putParcelable("example", parcel)

something like:
val example = Example(42)
example.putToBundle(someBundle)

Oh extension methods. I'm not sure how you can do this since I'm generating java code. Do you know if it's possible?

I've posted a question on the Kotlin forums. https://discuss.kotlinlang.org/t/annotating-static-java-methods-so-kotlin-can-pick-them-up-as-extension-functions-of-a-type/1431

Unfortunately this is not supported by Kotlin yet (see linked thread)

Actually, I may have dismissed this too early. I'll investigate generating a kotlin class with the extension methods alongside the other generated classes. Not sure it's possible yet though.

Could also do this with a paperparcel-kotlin library that is just a thin shim on top of paperparcel that adds the extension methods.

That is a good idea. I wanted to try it again after this pull request is released and see if the problem is fixed first, because it sounds like it should fix what I was seeing.

:+1:

Closing due to new APIs replacing the need for extensions. The wrappers are more hidden to the library consumer now.


Fix reference to "main" branch into "master"

No idea why this guide is set to "main" as default branch, but changing it to master works :)
What
What is the reason for this change?
Why
Why is this change important?
How
How was this change accomplished?
Scope

[ ] significant change to core configuration
[ ] independent bonus guide
[ ] simple bug fix

Fixes # (link issue)
Test & maintenance
How can the changes be tested? Is there ongoing maintenance effort? If this is a bonus guide: are you willing to update it from time to time?
Animated GIF (optional)
Add some snazz if you feel like it :)

The new masters branch now are called "main" instead of "master" by default
With "main" the guide works good

well..... I don't know about you, but me, I couldn't make it work with main.
It errored out.
I changed to master, and lo and behold, it worked...

I do not invent anything, my machine 😘

means then that somebody gets master, someone else main, probably worth adding at least a note? I don't personally mind either way, I just know I spent some time on a not working script, until I bothered to search the error message and realized I had to use master 🤔

means then that somebody gets master, someone else main, probably worth adding at least a note? I don't personally mind either way, I just know I spent some time on a not working script, until I bothered to search the error message and realized I had to use master 🤔

means simply that MiniBolt instructions are correct and It works fine, you don't need to make modifications if you follow the guide step by step

eheh this is not even about fixing the guide anymore, it's like you're denying that I got a master branch on repository creation, which is the case in my situation.

here's what I see when I open my backup repo... am I imagining things, you say? Minibolt guide couldn't work in my case, that led to a small frustration followed by a small research and a small fix. Someone else in my same situation but less geeky would face a larger frustration and possibly utter failure in making this work, that is the point


Two NearMaps can write into the same storage independently

Example:
#[near_bindgen_macro]
#[derive(BorshDeserialize, BorshSerialize, Default)]
struct Blah {
}

#[near_bindgen_macro]
impl Blah {
fn test(&self)

{ let mut x: NearMap<String, String> = NearMap::new(b"x".to_vec()); let mut y: NearMap<String, String> = NearMap::new(b"x".to_vec()); x.insert(&"x".to_string(), &"1".to_string()); y.insert(&"x".to_string(), &"2".to_string()); // comment this line to get different error y.get(&"x".to_string()); }

}

#[test]
fn test() {
let mut context = test_utils::get_context(vec![]);
testing_env!(context);
let b = Blah {};
b.test();
}

Observe that code fails with `HostError(GuestPanic
{ panic_msg: "Index out of bounds" }
)`.
Also if you comment y.insert(&"x".to_string(), &"2".to_string()); observe a different error:
` HostError(GuestPanic
{ panic_msg: "The collection is an inconsistent state. Did previous smart contract execution terminate unexpectedly?" }
)`
These errors are unexpected for developer and don't provide clear guidance how to fix this.
Even though it's user error, this types of usage can be hidden very deeply in the code and hard to track.

We need to introduce an explicit boolean flag for the constructor argument, which specifies whether the user intends to alias an existing map. If they did not intend to alias the contract should panic.
Specifically, it will look like:
let a = NearMap::new("x", false);
// Lots of code.
let b = NearMap::new("x", true); <--- specifies the intention to alias and so it does not panic.

while
let a = NearMap::new("x", false);
// Lots of code.
let b = NearMap::new("x", false); <-- panics because the user did not intend to alias

This would require keeping track of all currently created collections in a static variable std::collections::Set. When collection is created its id is added to the set, when collection is dropped its id is removed.

@evgenykuzyakov WDYT?

@nearmax I think that complicates stuff for the user even further?
Is there no way to make the collections work in a way that aliased collections work?
In the most naive implementation (that doesn't store anything locally and always fetches data from the storage) it would most certainly work, so most likely the issues are due to caching some data in the persistent map?

Is there no way to make the collections work in a way that aliased collections work?

We can make aliased collections work. The issue comes from the fact that Vector stores len directly in the body of the collection rather than in a separate key-value: https://github.com/near/near-sdk-rs/blob/5d66300a8ec825c4b62901a7b426cf9508170d5e/near-sdk/src/collections/vector.rs#L17 Therefore two vectors that alias each other might start having inconsistent knowledge about their length if one of them is mutated.

@nearmax I think that complicates stuff for the user even further?

I don't think the proposed solution is good either, it is just first that came to mind.
Overall, I think we should revisit this interface from the DevX perspective. Should we hide it from the users that these collections alias the kvdatabase or should we make it very explicit? https://github.com/near/near-sdk-rs/issues/183 I am leaning towards making it very explicit, since we cannot fully reproduce interface fo std::collections::* anyway (because of the API that relies heavily on the references).

I'm for storage*. Even in Solidity (which is DSL smart contracts) there is a strict separations between storage and memory.
https://medium.com/cryptologic/memory-and-storage-in-solidity-4052c788ca86

I'd vote for performance. This is super rare when you need to have 2 persistent collections in memory at the same time, so making it explicit through a different constructor is fine. E.g.
let b = NearMap::reuse("x");

Indeed we need some kind of a storage which supports references.

@nearmax @evgenykuzyakov how does "reuse" would work if len is stored locally in the data struct?
You would need to store len in the independent storage to make "reuse" work, wouldn't you?
If that's true, then it will automatically reuse on subsequent instantiations and it's more about communicating to the user that it's the same "table".

@nearmax @evgenykuzyakov how does "reuse" would work if len is stored locally in the data struct?
You would need to store len in the independent storage to make "reuse" work, wouldn't you?
If that's true, then it will automatically reuse on subsequent instantiations and it's more about communicating to the user that it's the same "table".

Yeah, I am not sure if we need to support aliasing at all in the library. If the user wants aliasble thing, they can wrap it in Rc<RefCell> themselves.

Closing this, the base patterns to avoid are documented in https://docs.near.org/sdk/rust/contract-structure/collections#error-prone-patterns and there isn't anything here actionable as the tradeoffs to writing the length back to storage after each operation and encouraging this pattern isn't feasible


Request For Comment - Recommended Testing Pipeline

Putting this under feature request as it isn't exactly a bug or security issue.
Question:
Is there a recommended testing process for upgrading Dispatch? For example is it designed around an assumption of a specific upgrade or deployment process? Is there a particular configuration or process you've had luck with, and if so could you share some of the top level details of it?
Context
I have experienced some difficulties in finding the best way to provide rapid upgrades and maintenance with Dispatch because of how it's integrated into GSuite and Slack. I'm not in a situation where I can afford to have a duplicate GSuite environment for A/B upgrade testing, and similarly for Slack. This has made it a challenge to test that plugins are functioning properly in a non-prod setup. (for example the way it creates google groups/slack channels/etc)
Relatedly there have been regular db schema changes and/or changes in how Dispatch was configured that it would break without adjusting configs when upgraded, which put more pressure on having a dev/prod split.
My current approach has been to dedicate time to take down prod and test manually with creation of categorized test incidents, but this process is so overhead heavy that I've been getting pressure to look at alternatives to Dispatch.

Hi @AlexaKelley, I'm sorry to hear that the upgrade/testing process isn't as smooth as it could be. In general, I think we can always be better about describing breaking changes for folks. That said, there will probably always have to be some integration testing before rolling out an update internally; so I can try to give you some insight on what works for us.
You mentioned you aren't in a position to have a completely separate dev/test environment with regards to slack/google workspace et al. Internally, we are able to have such an environment and use it heavily to do development, but I think it's probably overkill for someone such as yourself that merely wants to do some light integration testing before pushing an update to production.
Even with a completely separate environment, some things we do that give us additional confidence are:

Create an organization/project/incident type within your Prod environment specifically for testing your deployment.

At what level you wish to do this is up to you. For us, we have a special incident type "Simulation" that is ignored by metrics and does not add anyone other than the reporter to the incident. This gives us confidence core pieces are working but will potentially pollute your external namespaces (e.g. create google groups, jira, etc.,).

Pull snapshots of production data and run the new release against that snapshot.

Database migrations can be tricky, often we might do a dry run on production data snapshot before modifying actual data. Depending on what your setup is like this could also be an opportunity to slightly modify some plugin configuration (e.g. a different Jira project or other naming conventions) if polluting your production namespaces is an issue.
Hope this helps, let us know if anything is unclear.

Thank you for the thorough response, and this information is helpful.
I think in my case I may need to find a different way to do testing, but it is very helpful to have clarity on the testing paradigm that the platform was developed against.


Preparing the project for TypeScript

swc is used for transpilation, as it is faster than tsc
were created temporary entry points for types, to take types from types definitions and sources
one file from helpers and one file from the core were refactored as examples of transition
types tests were fixed to test new entry points

@kurkle @LeeLenaleee @etimberg @benmccann Hi guys. Would you please do a review?

I tried to convince people to switch to TypeScript back when we started on Chart.js 3 and I remember there being some issue around class members. Could you switch one class that sets fields in the constructor so we can make sure there won't be problems?

@benmccann I will make it on Monday 👌

@benmccann @etimberg @kurkle review re-request is buggy 🤷♂ Review pls 🙏

I compared the output of core.element before and after and it's about the same, so my concern about that is addressed.
The only thing I'd want to make sure everyone is aware of is that we're now forcing a bundle step to develop Chart.js, which we wouldn't need otherwise. I do like TypeScript more than JSDocs though. I'm happy with the tradeoff either way whatever the team decides

Thanks for checking the output @benmccann
I am ok with the bundle step. I am, personally, a big fan of TS these days and I think it can make our code a lot better


Get the Id of the cell Selected?

Thanks for the great library.
How to get the id of the selected cell in formsheet?
The dataSource is a dictionary of key, value pairs. On cell selection how to capture the Id ?
Any help?
Thanks.

You'll get selected items in setSelectedItems handler or onDismiss handler.
You'll get the array of dictionaries since you've passed an array of dictionaries as DataSource.
If there is a single selection - you'll get one selected item in handler.
Hope this helps !!

Thanks for the help.
The dataSource Actually is not a dictionary of key value pairs, It is an array of values.
How to pass dictionary of key value pairs as dataSource?
Thanks.

You need to pass an array as datasource to the menu.
From Dictionary only, menu can not be shown as it should have number of options to select.

If I pass array then how to get the Id of the selected element.
I want to display a name in the table view cell and get its id on selected.
How could I do that?
Thanks for the help.

Ok.Thanks.
But is it possible to do the way I am looking for using this library?


hitting enter to confirm renaming an Audio Bus will pretty reliably crash godot

Godot version
4.0 release
System information
nixos-unstable
Issue description
I've tried renaming audio busses, and it most of the time seems to crash godot. I've gotten lucky once renaming it to "test", so I thought it was just 3 letter names, but apparently renaming it without crashing was a fluke.
Steps to reproduce

open a blank Project
go to Audio, add A bus
rename it "sfx"
hit enter to confirm

Minimal reproduction project
N/A

Yep. Indeed.
Stacktrace :
ERROR: Index p_which = 0 is out of bounds (popup->get_item_count() = 0).
   at: _select (scene/gui/option_button.cpp:411)

================================================================
handle_crash: Program crashed with signal 11
Engine version: Godot Engine v4.1.dev.custom_build (14141e1ed0c06b43ab2e6de113a47365982779bf)
Dumping the backtrace. Please include this when reporting the bug to the project developer.

-- END OF BACKTRACE --
================================================================
Aborted (core dumped)

It works for me on Binbows.

It works for me on Binbows.

Can you try what happens when you hit enter when you hit enter after having typed your name?

@betalars Yep, just tried again. I tried typing long names, hitting enter and clicking out with a mouse, renaming multiple times, deleting buses and adding new ones, and renaming again. And then I deleted everything extra I created and continued working on my project ;)

@dame-ng  Great, then we narrowed it down to being caused by hitting enter and we know it's a platform-agnostic bug.

@betalars But it doesn't crash for me?

@dame-ng yes, "platform-agnostic" means it only happens on specific platforms.
Me giving it another go after you said it works for you made me realise its not the renaming, but the hitting enter, that is causing the crash.

@betalars I'm not a native English speaker, but I always thought it means the opposite.
From Wikipedia: "In computing, cross-platform software (also called multi-platform software, platform-agnostic software, or platform-independent software)".

@dame-ng sorry, I mixed that up, deleted my comments. not a native speaker as well.
What I meant to say is: so we've learned this bug is NOT platform agnostic and we narrowed it down to being caused by the enter key.

CC @bruvzg @Sauermann

Happens to me with or without the use of the enter key, clicking outside the name input is enough to crash the editor with the same error as @hakro
I'm on linux, Ubuntu 22.04
ERROR: Index p_which = 0 is out of bounds (popup->get_item_count() = 0).
   at: _select (scene/gui/option_button.cpp:411)

I can repro a crash on Windows, so it is platform agnostic. Though there can be multiple bugs too, of course.

Thanks! There is no need to confirm this issue anymore, it has been identified and addressed with a PR.

Noted. If someone's looking for this issue they'll see that they can edit the name manually from the source until they get the fix ;)


Replace Zend_Db_Table_Rowset docblocks with generics to allow better type hinting

This is a PoC, that's still somewhat limited due to https://github.com/phpstan/phpstan/issues/5817 but I got the rest working in https://github.com/tomasfejfar/phpstan-zf1/pull/2.
Do you like the way this is heading? I wonder if this is the right way and wanted to get some feedback early.

@tomasfejfar we actually don't use the Zend_Db component in our apps, so I don't think I'm the best person to get feedback from on this :)
I'm open to merging changes once you're happy with it though.


Update back to 1.17.6

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

https://github.com/conda-forge/coin-or-clp-feedstock/pull/6 needs to get merged first.
Build number comes from https://github.com/conda-forge/coin-or-clp-feedstock/commit/c8485e4706d9ade5fa8ff04553c37dd6b73f5859

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Routing Improved?

I've heard great things, and after looking it seems kinda cool.  Even if it has the word flux in the name :)
https://github.com/aksonov/react-native-router-flux
If we want to swap to this it wouldn't be hard, but it would change our generator process.
opinions plz @skellock @kevinvangelder

We switched to this last week in our current project.  I highly recommend it.

O wow.  k

We have really strange navigation requirements (non standard) and this lib is holding up great so far. I'll give you the tour tomorrow.

Unfortunately we have to put this task on hold for now because RNRF has decided to skip RN 0.27. https://github.com/aksonov/react-native-router-flux/issues/786

@kevinvangelder I've removed dependency from RN0.26.

released in 1.3.1!


[1.10.2] Missing language localization

Please use the search functionality before reporting an issue. Also take a look at the closed issues!
Issue description:
A item has no lang localization

Version (make sure you are on the latest version before reporting):
Forge: Latest
Mekanism: Latest
If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)
Seems to be due to a spelling mistake
https://github.com/aidancbrady/Mekanism/blob/1.10/src/main/resources/assets/mekanism/lang/en_US.lang#L1114

Please be specific with versions.. Something like "latest" isn't always the latest :)

Yeah i get you, i always make sure im using latest but 1.10.2-9.2.2-final-fix.jar

Thanks for fixing this @thiakil btw there is double entry's for these items https://github.com/aidancbrady/Mekanism/blob/7efff059bb2bf8d03a7a0d32329e4365002f1553/src/main/resources/assets/mekanism/lang/en_US.lang#L1106 is the ones that need to be removed

Well that would mean the change I made doesn't fix it.

No i mean there is two sets of localization in each lang file for the lapis lazuli tools and armour

Meaning the key that your screenshot is showing was already present

No it had a typo in as it was lazli not lazuli see https://github.com/aidancbrady/Mekanism/blob/1.10/src/main/resources/assets/mekanism/lang/en_US.lang#L1114

And the the double entrys look at lines 1046 and 1106

I believe this is fixed though


qscintilla: 2.9 -> 2.9.4 and support for qt5

Motivation for this change
Regular minor upgrade + add support for qt5.
The qt5 version is for tora (separate PR).
I have not run nox-review yet as I need to do that when I'm on a faster machine. nox-review is happy.
Things done

[X] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] Linux

[X] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[X] Fits CONTRIBUTING.md.

nox-review works, although on master it fails with octave, but that is due to a separate octave issue. Compilation fails on master for octave 4.0.3 but 4.0.1 is fine.
If I test against the previous version of octave, everything compiles.

is the qt4 version of qscintilla still required?

I did upgrade octave to 4.2.0. Now it compiles fine.


Add SeedData

Fixes https://github.com/aspnet/EntityFrameworkCore/issues/629
Further improvements will be done in separate PRs

Rebase needed.

I'll rebase when the PR is approved. Incremental rebases are time-consuming as I cannot rebase the original commit.

I've added a todo list to https://github.com/aspnet/EntityFrameworkCore/issues/629 to track the outsanding issues roughly in decreasing priority order. Let me know if I missed anything.


What is the purpose of this provider?

Hello :)
I discovered this provider today and I was wondering why it was created.
Since Digital Ocean is AWS S3 compatible, the official provider @strapi/provider-upload-aws-s3 can be used to connect to DO see: https://github.com/strapi/strapi/tree/main/packages/providers/upload-aws-s3#configuration-for-s3-compatible-services.
I was wondering if the official provider was enough or if it was missing something this provider is providing?

Some answers from https://github.com/strapi/strapi/issues/15154#issuecomment-1357772744:

The built in support for "directories" (a filename prefix) and DigitalOceans CDN (a modification of the url stored on the file object.

@petersg83  Do you think the mentioned functionality could make it into @strapi/provider-upload-aws-s3 ? I guess the filename prefix could be added in a general fashion since it is useful in many scenarios. But I am unsure about the url modification.

I agree, this codebase should be maintained by Strapi.
When I have the time, ill see if I can make a PR on the strapi repo to migrate this code to @strapi/provider-upload-do. It's been a long time I haven't worked with a Strapi project so it would be better for the maintenance of this package.


[WIP] Add breadcrumb

What is this PR for?
Add breadcrumb list.
Need to merge after https://github.com/rekcurd/dashboard/pull/94
This PR includes

Add breadcrumb list

What type of PR is it?
Feature
What is the issue?
https://github.com/rekcurd/dashboard/issues/99
How should this be tested?
N/A

Codecov Report

Merging #100 into master will increase coverage by 0.66%.
The diff coverage is 94.83%.

@@            Coverage Diff             @@
##           master     #100      +/-   ##
==========================================
+ Coverage   83.69%   84.36%   +0.66%
==========================================
  Files          42       43       +1
  Lines        2098     2232     +134
==========================================
+ Hits         1756     1883     +127
- Misses        342      349       +7

Impacted Files
Coverage Δ

rekcurd_dashboard/models/application.py
93.75% <ø> (ø)
:arrow_up:

rekcurd_dashboard/apis/api_project.py
98.66% <100%> (ø)
:arrow_up:

rekcurd_dashboard/apis/api_kubernetes.py
88.7% <100%> (ø)
:arrow_up:

rekcurd_dashboard/apis/api_application.py
100% <100%> (ø)
:arrow_up:

rekcurd_dashboard/apis/__init__.py
91.93% <100%> (+5.26%)
:arrow_up:

rekcurd_dashboard/apis/common.py
100% <100%> (ø)
:arrow_up:

rekcurd_dashboard/apis/api_service.py
96.25% <100%> (-2.49%)
:arrow_down:

rekcurd_dashboard/apis/kubernetes_handler.py
84.09% <89.55%> (+1.14%)
:arrow_up:

rekcurd_dashboard/apis/api_kubernetes_secret.py
98.24% <98.24%> (ø)

... and 1 more

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 aa4f7e5...7d7ca3a. Read the comment docs.


Replaced the variable with the getter method.

Q
A

Is bugfix?
✔

New feature?
❌

Breaks BC?
❌

Tests pass?
✔

Merged. Thank you!


Add guidance section

Trello: https://trello.com/c/OCUUmYSC
What's changed
Display the top 5 most popular guidance for a taxon based Version 1 of the new designs: https://trello.com/c/I0msexm2
Examples
###Taxon pages
Child taxons only: https://govuk-collections-pr-545.herokuapp.com/education
Guidance content and child taxons: https://govuk-collections-pr-545.herokuapp.com/education/funding-and-finance-for-students
Guidance content only: https://govuk-collections-pr-545.herokuapp.com/education/education-of-disadvantaged-children
###Other pages
These should remain unchanged
World: https://govuk-collections-pr-545.herokuapp.com/world/afghanistan
Step by step: https://govuk-collections-pr-545.herokuapp.com/learn-to-drive-a-car
Note for Reviewer
The old grid, accordion and leaf templates and logic will be removed in a later PR.

@leenagupte We need to decide if we want description text for the section and, if so, what that will be.

@vanitabarrett I will remove the description and update the title.


✨ Add CI runs for Windows

What's the problem this feature will solve?
Currently, tests are only run under MacOs and Linux. We also want to support Windows users.
Describe the solution you'd like
Fix automated download and installation of Gurobi under Windows.

This might help, trying to first reproduce on my local machine though: https://support.gurobi.com/hc/en-us/articles/360060996432


External provider page fixes

:x: Build TheIdServer 1.0.0 -user-ole0003 failed (commit https://github.com/Aguafrommars/TheIdServer/commit/41b20e34e1 by @aguacongas)

:x: Build TheIdServer 1.0.0 -user-ole0004 failed (commit https://github.com/Aguafrommars/TheIdServer/commit/630542bfdc by @aguacongas)

:x: Build TheIdServer 1.0.0 -user-ole0005 failed (commit https://github.com/Aguafrommars/TheIdServer/commit/a6c2cdee6c by @aguacongas)

:white_check_mark: Build TheIdServer 1.0.0 -user-ole0006 completed (commit https://github.com/Aguafrommars/TheIdServer/commit/a6dbf31493 by @aguacongas)

:white_check_mark: Build TheIdServer 1.0.0 -user-ole0007 completed (commit https://github.com/Aguafrommars/TheIdServer/commit/11281b6ab0 by @aguacongas)


Migration tool should handle function types in downcasts

As of 1c7fe7196dd7a542f7f91cd6ea2ac81e1a13146c, the null safety migration tool has been removed from active development and retired. No further work on the tool is planned.
If you still need help, or you believe this issue has been closed in error, please feel free to reopen.


Buffer() is deprecated

extensionHostProcess.js host prints:
(node:1324887) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use `node.patched --trace-deprecation ...` to show where the warning was created)

CI fails: https://github.com/cytechmobile/radicle-vscode-extension/actions/runs/8893165652/job/24418860284?pr=128#step:7:23
I did not (knowingly) introduce/use Buffer(), and I get the error message on main (a669d86f39e65748b5d6f2fce67c5840f3532f2e) too.
I don't know how I can add the argument --trace-deprecation to invocation of node in order to debug this.

OK, tracing works with:
diff --git a/.vscode/launch.json b/.vscode/launch.json
index 1b1adf8155..37a716a3da 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -13,6 +13,9 @@
       "outFiles": ["${workspaceFolder}/dist/**/*.js"],
       "preLaunchTask": "npm: dev",
       "postDebugTask": "Terminate All Tasks",
+      "env": {
+        "NODE_OPTIONS": "--trace-deprecation"
+      }
     },
   ]
 }

With --trace-deprecation I was able to trace the warning down to https://github.com/microsoft/live-share/issues/5024. After disabling the extension ms-vsliveshare.vsliveshare the warning is gone. But this also means that I cannot reproduce the CI failure locally anymore. Still investigating...

I have understood that the failures are not related apart from both referring to Buffer. It seems I just have to get import { Buffer } from 'node:buffer' to work.

Typing support for 'node:buffer' was added rather recently: https://github.com/DefinitelyTyped/DefinitelyTyped/pull/68470
Solution:
$ pnpm update '@types/node'
 WARN  Ignoring broken lockfile at [...]/node_modules/.pnpm: Lockfile [...]/node_modules/.pnpm/lock.yaml not compatible with current pnpm
 WARN  1 deprecated subdependencies found<EMAIL_ADDRESS>Packages: +466
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Progress: resolved 489, reused 436, downloaded 30, added 37, done
<EMAIL_ADDRESS>Running postinstall script, done in 43ms
node_modules/.pnpm/vue-demi<EMAIL_ADDRESS>Running postinstall script, done in 82ms
<EMAIL_ADDRESS>Running postinstall script, done in 43ms

dependencies:
+ pinia 2.1.7

devDependencies:
+ @types/node 20.12.7
+ eslint-plugin-tailwindcss 3.14.3

Done in 3.1s

Leaving this open for now, so that maintainers can check out https://github.com/cytechmobile/radicle-vscode-extension/issues/130#issuecomment-2084965415 and maybe include pull that change. Please close otherwise!

Results:
🏡 Chores

dev: configure "Develop Extension" launch configuration to show the stack trace in case of nodejs deprecation warning, helping pinpoint the root cause