When data become large,parition variables can not initialized successfully

i use tensorflow to distributed trainning models, i use the partition valriables to store an array data, when the data is not so bigger, everything looks ok,but when the array data become larger, when the session initialize, the partition variables can not initialized and the session will wait util time out.
Describe the problem
Describe the problem clearly here. Be sure to convey here why it's a bug in TensorFlow or a feature request. the feat_info can initialize successfully, but the adj_info cannot initialized. the adj_info is larger than feat_info
i use monitored_session or supervisor to do the initialize_variables, when data is not so large, it will initialize successfully, my machine have more than 300GB memory is enough for the larger variable
Have I written custom code
yes
OS Platform and Distribution
linux platform
TensorFlow installed from
N/A
TensorFlow version
r1.4
Bazel version
CUDA/cuDNN version
no gpu
GPU model and memory
no gpu
Exact command to reproduce
N/A
Source code / logs
i use ps_num = 4, worker_num =4 and i also try some other distributed config, like ps_num=1, worker_num=4, the result is the same
source code:
with tf.device(tf.train.replica_device_setter(
worker_device="/job:worker/task:%d" % task_id,
cluster=cluster_spec)):
feat_info = tf.get_variable("feature_info", (len(id_map),FLAGS.features_column), tf.float32, trainable=False, partitioner=tf.fixed_size_partitioner(num_workers))
adj_info = tf.get_variable("adj_info", (len(id_map),FLAGS.max_degree), tf.int64, trainable=False, partitioner=tf.fixed_size_partitioner(num_workers))
with tf.device('/job:worker/task:%d' %task_id):
adj_local = tf.Variable(tf.constant(minibatch.adj, dtype=tf.int64), trainable=False, name="adj_local", collections=[tf.GraphKeys.LOCAL_VARIABLES])
feat_local = tf.Variable(tf.constant(features, dtype=tf.float32), trainable=False, name="feat_local", collections=[tf.GraphKeys.LOCAL_VARIABLES])
length, begin, end = split_node_by_task(len(id_map), task_id, num_workers)
adj = tf.nn.embedding_lookup(adj_info, [x for x in range(begin, end)])
adj = adj_local
feat = tf.nn.embedding_lookup(feat_info, [x for x in range(begin, end)])
feat = feat_local
log:
2017-12-08 23:54:17.377290: I tensorflow/core/distributed_runtime/master_session.cc:998] Start master session c2b3ba9b700261ba with config:
INFO:tensorflow:Waiting for model to be ready. Ready_for_local_init_op: None, ready: Variables not initialized: adj_info/part_0, adj_info/part_1, adj_info/part_2, adj_info/part_3, adj_info/part_4, adj_info/part_5, adj_info/part_6, adj_info/part_7, adj_info/part_8, adj_info/part_9, adj_info/part_10, adj_info/part_11, adj_info/part_12, adj_info/part_13, adj_info/part_14, adj_info/part_15
2017-12-09 00:00:35.637019: I tensorflow/core/distributed_runtime/master_session.cc:998] Start master session f35fcf332e3908ec with config:
INFO:tensorflow:Waiting for model to be ready. Ready_for_local_init_op: None, ready: Variables not initialized: adj_info/part_0, adj_info/part_1, adj_info/part_2, adj_info/part_3, adj_info/part_4, adj_info/part_5, adj_info/part_6, adj_info/part_7, adj_info/part_8, adj_info/part_9, adj_info/part_10, adj_info/part_11, adj_info/part_12, adj_info/part_13, adj_info/part_14, adj_info/part_15
and it will alway waiting adj_info to initialize

Nagging Awaiting Response: It has been 14 days with no activityand the awaiting response label was assigned. Is this still an issue?

I meet the same problem, when variable is large and in distribution environment.  chief worker can't initializer the large variable correctly, so i guess it is bug!
the large variable i define is:
### problem code
w0 = tf.get_variable('w_0', dtype=dtype, initializer=tf.random_uniform([100000, 256, 32], minval=minval, maxval=maxval, dtype=dtype))

### correct code （ just smaller first dimention size）
w0 = tf.get_variable('w_0', dtype=dtype, initializer=tf.random_uniform([30000, 256, 32], minval=minval, maxval=maxval, dtype=dtype))

I use tf.estimator.train_and_evaluate api to do distributed training, and define w0 in the model_fn.  when i define w0 using[100000, 256, 32]  , I can run the code in the single machine( local mode) correctly, but Error ：
### in chief
INFO:tensorflow:Create CheckpointSaverHook.
2018-03-02 12:53:31.539989: I tensorflow/core/distributed_runtime/master_session.cc:1017] Start master session 001a93d5f7256838 with config: device_count { key: "GPU" value: 0 }
[[[[  blocked here ]]]]]

### in worker 0
INFO:tensorflow:Waiting for model to be ready.  Ready_for_local_init_op:  Variables not initialized: w_0, ready: None

when i only change w0 from [100000, 256, 32] to [30000, 256, 32], I can run the code correctly both in local mode and distribution mode. So large variable can't initialize correctly in distribution mode

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue?

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue?

It has been 29 days with no activity and the awaiting response label was assigned. Is this still an issue?

still a bug

Nagging Assignee @shivaniag: It has been 17 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @shivaniag: It has been 32 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @shivaniag: It has been 47 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @shivaniag: It has been 62 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @shivaniag: It has been 77 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

Nagging Assignee @shivaniag: It has been 91 days with no activity and this issue has an assignee. Please update the label and/or status accordingly.

@weidong8405347 is this still a problem? apologize for delayed response here.

It has been 14 days with no activity and the awaiting response label was assigned. Is this still an issue?

It has been 29 days with no activity and the awaiting response label was assigned. Is this still an issue?

Automatically closing due to lack of recent activity. Please update the issue when new information becomes available, and we will reopen the issue. Thanks!

I ran Tensorflow Object Detection project with fasterrcnn_resnet50 on distributed training. All I modified is to add a convLSTM layer after feature extractor.
Recently I want to run on distributed machines through legacy/train.py, and I faced same problem like this issue.
My cluster spec is as below:
{
  "cluster": {
    "ps": [
      "localhost:3000"
    ],
    "master": [
      "localhost:3001"
    ],
    "worker": [
      "localhost:3002"
    ]
  },
  "task": {
    "type": "ps/master/worker",
    "index": 0
  }
}

For ps machine, I set task.type in cluster spec as ps, and it runs well.
For master machine, I set task.type in cluster spec as master, and it runs well too.
It starts training since the default setting of synchronize training in config file is false.
However, for worker machine, I set task.type as worker. It repeatedly shows
INFO:tensorflow:Waiting for model to be ready.  Ready_for_local_init_op:  None, ready: Variables not initialized: rnn/convlstm_cell/kernel, rnn/convlstm_cell/biases, rnn/convlstm_cell/kernel/Momentum, rnn/convlstm_cell/biases/Momentum

I'm wondering if it's a bug for slim.learning.train / supervisor for legacy/trainer.py or not,
should I change to MonitoredTrainingSession ?

meet the same problem too

Hi i meet the same problem with tf1.12 CPU version on Windows.
When create a PartitionedVariable with
ps_count = 5 embeddings = tf.get_variable(                     "embeddings", [term_hash_bucket_size, embedding_count], dtype=tf.float32,                     initializer=variable_initializer, partitioner=tf.fixed_size_partitioner(ps_count))
it will cost 20mins for sees.run(tf.global_variable_initializer())
When the ps_count=20, it will cost more than 80mins.


Feature: Add sidebar to the GUI, set main file

Add sidebar class
Make project run correctly from the main.pyw file

LGTM but I'd recommend moving all the frames to a specific frames folder and removing _frames from the last.

Also it'd be better if more work is done per PR as simple changes like these can be straight committed to the main branch


freeseamlesstextures.com is down, breaking FantasyCraft sheet

One of the sites I use for a background image is down and has been.  I've been getting mail asking me to fix it, so I changed the background image to something (and somewhere) else.
Can someone push this change sooner rather than later?  The sheet is pretty unusable like this...

Hello,
I am going through the old issues and ensuring they have been resolved. I will assume this pull request went out in 2015. If it is still an issue please let me know.
Thanks,
Cassie


rootchain deploy returns error

Rootchain contract deployment failed
Description
I am following the description on https://wiki.polygon.technology/docs/supernets/operate/deploy/supernets-how-to-configure-rootchain (Single-Host Validator Setup) and I can not deploy the rootchain contracts. I have tried it 5 times but always returning an error:
failed to deploy rootchain contracts: failed sending CustomSupernetManager contract deploy transaction: {"code":-32000,"message":"replacement transaction underpriced"}
Here is the explorer link: https://mumbai.polygonscan.com/txs?a=0x4f89ad21f95f0d248b452753ce758b83595d0a88
Your environment

OS: Ubuntu 20.04 LTS
The version of the Polygon Edge: v1.0.0-rc1
RPC: https://matic-mumbai.chainstacklabs.com

Steps to reproduce
I'm following the tutorial step-by-step starting from this link: https://wiki.polygon.technology/docs/supernets/operate/deploy/supernets-spawn-test-chain
This is the command giving the error:
./polygon-edge rootchain deploy \
--deployer-key abc123... \
--genesis ./genesis.json \
--json-rpc https://matic-mumbai.chainstacklabs.com \
--stake-token 0xbe0f75f3a6938F30b21F31a4eda959C826205bD5 \
--stake-manager 0x4b384636C4241982ae338ca47ee41AE83a9a7E1C

Expected behavior

Rootchain contracts should be deployed
Rootchain contracts are not deployed

works when rootchain is localhost, any idea?

It sounds like a duplicate of https://github.com/0xPolygon/polygon-edge/issues/1551. The problem was that we were using hardcoded values for gas price, instead of estimating it. So when running the Geth instance in dev mode locally, there are no other transactions that would make root chain deployment transactions underpriced (however on the Mumbai network this is not the case).
So I'll mark this issue as completed, and feel free to reopen it if you witness issues even with the fix.


How to set cookie without browser detection?

Hi!
I try to make routes and locale cookies work together.
I'm using the prefix_except_default strategy and for defaultLocale I have a foreign language.
Browser detection is enabled because then the locale cookie is set.
Currently, the goal is that when the user first time comes to the path domain.com/* without en/ prefix, then automatically cookie for that locale (default locale) is set.
And when the user first time goes to the domain.com/en/* with the en/ prefix, then the cookie with the en locale is set.
Most of us have browser language set to English by default so browser detection will always detect it as English, so I rather want to show the default locale when the user comes to the main domain without the en/ prefix.
The thing is that our backend API is using cookies to detect which language content it needs to serve.
Any suggestions on how to do that?
For example, if I turn Browser language detection off, then is it possible to set locale cookie in any other way?
Or is it possible to force browser language detection to set cookies for the first request depending on prefix?

Sounds like you might want to disable browser language detection and save the cookie manually using the the public setLocaleCookie API.
Probably could do that from the onBeforeLanguageSwitch hook.

Thanks for the suggestion.
I ended up disabling browser detection and used the Accept-Language HTTP header.


Migrate tests to<EMAIL_ADDRESS>

Closes: https://github.com/metarhia/metasync/issues/372

Now npm test run successfully

ping @machendos.

@belochub land this please after @machendos will fix your comments

@lundibundi ping

Landed in 0d07aec804a8bf798d9e0c5ea8363f224bb437ae.


Update Clara_Roy_Inner_Automorphisms.lean

Fixed concerns addressed in the feedback, namely:

Added a preamble including title, names of authors and a short description.
Fixed faulty import.
Removed some @[simp] tags and rewrote some code to match this change.

Excellent, thanks!


Generated changelog for 20.0.0

Which issue does this PR close?

Closes #.
Rationale for this change

Replace the manually generated changelog with a generated version, using Changelog Genie, which is a new project I hacked together this morning.
The only thing we are missing compared to the old generator is that this one does not show issues that were closed without a change being merged. I don't think that is a big deal personally.
The new generator took less than a minute to produce the changelog content.
What changes are included in this PR?

Changelog (rendered)
Are these changes tested?

Are there any user-facing changes?

@iajoiner fyi

is that this one does not show issues that were closed without a change being merged. I don't think that is a big deal personally.

I agree


Error read stream occupied when delivering proof via hashmail.

We've encountered an error where hashmail proof delivery fails with the error, read stream occupied:
2024-08-22 04:15:43.195 [DBG] PROF: Proof delivery failed with error. Backing off.
(transfer_type=send, locator_hash=60742286c57cac7fa478821acbf52253ae64ecac7c8c10df8e4a313c748ac940,
backoff=30s, attempt=0): error executing backoff procedure: backoff exec error:
failed to receive ACK from receiver within timeout: rpc error: code = Unknown desc = read stream occupied

My current theory is that we're attempting to send two different proofs to the same recipient simultaneously, which involves reading from the same hashmail mailbox in parallel.
If this is true, then we can't transfer multiple proofs to a single recipient in parallel using hashmail.
Debugging Notes
for receiver ACK via sid=2a59fe87c9
---
The recv timeout is 6h:
Waiting (6h0m0s) for receiver ACK via sid=bc9
---
Trying to deliver two proofs:
Attempting to deliver proof (script_key=02de2d5
Attempting to deliver proof (script_key=026575d

To the same proof courier:
proof_courier_addr=hashmail://mailbox.terminal.lightning.today:443
---
If the recipient is the same for both proofs then the mailbox sid values will be
the same.
---
The first attempt (0) failed with the same error in alice.log:
2024-08-22 04:15:43.195 [DBG] PROF: Proof delivery failed with error. Backing off.
(transfer_type=send, locator_hash=60742286c57cac7fa478821acbf52253ae64ecac7c8c10df8e4a313c748ac940,
backoff=30s, attempt=0): error executing backoff procedure: backoff exec error:
failed to receive ACK from receiver within timeout: rpc error: code = Unknown desc = read stream occupied
---
the sender/recver sid values are based on the script key of the recipient only.

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

0 of 27 (0.0%)  changed or added relevant lines in 1 file are covered.
14 unchanged lines in 5 files lost coverage.
Overall coverage increased (+0.01%) to 40.316%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

proof/courier.go
0
27
0.0%

Files with Coverage Reduction
New Missed Lines
%

tappsbt/create.go
2
53.22%

tapgarden/planter.go
2
74.87%

commitment/tap.go
3
84.7%

proof/courier.go
3
9.58%

tapgarden/caretaker.go
4
68.5%

Totals

Change from base Build<PHONE_NUMBER>8:
0.01%

Covered Lines:
23965

Relevant Lines:
59443

💛  - Coveralls

I've created this small unit test which shows that the recv stream is blocked (unavailable) for the SID that causes the error in the log (see zach's log here ):
func TestRemoteHashMailService(t *testing.T) {
	courierAddrStr := "hashmail://mailbox.terminal.lightning.today:443"
	courierAddr, err := url.Parse(courierAddrStr)
	require.NoError(t, err)

	ctx := context.Background()
	serviceHandle, err := NewHashMailBox(ctx, courierAddr)
	require.NoError(t, err)

	// Create a random sid.

	//sidBytes := test.RandBytes(64)

	sidBytes, err := hex.DecodeString("2a59fe87c90d5de0a883e280681e4d72fb2c74ceeee462a3e4ae938fe7e3015ef30806eff1be1daf399cd756c26da002d12b3e562d4b72cd8670071af20b0e8e")
	require.NoError(t, err)

	var sid streamID
	copy(sid[:], sidBytes)

	// Initialize a mailbox for the given sid.
	err = serviceHandle.Init(ctx, sid)
	require.NoError(t, err)

	// Attempt to read a proof from the mailbox.
	t.Log("Attempting to read proof from mailbox")
	_, err = serviceHandle.ReadProof(ctx, sid)
	require.Error(t, err)

	t.Log("Found error: ", err)
}

I am able to repro the issue in the litd itests by making a few tweaks.

update the taproot-assets reference in the go.mod to point to the latest commit in this PR (f815866)
comment out the lines in the test that set the --taproot-assets.proofcourieraddr flag so the nodes will use the hashmail server for proof delivery
comment out the calls to assertUniverseProofExists because the proofs won't be pushed to the universe server with the above change

Here's the patch of the changes I made after checking out the v0.13.994-experimental tag.
cloase_channel_fail.patch
I then ran the itests for custom channels:
make itest icase=test_custom_channels

This caused the testCustomChannels test to fail with the error:
    test_harness.go:107: Closing Charlie -> Dave channel
    litd_custom_channels_test.go:588:
                Error Trace:    /Users/jamal/dev/lightninglabs/dev-resources/frontend-regtest/repos/lightning-terminal/itest/assets_test.go:852
                                                        /Users/jamal/dev/lightninglabs/dev-resources/frontend-regtest/repos/lightning-terminal/itest/litd_custom_channels_test.go:588
                                                        /Users/jamal/dev/lightninglabs/dev-resources/frontend-regtest/repos/lightning-terminal/itest/test_harness.go:103
                                                        /Users/jamal/dev/lightninglabs/dev-resources/frontend-regtest/repos/lightning-terminal/itest/litd_test.go:100
                Error:          Received unexpected error:
                                unable to close channel: rpc error: code = DeadlineExceeded desc = context deadline exceeded
                Test:           TestLightningTerminal/test_custom_channels

In the logs for charlie, I can see the stream occupied error:
2024-08-28 10:34:34.517 [DBG] PROF: Proof delivery failed with error. Backing off. (transfer_type=send, locator_hash=7ac3ead937a8c1530a251825493347d7aebd3d0e636c330f43b7a1be0adddac8, backoff=1m0s, attempt=1): error executing backoff procedure: backoff exec error: failed to receive hashmail ACK within timeout (sid=2a59fe87c90d5de0a883e280681e4d72fb2c74ceeee462a3e4ae938fe7e3015ef30806eff1be1daf399cd756c26da002d12b3e562d4b72cd8670071af20b0e8e): failed on stream Recv (sid=2a59fe87c90d5de0a883e280681e4d72fb2c74ceeee462a3e4ae938fe7e3015ef30806eff1be1daf399cd756c26da002d12b3e562d4b72cd8670071af20b0e8e): rpc error: code = Unknown desc = read stream occupied\

Closing this investigation. Will leave issue https://github.com/lightninglabs/taproot-assets/issues/1113 open to pick up again in the future. This issue isn't high priority right now because hashmail is not the default proof courier protocol.


How can I dismiss a calandar programmingly?

Thanks for the useful library. I tried to call .dismiss() function to close a calandar but it doesn't work properly. (Dismissal is okay, but It doesn't appear again as call a open function or focusing on the input tag..)

Could you show your codes? I have no idea where is the input tag you mentioned.


Globalisation - Spanish

Can i help? mexican here

@tmbsis thanks for your offer to help out, it would be great to have you helping out.
We use a system called Transifex to help with the localisation of the application.  You can find the project here:
https://www.transifex.com/chocolatey/public/
You should be able to request to be added to the team, and from there, you can help out with getting the strings translated.
Let me know if you have any questions.

I am going to close this off, let me know if you have any questions.


Need WAF as an extension to single-page-app

If you are standing up an app, there needs to be a way to add a WAF to it. It could be resource itself that's also created by Lift but at least as a version 1 on new feature, be able to apply an existing WAF to a site being stood up.

Ok I did find buried in the PRs how to implement as extension. I'll write here in case someone else needs help:
example includes some other options as well:
constructs: {
    app: {
      type: 'single-page-app',
      path: '../app/dist',
      domain: dnsSettings.host,
      certificate: dnsSettings.certificate,
      extensions: {
        distribution: {
          Properties: {
            DistributionConfig: {
              ViewerCertificate: {
                SslSupportMethod: 'sni-only',
                MinimumProtocolVersion: 'TLSv1.2_2021'
              },
              PriceClass: 'PriceClass_100',
              WebACLId:
                'arn:aws:wafv2:us-east-1:123456789012:global/webacl/myWebACLName/aaaaaaa-bbbb-cccc-dddd-eeeeeeeee'
            }
          }
        }
      }
    }


Fix narrow iPad split view

When using Sunlit in split view on the iPad, the collapsed view doesn't let you tap on Timeline, Mentions, etc.

This is fixed.


Add proxy support for grafana

Currently grafana chart doesn't support proxy inside grafana container, so in some infrastructures which does not have access to internet without proxy, plugin download will be failed
Proxy configurations is inside values.yaml

@salarmgh
Could you sign DCO and bump chart to latest version please? See the bottom of this page (Click Details next to DCO Action required after xx - DCO for instructions) Thank you for contribution.

/assign

/assign @zanhsieh

/ok-to-test

@salarmgh
Could you bump the chart version to latest please? I will merge it later on.

@zanhsieh version bumped, it seems there is a problem in ci test

/retest


Fix: Pypi publish action

Description
Harold has said it has something to do with detached head causing problem.
https://github.com/hsolbrig/monomorphic/blob/main/.github/workflows/pypi-publish.yaml

I think I've found a relevant suggestion from the GitHub Community site. It looks like actions/checkout@v2 only fetches a single commit by default; since this action is run on the creation of a new release, that would be the single commit that has been tagged as a release. That means that git checkout main fails with a pathspec 'main' did not match any file(s) known to git error.
If that is the problem, you could set fetch-depth: 0 to check out all branches and tags, which might allow you to change to the main branch to push changes to it.


021_KethaDhanaVeeraChaitanya_Contribution

Contributions for assignment

Submission guidelines not followed

Submission guidelines not followed

Brother could you please tell me the mistake I have done .I will rectify it..


fixed glitch in doc #6426

I cleaned up the commit in my previous PR #6448

Thanks, @peterfuwork!


adding DB support

#11

Hey @Melkeydev,
would appreciate your feedback on the implementation, let me know what could have been done better or if there's anything I might have missed in it.

I'm planning on improving upon this by adding some prompts for a .env file? I mean that is I mostly use DB drivers....so would that be cool?

I could also probably add some fields like
DB_URL=postgres://
DB_NAME=name

I could use the popular https://github.com/joho/godotenv package?

I could also probably add some fields like
DB_URL=postgres://
DB_NAME=name

I could use the popular https://github.com/joho/godotenv package?

Do we need to introduce another package to lead .env vars or can we just use the standard os lib?
Either way, would it make sense to make it into a separate PR?
I am planning on reviewing just this PR and how the DB integration is set up tomorrow

True....we can probably just read of the os lib as a default, but have an option of a .env? moreover, godotenv is quite a popular package with good reputation

True....we can probably just read of the os lib as a default, but have an option of a .env? moreover, godotenv is quite a popular package with good reputation

Good points I am OK to add godotenv to either this repo or a following one

@MohammadAlhallaq There are some new merge conflicts due to previous merges!

Added a few comments - tested out the PR everything seems to work however, the DB doesnt actually get hooked up. Wondering if there is a way we can fully test out this feature and implement it for a user to use

I will tackle those asap, and try to figure out a way to make the service accessible via a route for testing

Added a few comments - tested out the PR everything seems to work however, the DB doesnt actually get hooked up. Wondering if there is a way we can fully test out this feature and implement it for a user to use

I will tackle those asap, and try to figure out a way to make the service accessible via a route for testing

Ping me when this is ready for a another review :)

Working on creating a route to perform database health checks.
/*
Checklist:

[x] chi
[x] echo
[ ] fiber
[ ] gorilla
[ ] routerRoutes
[ ] std package
*/

@MohammadAlhallaq Do you have Discord? Can you join https://discord.gg/melkeydevhouse ?

@MohammadAlhallaq Do you have Discord? Can you join https://discord.gg/melkeydevhouse ?

yup, will join!

Looks Fucking Incredible To Me My honor to MERGE THIS

thanks man, I've really enjoyed working on it.


add theme.less

fixes css builds due to missing variables

Merging since this is blocking other tests from making sense.

Thanks!


feat: add cancun mainnet timestamp

Enables cancun on mainnet at timestamp<PHONE_NUMBER>
Geth PR: https://github.com/ethereum/go-ethereum/pull/28958

ah @Rjected can we add the missing timestamps here
https://github.com/paradigmxyz/reth/blob/787c9b176e2b03f9bb6ccaf90d6b525607955c55/crates/primitives/src/chain/spec.rs#L129-L129
and
https://github.com/paradigmxyz/reth/blob/787c9b176e2b03f9bb6ccaf90d6b525607955c55/crates/primitives/src/chain/spec.rs#L36-L36

ah @Rjected can we add the missing timestamps here
https://github.com/paradigmxyz/reth/blob/787c9b176e2b03f9bb6ccaf90d6b525607955c55/crates/primitives/src/chain/spec.rs#L129-L129
and
https://github.com/paradigmxyz/reth/blob/787c9b176e2b03f9bb6ccaf90d6b525607955c55/crates/primitives/src/chain/spec.rs#L36-L36

just added


adding patch for skipping known failures

Adding patches for skipping known failures and increasing timeout for one of the tier2 testcase (tests/manage/pv_services/pvc_clone/test_clone_when_pvc_full.py::TestCloneWhenFull::test_clone_when_full)
Signed-off-by: Aaruni Aggarwal<EMAIL_ADDRESS>

Patch is applying successfully.
Dependencies resolved.
Nothing to do.


Changed default num_spin_reversal_transforms to 1. Added special case…

This issue
https://github.com/dwavesystems/dwave-preprocessing/issues/33
appears to be closed (without modifications, could not reproduce error, but added test).
Re:  https://github.com/dwavesystems/dimod/issues/813
The default num_spin_reversal_transforms should be 1. A user of a sampler should have a reasonable expectation that setting only num_reads, they receive a sampleset of num_reads samples. Amongst other advantages of this default.
Added a variety of tests.

Not sure why I have these test failures.
from dwave.system.testing import MockDWaveSampler
shouldn't fail, wasn't a problem with my local tests.

Not sure why I have these test failures. from dwave.system.testing import MockDWaveSampler shouldn't fail, wasn't a problem with my local tests.

They're failing because dwave-system isn't installed. You'll need to add dwave-system to tests/requirements.txt to use the mock sampler.

They're failing because dwave-system isn't installed. You'll need to add dwave-system to tests/requirements.txt to use the mock sampler.

IMO not work the additional dependency. Better to just use StructuredSampler composite to fake it.

Codecov Report

Merging #34 (d0f7673) into main (b56d632) will increase coverage by 2.41%.
The diff coverage is 88.88%.

@@            Coverage Diff             @@
##             main      #34      +/-   ##
==========================================
+ Coverage   95.77%   98.18%   +2.41%
==========================================
  Files          15       15
  Lines         473      496      +23
==========================================
+ Hits          453      487      +34
+ Misses         20        9      -11

Impacted Files
Coverage Δ

tests/test_spin_reversal_transform.py
90.32% <86.95%> (-9.68%)
:arrow_down:

...reprocessing/composites/spin_reversal_transform.py
96.96% <100.00%> (+45.35%)
:arrow_up:

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 b56d632...d0f7673. Read the comment docs.


Create config for datacenter from which cloud replication is allowed.

We need a datacenter to replicate from. For DR, we currently deploy VCR nodes on same datacenter as ambry-server. So we use local datacenter replicas as remote replicas.
For serving data from cloud, we must specify the ambry-server datacenter(s) from which to replicate. This PR introduces configs and code changes for getting the peer replicas for cloud.

I guess the intention of this PR is to allow VCR to selectively replicate with remote datacenters. Replicating with local dc is always enabled. (Correct me if I am wrong)


NOT MERGE test ci

Description of the change:
Motivation for the change:
Checklist
If the pull request includes user-facing changes, extra documentation is required:

[ ] Add a new changelog fragment in changelog/fragments (see changelog/fragments/00-template.yaml)
[ ] Add or update relevant sections of the docs website in website/content/en/docs

/hold

Closing test made :_)


shared_preferences is too old.

I understand that this package is dependent on shared_preferences.
However, the shared_preferences package is too old and results in an installation error.
[flow_chat] flutter pub get
Running "flutter pub get" in flow_chat...
Because kakao_flutter_sdk >=0.5.0 <0.6.0-beta.2 depends on shared_preferences ^0.5.7 and flow_chat depends on shared_preferences ^2.0.5, kakao_flutter_sdk >=0.5.0 <0.6.0-beta.2 is forbidden.

So, because flow_chat depends on kakao_flutter_sdk ^0.5.4, version solving failed.
pub get failed (1; So, because flow_chat depends on kakao_flutter_sdk ^0.5.4, version solving failed.)
exit code 1

The current version of the shared_preferences package is 2.0.5.
I don't think recent projects will use version 0.5.7 😭

Hello. kakao_flutter_sdk 0.6.0-beta.2 applied null safety is in deployment. This version uses shared_preferences 2.0.3, so please note that.

Thx :)

@Jay-flow kakao_flutter_sdk 0.6.0-beta.2 had some issues, so i fixed it. Now, kakao_flutter_sdk 0.6.1 is in deployment. So you can use 0.6.1 instead.

@mbkim95 Okay, I'll do that. Thaks :)


[DRAFT] test upcoming changes to vm-builder

Trying out changes from neondatabase/autoscaling#600. Making a PR is the easiest way to get image builds to try out on staging — and, after merging the autoscaling PR, we can just re-use this PR.

Tested this on staging by replacing the VM image with the one that was produced in this CI, and everything appears to be working. Specifically tested regular connections, connections to pgbouncer, and that postgres-exporter metrics were still being collected.
Realized there's still a couple minor changes to be made to neondatabase/autoscaling#600, but otherwise it's looking good.


Add possibility to expand weekly recurring event starting from the specified start date

Hi! Thanks for the handy lib)
There could be the case when we create a recurring event and set it to repeat for example on Thursdays, but specify Monday as start date.
Generally in this case event occurrencies will be created starting from the first Thursday that occurs after specified start date.
On Monday event occurrence will not be created.
This is the way how Google Calendar expands events. The same does ical-expander.
But some calendars (like the one in Kerio Connect app) behave differently: the first occurrence is created for the specified start date (Monday) and all other on Thursdays.
On my current project customer wants the behavior to match the one in Kerio Connect.
Could you please provide some thoughts how it can be implemented in the right way?
Also, it'd be great if you add some option to the lib, that will allow to achieve this behavior.

I don't have the time to implement this now but if it can be implemented in a simple way, a PR is welcome


Grid missing inside scrollview

Hi, thanks for this library.
I want to ask you something,
When I put WaterfallGrid inside scrollview, the grid just disappears.
How I can fix that?
var body: some View {
        GeometryReader { geometry in
            ScrollView(.vertical) {
                Text("Hello")
                WaterfallGrid((0..<10), id: \.self) { index in
                  Image("swift_logo")
                    .resizable()
                    .aspectRatio(contentMode: .fit)
                }
                .gridStyle(
                  columnsInPortrait: 2,
                  columnsInLandscape: 3,
                  spacing: 8,
                  padding: EdgeInsets(top: 16, leading: 8, bottom: 16, trailing: 8),
                  animation: .easeInOut(duration: 0.5)
                )
                .scrollOptions(
                  direction: .horizontal,
                  showsIndicators: true
                )
                Text("Hello")
            }
        }
    }

Hi @gandarain I just release a new update where the internal ScrollView was removed from the grid view and it should fix your issue.
Please try again your code now, but also keep in mind the scroll direction need to match here:
ScrollView(. horizontal) {
   ...
   WaterfallGrid(...) {
      ...
   }
   ...
   .scrollOptions(direction: .horizontal)
   ...
   }
}

Great, thanks you.


Fix CLI install dependency issue

Resolves #3579
What is being addressed
The CLI will fail to install on the deployment repo due to a conflicting version with the cryptography dependency.
How is this addressed

We used an old method to install the python CLI component (aka easy_install) which caused the dependency version resolution failure. Moving to install via pip fixes the issue as now the right cryptography version is being discovered and installed.
I've verified this works in the deployment repo too.

/test-extended


Removes BYOC from LAI docs site

What does this PR do?
Removes BYOC content from LAI site
Does your PR introduce any breaking changes? If yes, please list them.
None
Before submitting

[ ] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together?
[X] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you list all the breaking changes introduced by this pull request?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or minor internal changes/refactors)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing, make sure you have read the review guidelines. In short, see the following bullet-list:

[X] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃
cc @borda @rohitgr7

Why remove it when it is going to be added with the next release?

The content needs to be merged after/as the feature is available

Why remove it when it is going to be added with the next release?

The content needs to be merged after/as the feature is available

but it is already on master, see #13835 #13894

@Felonious-Spellfire We normally have the docs together with the feature development. The docs people see when going to our page are routing to https://pytorch-lightning.readthedocs.io/en/stable/ (note stable at the end), which means they see the docs that were published up to the newest release. They don't see what we have here on the development branch unless actively navigating to https://pytorch-lightning.readthedocs.io/en/latest. I think it is important that we develop the docs together with the features and don't hold back until last minute to add them.

@Felonious-Spellfire We normally have the docs together with the feature development. The docs people see when going to our page are routing to https://pytorch-lightning.readthedocs.io/en/stable/ (note stable at the end), which means they see the docs that were published up to the newest release. They don't see what we have here on the development branch unless actively navigating to https://pytorch-lightning.readthedocs.io/en/latest. I think it is important that we develop the docs together with the features and don't hold back until last minute to add them.

The problem here is that App/LAI has only the latest docs till now... see the proposed changes in #14312 and #14250

Okay, that's fine with me. Hopefully this can change soon. It is really crucial that new features get reviewed and tested together with the docs present.


MintMetricSender.checkConnection has short timeout and does not log error nicely

I was getting many errors like this:
2021-01-16 00:07:24,990 INFO c.d.j.p.MintBackendListener: Start MINT metric sender for url https://zzzz.live.dynatrace.com/api/v2/metrics/ingest failed with General Error executing connection check for MINT server, setting enabled state to false
I tracked it down to a lastRequest.get() call in MintMetricSender.checkConnection() that has a timeout of only 1 second. By changing the timeout to 30 seconds, I am able to avoid the errors.
Also, unless I set loglevel to DEBUG, it doesn't tell me that it is a timeout.
The exception-catching code looks like this
		catch (ExecutionException | TimeoutException | InterruptedException ex) {
			log.debug("Error executing connection check for MINT server", ex);
			throw new MintConnectionException("General Error executing connection check for MINT server");
		}

I would suggest you log.warn, or log.error, the exception type, And of course, make the timeout longer.
Thanks for your efforts!

fixed with version 1.4

fixed with version 1.4


Refined action type

Remove remaining any type and add typeguard for select tuple

Wow, sorry for writing such a nasty type! Feel free to change it to be less weird.

I was the one to write this TS type :)
I fine with tuple for typing the action

I mean I wrote the code that caused us to need such a complex type, .... right? Anyway, thanks!


Get python project name and version from files.

Use pyproject.toml if present, otherwise setup.py.
Co-authored-by: Arfima Dev<EMAIL_ADDRESS>Signed-off-by: Xavier Barrachina Civera<EMAIL_ADDRESS>

Problem is that it won't actually use the actions we are changing until they are in main, so the result of the workflow is not that useful.
Note that both project version an project name actions are so similar that could be parametrized.
We are using pdm (and setuptools if there instead of a pyproject.toml there is a setup.py) to extract the information.
pdm works even if the pyproject.toml has another build system.
In our tests we went to the folder setup.py is in, since modern versions of setuptools read first pyproject.toml.


portRange option requires port and ports to be set to null

The only way to get portRange working is like this:
await getPort({ port: null, ports: [], portRange: [23000, 24000] })

This is not very intuitive - if portRange is set the other options should be ignored I think.

Thanks for the feedback. Hmm i agree specially when user only provides one of this options, others can be automatically disabled. But I would expect to allow { port: X, ports: [Y, Z] } and all 3 being checked. I think we just have to disable defaults when either of this options is provided. What do you think?

Yes, that seems sensible to me - only use the defaults when neither of these are set.

In next major version, when port is provided alternative range will be desabled.


[KAFKA-4696] Streams standby task assignment should be state-store aware

@guozhangwang Instead of including the number of state stores in Metadata, I decided to add it in  TaskId. Since TaskId is a parameter of StreamTask during initialization, I though this was appropiate.

Just adding a new field to TaskId is not sufficient. The consumer rebalance metadata must encode this information, too. (cf. SubscriptionInfo).
However, change the binary format of SubscriptionInfo requires to bump the version number as well as a defined upgrade protocol -- otherwise, upgrade an application would crash. Thus, we need a KIP.
Btw: we are working on another change that also requires to change the metadata and we are already working on a KIP. If we delay this, you can picky back on the change we plan to anyway. Bumping the metadata version number is a critical change as it might break the upgrade path of not done right.

@ConcurrencyPractitioner One thing we did not discuss on the JIRA ticket is that changing the rebalance protocol's metadata encoding requires bumping up the protocol version, AND as well as designing the upgrade path (consider a rolling bounce to upgrade from 1.0 to 1.2 that contains the new format, the first bounced instance would send the join group request with new formatted metadata that the existing leader who's still on the older version would not recognize at all).
We are working on a general framework for such an upgrade path right now, and I think it is better to hold on this PR until that is done.

I have created KAFKA-6583 to update metadata. So until then, I will wait.

My current branch was cloned before the metadata upgrade path was pushed. I modified a couple of the classes since it appears that my patch was not compatible with the current metadata upgrade path. Due to some changes, I think that is why there is merge conflicts.

About one or two PRs: I personally don't have a strong opinion -- both seems to be quite related, so from my point of view, a single PR might be fine (\cc @guozhangwang WDYT?)
To resolve merge conflict, you need to rebase your PR to trunk.
Note, KIP-268 is not merged yet -- thus, you might want to wait rebasing this PR until everything is merged -- otherwise, you will need to rebase multiple times (it's up to you of course).

Migrating to new PR, current branch is too old.

Replaced by #5012


Pull up dependencies

Update smallvec to a current release

Looks like CI doesn't pass and there is a merge conflict.

Rebased

Mac build fails on
$ pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
/Users/travis/.travis/job_stages: line 57: pip: command not found

I am not sure it is related to this PR in any way.

Also cargo test passes on my Mac

@carllerche There are a few opened pull requests for updating dependencies. Looks like people actively vote for updating. Is there anything that can be done to act on these pull requests?


[Fix-#3805][server-worker]global params of worker

This function of global params has three parts, this is about worker.
At present, we have implemented the global params function

The params takes effect in the process instance, each node can accept the variable, SQL and SHELL nodes can modify the params value, and subsequent nodes use the params as the modified value. (requirement 1)
The subprocess node passes in variables, and the subprocess can receive params values (requirement 2)

The detail of the scheme  as follows
a： requirement 1

When saving workflow, users will add global params definition (global definition) in the pop-up box after clicking save button, and save the defined params name and default value (if there is an initial value) to t_ds_process_definition.global_Params field (using the existing function). When saving, it will verify that the params names used by the node are all from global definition.
When the workflow is called up for instantiation, get the value of globalparams from definition and initialize the params value to t_ds_process_instance.global_Params field. (at this time, the initial value of the workflow instance is the default value defined globally)
About input parameters: when creating TaskInstance, take variables from localparam, and set the value from t_ds_process_instance.global_params to localparam. After storing the task instance, the task instance is saved in the database and distributed to the worker, and the subsequent parameter processing follows the original part.
About output parameters: after the task execution of SQL node and SHELL node is finished(SQL query results, only support one field one value, if multiple fields or rows of data will be formatted as JSON;The SHELL uses the output of the last line as the result), write the result of task execution into TaskExecuteResponseCommand, return to master together with the worker execution result information, and the master will update the output t_ds_process_instance.global_params and update it to the database.

b： requirement 2

About subprocess node: judge whether there is parameter passing when generating subprocess command. If there is parameter passing, the parameter will be written into the command table.
When the subprocess is instantiated, judge that the command contains the parameter passed down by the main process, and update the value to t_ds_process_instance.global_params field. The subsequent part is consistent with requirement 1
To implement requirement 2, you need to add COLUMN son_Params in t_ds_command table.

Codecov Report

:exclamation: No coverage uploaded for pull request base (params-trans@f207ad3). Click here to learn what that means.
The diff coverage is n/a.

@@               Coverage Diff               @@
##             params-trans    #4679   +/-   ##
===============================================
  Coverage                ?   45.04%
  Complexity              ?     3377
===============================================
  Files                   ?      537
  Lines                   ?    23103
  Branches                ?     2690
===============================================
  Hits                    ?    10406
  Misses                  ?    11767
  Partials                ?      930

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 f207ad3...f99f9aa. Read the comment docs.

you can refer this pr to the issue with "#issueNumer"


tests - test for #6416

Change Summary
adding a unit test for RootModel[List[RootModel[…]]]
see #6416
Related issue number
Checklist

[x] Unit tests for the changes exist
[ ] Tests pass on CI and coverage remains at 100%
[-] Documentation reflects the changes where applicable
[x] changes/<pull request or issue id>-<github username>.md file added describing change
(see changes/README.md for details)
[x] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

I'd say squash commits and it'll be fine?

Thanks @commonism


Is it possible to access the JavaScript functions of a website with Puppeteer?

Steps to reproduce
Tell us about your environment:

Puppeteer version:  1.4.0
Platform / OS version: 8.10.0

Thank you! I tried the below code,
const windowHandle = await page.evaluateHandle(() => window);
Could you please suggest a sample/api method, so that i can refer that.

@DrisyaNairJ Here is a tiny example. I've created a simple page with a function: source and rendered. Here is the puppeteer script:
'use strict';

const puppeteer = require('puppeteer');

(async function main() {
  try {
    const browser = await puppeteer.launch();
    const [page] = await browser.pages();

    await page.goto('https://vsemozhetbyt.github.io/test/test.html');

    console.log(await page.evaluate(() => test()));

    await browser.close();
  } catch (err) {
    console.error(err);
  }
})();

Output:
42

Thankyou so much for your help! I tried the same, but i'm getting a Reference Error that the "'method-name' is not defined". Do we need an overloaded method in puppeteer class?

I use common puppeteer with just this script.
Maybe the page you process has more complicated function system.

I have this function in my app
function getEditor() {
    console.log(window);
     return window;
}

When I run it from the console in the app, it works.
But when I try this from puppeteer,
console.log(await page.evaluate(() => getEditor()));
It returns undefined when I run it from puppeteer.  Can someone please help.

page.evaluate() can transfer only serializable values, which is not the case for the window object, unfortunately.

Typescript is giving undefined function error
await page.evaluate(() => fLogon());

what if there are two function with the same name ? How does puppeteer will handle this ?

There cannot be two functions with the same name in the global window context.

But if you take a close look to the source code for example of this page :
https://fr.aliexpress.com/premium/foulard-soie.html?d=y&origin=y&catId=0&initiative_id=AS_20201126074147&SearchText=foulard soie
You'll notice the runParams() function is called two times, the first one return an empty result, while the second return a serialized result.
How do you proceed to get the result of the second occurence and not the first one ?

Sorry, I can only see window.runParams object, not function.

yes that true but using await page.evaluate(() => runParams) on this page :
https://fr.aliexpress.com/item/4001253744819.html
Will search for window.runParams and return the datas, inside the brackets.
How should i proceed to do the same on the page above, to get the value of the second occurence of window.runParams ?
<script type="text/javascript">
window.runParams = {};
window.runParams = {"resultCount":20021};
</script>

Thank you for your help !

As these two assignments run synchronously one after another, I think you will definitely get the second value (or nothing if you try to get the data before this script runs).

Thanks for the precision, indeed, the result is empty, i don't know what to do to retrieve the datas in the bracket.. I tried to await for the page to be loaded, but that does not seems to do the trick. thanks anyway.

How can I check whether the function is used in the web site?
await page.waitForFunction('test() !== 0');
is not working in that case.

How can I check whether the function is used in the web site?
await page.waitForFunction('test() !== 0');
is not working in that case.

I think you can try:
const functionIsDeclared = await page.evaluate('typeof test === "function"');

I think you can try:
const functionIsDeclared = await page.evaluate('typeof test === "function"');

Thank you for your answer, however also want to use to another functions. For example when I run this:
const functionIsDeclared = await page.evaluate('typeof showOpenFilePicker === "function"');
it always returns true since the showOpenFilePicker is a valid JS function. However I want to receive boolean value only if the analyzed website has showOpenFilePicker function.
Thank you again for your answer.

Thank you for your answer, however also want to use to another functions. For example when I run this:
const functionIsDeclared = await page.evaluate('typeof showOpenFilePicker === "function"');
it always returns true since the showOpenFilePicker is a valid JS function. However I want to receive boolean value only if the analyzed website has showOpenFilePicker function.
Thank you again for your answer.

According to https://developer.mozilla.org/en-US/docs/Web/API/Window/showOpenFilePicker , this function is always awailable as window.showOpenFilePicker (and as simply showOpenFilePicker) in all HTTPS pages in all supporting browsers.

According to https://developer.mozilla.org/en-US/docs/Web/API/Window/showOpenFilePicker , this function is always awailable as window.showOpenFilePicker (and as simply showOpenFilePicker) in all HTTPS pages in all supporting browsers.

Yes but I need to check the running website has the window.showOpenFilePicker function. For example, while analyzing google.com, it should return false. How can I achieve this?

Yes but I need to check the running website has the window.showOpenFilePicker function. For example, while analyzing google.com, it should return false. How can I achieve this?

Do you need to detect if a website actually uses this function? I.e. if the website calls it?

Do you need to detect if a website actually uses this function? I.e. if the website calls it?

Yes exactly.

Yes exactly.

Well, it is a tough one) I can suggest using the page.evaluateOnNewDocument() to create a wrapper function at the early stage and chek some variable later. This works for me:
import puppeteer from 'puppeteer';

const browser = await puppeteer.launch({ headless: false, defaultViewport: null });

try {
  const [page] = await browser.pages();

  await page.evaluateOnNewDocument(() => {
    window.showOpenFilePickerIsCalled = false;

    const oldShowOpenFilePicker = window.showOpenFilePicker.bind(window);

    window.showOpenFilePicker = function (...args) {
      window.showOpenFilePickerIsCalled = true;
      return oldShowOpenFilePicker(...args);
    };
  });

  await page.goto('https://example.org/');

  const check1 = await page.evaluate(() => {
    return window.showOpenFilePickerIsCalled;
  });
  console.log(check1); // false

  const fileName = await page.evaluate(async () => {
    return (await window.showOpenFilePicker())[0].name;
  });
  console.log(fileName); // picked file name

  const check2 = await page.evaluate(() => {
    return window.showOpenFilePickerIsCalled;
  });
  console.log(check2);// true
} catch(err) { console.error(err); } finally { await browser.close(); }

Well, it is a tough one) I can suggest using the page.evaluateOnNewDocument() to create a wrapper function at the early stage and chek some variable later. This works for me:
import puppeteer from 'puppeteer';

const browser = await puppeteer.launch({ headless: false, defaultViewport: null });

try {
  const [page] = await browser.pages();

  await page.evaluateOnNewDocument(() => {
    window.showOpenFilePickerIsCalled = false;

    const oldShowOpenFilePicker = window.showOpenFilePicker.bind(window);

    window.showOpenFilePicker = function (...args) {
      window.showOpenFilePickerIsCalled = true;
      return oldShowOpenFilePicker(...args);
    };
  });

  await page.goto('https://example.org/');

  const check1 = await page.evaluate(() => {
    return window.showOpenFilePickerIsCalled;
  });
  console.log(check1); // false

  const fileName = await page.evaluate(async () => {
    return (await window.showOpenFilePicker())[0].name;
  });
  console.log(fileName); // picked file name

  const check2 = await page.evaluate(() => {
    return window.showOpenFilePickerIsCalled;
  });
  console.log(check2);// true
} catch(err) { console.error(err); } finally { await browser.close(); }

Thank for your help. Is it any way to generalize this code by adding hooking? What I mean is, when the user invoked the function showOpenFilePicker, I want to first run by own function. When the process of my function is finish, I want to continue to process of the website. I know it is kind a confusing, more simply basically I want to perform hooking to showOpenFilePicker function.

Thank for your help. Is it any way to generalize this code by adding hooking? What I mean is, when the user invoked the function showOpenFilePicker, I want to first run by own function. When the process of my function is finish, I want to continue to process of the website. I know it is kind a confusing, more simply basically I want to perform hooking to showOpenFilePicker function.

Well, you can add any code in the wrapper above, do anything instead of window.showOpenFilePickerIsCalled = true; part.

Well, you can add any code in the wrapper above, do anything instead of window.showOpenFilePickerIsCalled = true; part.

I.e. just use:
  await page.evaluateOnNewDocument(() => {
    const oldShowOpenFilePicker = window.showOpenFilePicker.bind(window);

    window.showOpenFilePicker = function (...args) {
      // your code...
      // your code...
      // your code...

      return oldShowOpenFilePicker(...args);
    };
  });

I.e. just use:
  await page.evaluateOnNewDocument(() => {
    const oldShowOpenFilePicker = window.showOpenFilePicker.bind(window);

    window.showOpenFilePicker = function (...args) {
      // your code...
      // your code...
      // your code...

      return oldShowOpenFilePicker(...args);
    };
  });

Maybe see https://javascript.info/call-apply-decorators for some general examples.

Maybe see https://javascript.info/call-apply-decorators for some general examples.

Hello, after a long time I am still having the same issue, I tried your code with inside of async function() as you see in below.
'use strict';

const puppeteer = require('puppeteer');

(async function main() {

    const browser = await puppeteer.launch({ headless: false, defaultViewport: null });

    try {
      const [page] = await browser.pages();

      await page.evaluateOnNewDocument(() => {
        window.showOpenFilePickerIsCalled = false;

        const oldShowOpenFilePicker = window.showOpenFilePicker.bind(window);

        window.showOpenFilePicker = function (...args) {
          window.showOpenFilePickerIsCalled = true;
          return oldShowOpenFilePicker(...args);
        };
      });

      await page.goto('https://example.org/');

      const check1 = await page.evaluate(() => {
        return window.showOpenFilePickerIsCalled;
      });
      console.log(check1); // false

      const fileName = await page.evaluate(async () => {
        return (await window.showOpenFilePicker())[0].name;
      });
      console.log(fileName); // picked file name

      const check2 = await page.evaluate(() => {
        return window.showOpenFilePickerIsCalled;
      });
      console.log(check2);// true
    }
    catch(err) { console.error(err); } finally { await browser.close(); }
})();

However, I am getting false for every website and still getting an Evaluation Failed error as showed in below.
false
Error: Evaluation failed: [object Object]
    at ExecutionContext._evaluateInternal (/Users/harunoz/Desktop/hooking/node_modules/puppeteer/lib/ExecutionContext.js:122:13)
    at processTicksAndRejections (internal/process/task_queues.js:86:5)
  -- ASYNC --
    at ExecutionContext.<anonymous> (/Users/harunoz/Desktop/hooking/node_modules/puppeteer/lib/helper.js:111:15)
    at DOMWorld.evaluate (/Users/harunoz/Desktop/hooking/node_modules/puppeteer/lib/DOMWorld.js:112:20)
    at processTicksAndRejections (internal/process/task_queues.js:86:5)
  -- ASYNC --
    at Frame.<anonymous> (/Users/harunoz/Desktop/hooking/node_modules/puppeteer/lib/helper.js:111:15)
    at Page.evaluate (/Users/harunoz/Desktop/hooking/node_modules/puppeteer/lib/Page.js:827:43)
    at Page.<anonymous> (/Users/harunoz/Desktop/hooking/node_modules/puppeteer/lib/helper.js:112:23)
    at main (/Users/harunoz/Desktop/hooking/puppeteer.js:32:35)
    at processTicksAndRejections (internal/process/task_queues.js:86:5)

Can you help me with this error? How can I solve this issue?
Thanks.

@harunoz Can there be that you try to use this code on HTTP sites?
From Window.showOpenFilePicker() - Web APIs | MDN:

This feature is available only in secure contexts (HTTPS)...


Ignoring a feature only stays that way for the user's current session

User sees a magenta feature that is obviously a mistake.
User clicks it and then clicks "ignore feature."
It is now 5:30 PM, and user wishes to turn off his computer and go home.
However he cannot, as his browser warns him "Changes you made may not be saved."
Let's have another look at what the info button on "ignore feature" says:

Ignoring this feature helps us improve our machine learning. If you are unsure whether or not this is an accurate feature, feel free to leave it as is, nothing will be saved or lost. 👍

Well, if the user cannot "save" the fact that the feature is to be ignored, then he or the next guy will just encounter the feature again.
User really wants to go home so asks his co-workers what to do. They suggest hitting the Undo button, in the upper right.
OK, good. He hits it and Undo goes away, but Redo lights up... and... he still cannot close the browser without getting the "Changes you made may not be saved" warning.

Bryan, I am sorry I didn't see your reply due to
https://github.com/orgs/community/discussions/81772
I only noticed it a few days later due to an unrelated search.


dnsmasq daemon sometimes fails to quit

A couple times since the switch away from launchd to self-managed daemons, I've seen the dnsmasq daemon continue to run after stop/restart, causing the new dnsmasq process to fail with "Address already in use".

+1

yeah, this.

Is there any harm in switching back to launchd?

Yeah the way we were abusing launchd had much worse problems. I haven't tackled this issue yet because I have a co-worker who is pulling the dns/proxy functionality out into a separate project that runs dnsmasq in docker, which will solve this.

The master branch now runs dnsmasq inside Docker (actually in the http proxy container, see https://github.com/codekitchen/dinghy-http-proxy), so I'm going to close this.


Fix a tautology

This has been bothering me for so long. 😏 </pedantic>

Since @letompouce had approved, I'm going to merge this.


MessageChannel should specify whether it is an inbound or outbound channel

Copying from:
https://github.com/spring-projects/spring-integration/issues/2525
I've noticed that when I'm using Spring Cloud Streams (take the Sink.class and Source.class for example), both MessageChannels "output" and "input" are created as DirectChannels.
public interface Sink {

	String INPUT = "input";

	@Input(Sink.INPUT)
	SubscribableChannel input();

}

public interface Source {

	String OUTPUT = "output";

	@Output(Source.OUTPUT)
	MessageChannel output();

}

I actually have no way of knowing whether this DirectChannel is an output or an input (besides looking at the bean name, but I wouldn't want to rely on that).
It would be helpful for me, especially when using a @GlobalChannelInterceptor, to know whether a MessageChannel is an input or output (i.e. annotated with @Input or @Output).  That way, in a ChannelInterceptor.preSend() I could do some checking of whether this is an inbound message or an outbound message and apply logic accordingly.
Curious to hear what people think / maybe I'm missing something obvious.
NOTE: I raised this on DirectChannel because I see that it applies to both inbound and outbound channels, and other channels are more specific to either inbound or outbound.  However perhaps this makes sense in another class too...
Thanks
Nick

https://github.com/spring-projects/spring-integration/issues/2525#issuecomment-408216396

You can now test if the channel is DirectWithAttributesChannel and if it is, then you can look at the attributes as such:
DirectWithAttributesChannel inputChannel = (DirectWithAttributesChannel) testSink.input();
DirectWithAttributesChannel outputChannel = (DirectWithAttributesChannel) testSource.output();
assertThat(inputChannel.getAttribute("type")).isEqualTo(Sink.INPUT);
assertThat(outputChannel.getAttribute("type")).isEqualTo(Source.OUTPUT);

This is amazing!

In the newer version,  Sink interface is removed and therefore we cannot use Sink.INPUT.  Would be nice if there was a constant exposed to determine whether channel is of input or output type.
I see that "input" string is hardcoded here https://github.com/spring-cloud/spring-cloud-stream/blob/main/core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/binding/SubscribableChannelBindingTargetFactory.java#L73
Any thoughts on exposing this as a constant so that we can rely on framework itself rather than creating a new constant


Update command to retrieve admin key in base 64

Original command was not creating correct base64 key.

superseded by https://github.com/SUSE-Cloud/socok8s/pull/383
change transferred to doc/source


User ID isn't unescaped when authorizing

When User Id is entered it might be escaped before saving into config, but when authenticating it isn't unescaped.
There are also redundant method of escaping is used for User Id - symbol + doesn't require escaping for YAML strings
$> smartling-cli.exe init
Generating smartling.yml...
Enter User ID<EMAIL_ADDRESS>Enter Token Secret: secret
Enter Account ID (optional):
Enter Project ID:

smartling.yml:
user_id:
<EMAIL_ADDRESS>
secret:
    "secret"

With escaped + authentication fails, but when I manually replace + with + in config it works
If you do several re-inits (with existing config) leaving default values, you get this result in config:
user_id:
<EMAIL_ADDRESS>
& symbol is also escaped, and then escaped again and again

@dimitrystd: To fix it replace html/template to text/template on https://github.com/Smartling/smartling-cli/blob/master/config_template.go#L4

Verified


Add an appendPath function to append mixed derivation paths together

ACK

I believe there are more details to eventually consider to choose coins than the value. The age of coins is important too in order to drive transaction fees down. It is also preferrable to spend confirmed coins than mempool ones. Perhaps enriching the Coin class to include this would be a good idea.

Sure, having more policies for choosing coins is a good idea. However, I would only add new functions to the Coin class as we need them (together with the related code). I don't want to guess what functions we might need later as I might not know. The only requirement I currently have for coin selection is the value of a coin, which is why it is the only function required in the class.

ACK


removed re-download archives and fixed patches as per latest chromium source for mac

this change skips re-download same archive file from remote location..
this will trim approx 600mb file download time for the next build..
removed fix-gn-bootstrap.patch
updated proper file name and patch lines in vfix-visibility.patch file
update proper patch lines in fix-gn-safe_browsing.patch file

this change skips re-download same archive file from remote location..

I'm not sure what you mean. Can you clarify? The only changes I see made to the packaging scripts is -p to mkdir...
Also, it looks like macOS patches apply cleanly now. You can fix the CI check by removing the patches_outdated marking from bundlemeta.ini of macos.

when i build first time, remote archives(chromium, llvm, google toolbox) downloaded into download_cache folder. I got few errors, becauses of patches are not up-to-date. Then i modified a patch and try to build again. I got error saying download_cache directory already exists can not be created and build process exited. So i made command to ignore if the folder already exists by adding -p flag. Now, build process does not fail, if folder exists. So, no need to re-download archives again.


Cross compiling gobject-introspection fails

Describe the bug
Cross compiling gobject-introspection fails with
ERROR: An exe_wrapper is needed but was not found. Please define one in cross file and check the command and/or add it to PATH.

This package is needed for the tracker library which in turn is needed for GNURadio.
Steps To Reproduce
Steps to reproduce the behavior:

nix-build '<nixpkgs>' -A pkgsCross.aarch64-multiplatform.gobject-introspection

Expected behavior
I expected it to cross compile
Additional context
Building from nixos-21.11 nixpkgs.
Notify maintainers
@lovek323
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.10.109, NixOS, 21.11 (Porcupine)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.16`
 - channels(marble): `""`
 - channels(root): `"nixos-21.11.337311.fd3e33d696b"`
 - channels(work): `"nixos-unstable-21.11pre328987.c935f5e0add"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Looks like this has come up before: https://github.com/NixOS/nixpkgs/issues/72868

Ah, you're right. Sorry.
https://github.com/NixOS/nixpkgs/issues/72868


Field data returns one-less fields after query with limit

I'm extending the query() from core oci8 driver and I've found bug on $result->field_data() ($result is an oci8_result returned from parent::query() method).
The field_data() is returning one less fields on subsequent queries after doing select query with limit().
Here's the scenario where it failed:
// query with limit
$db->limit(5)->get('TABLE'); // field_data() returns full fields here

// subsequent query
$db->get('TABLE'); // field_data() returns one-less fields

Here's how I extends the query() and found the bug:
public function query($sql, $binds = FALSE, $return_object = NULL)
{
	$result = parent::query($sql, $binds, $return_object);
        // ............
        $field_data = $result->field_data();
       // dump field_data to check the fields, second query will return one-less fields
       var_dump($field_data);
}

After I trace oci8 driver files, I found that $this->limit_used is not reset to FALSE after select query is reset. Why it matters? When $this->limit_used is TRUE,  number of fields that being returned by field_data() will be subtracted by 1.
So my fix / workaround is by adding/overriding _reset_select() method on oci8_driver
protected function _reset_select ()
{
        parent::_reset_select();
        $this->limit_used = false;
}

Note that this problem occurs only with oci8 driver.
I hope it's already fixed in future release.
Thanks.

You're onto something as limit_used is never reset, indeed.
But almost nothing else makes sense ...

While not technically impossible (with certain limitations), we don't support extension of any of the database classes, so ... How? And why should we consider this as valid anything at all?
Even if we did support DB extensions, why is that a precondition for your bug report? It doesn't seem to me like it should be related at all?
What does "one-less fields" mean exactly? There's no expected vs actual results presented.
query() is to be directly used for raw SQL queries, while _reset_select() is an internal method to provision a reset of Query Builder conditions (and $limit_used is only relevant with QB) - no link between the two.
"I hope it's already fixed in future release." - if you hope it's already fixed, you can easily check if it is with a simple search.

That last one is just a nitpicky remark, but please do clarify on the rest.

Sorry for wasting your time because I didn't make it clear.

I'm doing it by extending the CI_Loader class and overriding the database() method to load my extension or the original if not found.
a. $limit_used in CI_DB_oci8_result is initialized with the same value of CI_DB_oci8_driver's $limit_used.
b.  Because field_data() is a protected method from CI_DB_Driver, so to my knowledge, to call it we need to either modify the database class or extend it. I'm doing the latter because it's "cleaner" and I've already extended it for another purpose.
Ahh, my bad. One-less fields means exactly that. The fields returned by field_data is missing one i.e. the last field.
This is only an example (json-encoded). I don't have access to Oracle database right now.
Expected:

[
	{
		"name": "id",
		"type": "NUMBER",
		"max_length": 32
	},
	{
		"name": "name",
		"type": "VARCHAR2",
		"max_length": 100
	},
	{
		"name": "price",
		"type": "NUMBER",
		"max_length": 12
	}
]

Actual (missing price field):
[
	{
		"name": "id",
		"type": "NUMBER",
		"max_length": 32
	},
	{
		"name": "name",
		"type": "VARCHAR2",
		"max_length": 100
	}
]

Very true. That's why I override the _reset_select() in CI_DB_oci8_driver, because $limit_used is used only by oci8 driver and result.
I was not really expecting it to be fixed to be honest. Because this's a special use case for me.
What I hoped was only so this could help anyone who faces similar issue.
I think it's just my habit to write it like that. Sorry if it was disturbing you.

I feel dumb, after writing the answer to no. 4.
I can just override the _reset_select() in my extension class so I don't need to modify the database class at all.
I guess I'm too exhausted yesterday after spending hours to fix the problem. Sorry about that.
Thank you for your time.

I had already said that you're onto something with this ... it's a legitimate bug; pushed the fix.
The points I listed were for clarification because you made the whole thing quite confusing. 3 is what I really needed info for, while the rest have literally no connection to the issue - they may be the circumstances under which you found the issue, but then become noise that needs to be separated out while figuring what's actually going on.


Utils#makeRoutes needs better wildcard directory handling

We have subsequently changed the wildcard formats to only use "template" files. As a result, this is no longer a valid issue.


How to control streams or json from client?

I'm a long time user of Reactor via Webflux in Spring Boot. I was testing Micronaut and noticed a couple of things.

An HTTP Client cannot control what response - stream-json / json - it would receive. This was possible in Spring Boot with "Accept" header. Eg: "Accept: application/json+stream" would give me a stream; "Accept: application/json" would give me a json.

I hae to annotate the code @Get(.., produces = MediaType.APPLICATION_JSON_STREAM) in order to get a stream. However, the emission rate is not maintained.

I've asked 2 questions on stack overflow: https://stackoverflow.com/questions/66352517/micronaut-reactive-streams-emission-rate-is-not-maintained
https://stackoverflow.com/questions/66336182/how-to-get-reactive-streams-in-micronaut
Request one of the SMEs to answer or help me find an answer.
Expected Behaviour

Client should be able to control the response type - json / stream of json
Emission rate should be maintained

Actual Behaviour

Client cannot control the response type
Emission rate not maintained, the stream of JSON comes as a blob of jsons after onComplete() signal

Environment Information

Operating System: Mac
Micronaut Version: 2.3.3
JDK Version: 14

Example Application
For question 1:
@Get(value = "/carts/reactive")
public Flux<Cart> getCartsReactive() {
     return Flux.range(1, 10)
            .map(integer -> Cart.builder().name("cart" + integer).build())
            .delayElements(Duration.ofMillis(1000))
            .doOnNext(cart -> log.info("Returning Flux of cart: " +cart));
}

For question 2:
@Get(value = "/carts/reactive", produces = MediaType.APPLICATION_JSON_STREAM)
public Flux<Cart> getCartsReactive() {
     return Flux.range(1, 10)
            .map(integer -> Cart.builder().name("cart" + integer).build())
            .delayElements(Duration.ofMillis(1000))
            .doOnNext(cart -> log.info("Returning Flux of cart: " +cart));
}

Question 1 is answered. Question 2 is still open.
Latest update on Question 2:
I have tried this on different machines - 1 Mac with JDK 11, 1 Mac with JDK 14, 1 Windows with JDK 14.
The emission rate is maintained only on Windows machines, not Mac.
I've updated the stack overflow ticket with this info. Request the SMEs to consider this.

Can you provide an example that reproduces the issue?

@graemerocher
Micheal Barry had created a repo for this on Stackoverflow. You can use this as an example.
https://github.com/berry120/micronaut-reactive-demo
Here is the stack overflow conversation: https://stackoverflow.com/questions/66352517/micronaut-reactive-streams-emission-rate-is-not-maintained


Update rustc (v1.0.0 -> v1.1.0)

Also add myself as a maintainer.
The comments are there to help people update the package. I had to ask how to find them, and figured that it's best to keep that information with a good place to update it.
I'm still building racer right now, but rustc was building my code correctly, so I'm 99% sure this is good.

See #8668

Bah, I should really look to see if others have already submitted PRs..., it'd be nice to have the comments added in this PR merged into that PR.


k3s v1.19.2+k3s1 : longhorn-driver-deployer CrashLoopBackOff

I am getting a CrashLoopBackOff for the longhorn-driver-deployer when deploying to k3s v1.19.2+k3s1.
Installed from upstream
kubectl apply -f https://raw.githubusercontent.com/longhorn/longhorn/master/deploy/longhorn.yaml
And the logs from the pod.
clemenko:clemenko k3s ( <IP_ADDRESS>:6443 ) $ kubectl logs longhorn-driver-deployer-6b7d76659f-vjflp -n longhorn-system
time="2020-10-07T18:12:44Z" level=debug msg="Deploying CSI driver"
time="2020-10-07T18:12:44Z" level=debug msg="proc cmdline detection pod discover-proc-kubelet-cmdline in phase: Pending"
time="2020-10-07T18:12:45Z" level=debug msg="proc cmdline detection pod discover-proc-kubelet-cmdline in phase: Pending"
time="2020-10-07T18:12:46Z" level=warning msg="Proc not found: kubelet"
time="2020-10-07T18:12:46Z" level=debug msg="proc cmdline detection pod discover-proc-k3s-cmdline in phase: Pending"
time="2020-10-07T18:12:47Z" level=debug msg="proc cmdline detection pod discover-proc-k3s-cmdline in phase: Pending"
time="2020-10-07T18:12:48Z" level=debug msg="proc cmdline detection pod discover-proc-k3s-cmdline in phase: Running"
time="2020-10-07T18:12:49Z" level=warning msg="Proc not found: k3s"
time="2020-10-07T18:12:49Z" level=error msg="failed to get arg root-dir. Need to specify \"--kubelet-root-dir\" in your Longhorn deployment yaml.: failed to get kubelet root dir, no related proc for root-dir detection, error out"
time="2020-10-07T18:12:49Z" level=fatal msg="Error deploying driver: failed to get arg root-dir. Need to specify \"--kubelet-root-dir\" in your Longhorn deployment yaml.: failed to get kubelet root dir, no related proc for root-dir detection, error out"

This works perfectly fine with k3s 1.18.
You can recreate with deploying with on the latest channel. Stable works.

@khushboo-rancher Can you see if you can reproduce this issue?

I couldn't reproduce the issue on v1.19.2+k3s1 cluster with ubuntu 18.04 nodes.
I tried with both Helm command and kubectl command, I was able to deploy the longhorn and longhorn-driver-deployer comes up active successfully.
@clemenko Could you please let us know the OS of the nodes you tried with?

I am using Ubuntu 20.04 on digitalocean. The install is with kubectl.

andy -<PHONE_NUMBER>

From: khushboo-rancher<EMAIL_ADDRESS>Sent: Wednesday, October 7, 2020 7:58:59 PM
To: longhorn/longhorn<EMAIL_ADDRESS>Cc: Andy Clemenko<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [longhorn/longhorn] [Question] longhorn-driver-deployer CrashLoopBackOff (#1861)
I couldn't reproduce the issue on v1.19.2+k3s1 cluster with ubuntu 18.04 nodes.
I tried with both Helm command and kubectl command, I was able to deploy the longhorn and longhorn-driver-deployer comes up active successfully.
@clemenkohttps://github.com/clemenko Could you please let us know the OS of the nodes you tried with?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/longhorn/longhorn/issues/1861#issuecomment-705253790, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AAYHWPCMMJTBVEVPMAF4OS3SJT6EHANCNFSM4SHXTWLA.

Thanks for the reporting @clemenko .  @khushboo-rancher and I have reproduced the issue with k3s v1.19.2+k3s1. We also verified that k3s v1.18 works fine.
For now, the temporary workaround is to set KUBELET_ROOT_DIR to /var/lib/kubelet here.

The root cause is k3s changed the command line separator. Before k3s v1.19, the cmdline is separated by \00:
hexdump -C cmdline
00000000  2f 75 73 72 2f 6c 6f 63  61 6c 2f 62 69 6e 2f 6b  |/usr/local/bin/k|
00000010  33 73 00 61 67 65 6e 74  00 2d 2d 6e 6f 64 65 2d  |3s.agent.--node-|
00000020  65 78 74 65 72 6e 61 6c  2d 69 70 00 31 38 2e 32  |external-ip.18.2|
00000030  31 36 2e 31 38 2e 31 35  37 00                    |16.18.157.|
0000003a

After v1.19, it's using normal spaces, which is \20:
hexdump -C cmdline
00000000  2f 75 73 72 2f 6c 6f 63  61 6c 2f 62 69 6e 2f 6b  |/usr/local/bin/k|
00000010  33 73 20 61 67 65 6e 74  00 00 00 00 00 00 00 00  |3s agent........|
00000020  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|

Our driver detection script at https://github.com/longhorn/longhorn-manager/blob/6efea60312f19e6e82caee0f1632629f35ffc86a/app/get_proc_arg.go#L53 is using \00 instead of \20 as the separator so it failed to recognized the new format.
It's a straightforward fix but we do need to consider both situations.
Also, not sure when the code was checked in too and if it will only affect v1.19 in the future.

The workaround worked. Thanks!
for those playing along at home :
curl https://raw.githubusercontent.com/longhorn/longhorn/master/deploy/longhorn.yaml | sed -e 's/#- name: KUBELET_ROOT_DIR/- name: KUBELET_ROOT_DIR/g' -e 's$#  value: /var/lib/rancher/k3s/agent/kubelet$  value: /var/lib/kubelet$g' | kubectl apply -f -

for the win

FYI the /proc/pid/cmdline change is due to https://github.com/rancher/k3s/pull/2072

@brandond
Thanks a bunch. I am looking for the reason :)

Verified with longhorn master - 10/12/2020
Validation - Pass
Deployed longhorn on k3s v1.19.2+k3s1 and k3s v1.18.9+k3s1 cluster successfully.
Validate the basic case of creating volume and taking a snapshot of some data.
Logs from longhorn-driver-deployer pod
time="2020-10-12T21:33:51Z" level=debug msg="Deploying CSI driver"
time="2020-10-12T21:34:00Z" level=debug msg="proc cmdline detection pod discover-proc-kubelet-cmdline in phase: Running"
Mon, Oct 12 2020 2:34:01 pm | time="2020-10-12T21:34:01Z" level=debug msg="proc cmdline detection pod discover-proc-kubelet-cmdline in phase: Running"
Mon, Oct 12 2020 2:34:02 pm | time="2020-10-12T21:34:02Z" level=debug msg="proc cmdline detection pod discover-proc-kubelet-cmdline in phase: Running"
Mon, Oct 12 2020 2:34:03 pm | time="2020-10-12T21:34:03Z" level=warning msg="Proc not found: kubelet"
Mon, Oct 12 2020 2:34:03 pm | time="2020-10-12T21:34:03Z" level=debug msg="proc cmdline detection pod discover-proc-k3s-cmdline in phase: Pending"
Mon, Oct 12 2020 2:34:04 pm | time="2020-10-12T21:34:04Z" level=debug msg="proc cmdline detection pod discover-proc-k3s-cmdline in phase: Pending"
Mon, Oct 12 2020 2:34:05 pm | time="2020-10-12T21:34:05Z" level=debug msg="proc cmdline detection pod discover-proc-k3s-cmdline in phase: Pending"
Mon, Oct 12 2020 2:34:06 pm | time="2020-10-12T21:34:06Z" level=info msg="Proc found: k3s"
Mon, Oct 12 2020 2:34:06 pm | time="2020-10-12T21:34:06Z" level=info msg="Detected root dir path: /var/lib/kubelet"

If anyone wants to install using the helm chart, an overrides file with:
csi:
  kubeletRootDir: /var/lib/kubelet

or directly
helm upgrade longhorn longhorn/longhorn --namespace longhorn-system --set csi.kubeletRootDir=/var/lib/kubelet
Seemed to do the trick for me.

This is happening (still/again?) in k3s v1.19.3+k3s3 with the following log output:
time="2020-11-14T17:24:47Z" level=debug msg="Deploying CSI driver"
time="2020-11-14T17:24:47Z" level=debug msg="proc cmdline detection pod discover-proc-kubelet-cmdline in phase: Pending"
time="2020-11-14T17:24:48Z" level=debug msg="proc cmdline detection pod discover-proc-kubelet-cmdline in phase: Pending"
time="2020-11-14T17:24:49Z" level=debug msg="proc cmdline detection pod discover-proc-kubelet-cmdline in phase: Running"
time="2020-11-14T17:24:50Z" level=warning msg="Proc not found: kubelet"
time="2020-11-14T17:24:50Z" level=debug msg="proc cmdline detection pod discover-proc-k3s-cmdline in phase: Pending"
time="2020-11-14T17:24:51Z" level=debug msg="proc cmdline detection pod discover-proc-k3s-cmdline in phase: Pending"
time="2020-11-14T17:24:52Z" level=debug msg="proc cmdline detection pod discover-proc-k3s-cmdline in phase: Running"
time="2020-11-14T17:24:53Z" level=warning msg="Proc not found: k3s"
time="2020-11-14T17:24:53Z" level=error msg="failed to get arg root-dir. Need to specify \"--kubelet-root-dir\" in your Longhorn deployment yaml.: failed to get kubelet root dir, no related proc for root-dir detection, error out"
time="2020-11-14T17:24:53Z" level=fatal msg="Error deploying driver: failed to get arg root-dir. Need to specify \"--kubelet-root-dir\" in your Longhorn deployment yaml.: failed to get kubelet root dir, no related proc for root-dir detection, error out"

The workaround by @AntonOfTheWoods in https://github.com/longhorn/longhorn/issues/1861#issuecomment-716459507 worked for me, but shouldn’t auto detection work as of @khushboo-rancher's comment https://github.com/longhorn/longhorn/issues/1861#issuecomment-707376267?

@morremeyer The fix is only available on master branch. It is not back ported to the older versions yet.
@yasker When will we back ported to the older versions?

@PhanLe1010 Oh, totally missed that, thanks! Just so I get it right, not backporting it would mean it would only be available with the v.1.20.x+k3sy releases?

@morremeyer not backporting the fix would mean that it would only be available on Longhorn v1.1.0 release and the releases after that. However, I will backport this to older Longhorn versions so that users don't have to do the workaround

@PhanLe1010 Backporting means we need to create a new release v1.0.3, which we decide not to do last time since it's very close to the v1.1.0 release.

Thank you @yasker

@morremeyer  I am very sorry for providing the wrong information. The correct information is mentioned by https://github.com/longhorn/longhorn/issues/1861#issuecomment-727656009 . Backporting means that we would provide a patch release for older version. However, we decide not to do it this time because it's very close to the v1.1.0 release.

Hi. I installed Longhorn 1.2.0 today on Microk8s and hit the issue. Had to use
curl https://raw.githubusercontent.com/longhorn/longhorn/master/deploy/longhorn.yaml | sed -e 's/#- name: KUBELET_ROOT_DIR/- name: KUBELET_ROOT_DIR/g' -e 's$#  value: /var/lib/rancher/k3s/agent/kubelet$  value: /var/lib/kubelet$g' | kubectl apply -f -

This got longhorn running, but I am having all sorts of weird issues deploying manifests that just work on K3s+Longhorn.
Will post some errors on a following message.

Hello @robertorubioguardia,
After some digging, I can make the Longhorn working with microk8s with KUBELET_ROOT_DIR point to /var/snap/microk8s/common/var/lib/kubelet.
As the kubelet parameters used by microk8s is: --root-dir=${SNAP_COMMON}/var/lib/kubelet.
Where $SNAP_COMMON can be check by entering snap run --shell microk8s then env | grep SNAP.
Please try your installation again with this command(that I just modified from yours):
$ curl https://raw.githubusercontent.com/longhorn/longhorn/v1.2.0/deploy/longhorn.yaml | sed -e 's/#- name: KUBELET_ROOT_DIR/- name: KUBELET_ROOT_DIR/g' -e 's$#  value: /var/lib/rancher/k3s/agent/kubelet$  value: /var/snap/microk8s/common/var/lib/kubelet$g' | kubectl apply -f -

This is working on my local VMs with latest/stable channel at v1.22.2, please let me know if you are using different version.

Hello @robertorubioguardia,
After some digging, I can make the Longhorn working with microk8s with KUBELET_ROOT_DIR point to /var/snap/microk8s/common/var/lib/kubelet.
As the kubelet parameters used by microk8s is: --root-dir=${SNAP_COMMON}/var/lib/kubelet. Where $SNAP_COMMON can be check by entering snap run --shell microk8s then env | grep SNAP.
Please try your installation again with this command(that I just modified from yours):
$ curl https://raw.githubusercontent.com/longhorn/longhorn/v1.2.0/deploy/longhorn.yaml | sed -e 's/#- name: KUBELET_ROOT_DIR/- name: KUBELET_ROOT_DIR/g' -e 's$#  value: /var/lib/rancher/k3s/agent/kubelet$  value: /var/snap/microk8s/common/var/lib/kubelet$g' | kubectl apply -f -

This is working on my local VMs with latest/stable channel at v1.22.2, please let me know if you are using different version.

Awesome worked smoothly thank you!!!


ScalaPB module should support ZIO code generation

ScalaPB now allows ZIO code gen along with downloading artifacts from Maven as seen here:
https://scalapb.github.io/scalapbc.html#loading-additional-generators-from-maven

@lefou are you working on this? I want to create a zio-grpc service for a personal project and I'm using mill so having this ready would be great.
If not, I think I can try to extend ScalaPBWorker and add the ZIO-grpc stuff but I will appreciate any tips you can give me to get it started.

@DanielBlanco Great, and welcome! I've not planned to work on it in near future. @DamianReeves already started pull request #789 which is a good starting point to try out and experiment. If you have questions, best is to ask in the mill channel on Gitter. Or just ping me there.

Opened this PR https://github.com/lihaoyi/mill/pull/1002 @lefou maybe you can look at it and give me your thoughts.

I guess we can close this since the linked PR is merged?


PROD: GA3, GA4 templates / twitter deletion from templates / datahub update

Changes:
Google analytics template renamed to Universal analytics
new template for GA4
dathub template update - sql fix
twitter deletion from a template because of deprecated component
Thoughtspot hubspot fixes - new columns added into the model

@TomNett please approve and merge :-)


Application doesn't launch

I get the following error when i try to run the application 'System.ExecutionEngineException' was thrown. Reading about it online said it has got something to do with garbage collection. how do i go about this?

Is the Screna packaged installed from NuGet?
Also Let me know the OS you are using and the version of .Net Framework

Yes I used NuGet. I'm running Windows 10 and my .Net framework is 4.5
And I use VS 2013
On 4 Feb 2016 17:25, "Mathew Sachin"<EMAIL_ADDRESS>wrote:

Is the Screna packaged installed from NuGet?
Also Let me know the OS you are using and the version of .Net Framework
—
Reply to this email directly or view it on GitHub
https://github.com/MathewSachin/Captura/issues/39#issuecomment-179833182
.

Strange, this MSDN page says System.ExecutionEngineException is obsolete from .Net 4.0.
Can you verify the exception and provide the Exception.Message

Exception of type 'System.ExecutionEngineException' was thrown.
That's all it says. The code compiles but running it throws the above error.

Thanks for the help Matthew, I decided to restart my machine and it works now. Thank you

So it may be an issue with the OS


Error when running example of LINE

When run the following cmd,
python src/main.py --method line --label-file data/blogCatalog/bc_labels.txt --input data/blogCatalog/bc_adjlist.txt --graph-format adjlist --output vec_all.txt
And get error,

File "/home/***/runspace/OpenNE/src/libnrl/graph.py", line 27, in encode_node
self.G.nodes[node]['status'] = ''
TypeError: 'instancemethod' object has no attribute 'getitem'

Maybe your Networkx version is not correct. You can see this issue #1 .


file:///Users/[USER_NAME]/.pub-cache/hosted/pub.dev/jw_video_player-0.0.1/android/src/main/kotlin/jwplayer/jwplayer/QueueEventSink.kt:36:17

Hi, I have a error and I am find fixed problem
36 and 39. Lines must be enclosed in parentheses. -> ( )
private fun tryFlush() {

if (mDelegate == null)
return
    for (event in eventQueue) {

           when (event) {

                ( event is EndOfStreamEvent ) -> {

                    mDelegate?.endOfStream()

               }
                ( event is ErrorEvent ) -> {

                   val errorEvent = event as ErrorEvent

                   mDelegate?.error(errorEvent.code, errorEvent.message, errorEvent.details)

                }

                else -> mDelegate?.success(event)

           }

       }

       eventQueue.clear()

    }

Hi Kagan, thanks for creating the issue. Will have a solution up as soon as possible


SEO

User friendly description which is displayed to the user in the browser search suggestions.

applied seo meta tags but they are currently not applied correctly


Active link tile background color

Suggestion to provide the ability to change the background when the tile link matches the current URL.  This is for when you are using the same set of tiles for page navigation so the user can clearly see they they are on the page that the tile with a different background color has.

You always have such great ideas.


Development feature: Use GP3-xTB each time a new compound is generated

implement a GP3-xTB QMMethod class
conduct a GP3-xTB single-point calculation everytime a GFN_n_-xTB refinement has been successful
check for properties

HOMO-LUMO gap < 1.5 eV
less than 500 SCF cycles

If calculation doesn't converge/doesn't meet requirements, dump structure to file and label accordingly!

Would be closed with https://github.com/grimme-lab/MindlessGen/pull/49 and an additional code block from https://github.com/marcelmbn/MindlessGen/blob/dev/gp3_testing/src/mindlessgen/generator/main.py (currently, the following lines:
https://github.com/marcelmbn/MindlessGen/blob/4107338cfa719104954d3d07a65a547f6227dcfd/src/mindlessgen/generator/main.py#L222-L250
FYI: @jonathan-schoeps

This implementation should work now.


librephotos-proxy has hard-coded hostnames for backend, frontend

🐛 Bug Report

[ N/A ] I am including my log files in zip format.
[ x] I have looked for similar issues among all the former issues including closed ones.

What Operating system and version is LibrePhotos running on:
Ubuntu 20.04LTS node.
What architecture is LibrePhotos running on:
x64
How is LibrePhotos installed:
Kubernetes
If running via Docker or Kubernetes please list version including docker-compose:
k3s:
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.1+k3s1", GitCommit:"75dba57f9b1de3ec0403b148c52c348e1dee2a5e", GitTreeState:"clean", BuildDate:"2021-05-21T16:12:33Z", GoVersion:"go1.16.4", Compiler:"gc", Platform:"linux/arm"}

(k3s server is on arm, but the node that's running librephotos is x86 Ubuntu)
Are you running LibrePhotos on a virtual machine if so please list:
No
How is you picture library mounted on the host (or in the virtual machine):
NFS
Description of issue:
If you are not using the precisedocker-compose setup, the proxy will break. For example if you run your services under different names, or all accessible through localhost, or on kubernetes, the proxy breaks.
proxy log output:
/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2021/07/06 09:57:03 [emerg] 1#1: host not found in upstream "frontend" in /etc/nginx/nginx.conf:19
nginx: [emerg] host not found in upstream "frontend" in /etc/nginx/nginx.conf:19

How can we reproduce it:
Change the hostname for the frontend in docker-compose.yaml to frontend-foobar.
OR
Run in kubernetes.
OR
Run the services all exposed on "localhost".
Additional Information:
proposed solution: populate the hostnames on the proxy with env vars.
related to #61

You can change now your names with the make command.