🐛: Sidebar not sticky in light theme.

:red_circle: Title : Sidebar not sticky in light theme.
:red_circle: Bug : The sidebar fails to remain sticky when the light theme is enabled. This issue causes the sidebar to scroll with the page content instead of remaining fixed in position, which affects the user experience by making the sidebar inaccessible when the user scrolls down.
:red_circle: Changes :  The sidebar component styles need to be updated so that the sidebar remains sticky in the light theme as well.
Screenshots 📷

:white_check_mark: To be Mentioned while taking the issue :

Full name : Pranav Keshav
What is your participant role?  I am a contributor at GSSoC' 24.

Please assign this issue to me. I would be very happy to work on it.

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

now it works fine


[CI fix] boards: arm: add missing memory-region compatible to stm32h7b3i_dk

Hi, quick fix for stm32h7b3i_dk dts, the board support and API change have been merged separately and the CI is currently broken. Tested with
$ west build -p -b stm32h7b3i_dk tests/kernel/common and $ west build -p -b stm32h7b3i_dk samples/synchronization.
-- 8< --
Add missing compatible = "zephyr,memory-region" to the sdram2 node for
stm32h7b3i_dk.dts. This is required since 18ffcdcf74.
Signed-off-by: Fabio Baltieri<EMAIL_ADDRESS>

@carlocaione ^^


High GPU Memory Usage during Batch Execution of Graphs in Graph Transformer

Description:
When running a batch of 32 graphs using the GraphTransformer object, there is a notable increase in GPU memory usage during the operation on the edges. The memory spikes from approximately 830 MiB (solely due to the CUDA context) to around 4347 MiB. The operation in question is located at line 84 in the graph_transformer_pytorch.py file in the repository.
Problem Details:

Dimensions of the edge tensor: torch.Size([32, 236, 236, 8]).
Number of heads: 8 (I know that it is too much for 8-sized edges, but that number is for testing purposes only)
Operation causing GPU memory increase: Link to Line 84.

Optimization Proposal:
It is suggested to explore the possibility of optimizing the operation. Considering the adjacency matrix is already available, masking the edges that are irrelevant using a softmax function could be a potential optimization. This would eliminate the need to forward those edges, potentially reducing the GPU memory load.
While I am open to attempting these optimizations myself, my concern lies in the potential inefficiency or unintended degradation of the model if critical considerations are overlooked. Therefore, any guidance, insights, or collaboration on implementing these optimizations efficiently would be immensely valuable.

Also, when I run this line the GPU usage goes to 7877MiB and when I continue over this line it goes up to 11359MiB.


How can I show the string "Today" if the selected date and current date are same?

Expected behavior
If the selected date and current date are the same it should show the string "Today" instead date.

Actual behavior
It shows the date even if the selected date and current date are the same.
Steps to reproduce

Select current date from date picker.

you can manually set the value using the value prop if you want to show "Today" on today's date.


python shockwave extractor

very experimental, does not export all files properly, but the majority
works. probably more useful for comparing ideas about the file formats.
also, git is really overcomplicated for what it is, this is a mess

Alright then
My only problem with the fact it lacks comments is that Schockabsorber also lacks comments and such, and as a result, if not for tomysshadow, it wouldn't be usable by me, because I can't read it
i agree, there's stuff about git/github that... isn't too awesome

Because of the language barrier? I can try adding some comments to it.

just in general, reading another's code is not always easy. ofc, i only really skimmed yours.
it's still a good idea to comment code. self-documenting code honestly only goes so far.
python i sorta understand?
throw some C/C++/ASM at me, there might be problems
As long as it's not minimized or obfuscated (or strange dialects or manners of writing it), i usually can read:
js,as,haxe,batch,python,java
basically, anything either high level or not inherently difficult. probably even some esolangs (alright, one... I think I could get used to reading FIM++, but it's so under-developed there's no reason for me to take interest)
idk...
i don't have any huge language barriers excluding those that are obscure or arcane. that said, don't for ANY reason write something in brainf--- and expect me to understand. (ironically, i wanna try some stuff concerning it)
i need to sleep now

true true, that's why i usually don't work with other people haha
i put some comments in, just gotta put the github client on this pc

makes sense i suppose


[ISSUE #5585] Upgrade dledger version

Make sure set the target branch to develop
What is the purpose of the change
Tracking issue: #5585
Brief changelog
Upgrade dledger version
Verifying this change
XXXX
Follow this checklist to help us incorporate your contribution quickly and easily. Notice, it would be helpful if you could finish the following 5 checklist(the last one is not necessary)before request the community to review your PR.

[x] Make sure there is a Github issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a Github issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[x] Format the pull request title like [ISSUE #123] Fix UnknownException when host config not exist. Each commit in the pull request should have a meaningful subject line and body.
[x] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Write necessary unit-test(over 80% coverage) to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add integration-test in test module.
[x] Run mvn -B clean apache-rat:check findbugs:findbugs checkstyle:checkstyle to make sure basic checks pass. Run mvn clean install -DskipITs to make sure unit-test pass. Run mvn clean test-compile failsafe:integration-test  to make sure integration-test pass.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Codecov Report

Merging #5586 (2c3afbb) into develop (93e82c8) will increase coverage by 0.06%.
The diff coverage is 0.00%.

@@              Coverage Diff              @@
##             develop    #5586      +/-   ##
=============================================
+ Coverage      42.40%   42.47%   +0.06%
- Complexity      7932     7945      +13
=============================================
  Files           1022     1022
  Lines          71254    71255       +1
  Branches        9399     9399
=============================================
+ Hits           30216    30263      +47
+ Misses         37208    37164      -44
+ Partials        3830     3828       -2

Impacted Files
Coverage Δ

...controller/impl/DLedgerControllerStateMachine.java
77.27% <0.00%> (-3.68%)
:arrow_down:

...org/apache/rocketmq/store/ha/WaitNotifyObject.java
80.35% <0.00%> (-5.36%)
:arrow_down:

...tmq/remoting/protocol/body/ConsumerConnection.java
95.83% <0.00%> (-4.17%)
:arrow_down:

...pl/consumer/ConsumeMessageConcurrentlyService.java
46.60% <0.00%> (-2.27%)
:arrow_down:

...a/org/apache/rocketmq/filter/util/BloomFilter.java
60.43% <0.00%> (-2.20%)
:arrow_down:

.../apache/rocketmq/store/ha/DefaultHAConnection.java
65.86% <0.00%> (-1.21%)
:arrow_down:

...che/rocketmq/acl/plain/PlainPermissionManager.java
78.22% <0.00%> (-0.54%)
:arrow_down:

...ava/org/apache/rocketmq/test/util/VerifyUtils.java
0.00% <0.00%> (ø)

...ava/org/apache/rocketmq/common/BrokerIdentity.java
40.67% <0.00%> (ø)

...ava/org/apache/rocketmq/filter/util/BitsArray.java
59.82% <0.00%> (ø)

... and 14 more

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Progress reporting during --val step

At the moment, there is no regular feedback during the validation step, and as it can take several hours this might be disconcerting to users. We should have a info log message every 10 minutes reporting the average number of evidences per second processed in the last 10 minutes. This would be a balance between overly verbose logging, and silence. As a bonus, we could make that 10 minutes to be a configurable number of seconds.

Closing, not critical can be recreated if needed.


[TS2503] Should we override Animated to be a TS namespace?

Currently in DT Animated is defined as a namespace, whereas it's a plain object in the Flow types.
import { Animated } from "react-native"
const value: Animated.Value = new Animated.Value(42)

I’m on the fence as to what to do here.

I recall that @TheSavior previously had mentioned that RN core is open to accepting patches to change code to use ES6 syntax, but that they simply hadn’t had a strong need to do so yet. Perhaps the Animated APIs would be a good case to change upstream so that we don’t need to do any real conversions, but that means that for the time being we should perform that change in the TS typings with an override.

I recall that @TheSavior previously had mentioned that RN core is open to accepting patches to change code to use ES6 syntax, but that they simply hadn’t had a strong need to do so yet. Perhaps the Animated APIs would be a good case to change upstream so that we don’t need to do any real conversions, but that means that for the time being we should perform that change in the TS typings with an override.

What would you propose the change to the upstream code looks like?

What would you propose the change to the upstream code looks like?

I decided to fix it in TS instead, seeing as namespaces are a TS only thing. https://github.com/microsoft/flow2dts/commit/d385982e8b7a8d4d0cbf43bfd5859ba5de096f12

I decided to fix it in TS instead, seeing as namespaces are a TS only thing. https://github.com/microsoft/flow2dts/commit/d385982e8b7a8d4d0cbf43bfd5859ba5de096f12


The file "dlv" does not exist (it does indeed exist)

I get a The file "dlv" does not exist when trying to run the debugger. I've tried with default settings on a fresh install, and with two different verified dlv binary paths, specifying both Delve (Auto) and Custom options for good measure. I've also made sure to check both linked paths and direct paths. The binaries work, as I can use them without issue from the terminal. The only additional information in the report is as follows:
The file “dlv” doesn’t exist.
The file doesn’t exist.

This has occurred on both macOS 13 and 14 on two different machines (M1 Pro, M2 Pro, respectively; latest build of Nova and a development build).
Edit: using Go-Bee v0.8.0 (looks like a related issue was patched in v0.7.0).

Can confirm the same behavior. Is the dlv path hardcoded in this plugin somewhere?

Update: I did check for updates on the Go-Bee extension, and it prompted me to install dlv.
(Note: I already had dlv installed and working in terminal, so I'm not sure where it installed to)
After that Debug worked. However, it is not respecting my Run pipeline configuration.
I'm trying to execute debug in a subfolder with:
dlv debug structs/main.go
But it always start debug in the workspace folder.

Update 2: Got it to work by specifying Go Debug > Program as structs/main.go.

Thanks @halfnibble! I ran into the same issue and was able to fix it by checking for updates and installing dlv via the prompt.

We don't know how to find dlv in your environment.  Possibly we should fix that.  But certainly using the plugin to install its own version will work, as you've learned.


support magic comments in experimental css

Feature request
support /* webpackIgnore: true */

What is the expected behavior?
ignore url()
What is motivation or use case for adding/changing the behavior?
ignore url() requests
How should this be implemented in your opinion?
support /* webpackIgnore: true */ magic comment
Are you willing to work on this yourself?
yes

bump

Added here https://github.com/webpack/webpack/issues/14893, we handle all possible cases for CSS urls, expect (src and image, I will implement them soon) right now


Update dependency @types/node to v20

This PR contains the following updates:

Package
Type
Update
Change

@types/node (source)
devDependencies
major
16.18.59 -> 20.8.10

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

Renovate Ignore Notification
Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for any future 20.x releases. But if you manually upgrade to 20.x then Renovate will re-enable minor and patch updates automatically.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.


Classification with LoRA and LLAMA/Mistral example

System Info
TensorRT-LLM 0.8
Nvidia A100
Cuda 12.2
Who can help?
I can run LLAMA with LoRA weights for text generative tasks like completion and summarization. However, I have trained a model with classification LoRA. When I tried to run with run.py, I can able to do generative tasks. However, I wanted to do classifcation.
Can you post an example where LLM like LLAMA or MISTRAL is fine tuned with classification head using LoRA and convert those checkpoints and do classification by running run.py?
It appears model_runner does only decode?
https://github.com/NVIDIA/TensorRT-LLM/blob/89ba1b1a67d570e41b03da87e5518eaff0d31fbf/tensorrt_llm/runtime/model_runner.py#L788
Information

[X] The official example scripts
[ ] My own modified scripts

Tasks

[ ] An officially supported task in the examples folder (such as GLUE/SQuAD, ...)
[X] My own task or dataset (give details below)

Reproduction
.
Expected behavior
A working example for classification with LoRa and LLM
actual behavior
Unavailable
additional notes
.

The requirement is not very clear for me. Do you want to get the context logits of model instead of generating tokens? If so, you could get the logits of context by adding --gather_context_logits during building engine.

Sorry I was not clear.
I took HF LLM like Mistral and used it for classification task using LoRA.
I have saved the model.
I can build an engine with Foundation model and LoRA which does classification.
When I run, run.py with that engine, I can only get generation output not classification
python ../run.py --engine_dir "$ENGINE_DIR" \
              --max_output_len 10 \
              --tokenizer_dir ${BASE_LLAMA_MODEL} \
              --input_text "i want to pay for my book" \
              --lora_task_uids 0 \
              --use_py_session --top_p 0.5 --top_k 0

TensorRT-LLM only provided the examples about generation. For classification, you might need to change the example script.

Can you pleaser share pointer or direction to solve this?
What changes should I make in the code?

TensorRT-LLM only provided the examples about generation. For classification, you might need to change the example script.

How do you change the example script? Can you suggest a psuedo code?

Hi @bjayakumar do u still have further issue or question now? If not, we'll close it soon.


[BUG] Publish snapshot workflows intermittently failing

What is the bug?
Looking at https://github.com/opensearch-project/opensearch-java/actions/workflows/publish-snapshots.yml many workflows fail with a 403.
How can one reproduce the bug?
https://github.com/opensearch-project/opensearch-java/actions/workflows/publish-snapshots.yml
What is the expected behavior?
Workflows to all be green.

[Catch All Triage - 1, 2, 3]

Workflow was run without issue for >2months


Regression: Compilation fails without clear error description if the project contains "part" declarations with absolute path

I'm using the latest master build. The issue started when I upgraded the master build from 3 or 4 days ago.
Compilation of my project failed with the following error:
Initializing gradle...                                       0,6s
Resolving dependencies...                                    1,8s
Gradle task 'assembleRelease'...
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
registerResGeneratingTask is deprecated, use registerGeneratedResFolders(FileCollection)
U
nhandled exception:
Unsupported operation: C
annot extract a file path from a package URI
#0      _Uri.toFilePath (dart:core/uri.dart:2617:7)
#1      _writeDepfile (package:vm/frontend_server.dart:662:32)
<asynchronous suspension>
#2      FrontendCompiler.compile (package:vm/frontend_server.dart:367:15)
<asynchronous suspension>
#3      _FlutterFrontendCompiler.compile (package:frontend_server/server.dart:31:22)
<asynchronous suspension>
#4      starter (package:frontend_server/server.dart:133:27)
<asynchronous suspension>
#5      main (file:///E:/b/build/slave/Windows_Engine/build/src/flutter/frontend_server/bin/starter.dart:8:30)
<asynchronous suspension>
#6      _startIsolate.<anonymous closure> (dart:isolate/runtime/libisolate_patch.dart:287:32)
#7      _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)

Compiler terminated unexpectedly.
Gradle task 'assembleRelease'... Done                       28,6s
Gradle task assembleRelease failed with exit code 1

It took me a few hours to find out what causes the issue, and how to fix it:
In one source file of my app, I had a statement like this:
part 'package:some_app/chat/data/chat_background_jobs.g.dart';

Using a relative path to the part compiles without errors:
part 'chat_background_jobs.g.dart';

I had the exact issue as you.. following your advice, I went through my External Libraries > Dart Packages and found the same thing in the permission_handler.dart file. Changing it has taken the error away.
Thanks!

@daimionsg Can you elaborate on how did you fix the error? I had the same error.

@daimionsg Thanks! It's working now. I hope flutter team will make update on this.

Merging with #22785

@zoechi Merging with what? You linked this issue.

Thanks! fixed.


Erigon error (chain id) after update to CLI 0.14.0

Type
Erigon does not sync with a chain ID error. I had to delete my mainnet db after updating erigon. Now I'm stuck re-syncing. checkpoint flag is set and lukso init was done after updating.
Description
[INFO] [12-07|13:21:07.792] logging to file system                   log dir=mainnet-data/execution/logs file prefix=erigon log level=info json=false
[INFO] [12-07|13:21:07.793] Enabling metrics export to prometheus    path=http://<IP_ADDRESS>:6060/debug/metrics/prometheus
[INFO] [12-07|13:21:07.793] Build info                               git_branch= git_tag= git_commit=
[INFO] [12-07|13:21:07.794] Maximum peer count                       ETH=100 total=100
[INFO] [12-07|13:21:07.795] starting HTTP APIs                       APIs=erigon,engine
[INFO] [12-07|13:21:07.795] torrent verbosity                        level=WRN
[INFO] [12-07|13:21:09.900] Set global gas cap                       cap=50000000
[INFO] [12-07|13:21:09.981] [Downloader] Runnning with               ipv6-enabled=true ipv4-enabled=true download.rate=16mb upload.rate=4mb
[INFO] [12-07|13:21:09.982] Opening Database                         label=chaindata path=/home/basti/myLUKSOnode/mainnet-data/execution/chaindata
[INFO] [12-07|13:21:09.986] [db] chaindata                           sizeLimit=12TB pageSize=8192
[INFO] [12-07|13:21:09.988] Initialised chain configuration          config="{ChainID: 1, Homestead: 1150000, DAO: 1920000, Tangerine Whistle: 2463000, Spurious Dragon: 2675000, Byzantium: 4370000, Constantinople: 7280000, Petersburg: 7280000, Istanbul: 9069000, Muir Glacier: 9200000, Berlin: 12244000, London: 12965000, Arrow Glacier: 13773000, Gray Glacier: 15050000, Terminal Total Difficulty:<PHONE_NUMBER>0000000000000, Merge Netsplit: <nil>, Shanghai:<PHONE_NUMBER>, Cancun: <nil>, Prague: <nil>, Engine: ethash}" genesis=0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3
[INFO] [12-07|13:21:09.997] Initialising Ethereum protocol           network=42
[INFO] [12-07|13:21:09.997] Disk storage enabled for ethash DAGs     dir=/home/basti/myLUKSOnode/mainnet-data/execution/ethash-dags count=2
[INFO] [12-07|13:21:10.003] Starting private RPC server              on=<IP_ADDRESS>:9098
[INFO] [12-07|13:21:10.003] new subscription to logs established
[INFO] [12-07|13:21:10.004] rpc filters: subscribing to Erigon events
[INFO] [12-07|13:21:10.004] New txs subscriber joined
[INFO] [12-07|13:21:10.004] new subscription to newHeaders established
[INFO] [12-07|13:21:10.005] JsonRpc endpoint opened                  ws=true ws.compression=true grpc=false http.url=<IP_ADDRESS>:8545
[INFO] [12-07|13:21:10.007] Reading JWT secret                       path=./configs/shared/secrets/jwt.hex
[INFO] [12-07|13:21:10.007] HTTP endpoint opened for Engine API      url=<IP_ADDRESS>:8551 ws=true ws.compression=true
[WARN] [12-07|13:21:10.014] NAT ExternalIP resolution has failed, try to pass a different --nat option err="no UPnP or NAT-PMP router discovered"
[WARN] [12-07|13:21:10.014] [txpool] fromDB: parseTransaction        err="err: rlp parse transaction: invalid chainID, 42 (expected 1), rlp: f90213178477359407830186a094cafe00000000000000000000000000000000cafe8901bc16d674ec800000b901a422895118000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001207c01aa378b997e7570f4663168da67746aae59645dcb2fb3b0754875adb7805a0000000000000000000000000000000000000000000000000000000000000030a6fb75362884226d073559faf32e891fd52680f54a19318c42ee632b80287ecc8ca74f0f9333563fcc47e433a64488910000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200100000000000000000000007a53a1bccdf0fa8c65c02d066e532df1c734357a000000000000000000000000000000000000000000000000000000000000006081549ec07aa14b125b9c54ec3d04e99d9639bea02455ceafd08e98f87d6a52fd2ee891794001bf3bd588780e6492a3fc0bd12cf4548b7cfed1a52b5100180066fb001c1bbafbeb3f1922828c720e1839164eed1b38b6854f8bb5659834902cc178a0d375f3cc925f9e4aaff2579c40793e05ec06a25644d1d3df4485015123754a62a0661d493912e36ba6ea4f3ab52724335f408f5c78828b63049758c7998878fd6d"

The Invalid chainID error gets repeated several times then log continues like this:
[INFO] [12-07|13:21:10.023] [txpool] Started
[INFO] [12-07|13:21:43.257] [EngineBlockDownloader] Downloading PoS headers... height=unknown hash=0x7d0dfb9c1ad11f70e326c9dcac1a28407121418134bf25aaf6055bbef1b39b89 requestId=0
[INFO] [12-07|13:24:10.001] [p2p] GoodPeers
[INFO] [12-07|13:24:10.006] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=45.1MB sys=68.7MB
[INFO] [12-07|13:27:09.997] [p2p] GoodPeers
[INFO] [12-07|13:27:10.005] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=50.3MB sys=72.7MB
[INFO] [12-07|13:30:09.997] [p2p] GoodPeers
[INFO] [12-07|13:30:10.007] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=35.7MB sys=72.7MB
[INFO] [12-07|13:33:09.997] [p2p] GoodPeers
[INFO] [12-07|13:33:10.005] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=32.0MB sys=72.7MB
[INFO] [12-07|13:36:09.997] [p2p] GoodPeers
[INFO] [12-07|13:36:10.017] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=52.6MB sys=72.7MB
[INFO] [12-07|13:39:09.998] [p2p] GoodPeers
[INFO] [12-07|13:39:10.006] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=51.9MB sys=72.7MB
[INFO] [12-07|13:42:09.999] [p2p] GoodPeers
[INFO] [12-07|13:42:10.006] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=32.4MB sys=72.7MB
[INFO] [12-07|13:45:09.998] [p2p] GoodPeers
[INFO] [12-07|13:45:10.005] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=46.3MB sys=72.7MB
[INFO] [12-07|13:48:09.997] [p2p] GoodPeers                          eth67=1
[INFO] [12-07|13:48:10.006] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=35.8MB sys=72.7MB
[WARN] [12-07|13:49:27.378] [downloader] Timeout                     requestId=0 peerID=00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
[WARN] [12-07|13:49:27.387] [EngineBlockDownloader] Header download did not yield success
[INFO] [12-07|13:49:36.425] [NewPayload] Handling new payload        height=1392574 hash=0x8f34d72d07c03ffbd02adab3b8d8452e58db7d7e593322387bb4ff3b2a05f0c5
[INFO] [12-07|13:49:36.426] [EngineBlockDownloader] Downloading PoS headers... height=unknown hash=0x6e2ac0da2b7e0c406d6954cf0f773ef2fd7d6146b9fe43fe5fe1f944bd06da91 requestId=0
[WARN] [12-07|13:51:06.429] [downloader] Timeout                     requestId=0 peerID=00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
[WARN] [12-07|13:51:06.430] [EngineBlockDownloader] Header download did not yield success
[INFO] [12-07|13:51:09.998] [p2p] GoodPeers                          eth67=1
[INFO] [12-07|13:51:10.005] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=44.5MB sys=72.7MB
[INFO] [12-07|13:51:12.344] [NewPayload] Handling new payload        height=1392582 hash=0x736097c53ea2d44720b98fbe2fe69ff5d5b2951b240d66986220943d43d61a6f
[INFO] [12-07|13:51:12.344] [EngineBlockDownloader] Downloading PoS headers... height=unknown hash=0xdec46d5c1ea75cb95db8e11318b6ab3dcc59146b0073ddb641905949ac3aa7d1 requestId=0
[WARN] [12-07|13:52:42.348] [downloader] Timeout                     requestId=0 peerID=00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
[WARN] [12-07|13:52:42.349] [EngineBlockDownloader] Header download did not yield success
[INFO] [12-07|13:52:47.527] [EngineBlockDownloader] Downloading PoS headers... height=unknown hash=0x1d2b60fba1e197e6beffd39fa5b252e3b691247da9fc60ae1e9dc2aa53249f33 requestId=0
[INFO] [12-07|13:54:09.997] [p2p] GoodPeers
[INFO] [12-07|13:54:10.007] [txpool] stat                            pending=0 baseFee=0 queued=0 alloc=42.0MB sys=78.1MB
[WARN] [12-07|13:54:17.535] [downloader] Timeout                     requestId=0 peerID=00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
[WARN] [12-07|13:54:17.536] [EngineBlockDownloader] Header download did not yield success
[INFO] [12-07|13:54:24.755] [NewPayload] Handling new payload        height=1392597 hash=0x822c335e6f4ddf2238ebb24181f2711f655e82549c3b81170b52c7002b9e30f0
[INFO] [12-07|13:54:24.755] [EngineBlockDownloader] Downloading PoS headers... height=unknown hash=0xb8f0200133d4bc35b2608b6ada656aebcd704cd0c21e19aefc75a6a3754d5443 requestId=0

At this point I'm currently stuck.

Hey, sorry for the inconvenience. Sadly, this issue could not be reproduced from our network team using the default installation version from the LUKSO CLI Version 0.14. (Erigon v2.55.0)
Could you please provide the Erigon version, chip,  and operating system that you tested on?

Did you, by any chance run the lukso update command? Updating fetches the latest upstream directly from the client's releases, while the installation only downloads the clients up to the latest version that was tested and verified by the team.

erigon 2.55.1 I used lukso updatefor the client
CPU: rockchip rk 3688
OS: Ubuntu LTS 22.04 arm

I think a look at the logs is needed. Why is Erigon 2.55.1 expecting chainID = 1?
Initialised chain configuration          config="{ChainID: 1, Homestead: 1150000, DAO: 1920000, Tangerine Whistle: 2463000, Spurious Dragon: 2675000, Byzantium: 4370000, Constantinople: 7280000, Petersburg: 7280000, Istanbul: 9069000, Muir Glacier: 9200000, Berlin: 12244000, London: 12965000, Arrow Glacier: 13773000, Gray Glacier: 15050000, Terminal Total Difficulty:<PHONE_NUMBER>0000000000000, Merge Netsplit: <nil>, Shanghai:<PHONE_NUMBER>, Cancun: <nil>, Prague: <nil>, Engine: ethash}" genesis=0xd4e56740f876aef8c010b86a40d5f56745a118d0906a34e69aec8c0db1cb8fa3
Initialising Ethereum protocol           network=42

Thats from erigon 2.45.3
Initialised chain configuration          config="{ChainID: 42, Homestead: 0, DAO: <nil>, Tangerine Whistle: 0, Spurious Dragon: 0, Byzantium: 0, Constantinople: 0, Petersburg: 0, Istanbul: 0, Muir Glacier: <nil>, Berlin: 0, London: 0, Arrow Glacier: <nil>, Gray Glacier: <nil>, Terminal Total Difficulty: 0, Merge Netsplit: <nil>, Shanghai:<PHONE_NUMBER>, Cancun: <nil>, Prague: <nil>, Engine: unknown}" genesis=0x5df88817dfb9b00d8ef142370671e8a9bc00c548ab78fbaf205df53db2b24a26
Initialising Ethereum protocol           network=42```

Regarding the chain ID, it might be that the client has to be re-initialized using thelukso init command.
Could you try updating to Erigon 2.55.0 using lukso install instead of lukso update please? It has some more checks and might catch up with the right LUKSO configuration.

Like stated in my opening post I used lukso init
Where gets the chain ID set? In the erigon.toml only? There it was set to 42 when I used 2.55.1.
And what is the difference between network and chainID? As it seems network ID is 42 (correct) but ChainID is 1 (not 42)

@Wolmin @mxmar
Could this have something to do with our network-config file? Maybe this can be adjusted on Release 0.15?

Internal ticket: https://app.clickup.com/t/2645698/DEV-9313

Hey @xtc0r, sadly we are unable to reproduce this issue. Could you also share the logs from your lukso start command? The invalid chain ID may be a cause of some kind of error present during erigon init command that is run when lukso start is active, in order to correctly prepare the data directory - if you are going to do so, please try with data directory being reset - so we get logs different that "database already present - continuing"

I gave it a new try today.

Updated Lukso CLI from 0.8.0 to 0.15.0
Run lukso update to download Erigon v2.55.0 and LH v4.5.0
Run lukso start --validator --transaction-fee-recipient "0x1337" --checkpoint-sync
Check log via lukso logs execution and get the following error:

[INFO] [12-19|12:27:19.871] logging to file system                   log dir=mainnet-data/execution/logs file prefix=erigon log level=info json=false
[INFO] [12-19|12:27:19.871] Enabling metrics export to prometheus    path=http://<IP_ADDRESS>:6060/debug/metrics/prometheus
[INFO] [12-19|12:27:19.871] Build info                               git_branch= git_tag= git_commit=
[INFO] [12-19|12:27:19.873] Maximum peer count                       ETH=100 total=100
[INFO] [12-19|12:27:19.873] starting HTTP APIs                       APIs=erigon,engine
[INFO] [12-19|12:27:19.874] torrent verbosity                        level=WRN
[INFO] [12-19|12:27:21.984] Set global gas cap                       cap=50000000
[INFO] [12-19|12:27:22.120] [Downloader] Runnning with               ipv6-enabled=true ipv4-enabled=true download.rate=16mb upload.rate=4mb
[INFO] [12-19|12:27:22.121] Opening Database                         label=chaindata path=/home/basti/myLUKSOnode/mainnet-data/execution/chaindata
mdbx_setup_dxb:15897 could not apply preconfigured db-geometry: err -30417
[EROR] [12-19|12:27:22.125] Erigon startup                           err="mdbx_env_open: MDBX_TOO_LARGE: Database is too large for current system, e.g. could NOT be mapped into RAM, label: chaindata, trace: [kv_mdbx.go:295 node.go:365 node.go:368 backend.go:239 node.go:124 main.go:65 make_app.go:52 command.go:274 app.go:332 app.go:309 main.go:34 proc.go:250 asm_arm64.s:1172]"
mdbx_env_open: MDBX_TOO_LARGE: Database is too large for current system, e.g. could NOT be mapped into RAM, label: chaindata, trace: [kv_mdbx.go:295 node.go:365 node.go:368 backend.go:239 node.go:124 main.go:65 make_app.go:52 command.go:274 app.go:332 app.go:309 main.go:34 proc.go:250 asm_arm64.s:1172]

Fixed the error by adding "db.size.limit"="8TB" to erigon.toml. I told @fhildeb in discord already about this breaking change. See here: erigon 2.55.0 release notes
Restarted erigon without any issues.
Manually downloaded erigon 2.55.1and repleaced the bin in /usr/local/bin because this ticket was opened when I used erigon2.55.1as lukso update did download this version at this point in time. Fixed now with lukso cli 0.15.0
Also erigon 2.55.1  starts fine. See log below. ChainID and networkID are both 42

[INFO] [12-19|12:46:51.818] [db] chaindata                           sizeLimit=8TB pageSize=4096
[INFO] [12-19|12:46:51.823] Initialised chain configuration          config="{ChainID: 42, Homestead: 0, DAO: <nil>, Tangerine Whistle: 0, Spurious Dragon: 0, Byzantium: 0, Constantinople: 0, Petersburg: 0, Istanbul: 0, Muir Glacier: <nil>, Berlin: 0, London: 0, Arrow Glacier: <nil>, Gray Glacier: <nil>, Terminal Total Difficulty: 0, Merge Netsplit: <nil>, Shanghai:<PHONE_NUMBER>, Cancun: <nil>, Prague: <nil>, Engine: unknown}" genesis=0x5df88817dfb9b00d8ef142370671e8a9bc00c548ab78fbaf205df53db2b24a26
[INFO] [12-19|12:46:51.831] Initialising Ethereum protocol           network=42
[INFO] [12-19|12:46:51.831] Disk storage enabled for ethash DAGs     dir=/home/basti/myLUKSOnode/mainnet-data/execution/ethash-dags count=2
[INFO] [12-19|12:46:52.643] Starting private RPC server              on=<IP_ADDRESS>:9098
[INFO] [12-19|12:46:52.643] new subscription to logs established
[INFO] [12-19|12:46:52.643] rpc filters: subscribing to Erigon events
[INFO] [12-19|12:46:52.644] New txs subscriber joined
[INFO] [12-19|12:46:52.644] new subscription to newHeaders established
[INFO] [12-19|12:46:52.646] JsonRpc endpoint opened                  ws=true ws.compression=true grpc=false http.url=<IP_ADDRESS>:8545
[INFO] [12-19|12:46:52.647] Reading JWT secret                       path=./configs/shared/secrets/jwt.hex
[INFO] [12-19|12:46:52.647] HTTP endpoint opened for Engine API      url=<IP_ADDRESS>:8551 ws=true ws.compression=true
[WARN] [12-19|12:46:52.649] NAT ExternalIP resolution has failed, try to pass a different --nat option err="no UPnP or NAT-PMP router discovered"
[WARN] [12-19|12:46:52.652] NAT ExternalIP resolution has failed, try to pass a different --nat option err="no UPnP or NAT-PMP router discovered"
[INFO] [12-19|12:46:52.652] Started P2P networking                   version=68 self=enode://cef92b00b7eafb8d6f45bc657b09e259c1eb5137c803ed43486acbcb5cd35d35103871960d3ba84c62d882dc3870fea5ab27bc668ae04ae1c2eacf73111247bd@<IP_ADDRESS>:30313 name=erigon/v2.55.1/linux-arm64/go1.20.7
[INFO] [12-19|12:46:52.654] [txpool] Started
[INFO] [12-19|12:46:52.658] Started P2P networking                   version=67 self=enode://cef92b00b7eafb8d6f45bc657b09e259c1eb5137c803ed43486acbcb5cd35d35103871960d3ba84c62d882dc3870fea5ab27bc668ae04ae1c2eacf73111247bd@<IP_ADDRESS>:30314 name=erigon/v2.55.1/linux-arm64/go1.20.7

Conclusion:
Issue can't be reproduced with lukso cli 0.15.0 using erigon 2.55.0 nor 2.55.1 but erigon.toml needs to be updated to add "db.size.limit"="8TB"
You can close the issue. I don't do it to keep you aware of the needed erigon.toml change.

Conclusion: Issue can't be reproduced with lukso cli 0.15.0 using erigon 2.55.0 nor 2.55.1 but erigon.toml needs to be updated to add "db.size.limit"="8TB" You can close the issue. I don't do it to keep you aware of the needed erigon.toml change.

Thanks for pointing this out - we have created a PR in network config repository so we can avoid this being an issue for other people running their node 👍 - https://github.com/lukso-network/network-configs/pull/129 - since this PR merging process is another thing, I'll close this issue


How to get almost no movement?

I am trying to get an object to nearly don't move at all. How can achieve this?
Using data-rellax-speed="-10" data-rellax-percentage="0" gave me the best result, but is there another, cleaner way to get even less movement?
As far as I understood it values above 0 mean the element is moving faster than the "default" speed, while values below 0 lead to a slower than "normal" speed movement, but correct me if I'm wrong here.
Be aware of the fact that I am using position: absolute;  for every  Element.
I've attached an archive with the project in it so one can get a better understanding of my situation
web.zip

I use a "sort-of" workaround now.
I have a div container that holds the element. Both get rellax data-attributes, so for example:
.
.
.

.
.
.

Hi!
I've been wanting to reply to this issue but haven't had much time, and I know you found a workaround, but I'll leave my 3 cents anyways, might be useful to someone...
One of the other reasons why I didn't reply earlier is because I believe this issue raises another problem or two.
So, first of all, I must say, I had some fun recreating the archive in codepen, so thank you for that 😅 (most of the code was copy/pasted tho, I just messed around with the shadows, gradients, etc...).
Answering your question, and assuming that the element you were trying to make go slower was the #sun, I changed it's position to fixed, and gave it a data-rellax-speed of 0.3.
That was the easiest / cleanest way I found.
I'm not sure this solution fits your project's needs, cause you do mention you're using position: absolute for every element, so, that might not work for you.
Now, @moeamaya, my question is:
Would it make sense to remove the +-10 and +-5 speed limits?
Cause some people might want to achieve some crazy results or something, and can't because of those clamps.
If not, should it just be explicit in the readme instead?
Another thing I've noticed is that, different viewport sizes mean different ("real") speeds for the same speed setting.
In other words, for example, if I have an element with a data-rellax-speed of -10 and I'm on my laptop, that element will have almost no movement, or none at all.
But, if I test the same thing on, lets say, my phone, that element will be moving faster.
I haven't tested this yet, but I wanted to check in with you first (@moeamaya) and see if you ever noticed that (maybe one of the reasons to keep those speed clams? Cause I think the further you get from speed: 0, the worse is the problem) (again, not sure, didn't test).


Deep link for user profile crashes on desktop

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

Action Performed:

On web navigate to a user profile
Refresh the browser
Click on Open Electron to open the user profile

Expected Result:
Open the user profile page in the Desktop app
Actual Result:
Desktop app crashes
Workaround:
Open the user profile on web by clicking on open this link in your browser.
Platforms:

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

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

Version Number: 1.2.69-2
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
Expensify/Expensify Issue URL:
Issue reported by:
Slack conversation: https://expensify.slack.com/archives/C03KN50J0PM/p1676058166922359?thread_ts=1676038239.279419&cid=C03KN50J0PM
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01d2a5e261c3af7e82
Upwork Job ID:<PHONE_NUMBER>747147776
Last Price Increase: 2023-02-13

Triggered auto assignment to @slafortune (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

Bug0 Triage Checklist (Main S/O)

[ ] This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
[ ] This bug is not a duplicate report (check E/App issues and #expensify-bugs)

If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead

[ ] This bug is reproducible using the reproduction steps in the OP. S/O

If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
If the reproduction steps aren't clear and you determine the correct steps, please update the OP.

[ ] This issue is filled out as thoroughly and clearly as possible

Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.

[ ] I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

Based on the conversation in Slack, seems that this will be an internal fix!

Job added to Upwork: https://www.upwork.com/jobs/~01d2a5e261c3af7e82

Triggered auto assignment to Contributor Plus for review of internal employee PR - @parasharrajat (Internal)

Based on the conversation in Slack, seems that this will be an internal fix!

@marcochavezf you are planning on fixing this, yes?

Yeap, this is needed for the ECX. Haven't been able to work on this one yet. I'm going to change it to external in case someone founds a solution during the weekend.

Current assignee @slafortune is eligible for the External assigner, not assigning anyone new.

Current assignee @parasharrajat is eligible for the External assigner, not assigning anyone new.

Current assignee @marcochavezf is eligible for the External assigner, not assigning anyone new.

Proposal
Please re-state the problem that we are trying to solve in this issue.
User profile deep link opened in desktop app from the web app causes it to crash.
What is the root cause of that problem?
The deep link does not forward query parameters along to the desktop app. The DetailsPage component expects route params. Without it, there is a render error. This causes the crash.
What changes do you think we should make in order to solve the problem?

We can simply pass on the query parameters to the desktop app from browser.

What alternative solutions did you explore? (Optional)
Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.

Proposal
Please re-state the problem that we are trying to solve in this issue.
Opening deep link in Desktop app will crash the app in DetailsPage.
What is the root cause of that problem?
In DetailsPage expects the login URL param to be present, you can see as in
https://github.com/Expensify/App/blob/8cc88ded1fbef3aac8600e674dfc0b4c6075e9d1/src/pages/DetailsPage.js#L88
When we deeplink into the Desktop app, we're passing only the pathname to the deep link
https://github.com/Expensify/App/blob/8e650d79a6ad8055ffb31d25a9ffd36b31677890/src/components/DeeplinkWrapper/index.website.js#L70
We're ignoring other important parts of an URL like query param, hash.
When the DetailsPage do not see the login query param in the URL, it crashes.
What changes do you think we should make in order to solve the problem?

In order to fix this, we need to pass all parts of the URL to the deeplink, including the query params and the hash, so that the Desktop page has enough information to render the page:
In https://github.com/Expensify/App/blob/8e650d79a6ad8055ffb31d25a9ffd36b31677890/src/components/DeeplinkWrapper/index.website.js#L70
We need to change to
const expensifyDeeplinkUrl = `${CONST.DEEPLINK_BASE_URL}${expensifyUrl.host}${window.location.pathname}${window.location.search}${window.location.hash}`;

(Note the window.location.search and window.location.hash are added at the end)
What alternative solutions did you explore? (Optional)
NA

@tienifr Adding to index.website.js alone won't make it work. You have to make the desktop app read the parameters as well.

@allroundexperts I'm not finished yet, I'm still compiling the proposal 😁

@allroundexperts If there's any major change to your solution (like adding the missing window.location.hash), I'd suggest to post an updated proposal rather than editing the proposal inline so the proposal history is more clear, especially if there's already a proposal that mentions it before 👍

@tienifr I think you should have done it in the first place. Your initial proposal didn't even mention changes in the main.js file while I added those 4 minutes before yours.

@allroundexperts thanks @allroundexperts, that's more of an implementation detail that could be refined later, also it doesn't affect the proposal history since it already comes after yours 👍

thanks @allroundexperts, that's more of an implementation detail that could be refined later, also it doesn't affect the proposal history since it already comes after yours 👍

@tienifr, Respectfully I disagree. It's not an implementation detail that can be refined later. It's an important piece without which the solution DOES not work unlike the addition of hash which IMO is more of an optional thing.

@allroundexperts @tienifr DO NOT update your proposals by taking suggestions from other proposals. Respect everyone's efforts and time. @allroundexperts I can see that you added We can add location hash as well to be bulletproof. later. It might be possible that it's your idea alone but I don't believe in coincidences.
Thanks.

@parasharrajat I only added it once I saw my proposal being copied. I, just like you, don't believe in coincidences as well.

@parasharrajat PR ready.
https://github.com/Expensify/App/pull/15262

@parasharrajat Sorry, I need to wait?

@parasharrajat Ah, I see now. I'm supposed to not create the PR until assigned. I'll just convert it to draft then. Apologies for the inconvenience.

Assigning @allroundexperts

📣 @allroundexperts You have been assigned to this job by @marcochavezf!
Please apply to this job in Upwork and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review 🧑💻
Keep in mind: Code of Conduct | Contributing 📖

PR created:
https://github.com/Expensify/App/pull/15262

Bumping for review!

@parasharrajat , it appears the PR was ready for review 5 days ago, is there a reason it hasn't been reviewed yet?
https://github.com/Expensify/App/pull/15262#event-8551115788

ah... thanks @parasharrajat . @allroundexperts you've been working on jobs for ~8 months, I'd expect you to be familiar with all aspects of our CONTRIBUTING.md and processes by now.
For this specific issue, I know the title is specific to Desktop, have we also tested on all other platforms to ensure they're working properly? Asking cuz I (think I) ran into an issue yesterday on iOS safari. iirc. there was discrepancy between me being signed in or not. Please check/test those instances (and, if needed, we can create a separate GH)

@mallenexpensify I actually took a long break in between. But you're right, I should have been more careful.

👍 @allroundexperts .  I didn't mean to sound harsh but also didn't come up with an easy/good way to soften the language.

PR merged yesterday 🎉
https://github.com/Expensify/App/pull/15262

@marcochavezf, @slafortune, @parasharrajat, @allroundexperts Whoops! This issue is 2 days overdue. Let's get this updated quick!

Reviewing label has been removed, please complete the "BugZero Checklist".

The solution for this issue has been :rocket: deployed to production :rocket: in version 1.2.78-0 and is now subject to a 7-day regression period :calendar:. Here is the list of pull requests that resolve this issue:

https://github.com/Expensify/App/pull/15262

If no regressions arise, payment will be issued on 2023-03-13. :confetti_ball:
After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.

[ ] External issue reporter
[ ] Contributor that fixed the issue
[ ] Contributor+ that helped on the issue and/or PR

As a reminder, here are the bonuses/penalties that should be applied for any External issue:

Merged PR within 3 business days of assignment - 50% bonus
Merged PR more than 9 business days after assignment - 50% penalty

BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

[ ] [@parasharrajat / @marcochavezf] The PR that introduced the bug has been identified. Link to the PR:
[ ] [@parasharrajat / @marcochavezf] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
[ ] [@parasharrajat / @marcochavezf] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
[ ] [@allroundexperts] Propose regression test steps to ensure the same bug will not reach production again.
[ ] [@slafortune] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

Regression Test Proposal

Go to https://staging.new.expensify.com/ and open any chat.
Click on the avatar of any chat participant and make sure that the details page opens.
Refresh the page.
Click open desktop app on the popup that appears.
Verify that the app opens correctly on desktop with the correct user details page and without any crashes.
Do we agree 👍 or 👎

@parasharrajat @allroundexperts I sent offers to you both - let me know once you accept those!

@parasharrajat @allroundexperts I sent offers to you both - let me know once you accept those!

Thanks for the offer @slafortune. The amount that shows there seems to be incorrect (500). Can you please double check?

@parasharrajat 👍 resent - https://www.upwork.com/nx/wm/pre-hire/c/8577561/offer/23883082


bachcomplete under Windows ?

Hi,
do you have any idea how to get the bashcomplete to work under Windows ?
Anyway thanks for Click, you just made my life soooo easier (cf http://github.com/ROBelgium/MSNoise)
Thomas

I have no idea how to support it for windows.  Going to close this :)


DocsArchive-<IP_ADDRESS>Auto archive content

Auto archive content from https://github.com/VSC-Service-Account/docs-archive-test-source.git

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

File
Status
Preview URL
Details

:x:Error

Details

[Error-BuildPermissionInsufficientError] Your repository https://github.com/VSC-Service-Account/docs-archive-test-target has enabled Docs Build service account. It seems that at least one of the account, e2ebd3, does not have Read permission to the repo. Please ask your repo admin to grant correct permission to service accounts (refer to this document: https://review.docs.microsoft.com/en-us/engineering/projects/ops/engdocs/how-to-grant-service-account-permission-in-your-repository?branch=master) and then retry the build.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


How to use BTC Transaction with BitcoinKit

I don't know,How to use BTC Transaction with BitcoinKit ,This problem has been bothering me for a long time.

Hi @My-Old-Driver !
What do you want to do with BitcoinKit?
Basically, you can switch the network, by changing the Network parameter in each functions, struct or class.
Example.
// 1. Create Private Key, Publick Key, Address
let privkey: PrivateKey = PrivateKey(network: .mainnetBTC)
let pubkey: PublicKey = privkey.publicKey()
let address: LegacyAddress = pubkey.toLegacy()
let qrImage: UIImage? = address.qrImage(size: CGSize(width: 240, height: 240))

Unfortunately, currently we haven't yet supported SEGWIT.
And if you want to use Wallet class, you have to provide custom UtxoProvider and TransactionSigner.


Template: more branches and more branch coverage

@LarryOsterman,
98 of 98 branches covered (100.00%)
51 of 51 lines covered (100.00%)


ISSUE: Mail from Hermes Germany not detected

Describe the bug
I reveived an Hermes notifaction with the subject "Deine Hermes Sendung von OTTO ist auf dem Weg" This was not detected.
Delivery date is in the string
Voraussichtliche Zustellung am
Donnerstag, 28.11.2024
Environment (please complete the following information):

OS: [e.g. HassOS/Raspbian/CentOS]
Type of device: [e.g. RPi3/NUC/Synology]
Home Assistant version: [e.g. 0.105.5]
Hassio/Docker/Core?
Component version: 0.4.2-b5

Logs
Paste your error logs here.
Screenshots

Additional context
Add any other context about the problem here.
Please add emails in plain/text format if possible and applicable.

https://github.com/moralmunky/Home-Assistant-Mail-And-Packages/blob/3611e966319d41dd6f50a399105c49166a8e69db/custom_components/mail_and_packages/const.py#L347-L349
Looks like the subject line has changed.

Fixed in #1022


Enhancement: spo term add - Allow adding a site-level term or a tenant-level term without SPO Admin privileges

Currently spo term add can only be run on the Global Termstore on tenant level.
This has three consequences:

You need the SPO administrator role to run this command.
You cannot use it on the sitecollection specific term store.
You cannot add terms as a taxonomy administrator without the SPO administrator role.

I propose fixing this.
Options

Option
Description

-u, --webUrl [webUrl]
If specified, allows you to add a term to the tenant term store as well as the sitecollection specific term store. Defaults to the tenant admin site.

Remarks

To use this command without the --webUrl option you have to have permissions to access the tenant admin site.

When using the --webUrl option you can connect to the term store with limited permissions, and do not need the SharePoint Adminstrator role. It allows you to add a term to a term set in the tenant term store if you are listed as a term store administrator. It allows you to add terms to a term set in the sitecollection term store if you are a site owner.
Additional remarks
The webUrl option (if used) can just be swapped in instead of the currently used spoAdminUrl to achieve the desired result.

LGTM 👍

Can I work on this?

Sure thing @nanddeepn!


Thread state in JFR file is always STATE_RUNNABLE even with wall profiler

When using the -e wall option in combination with JFR, the thread state may be blocked or waiting. However, it's hard-coded to runnable.
https://github.com/jvm-profiling-tools/async-profiler/blob/2557363892b7f83dec4c652ca1b19e50e21877e4/src/flightRecorder.cpp#L696

Yes, this is a known problem. I haven't decided yet what thread state to put here.

First, because async-profiler works not only with Java threads, but also with native threads that do not have a Java thread state.

As I've shown in my presentation about profiling, Java thread state is sometimes misleading. E.g. most of commonly used Java profilers show that a thread executing Socket.read is always in RUNNABLE state, even if the thread is actually idle waiting for incoming data. Or the other way round: a thread executing Unsafe.park is always considered in WAITING state, though parking/unparking often consumes much CPU time.
Since async-profiler claims to be fair, I don't really want to rely on erroneous Java thread states.

A better option is probably to use OS-level thread states (Running / Sleeping / Waiting in uninterruptible disk sleep etc.) However, these states do not have an exact match in JFR format, and reusing Java thread state names will be probably confusing.
Also, obtaining an OS thread state is subject to race conditions: e.g. a thread may change its state between the state is queried and the moment when the thread receives the profiling signal.

I'm open to input from the community. What are the use cases, and what kind of thread states do you expect to see in async-profiler results?

@apangin +100 for the current behaviour TBH
As per https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.State.html#RUNNABLE:
Thread state for a runnable thread. A thread in the runnable state is executing in the Java virtual machine but it may be waiting for other resources from the operating system such as processor.

For https://docs.oracle.com/javase/8/docs/api/java/lang/Thread.State.html#WAITING can be seen that:
Thread state for a waiting thread. A thread is in the waiting state due to calling one of the following methods:
- Object.wait with no timeout
- Thread.join with no timeout
- LockSupport.park

According to the current stated javadoc I don't think you could have made a better choice :)

I'm mainly interested in whether a stack trace is on or off CPU, so the exact Java thread state is not as interesting to me. If I had that information, I could basically do both CPU and wall profiling at the same time by either just looking at the on-CPU call stacks (=cpu profiling) or by looking at both on-CPU and off-CPU call stacks (=wall clock profiling).

I did some experiments to find if async-profiler can record thread state during wall clock sampling.
It turns out that the straightforward approach does not work well. On Linux, the only way to get the actual thread state in the system, seems to be reading from /proc/[pid]/task/[tid]/stat. This involves several syscalls, and the result is a long line with ~50 stats. No wonder, this is NOT a cheap operation.
Measurements showed that sampling of 8 threads with their states takes about 1 ms. Without thread states, this takes 0.1-0.2 ms. Quite a big overhead. Furthermore, by the time a signal is sent to the thread, the state may become obsolete.
So I decided to go a different way. The sampler sends signals to all threads, and the signal handler tries to discover thread state by analyzing CPU registers and the last executed instruction. If a thread was interrupted on an instruction other than syscall, the thread is considered RUNNABLE. Otherwise we do some magic of checking the syscall type, its return value etc.
The results look promising. After filtering out SLEEPING threads, the profile looks pretty much similar to what we get with CPU profiling. We can even distinguish blocked system calls from runnable on-cpu syscalls. No performance overhead, no race conditions.
I committed the fix. So far only two states are distinguished: STATE_RUNNABLE, and STATE_SLEEPING. The values reflect thread states in the operating system, not Java thread states.

Merged into master.

So I decided to go a different way. The sampler sends signals to all threads, and the signal handler tries to discover thread state by analyzing CPU registers and the last executed instruction. If a thread was interrupted on an instruction other than syscall, the thread is considered RUNNABLE. Otherwise we do some magic of checking the syscall type, its return value etc.

@apangin Can you help elaborate more about this part?
More specifically, I'm trying to understand why, at this point, a thread's current instruction being a syscall is considered as sleeping.
Thank you in advance.

@niufei8888 Signal handler cannot interrupt a running thread in the middle of syscall execution (kernel is not preemtible by userland code). If a signal is sent while a thread is inside the kernel, the OS will defer the signal until return from a system call.

@apangin Thank you for the reply. I think your comments mean that if async-profilers happens to signal an on-kernel thread, then WallClock::signalHandler can be delivered only at the end of the syscall (as OS defers the userland codes). With that, however, I'm still not quite understand why we can say the thread being signaled is at the idle state.

@niufei8888 If a busy thread is signaled while being in kernel, it will finish current system call and will proceed with a signal handler afterwards. In this case, PC will point to the first instruction after syscall.
See signal(7) for the details about signal delivery and interruption.

@apangin Thanks. I did more research, and I think I have an answer for the part that confused me. I was wondering why a thread in syscall is marked as sleeping. The kernel will indeed spend time running on-CPU when taking a syscal, but it's also fair to say "a syscall is mostly off-CPU blocking for the services". Hope that makes sense.


Support SSM AWS Region Query

Steps to reproduce
moto: 2.0.7
boto3: 1.17.75
from moto import mock_ssm
import boto3
import unittest

class TestMoto(unittest.TestCase):
    def test_ssm_region_query(self):
        with mock_ssm():
            self.assertEqual(
                boto3.client('ssm').get_parameter(
                    Name='/aws/service/global-infrastructure/regions/us-west-1/longName'
                )['Parameter']['Value'],
                'US West (N. California)',
            )

Save as test.py and run with python3 -m unittest test.py
Expected behavior
The test passes.
Actual behavior
The test fails.
Context
I am trying to access the recently added global ssm paramters: https://aws.amazon.com/blogs/aws/new-query-for-aws-regions-endpoints-and-more-using-aws-systems-manager-parameter-store/
Unfortunately get_parameters_by_path returns an empty list.
client.get_parameters_by_path(
    Path='/aws/service/global-infrastructure/regions'
)

I tried this
client.put_parameter(
    Name='/aws/service/global-infrastructure/regions/us-west-1/longName',
    Value='US West (N. California)'
)

but it is giving me this error
botocore.exceptions.ClientError: An error occurred (AccessDeniedException) when calling the PutParameter operation: No access to reserved parameter name: /aws/service/global-infrastructure/regions/us-west-1/longName.

and trying to access the parameter directly gives me this
botocore.errorfactory.ParameterNotFound: An error occurred (ParameterNotFound) when calling the GetParameter operation: Parameter /aws/service/global-infrastructure/regions/us-west-1/longName not found.

Thanks for raising this @Amri91. We're not storing any default parameters atm - marking this as an enhancement.


docs: make callback.apiResponse argument a link to the upstream docs

continuing from https://github.com/GoogleCloudPlatform/gcloud-node/issues/990#issuecomment-162869090
Anywhere we document an apiResponse argument, we should be able to link it to the API docs that show what the user can expect from that object.
Tip: for most of the API docs I've seen, you can append a fragment #response to the URL to deep link to the relevant section.

Perhaps this would be better placed in gcloud-common?

Possibly, but the task will be actually writing link tags in the JSDocs. Unless you can think of an automated way to do this with metadata from the big JSON doc?

Good point, it should probably just be in both.

We are probably not going to make any changes to our GitHub hosted docs, as our repos start to migrate out onto cloud.google.com.


feat: Native Merkle Trees

This PR is the first of several where we are moving to use native implementations of Merkle Trees for performance reasons. It includes:

The core tree implementations for both indexed trees and append only trees.
The introduction of LMDB as a dependency that we retrieve from GIT and build ourselves.
The creation of a set of RAII wrapper objects around the LMDB concepts.
The creation of a committed/uncommitted store on top of LMDB used by the trees for state management

Benchmark results
No metrics with a significant change found.

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

Metric
1 threads
4 threads
16 threads
32 threads
64 threads

proof_construction_time_sha256_ms
5,725
1,546
697
771 (+1%)
772

proof_construction_time_sha256_30_ms
11,416
3,064
1,369
1,417
1,448

proof_construction_time_sha256_100_ms
43,766
11,751
5,432
5,401
5,359

proof_construction_time_poseidon_hash_ms
78.0
34.0
34.0
58.0
88.0 (-1%)

proof_construction_time_poseidon_hash_30_ms
1,519
416
200
225
266

proof_construction_time_poseidon_hash_100_ms
5,739
1,562
721
787 (+2%)
793

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

Metric
4 txs
8 txs
16 txs

l1_rollup_calldata_size_in_bytes
1,412
1,412
1,412

l1_rollup_calldata_gas
9,464
9,450
9,464

l1_rollup_execution_gas
610,285
610,271
610,285

l2_block_processing_time_in_ms
755 (+2%)
1,410 (-2%)
2,710 (+1%)

l2_block_building_time_in_ms
23,031 (-3%)
46,660
89,855 (-2%)

l2_block_rollup_simulation_time_in_ms
22,941 (-3%)
46,372
89,518 (-2%)

l2_block_public_tx_process_time_in_ms
19,690 (-2%)
42,890
86,113 (-2%)

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

Metric
3 blocks
5 blocks

node_history_sync_time_in_ms
6,438 (-3%)
9,324

node_database_size_in_bytes
10,608,720 (+1%)
14,479,440 (+1%)

pxe_database_size_in_bytes
9,242
15,127

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

Function
time_ms

GasToken:_increase_public_balance
70.9 (+2%)

GasToken:set_portal
16.3

Token:constructor
94.6

FPC:constructor
62.6 (+1%)

GasToken:mint_public
54.7 (-1%)

Token:mint_public
563 (+1%)

Token:assert_minter_and_mint
63.3 (-18%)

SchnorrAccount:approve_public_authwit
32.9

FPC:prepare_fee
75.5 (-1%)

Token:transfer_public
33.8 (-22%)

FPC:pay_refund
73.2 (+20%)

Benchmarking:increment_balance
2,426 (-1%)

Token:_increase_public_balance
60.2 (+6%)

FPC:pay_refund_with_shielded_rebate
56.8 (+12%)

Public DB Access
Time to access various public DBs.

Function
time_ms

get-nullifier-index
0.173 (-1%)

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

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

batch_insert_into_append_only_tree_16_depth_ms
10.4
16.9 (-1%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_count
16.7
31.8
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_16_depth_hash_ms
0.603
0.519 (-1%)
N/A
N/A
N/A
N/A
N/A

batch_insert_into_append_only_tree_32_depth_ms
N/A
N/A
48.3
75.5 (-1%)
131 (+1%)
243 (-3%)
470 (+1%)

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

batch_insert_into_append_only_tree_32_depth_hash_ms
N/A
N/A
0.494 (-1%)
0.464 (-1%)
0.450 (+1%)
0.442 (-3%)
0.439 (+1%)

batch_insert_into_indexed_tree_20_depth_ms
N/A
N/A
59.5 (-1%)
111
180
350 (-2%)
693 (+1%)

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

batch_insert_into_indexed_tree_20_depth_hash_ms
N/A
N/A
0.504 (-1%)
0.499
0.478
0.474 (-2%)
0.475

batch_insert_into_indexed_tree_40_depth_ms
N/A
N/A
74.3 (-1%)
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_count
N/A
N/A
135
N/A
N/A
N/A
N/A

batch_insert_into_indexed_tree_40_depth_hash_ms
N/A
N/A
0.519 (-1%)
N/A
N/A
N/A
N/A

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

Metric
0 registered classes
1 registered classes

tx_size_in_bytes
83,854
676,749

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

Wow lots of code :) Looks good mostly although I definitely power-read, just some minor comments


Fix Checkstyle Obsolete SDK Version Check

Min SDK version is 18, so this check is always true.

This change is

We'd like to eventually fix the issues preventing us from working in devices down to 16. Please leave this in place.


builds against latest versions of isovar fails

Currently, builds against the latest versions of isovar fail.   See, for example, build #327.
The error message says :
ImportError: No module named protein_sequence

@tavinathanson mentions this is because the latest isovar API has changed.
For now, the requirements.txt file has been frozen at isovar==0.0.6.

This issue cropped up again when referencing the latest version of cohorts:
E.g.
running from cohorts.functions import *
ImportErrorTraceback (most recent call last)
<ipython-input-1-c5376ccc9100> in <module>()
      9 import numpy as np
     10 import pandas as pd
---> 11 from cohorts.functions import *
     12 get_ipython().magic(u'matplotlib inline')

/mnt/ssd0/env/local/lib/python2.7/site-packages/cohorts/__init__.py in <module>()
     13 # limitations under the License.
     14
---> 15 from .load import *
     16
     17 from ._version import get_versions

/mnt/ssd0/env/local/lib/python2.7/site-packages/cohorts/load.py in <module>()
     35 from topiary import predict_epitopes_from_variants, epitopes_to_dataframe
     36 from topiary.sequence_helpers import contains_mutant_residues
---> 37 from isovar.protein_sequence import variants_to_protein_sequences_dataframe
     38 from pysam import AlignmentFile
     39

ImportError: No module named protein_sequence

Here is the output when installing cohorts from git (note that isovar is not mentioned):
$ pip install git+git://github.com/hammerlab/cohorts --upgrade
Collecting git+git://github.com/hammerlab/cohorts
  Cloning git://github.com/hammerlab/cohorts to /tmp/pip-lrdXz6-build
Requirement already up-to-date: pandas>=0.15 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: seaborn>=0.7.0 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: scipy>=0.17.0 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: topiary>=0.0.20 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: mhctools>=0.2.3 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: varcode>=0.4.12 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: pyensembl>=0.8.12 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: six>=1.10.0 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: lifelines>=<IP_ADDRESS> in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: scikit-learn>=0.17.1 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: vcf-annotate-polyphen>=0.1.2 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: patsy>=0.4.1 in /mnt/ssd0/env/lib/python2.7/site-packages (from cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: pytz>=2011k in /mnt/ssd0/env/lib/python2.7/site-packages (from pandas>=0.15->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: numpy>=1.7.0 in /mnt/ssd0/env/lib/python2.7/site-packages (from pandas>=0.15->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: python-dateutil in /mnt/ssd0/env/lib/python2.7/site-packages (from pandas>=0.15->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: matplotlib in /mnt/ssd0/env/lib/python2.7/site-packages (from seaborn>=0.7.0->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: gtfparse>=0.0.4 in /mnt/ssd0/env/lib/python2.7/site-packages (from topiary>=0.0.20->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: nose>=1.3.6 in /mnt/ssd0/env/lib/python2.7/site-packages (from topiary>=0.0.20->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: mhcnames in /mnt/ssd0/env/lib/python2.7/site-packages (from topiary>=0.0.20->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: memoized-property>=1.0.2 in /mnt/ssd0/env/lib/python2.7/site-packages (from varcode>=0.4.12->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: biopython>=1.64 in /mnt/ssd0/env/lib/python2.7/site-packages (from varcode>=0.4.12->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: pyvcf>=0.6.7 in /mnt/ssd0/env/lib/python2.7/site-packages (from varcode>=0.4.12->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: datacache>=0.4.16 in /mnt/ssd0/env/lib/python2.7/site-packages (from pyensembl>=0.8.12->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: typechecks>=0.0.2 in /mnt/ssd0/env/lib/python2.7/site-packages (from pyensembl>=0.8.12->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: sqlalchemy in /mnt/ssd0/env/lib/python2.7/site-packages (from vcf-annotate-polyphen>=0.1.2->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: cycler in /mnt/ssd0/env/lib/python2.7/site-packages (from matplotlib->seaborn>=0.7.0->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: pyparsing!=2.0.0,!=2.0.4,>=1.5.6 in /mnt/ssd0/env/lib/python2.7/site-packages (from matplotlib->seaborn>=0.7.0->cohorts==0.1.1+103.g71e0082)
Collecting setuptools (from pyvcf>=0.6.7->varcode>=0.4.12->cohorts==0.1.1+103.g71e0082)
  Downloading setuptools-24.1.0-py2.py3-none-any.whl (441kB)
    100% |████████████████████████████████| 450kB 2.8MB/s
Requirement already up-to-date: progressbar33>=2.4 in /mnt/ssd0/env/lib/python2.7/site-packages (from datacache>=0.4.16->pyensembl>=0.8.12->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: requests>=2.5.1 in /mnt/ssd0/env/lib/python2.7/site-packages (from datacache>=0.4.16->pyensembl>=0.8.12->cohorts==0.1.1+103.g71e0082)
Requirement already up-to-date: appdirs>=1.4.0 in /mnt/ssd0/env/lib/python2.7/site-packages (from datacache>=0.4.16->pyensembl>=0.8.12->cohorts==0.1.1+103.g71e0082)
Installing collected packages: cohorts, setuptools
  Found existing installation: cohorts 0.1.1+103.g71e0082
    Uninstalling cohorts-0.1.1+103.g71e0082:
      Successfully uninstalled cohorts-0.1.1+103.g71e0082
  Running setup.py install for cohorts ... done
  Found existing installation: setuptools 24.0.3
    Uninstalling setuptools-24.0.3:
      Successfully uninstalled setuptools-24.0.3
Successfully installed cohorts-0.1.1+103.g71e0082 setuptools-24.1.0


PTR Domain default to master

I came across an issue which is not really a bug, but when auto ptr is on, it automatically create the reverse domain with replication type of MASTER.
Maybe it should be a setting or open this ticket to a debate but i think it should be created as native.
https://github.com/ngoduykhanh/PowerDNS-Admin/blob/3a4efebf954da533b3df1a7fca375ce68b47285e/powerdnsadmin/models/domain.py#L419

I've tried it and the soa is misconfigured. It indeed will never work if not native.
Setting it to native can be a quick fix but in any case your zone will be not properly configured (it will lack a correct SOA and NS servers). It means that you should not expose public range reverse zone this way. (it is not important for private ranges as you have to forward it so no dns resolution is done).
If the zone is created automatically by PDNS then it needs a clean way to initialize it (ie add the ability to configure "default NS" servers and "default SOA options" for these zones in the interface and correctly compute the SOA.

We have a lot of work regarding this autoptr option for a future release. I'm closing


Missing webpack publicPath on workbox.setConfig modulePathPrefix

Library Affected:
workbox-webpack-plugin
Browser & Platform:
workbox 3.0.0
Issue Description:
Using this webpack config
    output: {
        publicPath: "/bundle/",
    },
    plugins: [
		new InjectManifest({
                 importWorkboxFrom: 'local',

Generates this output
importScripts("/bundle/precache-manifest.<hash>.js", "/bundle/workbox-v3.0.0/workbox-sw.js");
workbox.setConfig({modulePathPrefix: "workbox-v3.0.0"});

If I start to use some plugins
workbox.precaching.precacheAndRoute(files, {
The plugins dont load in the browser (urls are missing /bundle/ prefix)
Workaround I have found, is to override modulePathPrefix
workbox.setConfig({modulePathPrefix: "bundle/workbox-v3.0.0"});
I see workboxSWImport adds compilation.options.output.publicPath
https://github.com/GoogleChrome/workbox/blob/master/packages/workbox-webpack-plugin/src/lib/get-workbox-sw-imports.js#L44
However setConfigString does not seem to
https://github.com/GoogleChrome/workbox/blob/1302a8400e452dcbdd6feb8570de24fa4d1a9c22/packages/workbox-webpack-plugin/src/inject-manifest.js#L119-L122
Not sure if i am supposed to override this on webpack options, cant see any properties
modifyUrlPrefix seems to only work on manifest
Maybe follow on from https://github.com/GoogleChrome/workbox/issues/1172
Or this comment https://github.com/GoogleChrome/workbox/issues/1260#issuecomment-362104124

but I've been hesitant to mess too much with the source service worker file when in InjectManifest mode.

(Bear with me, as I know that there are a lot of different ways that folks configure and use webpack.)
My understanding of publicPath is that developers configure it to indicate that all assets will be served from a URL that has publicPath as the prefix, including the generated service worker file.
So in your example (if we assume you're using sw.js as the service worker file's name), the assumption is that your web server will serve the service worker via /bundle/sw.js.
Assuming that's the case, the workbox.setConfig({modulePathPrefix: "workbox-v3.0.0"}); statements would be correct, since the prefix "workbox-v3.0.0" is interpreted as being relative to the location of the service worker script, and equivalent to "/bundle/workbox-v3.0.0".
The fact that you're running into issues indicates that some of those assumptions are not valid, at least for the way you're using webpack.
Could you clarify where, for instance, you're serving the your service worker file from?

(Also, CC: @raejin who worked on https://github.com/GoogleChrome/workbox/pull/1265, which is related. I'd love to confirm that if there are changes that come out of this issue, they won't break assumptions that were made for other, related configurations.)

Ahh yes that makes sense now, more of my situation below.
Upgrading from sw-precache-webpack-plugin (awesome job on the migration documents btw!)
My workbox-webpack-plugin output ends up like this:

output\webpack\int\sw.js
output\webpack\int\workbox-v3.0.0\workbox-sw.js
output\webpack\int\workbox-v3.0.0\workbox-precaching.prod.js

However I forgot my carry over from sw-precache-webpack-plugin, repathing sw.js to the root path.
app.use(
    "/sw.js",
    express.static(
        path.join(__dirname, "./../../../output/webpack/int/sw.js")
    ),
);

Which I must have done to let the service worker access the root scope
Maybe it came from a suggestion like this
https://github.com/GoogleChromeLabs/sw-toolbox/issues/158#issuecomment-269622788
I will instead have to use Service-Worker-Allowed
https://github.com/GoogleChrome/workbox/issues/1161#issuecomment-356061501

See See https://github.com/GoogleChrome/workbox/issues/1285#issuecomment-376653175 for follow-up.


Add MAX and MIN aggregate functions to Meltano Models

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/1592
Originally created by @iroussos on 2020-01-20 18:08:39

Currently we only support {count, sum, avg} as options for the type parameter of aggregates in Meltano Table Model definitions.
We need to at least support the minimal set for SQL aggregate functions: {COUNT, SUM, AVG, MIN, MAX}.
We should add min and max as a valid options for the type parameter of aggregates in Meltano Table Model definitions.

View 2 previous comments from the original issue on GitLab


body is not defined (CLI v1.4.5)

when I do ionic share, the following error shows up.
An uncaught exception occured and has been reported to Ionic

body is not defined (CLI v1.4.5)

Your system information:

Cordova CLI: 5.0.0
Gulp version:  CLI version 3.8.11
Gulp local:   Local version 3.8.11
Ionic Version: 1.0.0
Ionic CLI Version: 1.4.5
Ionic App Lib Version: 0.0.22
ios-deploy version: 1.5.0
ios-sim version: 3.1.1
OS: Mac OS X Yosemite
Node Version: v0.12.0
Xcode version: Xcode 6.3.2 Build version 6D2105

after digging into the source code, found out that the http request returned 403 Forbidden
POST https://apps.ionic.io/api/v1/app/my_app_name/share

tried the share feature on website, worked fine which used the same endpoint.
suspect it is the csrftoken not setup in the correct place in the share cli form submithttps://apps.ionic.io/api/v1/app/uberforhealthcare/share

you forgot to upload your app. ionic upload and then you can share it with ionic share

@3dd13 Did you upload the app before trying to share it?
@sambranco - This commit should alert the user to upload the app first before attempting to share it.

I was not able to upload because of another issue #450
now everything is working fine.
thanks for following up !


database/sql: add support to explicitly set input parameter types and result column types

Right now database/sql infers input parameter types and omits database column level types,
This can be hard to support do to each database vendor supporting different types or different variants of types, however I believe a practical solution exists.
There are two parts to this (1) support setting input parameter types and (2) fetching result column types.

Input parameter values cannot always be correctly inferred and often databases will complain if types don't align with existing table types.

For example Oracle has both "varchar(N), varchar2(N), and char(N) data types. In greenfield work you will probably work with and use varchar2(N) type. Legacy systems may have any of those. For each one of those setting the length of the parameter can be, though is not always, meaningful.
In MS SQL Server there are several different time types as well as text types: You may need a Time, Date, DateTime, DateTime2, or DateTimeOffset. For text you may need a text, ntext, char(N), varchar(N), or nvarchar(N) type. Some of the data types, such as "ntext" vs "nvarchar(N)" or DateTime2 vs DateTimeOffset are important and impossible to auto-discover.

The need for knowing exactly what column type a return value is is less pronounced, but present, especially with the default behavior where strings are returned as []byte. When creating a framework that supports ad-hoc queries it is often important to keep at least the "generic" datatype with the column, even when no results are returned. I've felt this need when creating reporting modules and when doing automatic marshalling where there isn't a direct representation. For instance I marshal (Timestap,DateTime2) different then (Timestampz, DateTimeOffset) when the transport is JSON. And the difference is important for the client (it get's interpreted differently).

...
For types I recommend a two tier approach: have a set of common types defined: sql.Text, sql.Timestamp, sql.Timestampz, sql.Int, sql.Decimal, sql.Float, but allow drivers to also register types like: or.Varchar2, ms.Nvarchar, pg.Array.
The driver then documents how the sql generic types map onto the database types. Most often the generic types can be used (or simply inferred), but when the a specific type is needed it is only a quick parameter set away. I have implemented something like this and I am pleased with the result.

Do you have any examples of 1)? IMHO a driver should care of converting to the right database representation. Could it be a bug in the driver?
Maybe the solution for this is to provide a standard interface for querying table metadata (list of columns with their types)?
Should database specific types be provided by the driver package? Not every database has all the types and sometimes they are different between databases (or even different versions of the same database).

@kostya-sh I address the issue of types in this description. I even have an implementation that shows this works.
I don't want table meta-data, nor do I wish for separate API to get that meta-data. If you're talking CRUD queries, that might be fine. I'm talking about larger queries that do business logic and the queries types aren't necessarily represented in any table anywhere.

In case of PostgreSQL it seems that specifying types for parameters is redundant as the database itself provides this information to the dirver (based on the source of github.com/lib/pq).

@kostya-sh You are correct. Prepared statements infer types and send those back to the client. As such you probably wouldn't utilize this in that case. Also postgresql text is compatible with varchar, unlike other systems where it maters. Now I shall get all my clients and client's vendors to use postgresql and we'll be set...

@kardianos, I wasn't suggesting to switch all your clients to PostgreSQL ;) My intention was to collect use cases that are not possible to implement correctly withput specifying parameter types.
After a bit more digging I found that there are cases when PostgreSQL cannot infer parameter types. For example the following SQL cannot be currently executed using database/sql:
select date_trunc('hour', $1)

This is because there are two date_trunc functions in PostgreSQL and without type information it is impossible to choose the function.

I think is better leave input parameter types to database drivers as they vary among different database venders.
We could also create a database/sql/commontypes package, but that could well be a third-party package. The only benefit I can see, that a commontypes package over driver specific, is that for code portability across different database. But that will depends on how your database drivers convert between database types and common types, and that might suit your needs. A better approach will be write a migrator that traversal the AST and substitute between driver types as your needs.
The problem here is that we can't really pass custom types to Exec() and Query() now. In database/sql, all args are converted to database/sql/driver.Value then pass to the underlying database driver, and Value only allow [some primitive types] (https://godoc.org/database/sql/driver#Value). What the default converter does is auto-dereference to those values, and even we implement the Valuer interface with our custom type, it will rejected by IsValue() check in database/sql. The only way to by pass this check is use a prepared statement and implement ColumnConverter interface and the type should not implement Valuer.
The solution is let the custom types in database drivers implement the Valuer interface by return its value as is. Then let IsValue() accept those types by defined a new interface in database/sql/drivers, that IsValue() can call to check arguments' type of Exec() and Query() is acceptable by underlying drivers. And all the custom types should also implement this interface.

The interface added in database/sql/driver can be something like:
type InputValue interface {
    Validate() bool
}

Then IsValue() should call v.Validate() to validate custom types. And all custom types that can be a input parameter type should implement this interface and Valuer. This should works for both driver specific types and common types.

@bradfitz Could you write why the driver.IsValue exists and specifically the value those calls add in the sql package convert.go driverArgs function? It looks like both of the calls in convert.go are on the driver.ColumnConverter path and as such it could be the driver's responsibility to check driver.IsValue after checking the driver's custom types. Am I misreading or misunderstanding something? Thanks.

I think they were meant for drivers to use for validation. Or maybe it was an internal detail and we didn't have internal packages at the time. I forget.
You can update the docs on it.

@bradfitz I would actually prefer to remove the sql/driver uses of it, and request drivers use it to validate their own types. At least, I think that would be one of the required types to support custom database types. I just don't see the value of this call. If the driver doesn't support the parameter input type, let the driver throw the error.
The second option would be to add a new interface for the driver.Stmt, interface would be in charge of calling IsValid after checking custom driver types. So we could retain the current behavior until the driver adds the checks themselves.
No POC yet. Thoughts?

Well, the idea was we wanted to make it easier to write drivers and not require drivers to deal with every one of Go's integer type sizes and signedness. That's why there's only int64 not uint16, int32, etc.
So we still want to convert the common things (like uint16 to int64) for drivers. But if a driver wants to opt-in to other types (like uint64` or slices of things or arbitrary things like GPS coordinates), that's fine.

Getting column types has been submitted to master.
I'm closing this issue as the remaining points are contained in #13567 and #16235 .


added spm

Thank you, could you please update the README as well?

Done!
The only thing left to do is to release a new tag (1.0.8) after merging this PR...

@guidev Thank you. I added the tag.
I will rewrite the whole project in the next couple of weeks and will add the SwiftUI version as well.


$('selector').calx('update') is converting cell values to strings internally (2.2.7)

I am dynamically adding rows to a spreadsheet and calling $('selector').calx('update') to rebuild the spreadsheet.
I have another sheet that is using SUM to sum the columns in my dynamic sheet (I update the formula to account for the new rows as in the Dynamic Forms example) : SUM(M0:M10)
The dynamic sheet is populated with 10 rows when the page is loaded, after this new rows are added via a button click event with a default value of 1000.
I have put a trace statement in the SUM function to examine the arguments it receives.
When the page is loaded the arguments passed to the SUM function are
{M0:2919,M1:2658,M2:842,M3:443,M4:4299,M5:4344,M6:6085,M7:300,M8:301,M9:302}

After I add a new row and call $('selector').calx('update') the arguments passed to the SUM function are
{M0:"2919",M1:"2658",M2:"842",M3:"443",M4:"4299",M5:"4344",M6:"6085",M7:"300",M8:"301",M9:"302"}

Which is strange because the new row M10 is not included and all the values are now strings.
If I call $('#dynamic_sheet').calx('setValue', 'M10', 1000) on M10 then the arguments passed look like:
{M0:"2919",M1:"2658",M2:"842",M3:"443",M4:"4299",M5:"4344",M6:"6085",M7:"300",M8:"301",M9:"302",M10:"1000"}

M10 is now in the argument list however all the values are still strings.
If I use $('selector').calx('refresh')  instead of $('selector').calx('update') then the values are not converted to strings however column M10 is still missing from the arguments:
{M0:2919,M1:2658,M2:842,M3:443,M4:4299,M5:4344,M6:6085,M7:300,M8:301,M9:302}

In order to get everything to work correctly I have to:
//add new row M10  (code excluded)

//refresh dynamic sheet
$('#dynamic_sheet').calx('refresh');

//update SUM function
$('#another_sheet').calx('getCell', 'A1').setFormula("SUM(M0:M10)");

//refresh and calc referencing sheet
$('#another_sheet').calx('refresh');
$('#another_sheet').calx('calculate');

This behaviour should be fixed in 2.2.8, the issue reside in cell.prototype.resyncValue which take raw cell value from the element


why mount logs on volume?

Is there a specific reason why you want to mount logs on volume? https://github.com/Osedea/nodock/blob/f851f5e/docker-compose.yml#L59

Hey @0x13a, that way you can access the logs from the host. If your container crashes on boot or you just want to use your host's tools it's quite useful.
If you're running NoDock in production, it makes it easier to use log monitoring software.
Let me know if this answers your question :smile:

If your container crashes on boot
You can still check logs with docker logs <container>
You can still plug monitoring tools as docker images and share the volume. This can be a feature request, add ELK stack as a new image in the docker-compose file

I guess is against the idea of docker compose to have logs mounted on the host machine

You can still check logs with docker logs

Fair point.
ELK sounds like the way to go for production but as far as development environments go I think we still need direct access to the logs for simplicity's sake.
I think this can be separated into 2 issues:

Enhancement: Removing the mounted volume for the logs + adding the instructions on how to access the logs from the host (through exec probably)
Feature: Adding the ELK stack image https://github.com/deviantony/docker-elk

@0x13a Any more thoughts on this?

Makes sense!


fix: tip header should not be reset to 0 after restart

Codecov Report

Merging #53 (1fa731e) into develop (2719071) will increase coverage by 6.29%.
The diff coverage is 100.00%.

@@             Coverage Diff             @@
##           develop      #53      +/-   ##
===========================================
+ Coverage    26.84%   33.13%   +6.29%
===========================================
  Files           22       22
  Lines         3338     3338
  Branches       462      461       -1
===========================================
+ Hits           896     1106     +210
+ Misses        2353     2120     -233
- Partials        89      112      +23

Flag
Coverage Δ

unittests
33.13% <100.00%> (+6.29%)
:arrow_up:

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

Impacted Files
Coverage Δ

src/protocols/filter/block_filter.rs
71.42% <ø> (+54.94%)
:arrow_up:

src/protocols/mod.rs
0.00% <ø> (ø)

...otocols/filter/components/block_filters_process.rs
74.24% <100.00%> (+74.24%)
:arrow_up:

src/storage.rs
85.91% <100.00%> (+3.57%)
:arrow_up:

src/protocols/light_client/peers.rs
42.45% <0.00%> (+41.34%)
:arrow_up:

src/protocols/status.rs
70.73% <0.00%> (+53.65%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


[COMPRESS-561] - Minor improvement

Minor improvement

Unused import
add final
Replace  Charset.forName("UTF-8")  for --> StandardCharsets.UTF_8
Unnecessary semicolon ''

https://issues.apache.org/jira/browse/COMPRESS-561

Coverage increased (+0.001%) to 87.274% when pulling 661b62dbc7026584df8c24c2f0a13166af9a256e on arturobernalg:feature/COMPRESS-561 into 4cf5b340bfb881457fc03819f1b2a651c798c5af on apache:master.


.pullapprove.yml: add codygray

Add @codygray to blacklisters.
Already sent invite to join Charcoal with OAP membership and added blacklister role in metasmoke.

Need to wait for Cody to accept the invitation - set pending.

Need to wait for Cody to accept the invitation - set pending.

!!/approve

!!/approve