tikv does not build on ppc64le

What version of Rust are you using (rustc --version)?
Beta 1.19 and Nightly 1.20 downloaded from - https://static.rust-lang.org/dist/rust-beta-powerpc64le-unknown-linux-gnu.tar.gz

What operating system and processor architecture are you using?
ppc64le, RedHat 7.3

What did you do?
Build tikv using make / make static_release
The build fails with the following error
error[E0432]: unresolved import types::os::arch::c95::*
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.1.12/rust/src/liblibc/lib.rs:100:9
|
100 | pub use types::os::arch::c95::*;
|         ^^^^^^^^^^^^^^^^^^^^^^^^ Could not find arch in os
... ...

Analysis so far:
Initially, I was suspecting that the libc crate is not ported for ppc64le, however, after interacting with the rust community, I found that support for ppc64le is available in the latest version of the libc crate.
https://github.com/rust-lang/rust/issues/42858

They suggest upgrading utime, nix and other tikv dependencies to the latest version for better platform compatibility.
I am currently trying to understand what all might need to be updated- any pointers/thoughts on this would be of great help - thanks in advance!!
Regards,
Priya

Hi @seth-priya
We only support x86-64 architecture and don't support ppc64le.

Hi @siddontang, thanks for your response!
I understand the tikv currently does not support ppc64le architecture and have, towards that end, started porting it.
We have validated and found that tidb (now) and pd build and successfully pass all their unit tests on ppc64le, so it would be great to get tikv working as well!

Hi @seth-priya
Can you upgrade libc with cargo update -p libc and make again?

Hi @siddontang, thanks for your inputs!
I tried this and it fails while compiling strsim and flat_map
Here is what I did (on a fresh checkout and clean environment)
bash-4.2#  cargo update -p libc
error: There are multiple libc packages in your project, and the specification libc is ambiguous.
Please re-run this command with -p <spec> where <spec> is one of the following:
libc:0.1.12
libc:0.2.21
bash-4.2# cargo update -p libc:0.1.12
Updating registry https://github.com/rust-lang/crates.io-index
Updating git repository https://github.com/pingcap/kvproto.git
Updating git repository https://github.com/pingcap/grpc-rs.git
Updating git repository https://github.com/pingcap/rust-rocksdb.git
Updating git repository https://github.com/pingcap/tipb.git
Updating git repository https://github.com/pingcap/rust-prometheus.git
Updating git repository https://github.com/busyjay/jemallocator.git
First few lines of the error:
Compiling strsim v0.6.0
error[E0432]: unresolved import types::os::arch::c95::*
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.1.12/rust/src/liblibc/lib.rs:100:9
|
100 | pub use types::os::arch::c95::*;
|         ^^^^^^^^^^^^^^^^^^^^^^^^ Could not find arch in os
and last few
error[E0204]: the trait Copy may not be implemented for this type
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.1.12/rust/src/liblibc/lib.rs:441:26
|
441 |                 #[derive(Copy, Clone)]
|                          ^^^^
...
444 |                     pub ifa_name: *mut c_char,
|                     ------------------------- this field does not implement Copy
Compiling flat_map v0.0.4
error: aborting due to previous error(s)
Rust and cargo versions on my system are:
bash-4.2# rustc --version
rustc 1.20.0-nightly (859c3236e 2017-06-26)
bash-4.2# cargo --version
cargo 0.21.0-nightly (d26fd6f08 2017-06-20)
I will continue to dig into this.

Hi @siddontang,, just a quick update.
I updated strsim, flat_map and a few more dependencies using cargo update. I could proceed, however now I am getting an error while compiling nix and simply updating that using cargo update does not help.
bash-4.2# cargo update -p nix:0.5.1
Updating registry https://github.com/rust-lang/crates.io-index
bash-4.2# cargo update -p nix:0.6.0
Updating registry https://github.com/rust-lang/crates.io-index
bash-4.2# make
cargo build --release --features "default"
Compiling libc v0.1.12
Compiling nix v0.5.1
Compiling librocksdb_sys v0.1.0 (https://github.com/pingcap/rust-rocksdb.git#f7c020d8)
Compiling grpc-sys v0.1.0 (https://github.com/pingcap/grpc-rs.git#5e425f27)
Compiling sys-info v0.4.1
Compiling nix v0.6.0
error[E0432]: unresolved import types::os::arch::c95::*
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.1.12/rust/src/liblibc/lib.rs:100:9
|
100 | pub use types::os::arch::c95::*;
|         ^^^^^^^^^^^^^^^^^^^^^^^^ Could not find arch in os
error[E0432]: unresolved import types::os::arch::c99::*
Looks like the latest version of nix 0.8.1, https://crates.io/crates/nix should work as it depends on libc 0.2.21 - will check how to update nix, next

Hi @seth-priya
Maybe you can remove Cargo.lock and compile again.

/cc @BusyJay

@seth-priya
Seem you can try:

Remove Cargo.lock
Use 0.2.24 for libc in Cargo.toml libc = "0.2.24"
Remove features = ["static-link"] in  Cargo.toml for [dependencies.grpc]

I tried above and can use the latest libc to build TiKV.

Sure - will try, I did try "make clean" some time back, but again hit the same issue with nix. I will try removing Cargo.lock explicitly, otherwise go back and have a closer look at the error being thrown by nix. Thanks!

@siddontang
Thanks! I think I am hitting another problem on ppc64le ....
Just to be sure, I created a clean setup and tried the above steps i.e.
1.Remove Cargo.lock
2.Use 0.2.24 for libc in Cargo.toml  libc = "0.2.24"
3.Remove  features = ["static-link"]  in Cargo.toml for  [dependencies.grpc]
However, it failed at the below point   Compiling ordermap v0.2.10
error[E0432]: unresolved import types::os::arch::c95::*
--> /root/.cargo/registry/src/github.com-1ecc6299db9ec823/libc-0.1.12/rust/src/liblibc/lib.rs:100:9
|
I am suspecting that this is because there are other dependencies in Cargo.toml that in turn depend on libc (specifically libc-0.1.12) and will need to be updated as well for the build to work.
That is what I have been trying, but looks like there are multiple such dependencies and it will take some effort to figure them all out, unless there is a way to do a recursive update.

Hi @seth-priya
I think you can file an issue for the ordermap repository and let it updates libc.

@siddontang, I could resolve the issue with ordermap by specifying the latest version of that in tikv Cargo.toml as follows:
ordermap = "0.2.10"
I did similar changes for other dependencies as their latest versions depend on libc 0.2.x
However, there is a compilation issue with nix - it seems that even latest release 0.8.1 does not support ppc64le, mainline does. I could build the mainline version and am trying to build tikv with that.

Cool @seth-priya
Wait for your good news :-)

Just wanted to provide a quick update here -
I am continuing to work on this. However, this is a bit complicated as there are a number of dependencies that themselves will first need to be updated to use the latest versions of nix and / or libc in particular.
Some of these include jemallocator (systest depends on libc 0.1), signal (depends on nix 0.6, that does not support Power), kvproto (this again depends on nix 0.6). grpc-rs might also require some changes because it is currently using an older version of boringssl. Simply upgrading the versions for these does not seem to work as some of interfaces have changed across the versions.
In the meantime, I have been successfully able to build/validate some of the other dependencies on Power. These include the mainline versions of nix , boringssl, tipb, rust-Prometheus, kcov,  libprotoc, gflags among others.

@siddontang - just wanted to provide an overall summary of the progress of the port to ppc64le, so far.
1- As a first step, all the dependencies (gflags, rocksdb, kcov, rustfmt) could be successfully built from source and validated.
2- Version of the following dependencies had to be updated in Cargo.toml - num, utime, url, mio as their older versions were not supported on ppc64le.
3- Interacted with the nix community and they confirmed that ppc64le is now supported as a Tier-1 architecture. They have now released version 0.9.0, that has support for ppc64le. nix would need to be updated to this version in tikv.
4- Submitted PR https://github.com/tailhook/signal/pull/8 to upgrade the version of nix used by signal. A new version of signal "0.4" (with ppc64le support) is released with this change and the version for signal in tikv needs to be updated to this.
5 - Submitted PR to upgrade libc version in jemallocator
https://github.com/alexcrichton/jemallocator/commit/0003dce9bdf8b32dc255c1f720aa1a084f9ca734
This is now supported on ppc64le.
6 - Updated grpc-rs to use grpc master (PR yet to be raised)
7 - Successfully re-built kvproto using updated grpc-rs (PR yet to be raised)
8 - Modified sys-info-rs code to support ppc64le (PR yet to be raised).
With the above changes, I was able to proceed with tikv compilation - 112 dependencies seem to have been complied as part of tikv compilation process (including all direct dependencies listed in Cargo.toml).
Currently tikv compilation is failing because of using a newer version of mio - basically the APIs used by tikv have been deprecated in newer versions of mio - I shall raise a separate issue to discuss that with the community.
Thanks!

Greate @seth-priya
You can send us a PR to support ppc64le.

Submitted PR to upgrade libc version in jemallocator

we don't use alex jemallocator, we use https://github.com/busyjay/jemallocator, /cc @BusyJay seem we can update with the change.

Yes. And we don't have to use mio actually, we may not depend on it anymore in the future.

Thanks @siddontang, @BusyJay - I will submit a PR for tikv as soon as all the compilation issues are resolved and I have am able to run the unit tests. Currently, I am stuck on the mio issue as compilation fails at this point.
@BusyJay is there are a way to skip this (mio dependency) locally? When are the changes for removing mio expected?
@BusyJay also let me know if I need to raise a PR to https://github.com/busyjay/jemallocator to merge that change made here https://github.com/alexcrichton/jemallocator/commit/0003dce9bdf8b32dc255c1f720aa1a084f9ca734?
Thanks!!

I'm afraid you can't skip it locally without changing the code (a lot). But last time I checked, mio provides a compatible layer via an additional deprecated crate. So you should be able to update the mio by adding this additional dependency. Although this may hurt performance.
You can just ignore jemallocator for now. It won't be enabled unless mem-profiling feature is eanbled.

Thanks Jay, that helps - Yes, I have started working on using the "deprecated" APIs after upgrading mio, I believe since the longer term plan is to remove dependency on mio, use of deprecated APIs for now to identify and fix the next set of compilation issues on ppc64le would be good way forward. I can re-visit mio later, as required.

Just a quick update on where I am with the port on ppc64le ...
I was able to resolve mio issues by using the latest version of mio 0.6.3 with the deprecated APIs. Subsequently, tikv compilation was failing due to use of jemalloc, which I have temporarily tried to disable by disabling memory profiling. Now I am getting the following issue
Compiling tikv v0.0.1 (file:///root/tikv)
error[E0599]: no associated item named CeilInt found for type tipb::expression::ScalarFuncSig in the current scope
--> src/coprocessor/select/xeval/evaluator.rs:555:13
|
555 |             ScalarFuncSig::CeilInt => self.ceil_int(ctx, expr),
|             ^^^^^^^^^^^^^^^^^^^^^^
error[E0599]: no associated item named FloorInt found for type tipb::expression::ScalarFuncSig in the current scope
--> src/coprocessor/select/xeval/evaluator.rs:557:13
|
557 |             ScalarFuncSig::FloorInt => self.floor_int(ctx, expr),
|             ^^^^^^^^^^^^^^^^^^^^^^^
error: aborting due to 2 previous errors
error: Could not compile tikv.
To learn more, run the command again with --verbose.
Looking into it further.
Meanwhile the changes for sys-info-rs have been up-streamed and the community has released a new version of the crate.

We update tipb recently and remove these item already. Maybe you need to merge master or keep using the same revision of tipb your branch used to.

@BusyJay , thanks - will try that!!

I was able to run "cargo build" successfully after upgrading the dependencies and tikv fork to the latest. I went a step further and tried to run "cargo test".
This is what I have till now
test result: ok. 370 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
 Running target/debug/deps/bench_tikv-3efc343e4c6c3898

running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
 Running target/debug/deps/tikv_ctl-6dd3468767879809

running 1 test
test tests::test_ctl_mvcc ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
 Running target/debug/deps/tikv_server-5e714a9e2a8b0611

running 1 test
test signal_handler::imp::tests::test_stats_print ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
 Running target/debug/deps/tests-4d8719e4fa57ca4e

running 330 tests
....
test result: FAILED. 212 passed; 118 failed; 0 ignored; 0 measured; 0 filtered out
error: test failed, to rerun pass '--test tests'
Looking into the test failures.

Failure count is now down from 118 to 2 for the above set. @siddontang , @BusyJay , is there a way to run each test module independently so that I can identify if there are any issue beyond the current 2 failures?
Also is there a way to run each test case independently to help with debugging?
Thanks!

Well done! You can filter the test cases you want by append extra args to command cargo test. For more information, please see the output of command cargo test --help.

Thanks for the quick response!! Will try that

Quick update - after disabling the failing modules, I executed the complete set of tests on the forked branch (with changes to support ppc64le) on both x86 and ppc64le. There are 3 test failures in all. Analysis is as follows:
1- raftstore::test_split_region::test_server_split_region_diff_check
Fails on both ppc64le and x86. However passes when run individually - cargo test raftstore::test_split_region::test_server_split_region_diff_check
2 - raftstore::test_snap::test_server_snapshot
Fails on x86, passes on ppc64le
3. raftstore::test_multi::test_multi_server_random_restart
Random failure on x86, ppc64le. I have observed this to fail randomly on the current tikv master as well - on my local x86 setup.
All other tests passed. I will continue to debug the failures.

Tests can fail when too many cases running concurrently, because some tests depends on timeout which may exceed if the machine performs poorly. You can use cargo test -- --test-threads=2 to limit the concurrent jobs. It will be helpful if you can provide some logs.

Thanks @BusyJay and sorry for the delay - I got back to this after being out for a couple of weeks. I was re-visiting the changes I have made, with the intention of raising a PR.
One of the first things that will need to be sorted out is the dependency on grpc (via grpc-rs). I have started a new discussion for that here:
https://github.com/pingcap/grpc-rs/issues/90

Thanks to pointers from @BusyJay latest grpc-rs works on ppc64le and so does kvproto (using grpc-rs from github). Only change required to kvproto for ppc64le would be update grpcio version, once it is released, to make it work on ppc64le.
This covers all dependencies except jemallocator. Raised PR for that here:
https://github.com/BusyJay/jemallocator/pull/1
Now, for the tikv changes, I am planning to split the changes into two parts:
1 - Changes for updating dependencies other than mio
2 - mio update changes.
I will create a fresh fork with the latest code and test the first set of changes on Intel to ensure that nothing breaks.

Hi @seth-priya
Can it work now?

Hi @siddontang - thanks for checking back, I am still trying to work through the last few (mostly test suite related) issues on ppc64le. Meanwhile, I have raised a PR for upgrading the mio version, that will be required and based on discussion above. I will try to get the hopefully last patch out soon.

Hi @siddontang , @BusyJay - this query is not related directly related to the issue here, but was (just out of curiosity) wondering if the release plan for tikv is published at some place (for example when are we expecting the first GA)? Once, we have the GA out, do we plan to publish the package @ crates.io for example? I was having a discussion with the nix community a few days back on gitter and they were also asking some of these questions.
Looking at this - https://pingcap.github.io/blog/2017/05/27/rust-in-tikv/#timeline
we would be close?
Thanks!

Hi @seth-priya
We will release GA version soon, in this month. But we have no plan to publish to crates now because we think TiKV is a binary execution, not a library.
We have to do lots of work to guarantee stability and performance, which takes a long time and delays the GA release, sorry.

Thanks @siddontang for the details.
For this particular issue (ppc64le support), apart from the open PR, there is one last issue (jemalloc issue mentioned above) that I am now trying to resolve (had by-passed this call on ppc64le to try and move ahead). Everything, apart from this seems to be working
= note: /usr/bin/ld: /root/tikv/target/debug/deps/tikv_server-9c7aaf9d3bc56a45.tikv_server0.rust-cgu.o: undefined reference to symbol 'malloc_stats_print'
//usr/lib/powerpc64le-linux-gnu/libjemalloc.so.1: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
error: aborting due to previous error
error: Could not compile tikv.

So, there was issue linking to libjemalloc on ppc64le. This change in build.rs seems to work:
#[cfg(target_arch = "powerpc64" && target_endian = "little")]
println!(r"cargo:rustc-link-lib=jemalloc");
will do so more testing on latest code and add it to the PR.
Thanks!
Priya


Histogram: slowly consumes all memory

open dataset through open -> text -> done
add filter panel and several histograms
wait some time

result: tab slowly eats memory and eventually crashes

SPGI with 10 histograms, ~15 numerical/date filters, 3 similar views opened: memory consumption goes up to 2.8 GB in ~half an hour.

DG v. 1.13.12.

DG 1.14.0


Migrate to CFS. Part 1

Task name:  AndroidSigningV2,
AndroidSigningV3,
ANTV1,
AppCenterDistributeV1,
AppCenterDistributeV2,
AppCenterDistributeV3,
AppCenterTestV1,
ArchiveFilesV2,
AutomatedAnalysisV0,
AzureAppConfigurationPushV10,
AzureAppConfigurationSnapshotV1,
AzureAppConfigurationV10,
AzureAppServiceManageV0,
AzureAppServiceSettingsV1,
AzureCloudPowerShellDeploymentV1,
AzureCloudPowerShellDeploymentV2,
AzureContainerAppsV0,
AzureContainerAppsV1,
AzureFileCopyV1,
AzureFunctionAppContainerV1
Description: This PR contains the first part of tasks for the migration to CFS.
Documentation changes required: N
Added unit tests: N
Attached related issue: AB#2197030
Checklist:

[x] Task version was bumped - please check instruction how to do it
[ ] Checked that applied changes work as expected

/azp list

@ivanduplenskikh We are re-naming our tasks, please hold check this PR in until the PRs to rename our tasks have been checked in :), ETA should be end of day today  PRs -> https://github.com/microsoft/azure-pipelines-tasks/pull/20419 and https://github.com/microsoft/azure-pipelines-tasks/pull/20418

what is CFS ?


hi im a big noob :)

http://fynmorph.free.fr/xiangqi/
https://i.imgur.com/e0vaSys.png
why arent my pieces on the board lol

Well, you should link CSS file to fix the problem ;-)
<link rel="stylesheet" href="css/xiangqiboard-0.2.0.min.css" />

Also, you could use graphic pieces like this:
const config = {
    pieceTheme: 'img/xiangqipieces/graphic/{piece}.svg',
    position: 'start'
}

const board = Xiangqiboard('myBoard', config);

See Piece Theme String & Piece Theme Function.

Lol, thank you!!

I think we should close this issue as it has been resolved.


xSQLServerRSConfig: Added integration test

Pull Request (PR) description

Changes to xSQLServerRSConfig

Added integration test (issue #753).

This Pull Request (PR) fixes the following issues:
Fixes #753
Task list:

[x] Change details added to Unreleased section of CHANGELOG.md?
[ ] Added/updated documentation, comment-based help and descriptions in .schema.mof files where appropriate?
[ ] Examples appropriately updated?
[x] New/changed code adheres to Style Guidelines?
[x] Unit and (optional) Integration tests created/updated where possible?

This change is

Codecov Report

Merging #834 into dev will not change coverage.
The diff coverage is n/a.

@@         Coverage Diff         @@
##            dev   #834   +/-   ##
===================================
  Coverage    96%    96%
===================================
  Files        31     31
  Lines      3316   3316
===================================
  Hits       3199   3199
  Misses      117    117

Will add additional tests for this to verify that the sites actually responds. So labeling this "Waiting for author".

This PR will fail the tests until PR #837 has been merged.

:LGTM.

Reviewed 2 of 3 files at r1, 1 of 1 files at r2.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Review status: :shipit: all files reviewed at latest revision, all discussions resolved, all commit checks successful.

Comments from Reviewable


Exception raised and strange behavior if all open files are deleted/moved outside Spyder

Problem Description
If all the files I have open in Spyder are re/moved externally, I get odd behavior and an inconsistent/"desynced" split panel state on hitting "yes" to close the last file that leads to any number of exceptions, most commonly the one below. Specifically, after removing the files in the OS and switching back to Spyder, I get a "This file is available" warning for each file (as expected), but the last file open will only close in the active pane, not others, leaving the panes desynchronized. If I then click on that pane to make it active, I get the warning again for the same (last) file, and upon closing that one, I get the below error, presumably caused by Spyder trying to find the name of the file in the other pane in order to close it, and not finding it (likely, I'd run into others no matter what I did at that point due to the desync).
I can repro this following the below procedure with or without clean prefs, and once this occurs once (by the aforementioned method detailed below), keyboard shortcuts stop working in the Editor (even simple stuff like Ctrl-O) and thereafter closing any last file even by normal means will leave the active pane blank and the file open in any other panes, creating the same situation as above. Meanwhile, if I have a single panel open and repeat the procedure, everything closes without an error but no stock Untitled0 file is opened in the Editor like is always supposed to be the case (and is so when closing files normally if this error had first not been triggered), so calling any command at this point that expected an open file to act upon results in another exception.
So, we could catch this particular exception but much better to prevent the pane desync/blanking in the first place; I assume we could do so by examining the code in the function that triggers the close of the files when they are unavailable externally?
What steps reproduce the problem?

Split the editor pane at least once
Create two files (in Spyder or your OS)
Ensure they are the only two files open in Spyder
Delete/move them in your OS file manager
Switch back to Spyder and click "Yes" (close) at each "File unavailable" warning

Alternatively,

Have only one pane open
Follow steps 2 through 5 above
Trigger any command/menu item that requires a file to act upon (e.g. Change line endings)

Paste Traceback/Error Below (if applicable)

  File "C:\Users\C. A. M. Gerlach\Documents\dev\SpyderDev\spyder\spyder\plugins\editor\plugin.py", line 1222, in close_file_in_all_editorstacks
    index = editorstack.get_index_from_filename(filename)
  File "C:\Users\C. A. M. Gerlach\Documents\dev\SpyderDev\spyder\spyder\plugins\editor\widgets\editor.py", line 1453, in get_index_from_filename
    return filenames.index(filename)
ValueError: 'B:\\dev\\Bitzer\\glML\\temp3.py' is not in list

Versions

Spyder version: 4.0.0.dev0 a411d61d7
Python version: 3.7.2
Qt version: 5.9.6
PyQt5 version: 5.9.2
Operating System: Windows 8.1

Dependencies
pygments >=2.0    :  2.3.1 (OK)
qdarkstyle >=2.6.4:  2.6.5 (OK)
sphinx >=0.6.6    :  1.8.4 (OK)
pyls >=0.19.0     :  0.21.5 (OK)
nbconvert >=4.0   :  5.4.0 (OK)
pandas >=0.13.1   :  0.24.1 (OK)
numpy >=1.7       :  1.15.4 (OK)
sympy >=0.7.3     :  1.3 (OK)
cython >=0.21     :  0.29.4 (OK)
qtconsole >=4.2.0 :  4.4.3 (OK)
IPython >=4.0     :  7.2.0 (OK)
matplotlib >=2.0.0:  3.0.2 (OK)
pylint >=0.25     :  2.2.2 (OK)

I can't reproduce this problem. Please create a video so I can see exactly what steps you're following to generate the error.

Sorry, this can be easily reproduced on Windows.


Documentation tips for TypeScript

To get the most out of the typings, the input conjuration needs to be static or const in Typescript. We should add a tip in the documentation here and in utils to reduce potential confusion.
// accurate
const results1 = parseArgs({ options: { foo: { type: 'string' }}});

// accurate
const config2 = { options: { foo: { type: 'string' }}} as const;
const results2 = parseArgs(config2);

// error because `type` is typed as string and not `'type'` so TypeScript can not check used correctly
const config3 = { options: { foo: { type: 'string' }}};
const results3 = parseArgs(config3); // error

Related comment:

https://github.com/DefinitelyTyped/DefinitelyTyped/pull/61512#issuecomment-1200346403

If I understand correctly, the types for @pkgjs/parseargs will be available as @types/pkgjs__parseargs. I didn't know about the pattern for types for scoped packages, and I think worth putting in a tip about that in the README too.


Add plan and parameter descriptions to plan documentation when converting YAML plans

Use Case
YAML plans accept a top-level description key and parameter-level description keys that are used by bolt plan show to show plan documentation. Puppet plans use puppet-strings to pull similar documentation from comments at the top of the plan file. The bolt plan convert command should add plan and parameter descriptions from a YAML plan to the comments in the converted Puppet plan to preserve documentation.

+1 i've wanted this before for demos. Having the plan descriptions show up in the console for PE is helpful.

Yes, it is good if we have plan description in the console.


Implement full, dynamic TOC sidebar (resolves #1296)

Using http://sphinxcontrib-fulltoc.readthedocs.io/en/latest/ to display a neat, dynamic TOC that shows additional details for the section selected. It uses the Apache license so it should be fine for use to use (right?).
The addition to the makefile installs fulltoc when the user runs make prepare

Jenkins, test this please.

RTD build failed (https://readthedocs.org/projects/toil/builds/4690626/):
Running Sphinx v1.3.5
making output directory...
loading translations [en]... done
loading pickled environment... not yet created
building [mo]: targets for 0 po files that are out of date
building [json]: targets for 10 source files that are out of date
updating environment: 10 added, 0 changed, 0 removed
reading sources... [ 10%] architecture
reading sources... [ 20%] batchSystem
reading sources... [ 30%] cli
reading sources... [ 40%] developing
reading sources... [ 50%] index
reading sources... [ 60%] installation
reading sources... [ 70%] jobStore
reading sources... [ 80%] running
reading sources... [ 90%] spark
reading sources... [100%] toilAPI

/home/docs/checkouts/readthedocs.org/user_builds/toil/checkouts/issues-1296-doc-sidebar/docs/installation.rst:None: WARNING: nonlocal image URI found: http://azuredeploy.net/deploybutton.png
/home/docs/checkouts/readthedocs.org/user_builds/toil/checkouts/issues-1296-doc-sidebar/docs/spark.rst:7: ERROR: Unknown target name: "spark".
/home/docs/checkouts/readthedocs.org/user_builds/toil/checkouts/issues-1296-doc-sidebar/docs/spark.rst:7: ERROR: Unknown target name: "hadoop".
/home/docs/checkouts/readthedocs.org/user_builds/toil/checkouts/issues-1296-doc-sidebar/src/toil/job.py:docstring of toil.job.Job.Service.start:4: WARNING: Field list ends without a blank line; unexpected unindent.
/home/docs/checkouts/readthedocs.org/user_builds/toil/checkouts/issues-1296-doc-sidebar/src/toil/job.py:docstring of toil.job.Job.Service.stop:4: WARNING: Field list ends without a blank line; unexpected unindent.
looking for now-outdated files... none found
pickling environment... done
checking consistency... /home/docs/checkouts/readthedocs.org/user_builds/toil/checkouts/issues-1296-doc-sidebar/docs/spark.rst:: WARNING: document isn't included in any toctree
done
preparing documents... done
writing output... [ 10%] architecture

Traceback (most recent call last):
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/cmdline.py", line 244, in main
    app.build(opts.force_all, filenames)
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/application.py", line 266, in build
    self.builder.build_update()
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/builders/__init__.py", line 251, in build_update
    'out of date' % len(to_build))
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/builders/__init__.py", line 322, in build
    self.write(docnames, list(updated_docnames), method)
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/builders/__init__.py", line 360, in write
    self._write_serial(sorted(docnames), warnings)
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/builders/__init__.py", line 368, in _write_serial
    self.write_doc(docname, doctree)
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/builders/html.py", line 445, in write_doc
    self.handle_page(docname, ctx, event_arg=doctree)
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/builders/html.py", line 1088, in handle_page
    self.dump_context(ctx, outfilename)
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/builders/html.py", line 1070, in dump_context
    self.implementation.dump(context, f, *self.additional_dump_args)
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/util/jsonimpl.py", line 28, in dump
    return json.dump(obj, fp, *args, **kwds)
  File "/usr/lib/python2.7/json/__init__.py", line 189, in dump
    for chunk in iterable:
  File "/usr/lib/python2.7/json/encoder.py", line 434, in _iterencode
    for chunk in _iterencode_dict(o, _current_indent_level):
  File "/usr/lib/python2.7/json/encoder.py", line 408, in _iterencode_dict
    for chunk in chunks:
  File "/usr/lib/python2.7/json/encoder.py", line 442, in _iterencode
    o = _default(o)
  File "/home/docs/checkouts/readthedocs.org/user_builds/toil/envs/issues-1296-doc-sidebar/local/lib/python2.7/site-packages/sphinx/util/jsonimpl.py", line 23, in default
    return json.JSONEncoder.default(self, obj)
  File "/usr/lib/python2.7/json/encoder.py", line 184, in default
    raise TypeError(repr(o) + " is not JSON serializable")
TypeError: <function make_toctree at 0x7f2c48680b90> is not JSON serializable

Exception occurred:
  File "/usr/lib/python2.7/json/encoder.py", line 184, in default
    raise TypeError(repr(o) + " is not JSON serializable")
TypeError: <function make_toctree at 0x7f2c48680b90> is not JSON serializable
The full traceback has been saved in /tmp/sphinx-err-g4vTqG.log, if you want to report the issue to the developers.
Please also report this if it was a user error, so that a better error message can be provided next time.
A bug report can be filed in the tracker at <https://github.com/sphinx-doc/sphinx/issues>. Thanks!

Try applying this fix: https://github.com/dreamhost/sphinxcontrib-fulltoc/pull/11

@hannes-ucsc FINALLY it looks like read-the-docs builds (thanks to that fix). I'm concerned about the failed tests

src.toil.test.provisioners.cgcloud.provisionerTest.CGCloudRNASeqTest.testStaticCluster
src.toil.test.provisioners.cgcloud.provisionerTest.CGCloudRNASeqTest.testAutoScaledCluster
src.toil.test.provisioners.cgcloud.provisionerTest.CGCloudRNASeqTest.testAutoScaledSpotCluster

I don't know what these tests are about at all, and don't think they are related. Should I file a separate issue? Do you have any insight?
Otherwise I think it's ready to merge.

Jenkins, test this please

@cket told me this is just a sporadic error and should just be retested.

Jenkins, test this please

@hannes-ucsc ready for review.

@jessebrennan, FYI, this is what the commit messages should have looked like:
Delete unused import in docs/conf.py

Vendor Sphinx extension for full TOC (resolves #1296)

Vendored from <insert URL here>

Make make_toctree JSON serializable (connected to #1296)

… using patch from <insert URL here>

I merged this anyways and didn't push back because we have some pressure on Jenkins right now.


No data with flow-router without server side routes (again)

FlowRouter 1.7.0, FastRender 2.4.0
Seems to be the same problem as in this previous issue.
Client (lib/router.js) :
FlowRouter.route('/', {
    name : 'home',
    subscriptions : function(){
        console.log('sub called');
        this.register('baseSubs', Meteor.subscribe('baseSubs'));
    },
    action : function(){
        FlowLayout.render('homeLayout');
    }
});

Server (server/publications.js) :
Meteor.publish('baseSubs', function(){
    // normal code, nothing special
});

The console.log call in routes.js never shows up on the server, only on the client.
But clearly FastRender is running, since the user data is sent via FastRender, and it loads correctly on startup. However, if I add the following to server/publications.js :
FastRender.route('/', function(){
    this.subscribe('baseSubs');
});

then all the collections on the server publication load correctly... Also, on the client the subscription is correctly run, and the console.log is printed.
Any ideas ? I think I'm just copy-pasting from the docs...

This is coming from

A quick fix is in this pull request


[SPARK-29594][SQL] Provide better error message when creating a Dataset from a Sequence of Case class where a field name started with a number

What changes were proposed in this pull request?
This pr is to fix a bug discovered by me, [SPARK-29594], when creating a Dataset using .toDS() in a sequence of a case class that had a field name starting with a number.
The exception was improved, now explains why it breaks, and gives a work around of the problem.
Why are the changes needed?
Bug fix
Does this PR introduce any user-facing change?
No
How was this patch tested?
Tests were added, sql/core/src/test/scala/org/apache/spark/sql/DatasetSuite.scala
EDIT:
The tests could not be added because the documentation generation is in Java and doesn't allow to create a class with a variable starting with a number.
How to reproduce this test:
case class InvalidInJavaForNumber(1something: String)
test("SPARK-29594 better error message when use java field name starting with a number") {
val e = intercept[UnsupportedOperationException] {
Seq(InvalidInJavaForNumber("HelloWorld!")).toDS()
}
assert(e.getMessage.contains(
"1something is a word that starts with a number and cannot be used as field name"))
}
test("Dataset should support flat input object to be null") {
checkDataset(Seq("a", null).toDS(), "a", null)
}

Can one of the admins verify this patch?

Can one of the admins verify this patch?

@dongjoon-hyun All the changes are done, thank you for the suggestions!

@dongjoon-hyun I think everything is ok now :)

ok to test

Test build #115494 has started for PR 26319 at commit 2c8cc94.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/20297/
Test PASSed.

Test build #115494 has finished for PR 26319 at commit 2c8cc94.

This patch fails to generate documentation.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/115494/
Test FAILed.

Test build #118818 has started for PR 26319 at commit 6495368.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/23568/
Test PASSed.

Test build #118818 has finished for PR 26319 at commit 6495368.

This patch fails to generate documentation.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/118818/
Test FAILed.

retest this please

Test build #119645 has started for PR 26319 at commit 6495368.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/24376/
Test PASSed.

Test build #119645 has finished for PR 26319 at commit 6495368.

This patch fails to generate documentation.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/119645/
Test FAILed.

Test build #119668 has started for PR 26319 at commit 6e7fc5e.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/24397/
Test PASSed.

Test build #119668 has finished for PR 26319 at commit 6e7fc5e.

This patch fails to generate documentation.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/119668/
Test FAILed.

Test build #120002 has started for PR 26319 at commit 7016815.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/24722/
Test PASSed.

Test build #120002 has finished for PR 26319 at commit 7016815.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/120002/
Test PASSed.

@dongjoon-hyun  any updates on this PR, is it good to be merged?

Personally this looks OK to me, reasonable and small change. While I agree this is too ad-hoc, I also agree failing with improper error message is bad, especially when the error points "codegen" which end users don't want to take a look.
@srowen @dongjoon-hyun @HyukjinKwon Would you mind to revisit this? I'd go ahead if others are also OK to this.

I don't object this change. I am okay.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/32072/
Test PASSed.

Test build #127451 has started for PR 26319 at commit fede812.

Test build #127451 has finished for PR 26319 at commit fede812.

This patch fails Scala style tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/127451/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/32073/
Test PASSed.

Test build #127452 has started for PR 26319 at commit bf06d0c.

Test build #127452 has finished for PR 26319 at commit bf06d0c.

This patch fails Scala style tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/127452/
Test FAILed.

Test build #127454 has started for PR 26319 at commit 31e90b5.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/32075/
Test PASSed.

Test build #127454 has finished for PR 26319 at commit 31e90b5.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/127454/
Test PASSed.

This code looks fine with the reported case.
I am curious about the below code. In other word, Character.isJavaIdentifier() returns false regarding the identifier. Should we add this check, too?
case class Foo(`1+something`: String)
val test = Seq(Foo("HelloWorld!")).toDS()

Ping @dongjoon-hyun

@PedroCorreiaLuis
Could you check the latest review comment from @kiszk ? After that it looks like we can merge this in.

This code looks fine with the reported case.
I am curious about the below code. In other word, Character.isJavaIdentifier() returns false regarding the identifier. Should we add this check, too?
case class Foo(`1+something`: String)
val test = Seq(Foo("HelloWorld!")).toDS()

Yeah it returns false, that is why I did the negation in there. If you are saying adding a check, as in adding a test, we cannot do that, because this is being converted into Java class to generate Javadoc so  it causes compilation error when it does, as mentioned above by @HyukjinKwon.

@PedroCorreiaLuis
Could you check the latest review comment from @kiszk ? After that it looks like we can merge this in.

Done 👍

retest this, please

Test build #130513 has started for PR 26319 at commit 31e90b5.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/35113/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/35113/

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/35113/
Test PASSed.

Test build #130513 has finished for PR 26319 at commit 31e90b5.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/130513/
Test PASSed.

Test build #130524 has started for PR 26319 at commit d75167f.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/35124/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/35124/

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/35124/
Test PASSed.

Test build #130524 has finished for PR 26319 at commit d75167f.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/130524/
Test PASSed.

I agree with avoiding the compilation error. On the other hand, I think that we need to provide the better error message regarding the following case, too.
case class Foo(`1+something`: String)
val test = Seq(Foo("HelloWorld!")).toDS()

I agree with avoiding the compilation error. On the other hand, I think that we need to provide the better error message regarding the following case by seeing Character.isJavaIdentifier(), too.
WDYT?
case class Foo(`1+something`: String)
val test = Seq(Foo("HelloWorld!")).toDS()

Not sure if I followed what you are proposing, since we can't do that test because it fails compilation, can you please explain it again?

My proposal is to change from
if (!Character.isJavaIdentifierStart(fieldName.head)) {

to
if (!Character.isJavaIdentifierStart(fieldName.head) || !Character.isJavaIdentifier()) {

No change in test cases.
WDYT?

@kiszk So a couple of things:
-  I couldn't find any Character.isJavaIdentifier.
- if you have the case class Foo that you mentioned it will enter in my if, and it only breaks because it starts with a 1, if you try this example you will see:
case class Foo(`a+something`: String)
val test = Seq(Foo("HelloWorld!")).toDS()
This won't throw any exception.

Thanks, I see. Let me check tonight or tomorrow.

For 1., I made a mistake. Source.isJavaIdentifierPart() except the first character.
For 2., this code does not throw an exception. As you pointed out in the JIRA entry, the following code would throw an exception at the Java code generation phase. The exception is not familiar with users. Can we provide the better message?
case class Foo(`1_something`: String)
val test = Seq(Foo("HelloWorld!")).toDS()

For 1., I made a mistake. Source.isJavaIdentifierPart() except the first character.
For 2., this code does not throw an exception. As you pointed out in the JIRA entry, the following code would throw an exception at the Java code generation phase. The exception is not familiar with users. Can we provide the better message?
case class Foo(`1_something`: String)
val test = Seq(Foo("HelloWorld!")).toDS()

Not sure if you are agreeing or disagreeing with me 😅, but my code is just to provide a better message to the user.

Oh, I realized that I made a mistake again. Sorry for my bad.
I imagine that the following code would also throw an exception at the code gen even as you pointed out in the JIRA entry if the first character is valid.
Am I correct?
case class Foo(`a+something`: String)
val test = Seq(Foo("HelloWorld!")).toDS()

@kiszk no problem :). Negative, that is what I wrote here:

@kiszk So a couple of things:

I couldn't find any Character.isJavaIdentifier.
if you have the case class Foo that you mentioned it will enter in my if, and it only breaks because it starts with a 1, if you try this example you will see:
case class Foo(`a+something`: String)
val test = Seq(Foo("HelloWorld!")).toDS()

This won't throw any exception.

I see. I thought that the original problem occurs since 1_something is invalid as a Java identifier. Thus, I assumed that the program with a+something would throw an exception sine a+something is invalid as a Java indentifier.
Is there the different root cause to thrown an exception by the program with 1_something ?

Interesting, it also doesn't throw any exception when it starts with + or -, so I think I should revert to what I had originally, if the first char is a digit.
As the why it throws an exception I thought it was because the java field name, but now I don't even know. Thoughts?

How did you produce the problem that is reported in the JIRA? I know that this code alone does not throw this exception.
case class Foo(`1_something`: String)
val test = Seq(Foo("HelloWorld!")).toDS()

java.lang.RuntimeException: Error while encoding: java.util.concurrent.ExecutionException: org.codehaus.commons.compiler.CompileException: File 'generated.java', Line 316, Column 15: failed to compile: org.codehaus.commons.compiler.CompileException: File 'generated.java', Line 316, Column 15: Expression "funcResult_2 = value_19" is not a type[0m
[31mstaticinvoke(class org.apache.spark.unsafe.types.UTF8String, StringType, fromString, unwrapoption(ObjectType(class java.lang.String), assertnotnull(assertnotnull(input[0, Foo, true])).1_something), true, false) AS 1_something#40[0m

I think this pr can be closed, it seems to be already fixed here https://github.com/apache/spark/commit/6cd0bef7fe872b5d9472a2140db188fb9f1eede8


React does not recognize the isFitContent prop on a DOM element.

Which package has an issue?
@yamada-ui/react
Package Version
1.3.12
Description
React does not recognize the isFitContent prop on a DOM element.
Warning: React does not recognize the `isFitContent` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `isfitcontent` instead. If you accidentally passed it from a parent component, remove it from the DOM element.
    at div
    at http://localhost:6006/node_modules/.cache/storybook/1c3385a5d25e538d10b518b310c74d3ca2690b6aaffeadccd74da79736171f86/sb-vite/deps/chunk-RLY4AXQN.js?v=ee03d05b:148:45
    at http://localhost:6006/packages/core/src/styled.ts:38:35
    at http://localhost:6006/packages/components/skeleton/src/skeleton-text.tsx:8:5
    at section
    at http://localhost:6006/node_modules/.cache/storybook/1c3385a5d25e538d10b518b310c74d3ca2690b6aaffeadccd74da79736171f86/sb-vite/deps/chunk-RLY4AXQN.js?v=ee03d05b:148:45
    at http://localhost:6006/packages/core/src/styled.ts:38:35
    at http://localhost:6006/packages/components/layouts/src/container.tsx:11:33
    at App (http://localhost:6006/.storybook/components.tsx:24:16)
    at LoadingProvider (http://localhost:6006/packages/components/loading/src/loading-provider.tsx:42:3)
    at MotionConfig (http://localhost:6006/node_modules/.cache/storybook/1c3385a5d25e538d10b518b310c74d3ca2690b6aaffeadccd74da79736171f86/sb-vite/deps/framer-motion.js?v=ee03d05b:6985:25)
    at EnvironmentProvider (http://localhost:6006/packages/providers/src/environment-provider.tsx:10:3)
    at ColorModeProvider (http://localhost:6006/packages/core/src/providers/color-mode-provider.tsx:17:14)
    at ThemeProvider2 (http://localhost:6006/node_modules/.cache/storybook/1c3385a5d25e538d10b518b310c74d3ca2690b6aaffeadccd74da79736171f86/sb-vite/deps/chunk-RLY4AXQN.js?v=ee03d05b:195:21)
    at ThemeProvider (http://localhost:6006/packages/core/src/providers/theme-provider.tsx:20:10)
    at UIProvider (http://localhost:6006/packages/providers/src/ui-provider.tsx:14:3)
    at StoryProvider (http://localhost:6006/.storybook/components.tsx:13:33)
    at unboundStoryFn (http://localhost:6006/sb-preview/runtime.js:113:5798)
    at ErrorBoundary (http://localhost:6006/node_modules/.cache/storybook/1c3385a5d25e538d10b518b310c74d3ca2690b6aaffeadccd74da79736171f86/sb-vite/deps/chunk-PGXUOQQT.js?v=ee03d05b:32:5)
    at WithCallback (http://localhost:6006/node_modules/.cache/storybook/1c3385a5d25e538d10b518b310c74d3ca2690b6aaffeadccd74da79736171f86/sb-vite/deps/chunk-SDSMAM74.js?v=ee03d05b:15:23)

Link to Reproduction
No response
Steps to Reproduce

Set isFitContent to SkeletonText.
See error

Browser
None
Operating System

[ ] macOS
[ ] Windows
[ ] Linux

Do you know how to fix the issue?
Yes
Are you willing to participate in fixing this issue and create a pull request with the fix?
None
Additional Information
- export type SkeletonTextProps = SkeletonProps & SkeletonTextOptions
+ export type SkeletonTextProps = Omit<SkeletonProps, "isFitContent"> & SkeletonTextOptions

Hello @hirotomoyamada.
Can I work on this issue?

@yasuaki640
Hi, thanks for the comment!
Yes, pls.


frawk does not detect start of program without -- when -v is last argument before program start.

frawk does not detect start of program without -- when -v is last argument before program start.
❯ seq 1 10 | frawk -v multiplier=20 '{ print $0 * multiplier }'
must specify program at command line, or in a file via -f

❯ seq 1 10 | frawk -v multiplier=20 -- '{ print $0 * multiplier }'
20.0
40.0
60.0
80.0
100.0
120.0
140.0
160.0
180.0
200.0

❯ seq 1 10 | frawk -F '\t' -v multiplier=20 '{ print $0 * multiplier }'
must specify program at command line, or in a file via -f

~/Downloads via ☕ v1.8.0 via 🐍 v3.6.7
❯ seq 1 10 | frawk -v multiplier=20 -F '\t' '{ print $0 * multiplier }'
20.0
40.0
60.0
80.0
100.0
120.0
140.0
160.0
180.0
200.0

frawk also seems to have problems with parsing variables with dashes (and maybe other special characters):
❯ seq 1 10 | awk -v multiplier=20 -v var_with_dash=variable-with-dash -F '\t' '{ print $0 * multiplier, var_with_dash }'
20 variable-with-dash
40 variable-with-dash
60 variable-with-dash
80 variable-with-dash
100 variable-with-dash
120 variable-with-dash
140 variable-with-dash
160 variable-with-dash
180 variable-with-dash
200 variable-with-dash

❯ seq 1 10 | frawk -v multiplier=20 -v var_with_dash=variable-with-dash -F '\t' '{ print $0 * multiplier, var_with_dash }'
failed to parse var at index 2:
var_with_dash=variable-with-dash
error:UnrecognizedToken { token: (Loc { line: 0, col: 22, offset: 22 }, Sub, Loc { line: 0, col: 23, offset: 23 }), expected: ["\"[\""] }

❯ seq 1 10 | frawk -v multiplier=20 -v 'var_with_dash=variable-with-dash' -F '\t' '{ print $0 * multiplier, var_with_dash }'
failed to parse var at index 2:
var_with_dash=variable-with-dash
error:UnrecognizedToken { token: (Loc { line: 0, col: 22, offset: 22 }, Sub, Loc { line: 0, col: 23, offset: 23 }), expected: ["\"[\""] }

❯ seq 1 10 | frawk -v multiplier=20 -v 'var_with_dash="variable-with-dash"' -F '\t' '{ print $0 * multiplier, var_with_dash }'
20.0 variable-with-dash
40.0 variable-with-dash
60.0 variable-with-dash
80.0 variable-with-dash
100.0 variable-with-dash
120.0 variable-with-dash
140.0 variable-with-dash
160.0 variable-with-dash
180.0 variable-with-dash
200.0 variable-with-dash

❯ seq 1 10 | frawk -v multiplier=20 -v var_with_dash="variable-with-dash" -F '\t' '{ print $0 * multiplier, var_with_dash }'
failed to parse var at index 2:
var_with_dash=variable-with-dash
error:UnrecognizedToken { token: (Loc { line: 0, col: 22, offset: 22 }, Sub, Loc { line: 0, col: 23, offset: 23 }), expected: ["\"[\""] }

If passed vars are not a number, the variable will be empty if not quoted (once for bash and once for frawk)).  I had never used the behavior you've shown with "variable-with-dash;" I'll try my best to add support for this.
As for the -- interaction, I'm hoping this isn't a limitation of the library frawk uses for command-line parsing. I'll look into what it would take to allow a program to come after -v without an intervening --.

In my script I had 2 variables with a dash as I they both contained a filename to which data will be written based on conditions in the main awk body.

There is also another problem with dashes when dusing the -O option with -1 as it wants to parse it as an option too, if it is separated by a space.
❯ printf '1234567890\n' |  target/release/frawk -O -1 '{ print substr($0, 3, 2)}'
error: Found argument '-1' which wasn't expected, or isn't valid in this context

If you tried to supply `-1` as a PATTERN use `-- -1`

USAGE:
    frawk [FLAGS] [OPTIONS] [--] [ARGS]

For more information try --help

❯ printf '1234567890\n' |  target/release/frawk -O-1 '{ print substr($0, 3, 2)}'
34

❯ printf '1234567890\n' |  target/release/frawk -O2 '{ print substr($0, 3, 2)}'
34

❯ printf '1234567890\n' |  target/release/frawk -O 2 '{ print substr($0, 3, 2)}'
34

❯ printf '1234567890\n' |  target/release/frawk -O-1 '{ print substr($0, 3)}'
34567890

-v seems to be completely broken at the moment:
❯ seq 1 10 | frawk -v multiplier=20 -v 'X="A"' -v 'var_with_dash="variable-with-dash"' -F '\t' '{ print $0 * multiplier, X, var_with_dash }'
failed to parse var at index 1:
multiplier=20
error:UnrecognizedToken { token: (Loc { line: 0, col: 13, offset: 13 }, Newline, Loc { line: 0, col: 13, offset: 13 }), expected: ["\"[\""] }

-v seems to be completely broken at the moment:
❯ seq 1 10 | frawk -v multiplier=20 -v 'X="A"' -v 'var_with_dash="variable-with-dash"' -F '\t' '{ print $0 * multiplier, X, var_with_dash }'
failed to parse var at index 1:
multiplier=20
error:UnrecognizedToken { token: (Loc { line: 0, col: 13, offset: 13 }, Newline, Loc { line: 0, col: 13, offset: 13 }), expected: ["\"[\""] }

Thanks for the test case! sorry for the breakage. This is a hole in frawk's test coverage, but we now have end to end tests set up so once this is fixed (as well as the original bug) it won't regress.

Thanks for the test case! sorry for the breakage. This is a hole in frawk's test coverage, but we now have end to end tests set up so once this is fixed (as well as the original bug) it won't regress.

--var VAR=VAL option does not exist in other awk versions as far as I know. gawk uses --assign VAR=VAL as long option, so I think it would be better to mimic that behavior if you add a long option.

--var VAR=VAL option does not exist in other awk versions as far as I know. gawk uses --assign VAR=VAL as long option, so I think it would be better to mimic that behavior if you add a long option.

Thanks. I went ahead and removed the long option. I think this issue should be fixed as of #39, so I'm closing the issue. Of course, feel free to leave a comment/open a new issue if it looks like I missed something.

Thanks. I went ahead and removed the long option. I think this issue should be fixed as of #39, so I'm closing the issue. Of course, feel free to leave a comment/open a new issue if it looks like I missed something.

This is now fixed in: https://github.com/ezrosent/frawk/pull/81


MySQL initialization script AND Java project init

This DLL script should create the wrightflight database on a local MySQL server -- this will likely change, but should be sufficient to start group work in the Java project which is also attached to this pull request -- please let me know if there are any issues in the script or the project structure!

Looks Good so far.. :) and I have a question how the origin and destination airports connects to the airport table..?

The origin and destination airports are a foreign key reference to the airport code in the airports table -- that way we can just use the three letter codes


Add proper README

https://github.com/open-archaeo/diamond.open-archaeo.info/blob/main/README.md is currently just a placeholder.

Feel free to edit or add additional info.


Update poltergeist to work with latest phantomjs (v2.0)

I was seeing a bunch of tests failing with the following error:
Could not find an executable 'phantomjs' that matched the requirements '~> 1.8', '>= 1.8.1'. Found versions were {"/usr/local/bin/phantomjs"=>"2.0.0"}.

The error appears to be related to an incompatibility between poltergeist
v1.3.0 and phantomjs v2.0 which has been fixed in this issue and released
in poltergeist v1.6.0.
The newer version of poltergeist seems to work ok with pre-2.0 versions of
phantomjs or at least it does with phantomjs v1.9.8.
c.f. https://github.com/alphagov/calculators/pull/112

Superseded by #257


Mitaka/Liberty no longer supported with 1.6.7

This commit breaks support with Mitaka.
https://github.com/a10networks/a10-neutron-lbaas/commit/de94b43f884b72759031dedd86a8dd64d767e8f8
register_custom_supported_check is not a thing in Mitaka. It was introduced in this commit in Newton.
https://github.com/openstack/neutron/commit/5e0878f476d7116bc4e0c29c7929718f379b36c2
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/local/openstack/lib/python2.7/site-packages/a10_neutron_lbaas/__init__.py", line 39, in <module>
    from a10_openstack_lb import A10OpenstackLBV1
  File "/usr/local/openstack/lib/python2.7/site-packages/a10_neutron_lbaas/a10_openstack_lb.py", line 30, in <module>
    import v2.handler_listener
  File "/usr/local/openstack/lib/python2.7/site-packages/a10_neutron_lbaas/v2/handler_listener.py", line 21, in <module>
    from a10_neutron_lbaas.neutron_ext.db.certificate_db \
  File "/usr/local/openstack/lib/python2.7/site-packages/a10_neutron_lbaas/neutron_ext/db/certificate_db.py", line 27, in <module>
    from a10_neutron_lbaas.neutron_ext.extensions import a10Certificate
  File "/usr/local/openstack/lib/python2.7/site-packages/a10_neutron_lbaas/neutron_ext/extensions/a10Certificate.py", line 52, in <module>
    class A10Certificate(extensions.ExtensionDescriptor):
  File "/usr/local/openstack/lib/python2.7/site-packages/a10_neutron_lbaas/neutron_ext/extensions/a10Certificate.py", line 53, in A10Certificate
    nextensions.register_custom_supported_check(
AttributeError: 'module' object has no attribute 'register_custom_supported_check'

Backwards compatibility port is currently being tested.

This issue is resolved with PR #455


Add Allowed Blocks to ensure only intentional blocks are enabled

Is your enhancement related to a problem? Please describe.

Ensure only intended blocks are enabled from a commonly used list of blocks
Ensure this pattern if followed on projects going forward to prevent new core blocks from being enabled without passing engineering (styling, functionality)

Describe the solution you'd like
Allowed blocks list enabled

On a call with @joesnellpdx we briefly talked about this task and came up with the following possible solution.
The goal here is that we want to have a way to dissable all Core Blocks (all blocks of a given namespace) unless we specifically whitelist these blocks. The caveat here is that with future WordPress Updates the new blocks that get introduced from Core should also automatically be on the ignore list. But custom blocks coming from Plugins etc should be allowed.
That means that instead of sending a whitelist of allowed blocks to core we want to send a blacklist of dissallowed blocks to core. But in our code we still want to be able to define a list of core blocks (blocks of a certain namespace) that we want to allow.
Solution
We can create a whitelist for core blocks, use a core function to get the list of all core blocks. Do a array_diff to only have the list of items that are not on the whitelist left. We then do another array_diff between the list of all registered blocks and our list of items that we want to remove. Therefore leaving is with the list of blocks we want to enable.
Code Example
add_filter( 'allowed_block_types', 'restrict_core_blocks' );
function restrict_core_blocks() {

        $allowed_core_blocks = [
            'core/heading',
            'core/paragraph',
        ];

        function is_core_block( block_name ) {
            return str_starts_with( $block_name, 'core' )
        }

        $registered_blocks = WP_Block_Type_Registry::get_instance()->get_all_registered();
        $registered_core_blocks = array_filter( $registered_blocks, 'is_core_block' );

        $dissallowed_core_blocks = array_diff( $allowed_core_blocks, $registered_core_blocks );
        return array_diff( $registered_blocks, $dissallowed_core_blocks );
}


Adjust autoscaling apiVersion based on k8s version

autoscaling/v2beta1 is deprecated in k8s v1.23 and removed in version 1.26.  Adding logic to update the apiversion based on the k8s version in order to avoid problems for 1.26 users.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Fix broken links in docs

Closes https://github.com/ipython/ipywidgets/issues/746

Looks good to me. Thanks!


fix: support type parameters with defaults

fixes https://github.com/koute/speedy/issues/49
Removes the default from the impl type parameters.

Thanks!


Remove junit 4 dependencies

Confirm that all tests have been migrated to Junit5
Then can remove junit 4 dependencies
(follow on from #7348 )

Hey, I am interested in this issue. Please assign this to me.

@pr9t great, you'll need to make sure #7348 is finished first though

Apologies @pr9t this is not blocked by #7348 (and I just inadvertently opened a PR that will fix this one) - but you can pick up #7348 !


GH-78 Support connection knot placements

Fixes #78

The new updated UI implementation, which uses dots rather than the diamond nodes:

Applied to main (=2.1) and branch 2.0.


uORF -  stop loss variant

What is this request referring to?
A variant which results in the loss of the stop codon of an ORF in a 5'UTR.
What is the name you would like SO to give the term?
5_prime_UTR_uORF_stop_codon_loss_variant
What is the definition that you would like for this term?
A 5'UTR variant where the stop codon of an upstream open reading frame is lost.
Synonyms
uSTOP_lost( UTRannotator)
Parent Term
5_prime_UTR_uORF_stop_codon_variant
See https://github.com/The-Sequence-Ontology/SO-Ontologies/issues/622
Relevant Publications
PMID: 32461616, Whiffin et al 2020
Characterising the loss-of-function impact of 5' untranslated region variants in 15,708 individuals. (Nature Communications)
PMID: 32926138, Zhang et al 2021
Annotating high-impact 5'untranslated region variants with the UTRannotator (Bioinformatics)

Hello Sarah Hunt,
I support your request. I am working with UTRannotator and it would be useful to have this term relating to 5 prime UTR uORFs.
I hope the term gets accepted.
Thanks.


Add EventSub support

Feature Request

[x] Helix Create EventSub Subscription
[x] Helix Delete EventSub Subscription
[x] Helix Get EventSub Subscriptions
[ ] Basic EventSub listener (basically WebHooks but with generic transport support)
[ ] channel.update
[ ] channel.follow
[ ] channel.subscribe
[ ] channel.cheer
[ ] channel.ban
[ ] channel.unban
[ ] channel.channel_points_custom_reward.add
[ ] channel.channel_points_custom_reward.update
[ ] channel.channel_points_custom_reward.remove
[ ] channel.channel_points_custom_reward_redemption.add
[ ] channel.channel_points_custom_reward_redemption.update
[ ] channel.hype_train.begin
[ ] channel.hype_train.progress
[ ] channel.hype_train.end
[x] stream.online
[x] stream.offline
[ ] user.authorization.revoke
[ ] user.update

4.4.0-pre.0 includes a very basic prototype that has some flaws. Contribution welcome.


default burst to no

Burst doesnt apply to all weapons, so defaulting it to no makes more sense

I'm sorry I didn't get to this before the pull on Monday. I was on holiday.
The upcoming version (v1.3.0), which is set to come through next Monday pull, already has a different fix for this. In that version, you check a box in the weapon row if the weapon has burst capability, and if that box is checked it will ask for burst (with default to yes). I think this is a better and more complete solution.
However, if for some reason v1.3.0 doesn't come through by the next pull on Monday, I will make sure that this is included in that pull anyway.

that's fine, i still think even if it has the capability burst should default to no, since it is a cool extra that may not be used every turn.

The box (at least, for now) makes it so that when it is checked the burst popup will appear and when it is not checked it will not. I am going to test this in play, but it is my experience that almost always people will use burst if the weapon can burst. The extra ammo use is rarely enough to dissuade them. Under this assumption it is set to yes as the default option on weapons that can burst. This may change during further testing.

another choice is instead of a checkbox a dropdown with default None and options Ask, Always so that the players can choose if they want the weapon to always burst or ask them. In that case the default matter less as they can choose to explicitly use a version that always bursts


Administrative system to weed out old accounts

Have a report that find accounts that have not been updated or used in a while. Allow admin to send email to warn manager. After amount of time, allow administrator to purge contacted, inactive accounts.
┆Issue is synchronized with this Asana task

Purge working.


Problem after upgrade to Umbraco v12.3.6. Website don't start.

Today I upgrade Umbraco 11.5.0 to 12.3.6 and I encourred in the following error:

How can I  resolve the problem?
Can you help me?
Thank you
Adriano

Hi callumbwhyte,
I tried to clone your project to understand the problem.
So...after some attemps, I think I found the solution.
I think you must update the NuGet package umbraco.cms.Infrastructure to v12.3.6 and update also the internal class PublishedElementProperty by adding the following line in the PublishedElementProperty.cs file:
public object GetDeliveryApiValue(bool expanding, string culture = null, string segment = null) => _objectValue.Value;
Doing that, the problem seems to be fixed.
Can you try to update your package and re-publish on NuGet so we can continue to use also in Umbraco v12.3.6 installations?
Thank you in advance for the support
Adriano

Hi callumbwhite,
you pushed a pull request (#74) to resolve this issue.
Try it and I hope this fix the problem.
Bye
Adriano

Hello everybody,
Thanks for your continued use & support for Meganav.
A fix including support for Umbraco v12 and v13 has been merged – you will find v4.1.0 of Meganav is now available on NuGet.
Callum

Hi callumbwhite,
sorry for delay and thank you for the support.
Today I updated meganav to version 4.1.0 and Umbraco to version 12.3.9
When I try to launch Umbraco, I immediately receive this error:

I need to do something else for meganav configuration before start Umbraco?
Adriano


Kanban board project issue

[x]  Link to my github project

(https://github.com/users/elad237/projects/6)

[x]  Thank you reviewer. We are two in this team.
👤 TUMBU BARTHOLOMEW ELAD STUDENT A
👤 EngruugbeJimmy STUDENT B

Hi @elad237,
Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉

Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


✨(frontend) add auto save on all forms

Purpose
Currently, all form submissions are manual. To improve the experience, we decided to transform the forms into auto-save

On my side, when I try to edit a resource, translatable content are always french ones.


refactor: organize some imports based on the order of importance

What kind of change does this PR introduce?
Some small improvements  🚀
What is the current behavior?
What is the new behavior?
Both behaviours remain the same.
Additional context

refactor: change types to start as capital letters
refactor: organize some imports based on the order of importance*

*If you're using VSCode you can add this configuration by project:

"[javascript, typescript, tsx]": {
  "source.organizeImports": true
}

Looks cleaner. Thanks @ftonato :)


Calculate total proof of work

Calculating the total proof of work is generally a useful metric to return, and necessary to do reorgs trustlessly. The total proof of work is the summation of all the work on the chain , work for each block is defined below:
https://github.com/lbryio/lbrycrd/blob/e90d7f54cede3c1c5bfc3590351054bdc5a99480/src/chain.cpp#L114
Actually electrum doesn't even have this... I'm not even sure how that works without being exploitable.
Acceptance Criteria

Definition of Done

[ ]  Tested against acceptance criteria
[ ] Tested against the assumptions of the user story
[ ] The project builds without errors
[ ] Unit tests are written and passing
[ ] Tests on devices/browsers listed in the issue have passed
[ ] QA performed & issues resolved
[ ] Refactoring completed
[ ] Any configuration or build changes documented
[ ] Documentation updated
[ ] Peer Code Review performed

@kaykurokawa the code you linked to appears to be calculating just for one block, no?
in the lbry implementation of torba ledger the proof of work is calculated here:
https://github.com/lbryio/lbry/blob/ee5be5adc80d4513fbd2fa26881833de3487dd54/lbrynet/wallet/header.py#L48-L78
Is what you're asking about different from that?

Yes, and it basically just gets added to the blockchain's total proof of work like so (nChainWork):
https://github.com/lbryio/lbrycrd/blob/master/src/main.cpp#L3435
So you have some number that represents the total amount of work that have been put on a chain. The blockchain with most cumulative total work is the correct blockchain. I suppose electrum maybe doesn't bother to calculate this because they figure faking a block is expensive enough? Not sure
For our chain, it would be much cheaper to do an attack where you reorg them to the wrong chain because we have a much lower network hashrate and the difficulty adjustment kicks in much faster on a per block basis.

The reason that electrum (and currently torba) do not do any of this is because it's an SPV wallet, it doesn't get to decide which chain to follow: it only sees what the SPV server makes available.
In order to actually be able to pick chains torba would need to support connecting and following more than one electrumx SPV servers at the same time and then having logic to differentiate and only follow a specific electrumx server when one of them starts following the "wrong" chain.
Long term we want to implement this for sure but I don't know when this will happen.

closing from the icebox


fix: add patch for updating compiler header for redis-5.0.5 in Ubuntu 22

@rishavOneForAll can you please help check whether there is similar fix from the upstream repository?
If possible, can you please also check the latest changes from the upstream and pull rebase it to the master branch later? Thanks!


Tone.Sequence skips the first note on specific browsers

Hello, and thank you for this awesome library!
I've been experiencing the issue #365 with Tone.Sequence even after updating to the latest release.
However I noticed the issue is happening on specific browsers, such as Chrome and Safari, and is not happening at all on Firefox Quantum (where everything is perfect).
If you run the fiddle from #365 on Chrome/Safari/Vivaldi/Opera/etc you can still experience it.
It isn't systematical, but the first note is skipped definitely more than sometimes, especially in some cases: it looks like the faster the time and the longer the sequence, the greater the chances the 1st note is skipped. Check this out:
https://jsfiddle.net/sisyphus16/6g3hxbza/
It's almost constant here.
Hope this helps. Keep up the good work. And thanks again.

thanks for the issue, but this is a duplicate of #365. the solution is to upgrade to tone@next, which has the fix.

thanks for the issue, but this is a duplicate of #365. the solution is to upgrade to tone@next, which has the fix.

Hello, thank you for the reply.
I did in fact upgrade to 'tone@next' but I'm still experiencing the issue.
I guess I have to be missing something and I feel sorry for that...
I ran npm install tone@next once again and I have<EMAIL_ADDRESS>and Tone.Sequence is still skipping the first note.

So, I guess you've probably thought that I hadn't run the update cause the fiddle had v12, my bad, but I did have an angular app up to date and that's why I reopened the issue.
Here is the updated fiddle with<EMAIL_ADDRESS>https://jsfiddle.net/x7528rkh/2/
and the first note gets skipped.
Thank you in advance.

my bad! you're totally right. slightly different issue than #365. including a fiddle always really helps clarify.

I looked into this for a while, and i've found the cause of the problem, but i don't see any straightforward solution on the Tone.js-side of things. the issue is that without any arguments, sequence.start(), adds an event to the current tick on the timeline which is tied to the AudioContext time which runs in a separate thread. by the time the 'start' method has finished adding the event to the Transport's timeline, a small amount of time has passed in the AudioContext thread causing that event to now be in the past. the event is added to the timeline, but the timeline has already passed the event's scheduled time, so the event does not get invoked.
The simple fix is to just schedule events slightly in the future to guarantee that they are added to the timeline on a future tick and do not get passed over.  Here's an example where the start method is scheduled 100ms in the future to ensure that first event is heard.


Oracle 7 private agent configured failed with error: Couldn't find a valid ICU package installed on the system.

Agent Version and Platform
Oracle 7
OS of the machine running the agent? Linux
Azure DevOps Type and Version
dev.azure.com
What's not working?
when we run ./config.sh, it shows this error FailFast: Couldn't find a valid ICU package installed on the system. Set the configuration flag System.Globalization.Invariant to true if you want to run with no globalization support.

we tried to use yum install icu to install icu package but showing no package icu available:

What we need to do?

This one fixed the problem:
{
"runtimeOptions": {
"configProperties": {
"System.Globalization.Invariant": true
}
}
}
The one available in the internet has a comma ( , ) on line 5. I just removed it (the comma) and saved to Agent.Listener.runtimeconfig.json
I now have a running agent, working as expected.