Installing JSS CLI over existing React Project

I took a look at your basic example package.json, and it looks like you have prettier and eslint pre-configured, which might conflict with the rules we've already set up.
I figure I could do it manually by hand picking the packages and files needed to run React + JSS, but I'm not entirely sure the bare minimum that I should import.
What is the simplest and opinionated set up that you can get going with jss-cli? Do you support adding to an existing project, or would we have to generate a new project via the CLI tool and port our code over?
Thanks for your help!

Hello, thanks for reporting this. Good point, I agree we should provide more guidance if you don't want to start with either of the samples. Added a doc request for that.
Since there are hundreds of ways to configure your JS project, our initial thinking was to show how you can configure it and leave it to the front-end dev to re-configure as they see fit.
I think the choice would depend on this factor.
Are you planning on having alternative build tool chain setup to what is provided in basic-sample-react?
If what basic-sample-react provides in terms of the project setup matches your expectation, then adding your react components into that sample is the easiest way to get started.

The use case I was thinking of here was that I'm maintaining my own fork of create-react-app with the various lints and plugins that our team was going to use across all our projects - including non-sitecore ones. We wanted to use this approach to standardize all of our projects so that we could avoid having developers eject and manually updating things as we roll out version bumps or standard changes.
So essentially, my ideal situation would be creating a CRA app through that command line tool first, then adding JSS on top. I figure it could be something like adding a package or running the jss-cli to add an even more stripped down template that only provides the build and deploy logic, none of extra lint rules or other opinionated items that might be in the basic template.
A more manual approach would be identifying what scripts and packages I would be able to add to my existing project. For example, you could say I need to add the following the my package json:
    "@sitecore-jss/sitecore-jss-cli": "^7.0.2",
    "@sitecore-jss/sitecore-jss-dev-tools": "^7.0.0",
    "@sitecore-jss/sitecore-jss-manifest": "^7.0.0",

as well as the so and so files and folders from the sample project.
Please let me know what you think.  Thanks again for your help - we're in the early planning phases of adopting JSS in our workflow and we're really excited about your work.

The scenario you want is not currently supported as CRA doesn't ship with some of the core needs of JSS (specifically SSR, without which no experience editor). We're investigating options to make JSS more friendly towards CRA in the future.

What if you started a project out of CRA and ejected - what would you have to add to the project to get it connected to JSS?

The short version is "a lot, enough that I wouldn't recommend starting with a CRA app."
The core reason why is that CRA's build process is designed around a client-rendered app. JSS requires server-side rendering support. While that is possible you'd have to restructure the app and maintain a parallel Babel build process to build a server bundle (so half ejected already). JSS SSR also relies on a structure where an exported function is invoked, as opposed to most SSR examples where they start an Express server to perform the SSR.
Then the JSS disconnected infrastructure depends on adding middlewares to webpack-dev-server (/build/start.js) to make disconnected services work. CRA can handle proxying - and we may consider using this in the future - but that also means standing up a separate express instance on a second port for WDS to proxy to, and more build infrastructure to support that.
The final aspect to work through is the need to inject configuration. JSS is using DefinePlugin to inject global JS variables (/build/webpack/webpack.shared.js::getGlobalVariables()). To support CRA, either a pre-build task would need to generate a .js file to import (JSS angular does this), or something like rewire would need to be used.
It would be nice to support CRA or other custom apps as a starting point, but especially short term your best bet is going to be to merge webpack configurations and use the JSS build infrastructure.

For what it's worth, we will have a story using create-react-app, but it will be a sample boilerplate as opposed to being designed to bolt-on to any CRA implementation. With some automation, it could probably be turned into a bolt-on, but we are not planning to ship that.


Makeup Assignments

APIs and Database Intro:
I was assigned to a new group at that time so I didn't do the video
Database Video
Performance Task 3

Live Algorithm 3:
I didn't submit my review ticket.
3.12 3.13 hack
3.12 3.13 blog
3.14 3.14 hack
3.14 3.15 blog
3.16 hack
3.16 blog

Live Algorithm 2 Blog:
3.5-3.7 blog
3.8-3.10 blog
3.9-3.11 blog

Full Stack and Big Idea 5:
5.3 5.4 blog
5.5 5.6 blog
Table for create and read and POST and GET used


[Bug] Deploy program file parse bug

🐛 Bug Report

when i test program deploy,i found a issue. when i use "BHP256::hash(info.title)",then deploy my program.will get error:" Failed to parse string. Remaining invalid string is: "hash.bhp256 r0.title into r1;    cast self.caller r1 r0 into r2 as Proposal.record;
output r2 as Proposal.record;"
Steps to Reproduce
this is the main.leo
// The program scope defines the data types, functions, and state associated with the vote program.
program vote.aleo {
// 提案
struct ProposalInfo {
title: field,
content:field,
proposer:address,
}
// 提案record
record Proposal {
owner: address,
id:field,
info:ProposalInfo
}
record Ticket{
owner: address,
proposal_id: field,
}
mapping proposals: field => ProposalInfo;
mapping tickets:field => u64;
mapping agree_tickets:field =>u64;
mapping disagree_tickets:field => u64;
// 发起提案
transition create_proposal (info: ProposalInfo) ->  Proposal{
// 判断程序调用者跟发起人是否同一个
assert_eq(self.caller, info.proposer);
// 保存提案信息
// 根据title生成唯一id
let id:field = BHP256::hash(info.title);
return Proposal{
    owner: self.caller,
    id,
    info
} then finalize(id);

}
finalize create_proposal (id:field) {
Mapping::set(tickets,id,0u64);
}
}
deploy command:

./snarkos developer deploy vote.aleo --private-key APrivateKey1zkp8CZNn3yeCseEtxuxxxxxxxxxxxxxxxPWH --query "http://localhost:3030" --path "vote/build/" --broadcast "http://localhost:3030/testnet3/transaction/broadcast" --fee<PHONE_NUMBER>000 --record  "{  owner: aleo1rhgduxxxxxxxxxxxxxxx.private,  microcredits:<PHONE_NUMBER>0000u64.private,  _nonce:<PHONE_NUMBER>804783317330395146930760519734799446305091160163494666308250813255group.public}"
Expected Behavior
can deploy program success

Your Environment

snarkos 2.1.1

rust 1.70.0

macos 12.4

after my replace "BHP256::hash(info.title)" to "1field",the deploy is success, It looks like there is a problem when parsing "::"

The syntax has recently changed as per https://github.com/AleoHQ/snarkVM/pull/1647.
The Leo team (cc: @collinc97 @d0cd ) will be releasing an updated version of Leo in the next 1-2 weeks with the updated syntax.


[dev] WebSocket disconnects prematurely

@EverlastingBugstopper,
I have an issue with wrangler dev ... When referencing the node 'crypto' package in a code module  - I get a 'panic'. If I comment out the 'require' and stub out the function - then all is well again.
If I publish my worker - then it performs as expected.
The odd thing is that the panic is raised without any of my code being execute. If I execute 'wrangler dev' - I get the usual messages - then after a few seconds, the panic is raised. At this point, I've not interacted with the worker.
Sometimes - if I mange to POST a message to the dev worker - then it does seem to work - and continues for a short while before randomly panic-ing.
thread 'tokio-runtime-worker' panicked at 'called `Result::unwrap()` on an `Err` value: Protocol("Connection reset without closing handshake")', src/commands/dev/socket.rs:46:27
stack backtrace:
   0:        0x106f2c00f - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hdfed66b3e2e8ce60
   1:        0x106f533ee - core::fmt::write::h9de7b13cfaa80b03
   2:        0x106f22c97 - std::io::Write::write_fmt::h9197012b9d65a9a3
   3:        0x106f2e6da - std::panicking::default_hook::{{closure}}::h7b209cdc44c5777f
   4:        0x106f2e41c - std::panicking::default_hook::hf135bc502e6f77db
   5:        0x106f2ed48 - std::panicking::rust_panic_with_hook::h7967810bc33e523b
   6:        0x106f2e912 - rust_begin_unwind
   7:        0x106f72e3f - core::panicking::panic_fmt::h9eea9e4965bd189c
   8:        0x106f72d45 - core::option::expect_none_failed::ha68a01397bf24c9a
   9:        0x106831ed5 - <futures_util::stream::stream::for_each::ForEach<St,Fut,F> as core::future::future::Future>::poll::h80131d0f478b34b7
  10:        0x106930deb - <tokio::future::poll_fn::PollFn<F> as core::future::future::Future>::poll::hd70c8e3ef01a63e5
  11:        0x106867cf4 - <std::future::GenFuture<T> as core::future::future::Future>::poll::h6eebd6b4cfa53e9e
  12:        0x106942148 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h58d2bab017523f82
  13:        0x106893a0c - std::panicking::try::do_call::ha7942900b635f57b
  14:        0x106f3822b - __rust_maybe_catch_panic
  15:        0x106abec8d - tokio::runtime::task::harness::Harness<T,S>::poll::hdcda00bdd8bbf175
  16:        0x106ef960e - tokio::runtime::thread_pool::worker::Context::run_task::{{closure}}::h314e68c2e244a164
  17:        0x106ef736e - std::thread::local::LocalKey<T>::with::h7fa5fdc8d103e6a4
  18:        0x106ef4cc4 - tokio::runtime::thread_pool::worker::Context::run_task::hd7662f38dfae470d
  19:        0x106ef4027 - tokio::runtime::thread_pool::worker::Context::run::h10d867d30c86b9ab
  20:        0x106f00c33 - tokio::macros::scoped_tls::ScopedKey<T>::set::hdac3c1ee6c79e370
  21:        0x106ef3e74 - tokio::runtime::thread_pool::worker::run::he028a4b011ba4e68
  22:        0x106efcb2d - tokio::loom::std::unsafe_cell::UnsafeCell<T>::with_mut::h0c298aee5190f512
  23:        0x106eed987 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hffadae7c67091bee
  24:        0x106ef23dc - std::panicking::try::do_call::h8c5d837d4f5baed6
  25:        0x106f3822b - __rust_maybe_catch_panic
  26:        0x106f04ed9 - tokio::runtime::task::harness::Harness<T,S>::poll::h1df49121de9e2268
  27:        0x106ee5066 - tokio::runtime::blocking::pool::Inner::run::h3414a9d5eb878407
  28:        0x106eeba62 - tokio::runtime::context::enter::h9144231ba50a7d70
  29:        0x106f01f9e - std::sys_common::backtrace::__rust_begin_short_backtrace::h3f0beb9c7f759ec9
  30:        0x106ef2330 - std::panicking::try::do_call::h49cfda0bcbc48286
  31:        0x106f3822b - __rust_maybe_catch_panic
  32:        0x106ee14f7 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6d1f958516cfee5e
  33:        0x106f1923e - <alloc::boxed::Box<F> as core::ops::function::FnOnce<A>>::call_once::h9a0848a2221632a4
  34:        0x106f377db - std::sys::unix::thread::Thread::new::thread_start::h9f834bdc6e39a9b2
  35:     0x7fff6f25b109 - _pthread_start
Error: panic
   0: backtrace::backtrace::trace
   1: backtrace::capture::Backtrace::new_unresolved
   2: failure::backtrace::internal::InternalBacktrace::new
   3: failure::backtrace::Backtrace::new
   4: <tokio::future::maybe_done::MaybeDone<Fut> as core::future::future::Future>::poll
   5: <tokio::future::poll_fn::PollFn<F> as core::future::future::Future>::poll
   6: <std::future::GenFuture<T> as core::future::future::Future>::poll
   7: std::thread::local::LocalKey<T>::with
   8: tokio::runtime::enter::Enter::block_on
   9: tokio::runtime::context::enter
  10: wrangler::commands::dev::gcs::dev
  11: wrangler::commands::dev::dev
  12: wrangler::run
  13: std::rt::lang_start::{{closure}}
  14: std::panicking::try::do_call
  15: __rust_maybe_catch_panic
  16: std::rt::lang_start_internal
  17: main

For reference this is the module that triggers the issue ...
const crypto = require('crypto')
const _sign = (input, key) => crypto.createSign('RSA-SHA256').update(input).sign(key, 'base64')
const _escape = (str) => str.replace(/\+/g, '-').replace(/\//g, '_').replace(/=/g, '')
const _base64 = (obj) => _escape(Buffer.from(obj).toString('base64'))

const header = _base64(JSON.stringify({alg: 'RS256'}))

module.exports = {
  sign(payload, key) {
    const input = header + '.' + _base64(JSON.stringify(payload))
    return input + '.' + _escape(_sign(input, key))
  }
}

I've been struggling to narrow down the issue, and have tried a few different versions of nodejs but to no avail. I'm hoping that you'll look at the panic backtrace, and spot the issue.
Any thoughts or insight ?
Originally posted by @peracto in https://github.com/cloudflare/wrangler/issues/1047#issuecomment-636494048

@peracto By any chance, are you using Windows?


[FEATURE] Grid Search for Hyperparameters

This PR adds a new major feature for tuning: Hyperparameter Grid Search
When enabled on the top of a "Create experiment" screen, it enables to select a grid of settings that are all added to the experiment queue with a single click. The "Run experiment" button now shows the number of experiments that will be started with the grid search feature.
closes #251
Minor additional changes

fix #738
Adds parent_id as default
Upgrade dependencies, (eps was removed from log_loss in sklearn 1.5.0)
return val_metric from run() to prepare for optimization

Awesome to see this, can't wait to try it out!

Due to a potential bug in wave (https://github.com/h2oai/wave/issues/2342), I changed the display for the number of experiments to a dialog. This also reduces the number of required trigger reloads, which is especially helpful in remote use of H2O LLM Studio.

@pascal-pfeiffer
Is there any "easy" way to consider the changed values when switching back and forth between grid search / non grid search?
So for example, I change max_length and then decide to switch to grid search, all settings are reset. Same thing the other way around.
Or maybe even have separate buttons for that instead of the toggle?

Somehow it says "Starting 12 experiments" although it starts only 9 (which is correct).

But I just selected a grid of 9 experiments, so not sure how it comes up with 12, maybe some hidden value somewhere.


Trouble CSS with Unix path on Windows script

I use karma-coverage for start Istanbul with src path like this :
'src/main/test/**/*.js'
All HTML files generated have wrong CSS path. They try to load parent CSS with '../'. But only root folder has CSS file ...
I read the code, I think I found something wrong:
For set URL CSS dependencies in HTML, /lib/report/html.js use path module :
    path = require('path'),
    SEP = path.sep || '/',

So, if you start istanbul with Unix path on Windows, all CSS are broken. Script split on bad SEP.
for (i = 0; i < num; i += 1) {
                    separated = node.relativeName.split(SEP);
                    levels = separated.length - 1;
                    for (j = 0; j < levels; j += 1) {
                        href += '../';
                    }
                    node = node.parent;
 }

To fix quickly, I rewrite sep before starting istanbul:
 require('path').sep = '/';

:+1:  This is a problem for me too.

So what do you want istanbul to do? You want an option to force Unix style paths irrespective of target environment?

I think, an option to choose path style is good solution.

I agree.  Much like the grunt-sftp package has a serverSep option to define what style of separators you want.  You could add a similar option.

Problem for us too. Only started happening recently though, after the last npm update. Worked on 0.3.5, started failing on 0.3.6. Any chance of just reverting to the old behavior?

+1


Job Scaling - Implement a thread limit for concurrent job-scaling actions

Description
Job scaling can be particularly heavy on the cluster network due to the information required from Nomad to calculate scaling thresholds and figures. It would therefore be advisable to introduce a thread/worker limit queue for scaling runs. This would allow us to keep a sensible limit when running on large clusters.

or submit a PR for nomad to expose it in client stats - the data is there already :)

@jippi that would definitely help reduce the number of API calls required and I've actually been looking at adding what we need for evaluation stats back into the Nomad API. However, reducing the API calls simply pushes the scaling issue out - there would still be some number of jobs/job groups/worker pools that would be able to overwhelm the Nomad API.

if replicator uses allowStale and point to localhost client, shouldn't that help with scaling out?

By default, we already point to the localhost client @jippi, allowing stale for the API calls is a good idea and should be raised as a separate issue.

Design Proposal
To address these concerns, we'll implement an upper-bound on concurrent scaling operations:

The asynchronous job scaling method will implement a worker channel where scalable resources will be passed to a worker method to implement the scaling. We will implement a configurable limit to the number of simultaneous scaling operations permitted.

The asynchronous job scaling method will implement a wait group to ensure all scalable resources are processed before returning to the runner and waiting for the next tick. This will ensure we respect the configured scaling interval and do not end up in a constant loop if the scaling actions take longer than the configured scaling interval.

The asynchronous worker pool scaling method will be updated to implement point 1 to ensure consistency in behavior.

Closed with #232


素材管理可否分为临时素材和永久素材

例如在upload_media 和 download_media 方法新增一个参数，以判断是临时素材还是永久素材，并根据此参数决定所请求的url

将会在近几日更新 :)

any update on this one?
also:
https://github.com/doraemonext/wechat-python-sdk/blob/develop/wechat_sdk/basic.py#L391
you check the extension by lower them, however at the end you call the ext dictionary without the action, this will cause KeyError
to be consistent, might move ext up and check by ' not in ext.keys()'


Crash with unmarshallable json...

First off, thanks for the pkg. I was originally using hal, but have moved over to using your api and a tiny custom framework, and it's a real pleasure so far.
My bot is periodically dying, I suspect possibly due to something int he latency response code, I'll take a look soon, but thought I'd report it here just incase:
json: cannot unmarshal number into Go value of type slack.JSONTimeString
I've not got a definitive way of triggering the problem yet. Will send a PR if I work it out.

Thank you for the report @tcolgate . SetDebug(true) might help. This will print out all events being received. The api is a bit inconsistent and sometimes slack returns a unix timestamp, other times it returns a string so I may have missed one of those cases.


Refresh students states (+ style)

fixes #552
A little styling (made table wider + adaptive)
Renamed State history to States since this page only shows the current states and not the history of all states
Renamed Set state of selected students button to Add new state to selected students since a new state is added instead of a replacement

Note: The base of this PR is #571 because that PR changes some files of this PR

Codecov Report

Merging #572 (7aace66) into studentstatestable_styling (f3225f7) will not change coverage.
The diff coverage is n/a.

@@                      Coverage Diff                       @@
##           studentstatestable_styling        #572   +/-   ##
==============================================================
  Coverage                    97.03292%   97.03292%
==============================================================
  Files                              86          86
  Lines                            2157        2157
==============================================================
  Hits                             2093        2093
  Misses                             64          64


Anchors in menu of readme file doesn't work

Clicking on Task doesn't scroll to task subsection.

This is an issue with pub.dev. The anchors work on the Github page.
The anchor id on pub.dev is different: https://pub.dev/packages/fpdart#taskpackagesfpdartlibsrctaskdart
It contains #taskpackagesfpdartlibsrctaskdart instead of simply #task. Opened an issue to solve this on dart's sdk.

Closed since this is not related to fpdart. Waiting for a fix on dart pub.


add a location input for apointments

location feat
add location input for the provider
two possible inputs

address API to coordinates
map pin drop to coordinates

https://nominatim.org/release-docs/develop/api/Search/
for address searching


Code changes for removing unsupported parameters from code

SizeRangeSupported and sizeIOPSRange were removed from SC as per  this PR.
We have to handle the same from code.
Removed parameters from SC as per #61 : sizeIOPSRange and sizeRange from Custom SC and  sizeRange from all other SCs

Coverage decreased (-0.06%) to 85.785% when pulling b11a659a090dd5cb1deb74aabf316579409530c9 on ambiknai:parameters into 2725b143324ca16c8acf28ba8d2ea1f9393583e2 on kubernetes-sigs:master.

Please make sure IPI build should have updated storage classes

@ambiknai Please make sure IPI build should have updated storage classes

https://github.com/openshift/ibm-vpc-block-csi-driver-operator/tree/master/assets/storageclass

This is a breaking change. If I had a cluster with a StorageClass with SizeRangeSupported and I update the driver, then I can't provision with that StorageClass, hence my cluster is broken.
StorageClass parameters are part of the driver API  (actually, it's the only API it has) and you need to keep it stable. You can deprecate a parameter and only after a generous time you can remove it. I haven't noticed a deprecation note in a previous release (and there is no CHANGELOG.md).
I am wondering if the Kubernetes deprecation policy applies here (this is a Kubernetes project, after all).

This is a breaking change. If I had a cluster with a StorageClass with SizeRangeSupported and I update the driver, then I can't provision with that StorageClass, hence my cluster is broken.
StorageClass parameters are part of the driver API (actually, it's the only API it has) and you need to keep it stable. You can deprecate a parameter and only after a generous time you can remove it. I haven't noticed a deprecation note in a previous release (and there is no CHANGELOG.md).
I am wondering if the Kubernetes deprecation policy applies here (this is a Kubernetes project, after all).

we discussed on this following would be the action for us
1- we will maintain  CHANGELOG.md file
2- Will follow k8s deprecation policy going forward https://kubernetes.io/docs/reference/using-api/deprecation-policy/


Update README.md

I ran VISION-KAN on CIFAR-100 HDIM 192, and will continue running more experiments.

Thanks for the experiment and it would be good to provide a BASELINE result.


LazyCachedSupplier -> Lazy

[ ] net.minecraft.util.LazyCachedSupplier -> net.minecraft.util.Lazy

Example declaration:
private final Lazy<String> foo = new Lazy<>(this::formatName);

Cleaner declaration/reference syntax
More readable type (e.g Lazy String)

If there were to be any concerns on the semantics of the class, it could be documented (once Yarn supports JavaDocs that is).

Yes. This Lazy sounds exactly like Optional, and its usage is so similar to it (an object wrapper)


DocsArchive-<IP_ADDRESS>Auto archive content

Auto archive content from https://github.com/OPS-E2E-PPE/docs-archive-test-source

Docs Build status updates of commit c856a6c:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error]

Cannot sync git repo to specified commit because branch Archive_master_2019-10-22-03-27-02 has been deleted or has been force pushed: fatal: Couldn't find remote ref Archive_master_2019-10-22-03-27-02

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Service becomes unreliable when operating inside a VM that has been paused

I am developing in a virtual machine (VMWare Workstation Player 14) running Ubuntu 18.04.
It seems that Services become unstable and/or reliable when the virtual machine has been previously paused and resumed. Sometimes single requests will go through just fine; other times they do not go through at all. This problem is always fixed by restarting the virtual machine.
It is unclear whether it is an issue with Redis or BusMQ. I am still digging to try and figure out what is causing it. If there are any helpful debugging suggestions, I am more than willing to look into those. I am unfamiliar with the lower-level workings BusMQ.
Notes:

The service host and client are running in separate NodeJS processes. I have ensured that the host is properly created and has started serving before the requests start coming.
Often, using the same client, the first request will successfully go through, but subsequent requests will not. Other times, no requests will go through.
My Redis server is configured to not save any snapshots.
Restarting the Redis server has no effect on the error
Redis server log reports no errors
Rebooting the virtual machine fixes the problem
Running VMWare Workstation Player 14.1.3-9474260
The issue is not consistently reproducible. It seems to happen at random

Closing this for now, as I found a bug in my code where child processes wouldn't exit properly and haven't been able to reproduce the aforementioned bug. Will re-open if there are any developments


Better Value and Gradient boundary condition implementation

Idea:

continue to use calculate_boundary_source_terms to add fluxes specified via Flux boundary conditions (and also via potential new future boundary condition types), but
use halo filling + interior source term calculation, rather than calculate_boundary_source_terms, to enforce Value and Gradient boundary conditions

Advantages:

this change eliminates the need for diffusivities to be known by calculate_boundary_source_terms --- diffusivities are only needed if enforcing Flux boundary conditions via halos, or to enforce Value/Gradient boundary conditions via calculate_boundary_source_terms; both of these situations are avoided with this change;
nonlinear diffusivities that depend on gradients at the boundary can be calculated correctly for Value and Gradient boundary conditions
gradient information is now included in output for Value and Gradient boundary conditions and can be used in post-processing
the calculate_boundary_source_terms function remains a part of the algorithm for Flux boundary conditions, or more complicated boundary conditions (like those associated with irregular bathymetry).

Previously, we were operating under the assumption that we should either fill halos for all inhomogeneous boundary condition types, or use calculate_boundary_source_terms. For some reason, we did not consider that our method of enforcing inhomogeneous boundary conditions could (and perhaps should) depend on the type of the boundary condition.
Thoughts?

I am in favor of this change but I think Jeanmichel might not be. J-M?
On Tue, Aug 27, 2019, 8:27 PM Gregory L. Wagner<EMAIL_ADDRESS>wrote:

Idea:

continue to use calculate_boundary_source_terms to add fluxes
specified via Flux boundary conditions (and also via potential new
future boundary condition types), but
use halo filling + interior source term calculation, rather than
calculate_boundary_source_terms, to enforce Value and Gradient
boundary conditions

Advantages:

this change eliminates the need for diffusivities to be known by
calculate_boundary_source_terms --- diffusivities are only needed if
enforcing Flux boundary conditions via halos, or to enforce Value/
Gradient boundary conditions via calculate_boundary_source_terms; both
of these situations are avoided with this change;
nonlinear diffusivities that depend on gradients at the boundary can
be calculated correctly for Value and Gradient boundary conditions
gradient information is now included in output for Value and Gradient
boundary conditions and can be used in post-processing
the calculate_boundary_source_terms function remains a part of the
algorithm for Flux boundary conditions, or more complicated boundary
conditions (like those associated with irregular bathymetry).

Previously, we were operating under the assumption that we should either
fill halos for all inhomogeneous boundary condition types, or use
calculate_boundary_source_terms. For some reason, we did not consider
that our method of enforcing inhomogeneous boundary conditions could (and
perhaps should) depend on the type of the boundary condition.
Thoughts?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/climate-machine/Oceananigans.jl/issues/371?email_source=notifications&email_token=AKXUEQQKF52Q6OSJGERBYOLQGXA6XA5CNFSM4IQTDLRKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HHZJBGA,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AKXUEQVH4CCJNLTZKN24KZLQGXA6XANCNFSM4IQTDLRA
.

@glwagner and @ali-ramadhan I took a quick look.
I think you should go ahead and merge, but quick comments for future reference -

there are a bunch of changes unrelated to the PR in the PR. They are probably there by accident, but the Git gods really don't like that. When done well a PR can be a very helpful record for show what needs to be changed to achieve "X". When the PR is polluted with random other stuff that valuable use is lost. Most git projects more diligent about avoiding polluted PRs, which can be useful.

I think ultimately we want halos to just be a thing that does a slightly more general form of what is in ::PBC mode. Everything else is not in halo rules. This is where we ended up in MITgcm and is similar to what is in MPIStateArray in the DG work (I am fairly sure!). A distinction to maybe think about is a set of halo() functions that just do the stuff that does not appear in any of the equations. Anything in equations turns out to be stuff that people may want to tinker with in surprisingly interesting ways. For example someone ultimately might want to do a numerical experiment that has flux BC on some set of the one bit of a boundary, something else on another bit etc.... (people do do things like this). For better or worse having bc's better separated from halos may ultimately prove the right thing. For now I wouldn't worry about it though!

Related to 2. I suspect that trying to express complicated things like hybrid bc's will eventually break  reducing bc to a type. Types are good for simple things, but Type::ItsComplicated is often also needed eventually.

@glwagner is this resolved now that PR #389 has been merged?

Quite so.


Fix typo in #gasExec for SSTORE

Unless it is intentional.

Good catch. I guess since most of our proofs are done over ISTANBUL this wasn't caught before.


firefox: fix gnome printing dialog crash

Motivation for this change
wrapGappsHook was insufficient to fix a firefox (and firefox-bin) crash
when opening a print dialog without passing gsettings_desktop_schemas
See #24880 for more discussion.
Things done

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

[ ] NixOS
[ ] macOS
[ ] Linux

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

hmmm i guess a file got moved in master since I branched off from unstable, one sec

ok I need to wait for the hydra to catch up because I don't want to recompile gcc and everything, but I'll keep an eye out when most of the upstream binaries are compiled

It's not good I didn't catch this (we have some sort of nondeterminism, maybe I have desktop schemas installed to environment by something -- I'll investigate later). Can you show the error visible when Firefox crashes? Also, what desktop environment do you use?

GLib-GIO-ERROR **: Settings schema 'org.gnome.system.proxy' is not installed and I'm running i3 from lightdm.  It does look like (in nixpkgs) gnome/kde/xfce login sets all sorts of variables that seem like they may cause the nondeterminism.
I just tried nix-shell -p firefox --run "firefox" --pure which actually didn't crash when I tried to print, but it was missing all sorts of icons and stuff:
(firefox:1265): Gtk-WARNING **: Could not find the icon 'folder'. The 'hicolor' theme
was not found either, perhaps you need to install it.
You can get a copy from:
        http://icon-theme.freedesktop.org/releases

(firefox:1265): Gtk-WARNING **: Error loading theme icon 'folder' for stock: Icon 'folder' not present in theme Adwaita

(firefox:1265): Gtk-WARNING **: Error loading theme icon 'dialog-warning' for stock: Icon 'dialog-warning' not present in theme Adwaita

(firefox:1265): Gtk-WARNING **: Error loading theme icon 'dialog-question' for stock: Icon 'dialog-question' not present in theme Adwaita

I wonder if firefox is detecting some gnome3 stuff and so it's trying to use gnome3 everything, but with --pure there's not enough for it to even try?
Anyhow, my guess is if everything works with --pure it should work generally, no?  If that's the goal I can play around with it a bit and see if I can get it working.
fwiw chrome[ium] still crashes for me on the native print dialog without the wrapper.  I haven't tried --pure yet.

Unsetting XDG_DATA_DIRS should be enough to test this, I think.  Some DEs put lots of stuff on that path.
It's really strange that wrapGapps didn't prevent #25505 on master; I'm sorry to have meddled with this at the layer of the wrapper – I didn't notice these are attempted on the unwrapped firefox already.

@vcunat yeah I actually don't know if my change is necessary on master because I was building off of the most recent nixpkgs unstable that passed in hydra, since I didn't want to rebuild everything locally.  We can definitely hold off on this PR until your changes are live and I can test it in various ways.

Is this still a problem? nix-shell -p firefox-bin --pure --run 'firefox' works for me with a recent master.

This also works for me (just printed this page)

yeah this works for me too... for some reason under kde i still get a crash, but with --pure I don't, but that might just be my fault somehow.


Far edge scrolling

What's the Problem?
Windows Explorer has a level of tolerance where the user does not have to necessarily click the scrollbar in the middle. Simply dragging the scrollbar up and down at its edges works equally well.
In Files, the user has to make sure not to move the mouse too far, or else they would not be able to scroll.
This issue isn't necessarily exclusive to Files. The new Microsoft Store for Windows 10 suffers from the same problem: a very thin scrollbar that disallows scrolling at the edges.
https://user-images.githubusercontent.com/52135169/158481956-dbef3835-275f-4306-8b26-9243242212df.mp4
Solution/Idea
Make it possible to scroll whenever the mouse is dragging the scrollbar—whether in the middle or at the edges.
Alternatives
It's not really a deal-breaker, Files has plenty to be thankful for. But it does make it more effortful to explore my files.
Priorities

Capability
Priority

This proposal will allow developers to scroll wherever on the scrollbar
Must

Files Version
Version: <IP_ADDRESS>
Windows Version
10.0.19043.1586
Comments
Appreciate y'all!

@Mennaruuk you should still be able to hold down with the mouse to grab the scroll bar. We encourage opening an issue on the WinUI repository to share your feedback about the scrollbar as it applies to all apps using WinUI.


feat: add file picker component

Issue
N.A.
Description
Add file input component
Additional context
Code was originally created by @ThibaudAV here. But as this component is also needed in Cockpit, we move it here in the common lib to be able to use in all products.

📚  View the storybook of this branch here

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

Gravitee.io Automatic Deployment
A prerelease version of this package has been published! 🚀
To use it in your project run the following lines:
npm install<EMAIL_ADDRESS># or
yarn add<EMAIL_ADDRESS>

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

npm package (@latest dist-tag)
npm package (@latest dist-tag)
npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Implement NUMBER data type, replacing INT and FLOAT

Although included in the original design, the FLOAT data type can introduce difficult to diagnose determinism bugs into your Transaction Processor, and it is considered best practice not to actually use it. Indeed, no Supply Chain implementation has, opting to instead use INTs with a hard-coded conversion rate (for example, millionths).
This PR formalizes that practice by removing FLOATs entirely, and giving INTs a new piece of metadata: "exponent". This refers to the exponent used in scientific notation. So for example an integer with an exponent of -6 would be millionths of a whole unit (i.e. 10 ^ -6). Note that this does not actually affect any of the math done by the Transaction Processor, but will allow clients to properly interpret these numbers without relying on hard coded logic.
Finally, INT has been renamed NUMBER, in order to better reflect its role in storing both whole and fractional values.

Should FLOAT be removed, or deprecated? How does this affect backward compatibility with Sawtooth 1.0?

got it - didn't realize this was supply chain and not sawtooth-core.

As this and previous PR's have changed what enum values actually mean (as opposed to purely additive changes), there probably should be a PR to bump the family_version for this handler.

I agree, bumping up family_version is a good idea.

I have updated the FAMILY_VERSION to 1.1.


[fix][txn]: fix some exception handle in transaction buffer

Motivation
fix some exception return in transaction buffer
Modifications
use exception.getCause();
Verifying this change
add test for it
Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes

Dependencies (does it add or upgrade a dependency): (no)
The public API: (no)
The schema: (no)
The default values of configurations: (no)
The wire protocol: (no)
The rest endpoints: (no)
The admin cli options: (no)
Anything that affects deployment: (no)

Documentation

Does this pull request introduce a new feature? (yes)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)
If a feature is not applicable for documentation, explain why?
If a feature is not documented yet in this PR, please create a followup issue for adding the documentation

/pulsarbot run-failure-checks


mask_loss is missing on softmax.json config

Hi, @selimsef
I want to replicate your training for classification. From what I understood, x_softmax.json files are used to run train.py. However, train.py is expecting mask_loss configuration to run but it is missing in all softmax config files. Am I missing something here?

Hi, you are right. This was totally a wrong training script from first experiments where I used binary masks for each class. Fixed in master


Example issue with Go 1.5

Thank you for this amazing work!
I'm trying to compile the examples, but only "minimal" and "version" seem to work with Go 1.5 and Qt 5.5.1 on Linux (jessie). I've got the following error while trying to run:
symbol lookup error: ./libqtdrv.ui.so.1: undefined symbol: _ZNK11QMetaObject10Connection18isConnected_helperEv

After further investigations, it seems that is issue is generated by the OnClicked function on a PushButton. Thanks!


[DO NOT MERGE] Remove inspector port for release builds and fix tests

[DO NOT MERGE] this PR hasn't been tested on the device yet
Resolve #173

Codecov Report

Merging #184 into master will not change coverage.
The diff coverage is 100.00%.

@@            Coverage Diff            @@
##            master      #184   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           10        10
  Lines          726       726
  Branches       135       136    +1
=========================================
  Hits           726       726

Impacted Files
Coverage Δ

commands/run.js
100.00% <100.00%> (ø)

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 b258dda...bbb0450. Read the comment docs.


Fix haskell-src-meta patch URI

Motivation for this change
The current URI is not available anymore, this commit just points to the correct file.
Things done

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

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[ ] Fits CONTRIBUTING.md.

Notify maintainers
cc @

@GrahamcOfBorg haskell.packages.ghc881.haskell-src-meta

@dfordivam The reason these patches are using /master/ instead of an actual commit to the patch file is so that we can easily(?) figure out when the patch is no longer needed.
When an updated version of the upstream package is released to Hackage, then the patch gets deleted from head.hackage.
This is a sign for us to drop the patch.

In this case, it appears that a new release of haskell-src-meta has been made that supports ghc-8.8.1, so we no longer need this patch.
Can you update this PR to just drop the patch?

Fixed in https://github.com/NixOS/nixpkgs/commit/30c033cc1a0411d51c1bf111885ef869f32cafa3.


Remove print statements

Please remove/disable any print statements that you've used for debugging before checking in the code. They are visible to the sysadmin and depending on the config, may even be permanently logged.

I tried to find all the print statements and deleted them for the current push!!!

fixed.


Stop blocks from ticking randomly

📝 Description
Adds setTickRandomly(false); in BlockBase.
🎯 Goals
Improve performance when MWC ores are ticked, or more like not ticked
❌ Non Goals
Smeagle the mod
🚦 Testing
Soon™
⏮ Backwards Compatibility
1.12.2
📚 Related Issues & Documents
https://nekoyue.github.io/ForgeJavaDocs-NG/javadoc/1.12.2/
🖼 Screenshots/Recordings
N/A
📖 Added to documentation?

[ ] 📜 README.md
[ ] 📑 Documentation
[ ] 📓 Javadoc
[ ] 🍕 Comments
[x] 🙅 No documentation needed

Random tick is false by default no?

Random tick is false by default no?

No idea

No idea

You didn't check before?

It is default false lmao

No idea

You didn't check before?

nope lmao


ISPN-14198 Make the accuracy of the query count more expressive

https://issues.redhat.com/browse/ISPN-14198
Based on #11005 that should be merged first.  => done!
Based on #11088 that should be merged first => done!
Based on #11109 that should be merged first => done!

Rebased

Thanks @fax4ever

Thank you @ryanemerson for merging it


Update manage-hyperscale-database.md

Fixed an error Service tier name from  to

@srinia : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Rename BOOLEAN to LITERAL

Additional to #123
Renaming BOOLEAN token into LITERAL to represent a wider range of fixed values like (true, false, null, yes, no, undefined etc.)

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

8 of 9 (88.89%)  changed or added relevant lines in 5 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 95.326%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/Languages/Python/Patterns/PyLogicalValuePattern.php
0
1
0.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1550

Relevant Lines:
1626

💛  - Coveralls

Tagged: https://github.com/tempestphp/highlight/releases/tag/2.7.0


chore: bump safe-deployments

What it solves
Bump safe deployments to the latest version

Pull Request Test Coverage Report for Build<PHONE_NUMBER>4
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 76.251%

Totals

Change from base Build<PHONE_NUMBER>2:
0.0%

Covered Lines:
784

Relevant Lines:
961

💛  - Coveralls


Support Netlify "get Started" via signup as well as login

RedwoodJS release v18 will add signup support.
Change nav and perhaps add a landing page to "Get Started" to use signup() and use login() as well in side navigation bar.

Fixed in https://github.com/dthyresson/redwoodblog-rbac/pull/2.


feat: Use any Widget as a slide

Status
IN DEVELOPMENT
Description
This POC explores the possibility of using any widget as a flutter_deck slide without necessarily subclassing the FlutterDeckSlideWidget.
The main idea behind subclassing in flutter_deck was to ensure that each slide had a defined configuration. Now, the user can still use subclassing to create slides, but if a custom widget is defined as a slide, it is wrapped by default configuration that does not break the presentation flow.
Also, added a new extension on the Widget class called withSlideConfiguration(). It's a convenient method to be used with custom widgets where you still want to apply slide configuration options:
FlutterDeckApp(
  slides: [
    // <...>
    Text('Custom text slide').withSlideConfiguration(
      const FlutterDeckSlideConfiguration(route: '/custom', hidden: true),
    )
  ],
);

Type of Change

[x] ✨ New feature (non-breaking change which adds functionality)
[ ] 🛠 Bug fix (non-breaking change which fixes an issue)
[ ] ❌ Breaking change (fix or feature that would cause existing functionality to change)
[ ] 🧹 Code refactor
[ ] ✅ Build configuration change
[ ] 📝 Documentation
[ ] 🗑 Chore

@matthew-carroll I think I am happy with the initial version of this approach. Please, play around with the presentation you created already - looking forward to feedback.

@mkobuolys I finally got a chance to rework my presentation with this change.
My original list of slides took 331 lines.
After switching to this PR and removing all extraneous details that were no longer required in the slide widgets, my updated slide list now takes 145 lines.
That's a code savings of over 50% on the slide list configuration.
I imagine that there are still plenty of ergonomic and compositional improvements, but this seems like a good step in the right direction.
Updated (concise) slides
Details

List<Widget> createMoreConciseSlides(BuildContext context) {
  return [
    FlutterDeckSlide.title(
      title: 'Stop Centralizing',
      subtitle: 'A humble approach to Flutter app architecture',
      theme: FlutterDeckThemeData.fromTheme(Theme.of(context)).copyWith(
        titleSlideTheme: const FlutterDeckTitleSlideThemeData(
          titleTextStyle: TextStyle(
            color: Colors.white,
            fontSize: 72,
          ),
          subtitleTextStyle: TextStyle(
            color: Colors.grey,
            fontSize: 48,
          ),
        ),
      ),
    ),

    // ------ What is Centralization? -----
    const HeaderQuestionSlide('What is Centralization?'),
    const HeaderAnswerSlide('Centralization is when multiple developers share something.'),

    // ------ Why is it unavoidable? -----
    const HeaderQuestionSlide('Why Centralization is Unavoidable'),
    const HeaderAnswerSlide('Central App Distribution'),
    const HeaderAnswerSlide('Central Set of Dependencies'),
    const HeaderAnswerSlide('Central Set of Translations (Localization)'),
    const HeaderAnswerSlide('Central Set of Assets (Images, Fonts)'),
    const HeaderAnswerSlide('Central In-App Payment Context'),
    const HeaderAnswerSlide('Central Widget Tree'),
    // ------ When is Centralization Good? -----
    const HeaderQuestionSlide('When is Centralization Good?'),
    const TitleWithBulletsSlide(
      title: 'Central Network Client',
      bullets: [
        'Consistent protocol configuration',
        'De-duplicated (de)serialization',
        'Consistent error handling/reporting',
        'Performance optimizations (shared connection)',
      ],
    ),
    const TitleWithBulletsSlide(
      title: 'Central Error Handler',
      bullets: [
        'Failsafe to avoid crashes',
        'Failsafe to report errors and analytics',
        'No repeated intervention needed',
      ],
    ),
    const TitleWithBulletsSlide(
      title: 'Central Styles',
      bullets: [
        'Consistent UI/UX',
        'Can have expert style developers',
      ],
    ),

    // ------ Most pain is caused by centralization -----
    const HeaderQuestionSlide('Most of Your Pain is Caused by Centralization'),
    const TitleWithBulletsSlide(
      title: 'Centralized Code',
      bullets: [
        'Merge conflicts',
        'Hard to read - Conflicting styles, patterns, packaging',
        'Contentious code reviews',
      ],
    ),
    const TitleWithBulletsSlide(
      title: 'Centralized Dataflow',
      bullets: [
        'Simple things are excessively tedious + verbose',
        'Complicated things are restricted + hampered',
      ],
    ),
    const TitleWithBulletsSlide(
      title: 'Centralized Navigation',
      bullets: [
        'Exponentially complicated route graph',
        'Visual transition limitations',
        'Can\'t hide screens',
      ],
    ),

    //------ Nothing more peaceful than isolation -----
    const HeaderQuestionSlide('There\'s Nothing More Peaceful Than Isolation'),
    const HeaderQuestionSlide('Example: A User Journey (Navigation)'),
    const HeaderQuestionSlide('Navigation isn\'t just one problem'),
    const HeaderAnswerSlide('Deep link reception and parsing'),
    const HeaderAnswerSlide('Deep link history construction'),
    const HeaderAnswerSlide('(Browser) Route naming and parsing'),
    const HeaderAnswerSlide('Responsiveness\n(Phone vs Tablet)'),
    const HeaderAnswerSlide('Transition animations'),
    const HeaderAnswerSlide('Back behavior'),
    const HeaderAnswerSlide('Standard modals vs overlay modals'),

    // ----------------------------
    const HeaderQuestionSlide('A Humble Navigation Example'),
    const NavExampleOverviewSlide(),
    const HeaderQuestionSlide('Flow Pattern'),
    const HeaderAnswerSlide('Phase 1: Define steps'),
    const FlowStepsSlide(),
    const HeaderAnswerSlide('Phase 2: Build pages'),
    const FlowWidgetSlide(),
    const HeaderAnswerSlide('Phase 3: Move forward through the flow'),
    const FlowForwardSlide(),
    const FlowForwardDemoSlide(),

    const HeaderAnswerSlide('Phase 4: Add Back and Cancel to the flow'),
    const BackAndCancelSlide(),
    const CancelDialogSlide(),
    const FlowBackAndCancelDemoSlide(),

    const HeaderAnswerSlide('Phase 5: Add transition animations to the flow'),
    const FlowWidgetSlide(),
    const FlowStepBuilderSlide(),
    const FlowWithTransitionsDemoSlide(),

    // ------ RECAP ------
    const HeaderQuestionSlide('RECAP'),
    FlutterDeckSlide.title(
      title: 'Centralization is where multiple developers share something',
    ),
    FlutterDeckSlide.title(
      title: 'Centralization is sometimes unavoidable...',
    ),
    FlutterDeckSlide.title(
      title: '...but centralization is also the primary source of your pain',
    ),
    FlutterDeckSlide.title(
      title: 'Use humble decentralization strategies to minimize your pain',
    ),

    // ------ PLUGS -------
    FlutterDeckSlide.bigFact(
      title: 'THANKS!',
    ),
    FlutterDeckSlide.bigFact(
      title: 'Flutter Spaces',
      subtitle:
          'Live Flutter conversations every Wednesday at 12PM Pacific. Follow @SuprDeclarative on X/Twitter. Check out flutterspaces.com.',
    ),
    FlutterDeckSlide.bigFact(
      title: 'superdeclarative.com',
      subtitle: 'Flutter consulting and contract development',
    ),
  ];
}

Original slides configuration
Details

List<FlutterDeckSlideWidget> createOriginalSlides(BuildContext context) {
  return [
    Slide(
      const FlutterDeckSlideConfiguration(route: '/title'),
      (_) => FlutterDeckSlide.title(
        title: 'Stop Centralizing',
        subtitle: 'A humble approach to Flutter app architecture',
        theme: FlutterDeckThemeData.fromTheme(Theme.of(context)).copyWith(
          titleSlideTheme: const FlutterDeckTitleSlideThemeData(
            titleTextStyle: TextStyle(
              color: Colors.white,
              fontSize: 72,
            ),
            subtitleTextStyle: TextStyle(
              color: Colors.grey,
              fontSize: 48,
            ),
          ),
        ),
      ),
    ),
    // ------ What is Centralization? -----
    headerQuestionSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/what-is-centralization'),
      'What is Centralization?',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/what-is-centralization/definition'),
      'Centralization is when multiple developers share something.',
    ),

    // ------ Why is it unavoidable? -----
    headerQuestionSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/unavoidable'),
      'Why Centralization is Unavoidable',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/app-distribution'),
      'Central App Distribution',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/dependencies'),
      'Central Set of Dependencies',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/translations'),
      'Central Set of Translations (Localization)',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/assets'),
      'Central Set of Assets (Images, Fonts)',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/payments'),
      'Central In-App Payment Context',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/widget-tree'),
      'Central Widget Tree',
    ),
    // ------ When is Centralization Good? -----
    headerQuestionSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/when-is-it-good'),
      'When is Centralization Good?',
    ),
    const TitleWithBulletsSlide(
      configuration: FlutterDeckSlideConfiguration(route: '/centralization/when-is-it-good/network-client'),
      title: 'Central Network Client',
      bullets: [
        'Consistent protocol configuration',
        'De-duplicated (de)serialization',
        'Consistent error handling/reporting',
        'Performance optimizations (shared connection)',
      ],
    ),
    const TitleWithBulletsSlide(
      configuration: FlutterDeckSlideConfiguration(route: '/centralization/when-is-it-good/error-handler'),
      title: 'Central Error Handler',
      bullets: [
        'Failsafe to avoid crashes',
        'Failsafe to report errors and analytics',
        'No repeated intervention needed',
      ],
    ),
    const TitleWithBulletsSlide(
      configuration: FlutterDeckSlideConfiguration(route: '/centralization/when-is-it-good/styles'),
      title: 'Central Styles',
      bullets: [
        'Consistent UI/UX',
        'Can have expert style developers',
      ],
    ),

    // ------ Most pain is caused by centralization -----
    headerQuestionSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/most-pain'),
      'Most of Your Pain is Caused by Centralization',
    ),
    const TitleWithBulletsSlide(
      configuration: FlutterDeckSlideConfiguration(route: '/centralization/most-pain/centralized-code'),
      title: 'Centralized Code',
      bullets: [
        'Merge conflicts',
        'Hard to read - Conflicting styles, patterns, packaging',
        'Contentious code reviews',
      ],
    ),
    const TitleWithBulletsSlide(
      configuration: FlutterDeckSlideConfiguration(route: '/centralization/most-pain/code'),
      title: 'Centralized Dataflow',
      bullets: [
        'Simple things are excessively tedious + verbose',
        'Complicated things are restricted + hampered',
      ],
    ),
    const TitleWithBulletsSlide(
      configuration: FlutterDeckSlideConfiguration(route: '/centralization/most-pain/navigation'),
      title: 'Centralized Navigation',
      bullets: [
        'Exponentially complicated route graph',
        'Visual transition limitations',
        'Can\'t hide screens',
      ],
    ),

    //------ Nothing more peaceful than isolation -----
    headerQuestionSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation'),
      'There\'s Nothing More Peaceful Than Isolation',
    ),
    headerQuestionSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation'),
      'Example: A User Journey (Navigation)',
    ),
    headerQuestionSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/many-problems'),
      'Navigation isn\'t just one problem',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(
          route: '/centralization/isolation/navigation/many-problems/deep-link-reception'),
      'Deep link reception and parsing',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(
          route: '/centralization/isolation/navigation/many-problems/deep-link-history'),
      'Deep link history construction',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/many-problems/route-naming'),
      '(Browser) Route naming and parsing',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/many-problems/responsiveness'),
      'Responsiveness\n(Phone vs Tablet)',
    ),
    // headerAnswerSlide(
    //   context,
    //   const FlutterDeckSlideConfiguration(
    //       route: '/centralization/isolation/navigation/many-problems/user-journeys'),
    //   'User journeys',
    // ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/many-problems/transitions'),
      'Transition animations',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/many-problems/back-behavior'),
      'Back behavior',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/many-problems/overlay-modals'),
      'Standard modals vs overlay modals',
    ),

    // ----------------------------
    headerQuestionSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example'),
      'A Humble Navigation Example',
    ),
    NavExampleOverviewSlide(
      configuration:
          const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/overview'),
    ),
    headerQuestionSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/flow'),
      'Flow Pattern',
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/flow/define-steps'),
      'Phase 1: Define steps',
    ),
    const FlowStepsSlide(
      configuration:
          FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/flow/define-steps/code'),
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/flow/build-pages'),
      'Phase 2: Build pages',
    ),
    const FlowWidgetSlide(
      configuration:
          FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/flow/build-pages/code'),
    ),
    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/flow/move-forward'),
      'Phase 3: Move forward through the flow',
    ),
    const FlowForwardSlide(
      configuration: FlutterDeckSlideConfiguration(
          route: '/centralization/isolation/navigation/example/flow/build-pages/move-forward/code'),
    ),
    const FlowForwardDemoSlide(
      configuration: FlutterDeckSlideConfiguration(
          route: '/centralization/isolation/navigation/example/flow/build-pages/move-forward/demo'),
    ),

    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/flow/back-and-cancel'),
      'Phase 4: Add Back and Cancel to the flow',
    ),
    const BackAndCancelSlide(
      configuration: FlutterDeckSlideConfiguration(
          route: '/centralization/isolation/navigation/example/flow/back-and-cancel/code'),
    ),
    const CancelDialogSlide(
      configuration:
          FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/flow/cancel-dialog/code'),
    ),
    const FlowBackAndCancelDemoSlide(
      configuration: FlutterDeckSlideConfiguration(
          route: '/centralization/isolation/navigation/example/flow/back-and-cancel/demo'),
    ),

    headerAnswerSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/flow/transitions'),
      'Phase 5: Add transition animations to the flow',
    ),
    const FlowWidgetSlide(
      configuration: FlutterDeckSlideConfiguration(
          route: '/centralization/isolation/navigation/example/flow/transitions/build-steps'),
    ),
    const FlowStepBuilderSlide(
      configuration: FlutterDeckSlideConfiguration(
          route: '/centralization/isolation/navigation/example/flow/transitions/step-builder'),
    ),
    const FlowWithTransitionsDemoSlide(
      configuration:
          FlutterDeckSlideConfiguration(route: '/centralization/isolation/navigation/example/flow/transitions/demo'),
    ),

    // ------ RECAP ------
    headerQuestionSlide(
      context,
      const FlutterDeckSlideConfiguration(route: '/centralization/recap'),
      'RECAP',
    ),
    Slide(
      const FlutterDeckSlideConfiguration(route: '/centralization/recap/what-is-centralization'),
      (_) => FlutterDeckSlide.title(
        title: 'Centralization is where multiple developers share something',
      ),
    ),
    Slide(
      const FlutterDeckSlideConfiguration(route: '/centralization/recap/unavoidable'),
      (_) => FlutterDeckSlide.title(
        title: 'Centralization is sometimes unavoidable...',
      ),
    ),
    Slide(
      const FlutterDeckSlideConfiguration(route: '/centralization/recap/pain'),
      (_) => FlutterDeckSlide.title(
        title: '...but centralization is also the primary source of your pain',
      ),
    ),
    Slide(
      const FlutterDeckSlideConfiguration(route: '/centralization/recap/humble'),
      (_) => FlutterDeckSlide.title(
        title: 'Use humble decentralization strategies to minimize your pain',
      ),
    ),

    // ------ PLUGS -------
    Slide(
      const FlutterDeckSlideConfiguration(route: '/plugs/thanks'),
      (_) => FlutterDeckSlide.bigFact(
        title: 'THANKS!',
      ),
    ),
    Slide(
      const FlutterDeckSlideConfiguration(route: '/plugs/flutter-spaces'),
      (_) => FlutterDeckSlide.bigFact(
        title: 'Flutter Spaces',
        subtitle:
            'Live Flutter conversations every Wednesday at 12PM Pacific. Follow @SuprDeclarative on X/Twitter. Check out flutterspaces.com.',
      ),
    ),
    Slide(
      const FlutterDeckSlideConfiguration(route: '/plugs/hire-me'),
      (_) => FlutterDeckSlide.bigFact(
        title: 'superdeclarative.com',
        subtitle: 'Flutter consulting and contract development',
      ),
    ),
  ];
}


Update API documentation URL in README

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (d64580b) 94.19% compared to head (c5ee565) 94.19%.
Report is 1 commits behind head on main.

:exclamation: Current head c5ee565 differs from pull request most recent head 8a8fe38. Consider uploading reports for the commit 8a8fe38 to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #296   +/-   ##
=======================================
  Coverage   94.19%   94.19%
=======================================
  Files           5        5
  Lines         293      293
  Branches       32       32
=======================================
  Hits          276      276
  Misses         11       11
  Partials        6        6

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


fix: remove SPM, update actions for cocoapods

Issues Addressed
relates to #273
Additional Information
Sets up actions to test the pod and deploy the pod

merging with the tests broken to force dev team to fix them before any more PRs


refactor: private bridge / portal manager cli

Please read contributing guidelines and remove this line.

Benchmark results
No metrics with a significant change found.

Detailed results
All benchmarks are run on txs on the Benchmarking contract on the repository. Each tx consists of a batch call  to create_note and increment_balance, which guarantees that each tx has a private call, a nested private call, a public call, and a nested public call, as well as an emitted private note, an unencrypted log, and public storage read and write.
This benchmark source data is available in JSON format on S3 here.
Proof generation
Each column represents the number of threads used in proof generation.

Metric
1 threads
4 threads
16 threads
32 threads
64 threads

proof_construction_time_sha256_ms
5,778
1,568
706 (-1%)
746 (-1%)
767 (-1%)

proof_construction_time_sha256_30_ms
11,873
3,181
1,402
1,448
1,474

proof_construction_time_sha256_100_ms
45,518
12,013 (+1%)
5,443
5,406
5,369

proof_construction_time_poseidon_hash_ms
78.0
34.0
34.0 (-21%)
58.0 (-9%)
86.0 (-7%)

proof_construction_time_poseidon_hash_30_ms
1,537
421
202
222 (-1%)
271 (+1%)

proof_construction_time_poseidon_hash_100_ms
5,668
1,520
677
733
750 (-1%)

L2 block published to L1
Each column represents the number of txs on an L2 block published to L1.

Metric
4 txs
8 txs
16 txs

l1_rollup_calldata_size_in_bytes
4,324
7,844
14,852

l1_rollup_calldata_gas
49,708
92,468
177,464

l1_rollup_execution_gas
1,383,202
2,130,930
3,957,965

l2_block_processing_time_in_ms
253 (-3%)
446 (+2%)
797 (-2%)

l2_block_building_time_in_ms
9,168 (-2%)
18,612 (+3%)
35,817 (-1%)

l2_block_rollup_simulation_time_in_ms
9,168 (-2%)
18,612 (+3%)
35,816 (-1%)

l2_block_public_tx_process_time_in_ms
7,752 (-2%)
17,037 (+3%)
34,246 (-1%)

L2 chain processing
Each column represents the number of blocks on the L2 chain where each block has 8 txs.

Metric
3 blocks
5 blocks

node_history_sync_time_in_ms
2,961 (-1%)
3,869 (+3%)

node_database_size_in_bytes
12,673,104
16,703,568

pxe_database_size_in_bytes
16,254
26,813

Circuits stats
Stats on running time and I/O sizes collected for every kernel circuit run across all benchmarks.

Function
time_ms
bytecode_size_in_bytes

FeeJuice:_increase_public_balance
53.3
8,139

FeeJuice:set_portal
11.6 (-1%)
2,362

Token:constructor
85.7 (+5%)
31,107

FPC:constructor
53.7
22,380

FeeJuice:mint_public
38.9 (+1%)
6,150

Token:mint_public
44.3 (-1%)
11,720

Token:assert_minter_and_mint
68.6 (+1%)
8,028

AuthRegistry:set_authorized
36.3 (-18%)
4,537

FPC:prepare_fee
245 (+3%)
8,812

Token:transfer_public
22.6 (-17%)
47,358

FPC:pay_refund
53.6 (-6%)
12,082

Benchmarking:increment_balance
982 (+1%)
7,450

Token:_increase_public_balance
42.9 (+2%)
8,960

FPC:pay_refund_with_shielded_rebate
69.6 (+1%)
12,631

Public DB Access
Time to access various public DBs.

Function
time_ms

get-nullifier-index
0.156

Tree insertion stats
The duration to insert a fixed batch of leaves into each tree type.

Metric
1 leaves
16 leaves
64 leaves
128 leaves
256 leaves
512 leaves
1024 leaves

batch_insert_into_append_only_tree_16_depth_ms
2.17 (+1%)
3.88 (-3%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.8
31.7
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.113
0.110 (-3%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
11.5 (-1%)
17.6 (-2%)
30.7 (-6%)
58.9 (+1%)
112 (-1%)

batch_insert_into_append_only_tree_32_depth_hash_count
N/A
N/A
95.9
159
287
543
1,055

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.111 (-1%)
0.102 (-1%)
0.0998 (-5%)
0.102 (+1%)
0.100 (-1%)

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
14.6 (+1%)
25.6 (+1%)
43.2 (-2%)
82.1
159 (-1%)

batch_insert_into_indexed_tree_20_depth_hash_count
N/A
N/A
109
207
355
691
1,363

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.110
0.103
0.105 (-1%)
0.102
0.100 (-1%)

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
16.4
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
132
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
0.105
N/A
N/A
N/A
N/A

Miscellaneous
Transaction sizes based on how many contract classes are registered in the tx.

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
64,779
668,997

Transaction size based on fee payment method
| Metric |  |
| - |  |


Improve current location to start from it all the time

This issue was moved to hulop/NavCogIOS#12


Picture in picture using native module in android

Picture in picture using native module in android not triggering onPictureInPictureModeChanged callback
Description
I am using native module to implement picture in picture mode for my app.App is going to picture in picture mode correctly but the callback  onPictureInPictureModeChanged is not triggering.Since this call back is not working,i couldn't check whether the app is in pip mode or not from native module side.I need to emit an event to react native when the pip window exits.This thing can be done if onPictureInPictureModeChanged is working.Or is there anyother options to do this
React Native version:
0.63.2
Steps To Reproduce
Provide a detailed list of steps that reproduce the issue.
1.Create a native module
2.OnHostPause calling enterPictureInPicture.onPictureInPictureModeChanged is getting triggered
Expected Results
onPictureInPictureModeChanged should get called
Snack, code example, screenshot, or link to a repository:
Please provide a Snack (https://snack.expo.io/), a link to a repository on GitHub, or provide a minimal code example that reproduces the problem.
You may provide a screenshot of the application if you think it is relevant to your bug report.
Here are some tips for providing a minimal example: https://stackoverflow.com/help/mcve

Your module must implement LifecycleEventListener, then register itself as event listener. Please read https://reactnative.dev/docs/native-modules-android#listening-to-lifecycle-events

Your module must implement LifecycleEventListener, then register itself as event listener. Please read https://reactnative.dev/docs/native-modules-android#listening-to-lifecycle-events


MXNDArraySyncCopyToCPU speed problem

I find that it costs about 60ms to transfer data with size of 15MB from gpu to cpu.
Is it normal ❓

@starimpact No, it's not normal. It's less than 6ms on my computer .

ok

Also, I'm using this testing script.
import mxnet as mx
import mxnet.ndarray as nd
import time
N = 10
a = mx.random.normal(0, 1, (4, 1024, 1024), ctx=mx.gpu(0))
nd.waitall()
a.asnumpy()
start = time.time()
for i in range(N):
    a.asnumpy()
avg_time = (time.time() - start)/N
print('GB/s: %g' %(4 * a.size * 1E-9 / avg_time))

Output:
GB/s: 2.33017

thank you


Add an option make Terminus to not remember the tabs previously opened

Currently, the tabs I opened previously is accumulated every time launch the app. Please add a new option for disabling this behavior.

I was about to make the same request.. since I only ever launch it from my Explorer context menu (Windows), I end up having to close at least one tab every time I launch it.

Has been done a while ago


Incorrect address

https://compound.finance/developers#networks does not list the necessary resources.  I believe the correct resources are listed here:  https://compound.finance/docs

Thank you for bringing this up. Fixed 👍


table was having trouble sorting a numeric string the same way it was…

… with dates
now saving the table value as a number and piping it to transform in the table (like the dates)
#171

Pull Request Test Coverage Report for Build 745

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.0004%) to 98.961%

Totals

Change from base Build 728:
-0.0004%

Covered Lines:
2134

Relevant Lines:
2144

💛  - Coveralls


Escaped emoji

Every now and then, wanna-be emoji tags are replaced with their corresponding emoji image: For instance rake app:shell:open will become "rake app:shell:open". (It doesn't here on Github, but will on Gollum since context-agnostic filters are used to handle emoji. Which is good, because unlike Github it allows emoji e.g. in code blocks which is useful at times.)
I've written a very small fix for this problem by adding the ability to escape emoji by prefixing the first colon with a backslash: app\:shell:open reners as app:shell:open
@dometto I'm not sure whether to create a PR on master or the v5 branch or both. What do you think?

Please open one against 5.x! Are we sure rendering emojis in code blocks is desired behavior though? (The impact is low because emojis are not turned on by default, but still.) Another way of handling this problem might be to change the location of the Emoji filter in the filter chain though (but I haven't looked into this).

Me, personally, I like it to be able to highlight stuff in code blocks with emoji – particularly since all other formatting is of course impossible. Graphics stand out way more and nobody confuses them with the actual code. So as far as I'm concerned, it's a feature, not a bug.

Here you go:

https://github.com/gollum/gollum-lib/pull/275
https://github.com/gollum/gollum/pull/1235

Fixed in those PRs.


Add new google analytics events to the app

What payment method is being used to send transaction (e.g. pay by username, scan QR code, etc...)

log when there is a text request from a phone number

log when there is a login event

--> look at the funnel at text request to login. a large dropoff would mean that there is a lot of users who are unable to login

--> look at the number of multiple request for phone number in a same sessions --> another metrics that would help us to understand the text issues

I've put my questions in order of priority (The first one being more important than the last one)

Find out the % payments that were initiated by [a,b,c,d,e,f,g] over the past 90 days
a. Scanning a QR code starting from the Send page
b. Typing manually a BBW contact
c. Pasting an invoice/bitcoin address from clipboard
d. Typing a Lightning address
e. Uploading an image
f. Clicking “Pay this merchant” from the map screen
g.Clicking “Send” from the individual contact page

Find out the % payments that were initiated starting with the Scan page vs the Send page over the past 90 days.

Find out how often do the users use Send and Receive? Separate unintentional (bounce/no action) and intentional (take an action) over the past 90 days. (The purpose of this question is so I can compare its answer with the answer of #4, #5 and #6)

How often do users go to these pages from the navigation tab? Separate unintentional (bounce/no action) and intentional (take an action) over the past 90 days.
a. Contacts
b. Map
c. Earn

Find out how often do users go to view their transaction history? Separate unintentional (bounce/no action) and intentional (take an action) over the past 90 days.

Find out how often people go to the price graph (2-3 week, once a week, every 2 weeks, every month, etc). Separate unintentional (bounce/no action) and intentional (take an action) over the past 90 days.

What’s the % of users who set their username?

Find out how often do the users use Send and Receive? Separate unintentional (bounce/no action) and intentional (take an action) over the past 90 days. (The purpose of this question is so I can compare its answer with the answer of 4, 5 and 6)

Defining a bounce:

If user enters a screen and then leaves within x seconds (maybe 3-5).  Might also be different for different screens (less for receive screen)


crawl on port error

I crawl website like http://<IP_ADDRESS>:8080,AllowedDomains is <IP_ADDRESS>:8080,crawl is not work.
in code github.com/gocolly/colly/v2.(*Collector).isDomainAllowed at colly.go:752
if d2 == domain {  //value is "<IP_ADDRESS>" == "<IP_ADDRESS>:8080"
because line 708,call the parsedURL.Hostname() method,this method return hostname is <IP_ADDRESS>.
I hope this problem can be fixed. Thank you.

Have you found a way of dealing with this ? Stuck on the same problem.

AllowedDomains("<IP_ADDRESS>") should work.
Hard to tell whether it's a bug or documentation issue: browsers also ignore ports in some contexts (cookies), but not in most others (e.g. same-origin policy for fetch, etc.)


[FIX] wrong HTTP 500 response when trying to add existing usermail

Added custom UserDuplicateException along w/ custom ExceptionMapper

Rebase this commit onto current master.

Removed ununsed classes in eb83011 --> master


Google Login fails

I cannot loginto a google account. i am trying to display a dashboard from google sheets but the login fails. Redirects me back to login page. i tried to turn on sync on chromium still cant login.

There's now a new image with everything updated to the latest versions.
If you can help test it and report back, it would be much appreciated, and would be happy to mark that as a "stable" release for a change!


Let operator use Describe* permissions

This effectively lets the operator have fully read access on the
ec2:Describe* perms as it checks various weird stuff like security
groups too
Given we are eventually probably going to end up giving this IAM
access, read access to ec2 feels like not a huge leap

Is this not redundant given https://github.com/alphagov/gsp/pull/372?

Yep


Tooltip for intersection icon should be on the entire line

Description of new feature

The tooltip target for the intersection icon should be on the entire line, rather than just the icon.
It's currently only on the icon itself, so it's hard to find.

Motivation for new feature

People try to hover over the word 'genes' and get nothing.
#164

Done! The tooltip now appears when hovering the "Genes ({total})" title as well, not just the icon:


PYTHONSTARTUP not launched at Spyder start

Description of your problem
I set a regular scientific_startup.py script as a Startup script for Ipython
Preferences > IPython console > Startup > Run a file
/usr/lib/python2.7/dist-packages/spyder/scientific_startup.py

But this script is not loaded directly when I start Spyder
I need  to reboot the Ipython console using the "Restart kernel"  button (right click on the console tab)
Only then Imported NumPy 1.12.1, SciPy 0.18.1, Matplotlib 2.0.0 is printed in the console
Thanks for your help !
Versions and main components

Spyder Version: 3.2.4
Python Version: Python 2.7.14
Qt Version: Qt 5.9.1
PyQt Version: PyQt5 5.7
Operating system: Ubuntu MATE flavor 17.10

Please go to the menu entry Help > Optional Dependencies (or
Help > Dependencies), press the button Copy to clipboard
and paste the contents below:

Thanks for reporting. We'll take a look at this in a future release.

I meet exactly the same problem with Spyder 4.1.2 with Python 3.7.3 on Windows 10.
Note that the problem also happens when I switch from a project to another.

This problem no longer applies because it was related to the Python console, removed a long time ago.

Python console or IPython console ?
As the initial post, I speak about IPython console. IPython 7.13.0 precisely for my case.

The initial post talks about a script that we no longer distribute because it made part of the Python console.
That's why this issue is not valid anymore.

Ok, just let me reformulate.
Because, even if spyder does no longer distribute this kind of script, it is now possible to define its own script. And this functionality contains a bug.
Detailed step to reproduce the bug :
I create a file (E:/pythonstartup.py), that contains, for instance just this line :
print('PythonStartup file was executed')
Now, I go in Preferences > IPython console > Startup > Run a file, and I specify E:/pythonstartup.py.
Then I click on "Apply".
Now if I restart my kernel in IPython, the message is printed. If I switch to an other project the message does not appear. If I close spyder and restart it, the message does not appears also. But if I restart again the kernel, this time, the message appears.
So, in my point of view there are 2 (linked) bugs :

the user defined pythonstartup script is not run at the start of spyder
the user defined pythonstartup script is not run after switching project

@glefebvr, thanks for the detailed explanation. Could you open a new issue about it? Thanks!

@ccordoba12: Yes. Thanks to you, for the spent time to understand the problematic.