RFC: Pull-based compactor task status

Background
We want to periodically check status of compactor task. This is to facilitate recovery from failed tasks.
Examples of failed tasks:

compactor fails and recovers, but has no memory of in-progress tasks, so push-based reporting fails (https://github.com/singularity-data/risingwave/issues/4379)
task fails, and compactor does not recover. (https://github.com/singularity-data/risingwave/issues/4365)

In this case we can speed up meta's rescheduling by returning task status - failed.

Design
We define making progress as the increase in count of output SST or output SST blocks. The task can update its progress via channel to compactor task monitoring service. The meta service will ask each compactor's task monitoring service on progress of tasks. If no progress is being made, then meta will send cancel task request to compactor (compactor keeps a table of running task handles) and reschedule the task.
In more specific terms, we will get rid of a push-based reporting of task progress in compactor to pull-based reporting initiated by meta.
Future Optimizations
NIL
Discussions
Q&A

Not sure if the scope includes heartbeat for compactor. (I guess there is already heartbeat and recovery for failed compactor, so no).

CC: @Li0k @zwang28

Streaming RPC is better. We do not need pull-based

Not sure if the scope includes heartbeat for compactor. (I guess there is already heartbeat and recovery for failed compactor, so no).

There is already heartbeat for compactor just like other cluster node. Alternatively we may piggyback task status via heartbeat RPC, like https://github.com/singularity-data/risingwave/pull/4435.

Streaming RPC is better. We do not need pull-based

Actually, I see no difference for pull-based v.s. stream if using gRPC. From what I know, gRPC would use the same open channel anyway.
I don't think the compactor needs to see meta have user-side acknowledgement that it has received the heartbeat/status update. The TCP already ensures reliable delivery.

Alternatively we may piggyback task status via heartbeat RPC, like https://github.com/singularity-data/risingwave/pull/4435.

Possibly. Maybe we should keep them separate first, as the granularity is different (per-task v.s. per-compactor), compared to linked PR, which is all per-worker.

On second thought, we can just have push-based reporting. It does the job, and we also only push based report for task error or success (status), but not for task progress.


Sacct starttime to 1 previous week instead of the default

By default sacct returns the jobs in a 1-day period. Here it is set to one week in advance to deal with older jobs from previous days in the sequencer table.
Minor fixes and refactoring

Codecov Report

Merging #23 (48be2b0) into main (bc2faa8) will increase coverage by 0.02%.
The diff coverage is 5.55%.

@@            Coverage Diff             @@
##             main      #23      +/-   ##
==========================================
+ Coverage   52.22%   52.25%   +0.02%
==========================================
  Files          31       31
  Lines        3487     3485       -2
==========================================
  Hits         1821     1821
+ Misses       1666     1664       -2

Impacted Files
Coverage Δ

osa/reports/report.py
19.35% <ø> (-0.65%)
:arrow_down:

osa/scripts/closer.py
20.24% <3.33%> (+0.08%)
:arrow_up:

osa/jobs/job.py
58.51% <4.87%> (+0.12%)
:arrow_up:

osa/utils/utils.py
37.83% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update bc2faa8...48be2b0. Read the comment docs.


Updating HomeController

In this PR, we changed the team names and github link in homecontroller
closes #3

LGTM


When linking two existing product pages, variations are not synced.

Can you reproduce this issue on default Wordpress theme (eg Storefront)?
yes
Can you reproduce this issue when all other plugins are disabled except WooCommerce, Polylang and Hyyan WooCommerce Polylang Integration?
yes
What product versions and settings are you using when this issue occurs?
*PHP: <IP_ADDRESS>
*WordPress: 4.8
*WooCommerce: 3.08
*Polylang: 2.1.5
*Hyyan WooCommerce Polylang Integration: 1.0.2
*Browser: any
Steps to Reproduce

Create and publish two product pages, one variable in default language and one simple in second language. But dont link them to each other for now.
Now go into the language editor of the default language page and link it to the second language product page. Update.

What I Expected
All metas are synced between default and second language product page including variations.
What Happened Instead
All of the metas are synced but the variations are not created.

Correct, this is not supported currently.
May be best linked to #168 re-engineering of variations support.

is there a work around for this (apart from using the +)... many thanks!

Hi, @michiphp we discussed that on #187

Yes, just import the second language without the variations.
Then when you go link the translations the variations will be created automatically, that's expected.
It doesn't matter if you do the linking and saving from master language or second language.

Or just don't import the second language, just use the + and copy and paste the translated description from your source.

Hi Jon007, thanks for your help! I've tried both:
Inporting as simple product: when I link from default language, it will sync everything with the product in second language, but the variations are not created! Then I go into the second language page, and without changing anything, I press update, and the variations are created. But then for some reason it transfers wrong info from the simple product in second language to the linked product in default language! (which is why I posted the issue #202). Then I have to go back to the product in default language and press update again. then it works....
and yes it makes a difference linking from second language or default language!!

@michiphp ok I get it, thanks for confirmation,
I have tried to update the notes on this page to reflect this:
https://github.com/hyyan/woo-poly-integration/wiki/Upload,-Bulk-Edit,-Quick-Edit
Maybe you can suggest any further correction that may be needed or any special note for the import tool you are using.

thanks for the summary on how to use woo-poly with an import tool! Its pretty useful, and I don't have anything to add currently.
However, I was wondering whether there is a solution to this issue already?
The reason someone would use an import tool is that he has so many products that he cant handle each individually.
so a workaround to go into each product and press update can be pretty time consuming,
hope there is a solution soon. Many thanks to everyone who is contributing to this!

Well, as another tip, if you have to do a lot of editing, like adding a new language, then turn off all non-critical plugins and hide unnecessary sections of the page while you are doing it as a lot of them add to the product page load.
If you have Yoast readability and addins for republishing to social media and linking to other stores etc, maybe you can turn them off at least for products in order to be able to speedily open and re-save a set of products.
Actually I had a lot of other problems with the woocommerce importer, when exporting and reimporting the products, the catalogue was broken in ways that were not immediately obvious and took some days to resolve - this was due to not handling commas in category descriptions and product attributes and nothing to do with Polylang.   This particular issue is now fixed, but this importer is fairly new and I won't be trying it again for now. The others I've seen also have their problems so either way you need to test carefully for your use case - and balance the time and cost of that vs the more manual options.
A lot of plugins work the other way round using woocommerce as the master and exporting to other platforms, this is generally fairly reliable and compatible with Polylang as you tend to be able to select the categories you want to export and control the language that way, though of course every target system has its issues.

Closing for same reasons in #168


Adding Simon Tite to list

@simontite-capita-ti, I'm quite elated about your PR. I wanna evolve this project to addresses various problems faced by first time contributors. I'd love to learn about your journey in open source community, the problems, pain points you had etc.
Could you explain how you felt when you went through the tutorial, made a PR and learned that I accepted it?


Request to include business metadata directly in the table and column comment fields

Is your feature request related to a problem? Please describe.
Snowflake has the capability to include metadata within schema, table, and column comments. Besides Snowflake native commands, some third-party modeling, data governance and metadata solutions can read these fields as they ingest the table schemas. Examples of Snowflake commands that use these fields:
show schemas like 'public';
show tables;
desc table WHO_SITUATION_REPORTS;

Describe the solution you'd like
I would like the table owner to issue these commands to add the comment fields. This is a one time non-invasive process. I will supply commands like below to run. If you agree, I will submit for the rest of the tables. I will get the comment values from the METADATA table.
alter schema PUBLIC SET COMMENT = 'COVID-19 Data from Starschema Limited';

alter table CT_US_COVID_TESTS alter (
        COUNTRY_REGION COMMENT 'ISO-3166-1 entity name (United States)',
	PROVINCE_STATE COMMENT 'ISO-3166-2 entity name (U.S. State)',
	DATE COMMENT 'Date of data point',
	POSITIVE COMMENT 'Positive cases on date of report',
	POSITIVE_SINCE_PREVIOUS_DAY COMMENT 'Positive cases since previous date of report',
	NEGATIVE COMMENT 'Negative tests on date of report',
	NEGATIVE_SINCE_PREVIOUS_DAY COMMENT 'Negative tests since previous date of report',
	PENDING COMMENT 'Pending tests on date of report',
	PENDING_SINCE_PREVIOUS_DAY COMMENT 'Pending tests since previous date of report',
	DEATH COMMENT 'Deaths attributed to COVID-19 on date of report',
	DEATH_SINCE_PREVIOUS_DAY COMMENT 'Deaths attributed to COVID-19 since previous date of report',
	HOSPITALIZED COMMENT 'Hospitalized cases of COVID-19 on date of report',
	HOSPITALIZED_SINCE_PREVIOUS_DAY COMMENT 'Hospitalized cases of COVID-19 since previous date of report',
	TOTAL COMMENT 'Total of positive, negative, pending and deaths on date of report',
	TOTAL_SINCE_PREVIOUS_DAY COMMENT 'Total of positive, negative, pending and deaths on date of report attributed to COVID-19 since previous date of report',
	ISO3166_1 COMMENT 'ISO-3166-1 code for geography of report (Country)',
	ISO3166_2 COMMENT 'ISO-3166-2 code for geography of report (States)',
	LAST_UPDATED_DATE COMMENT 'Timestamp of last update (UTC)'
);

alter table CT_US_COVID_TESTS SET COMMENT='JHU US COVID-19 testing and mortality';

End Result
DESC table CT_US_COVID_TESTS;

I change the metadata notebook to create a SQL file to comment all objects with descriptions. This is the URL of the generated file: https://s3-us-west-1.amazonaws.com/starschema.covid/METADATA_COMMENT_DB_OBJECTS.sql
I need to write a small script/dag to execute it everything the metadata changes - currently, it is manual


[WIP] PoC changes for kata-containers confidential containers v0 prototype - DO NOT MERGE

The kata-containers community is looking into creating a CNCF proposal for a confidential containers project as as part of this has been looking at creating a PoC for some of the concepts that have been discussed. These features include updates to pull images inside a pod sandbox/kata guest, attestation agent(s) and API restrictions. See [presentation](for some details).
As such we need to make some prototype (very rough changes that we aren't proposing are near to being merged into main) in containerd, so after initial conversations with Mike Brown it seems a WIP PR is the best way to do this.
The changes and discussions are in early days, so we are looking to involve Mike and others from the Kubernetes and CRI community for more feedback as we progress.

Sorry that this PR has turned into a mess. I've been unable to get the kata containers automation working with the changes onto to the main containerd branch, so I've tried to re-base onto v1.5.2 which was working to see if that helps.

Sorry that this PR has turned into a mess. I've been unable to get the kata containers automation working with the changes onto to the main containerd branch, so I've tried to re-base onto v1.5.2 which was working to see if that helps.

We've been able to get the kata containers working against the containerd release/1.5 branch, so have re-based this PR on that and hopefully the CI mess should be sorted

The kata team have decided to use a new fork https://github.com/confidential-containers/containerd/ for this work, so this PR can be closed now.


Possibly wrong result after multiplication

Multiplying these two numbers together seems to yield the wrong result:
Money.fromDecimal(2090.50, Money.USD).multiply(Money.fromDecimal(8.61, Money.USD)).toDecimal() // = 17999.2
Should be 17999.21.
Internally I think this is what happens:
209050 * 8.61 // = 1799920.499999999....
Math.round(1799920.4999999998) // = 1799920

It tests if you passed in a rounder, if not it defaults to regular old Math.Round:
if (!isFunction(fn))         fn = Math.round;
If you add the rounder of your choice to the formula you should get what you want. For example:
Money.fromDecimal(2090.50, Money.USD).multiply(Money.fromDecimal(8.61, Money.USD),Math.ceil).toDecimal()
Result: 17999.21

The thing is, I don't want to use ceil here since every other number would also be rounded up. The issue is that 1799920.499999999.... is actually 1799920.5 in precise arithmetic, and should be round up.

Hmm perhaps someone can review and or write up some code to better handle rounding after the currency decimal place. I believe MDN had some documentation on this or maybe it was stack exchange I read about it.
At the end of the day though if financial precision is important down to the fraction of a cent it may be something that should be shifted off JS and to a language that better supports decimal values.

Maybe use something like https://github.com/MikeMcl/big.js ? I think you get most of the precision related stuff for free with a library like that.


Unable to build first example in "Basic Usage"

Hello, I'm not too familiar with the Rust/WASM eco-system so this might be a silly issue, but I've been trying to get the very first example in the book to build without success. I've built a provisioned a VM using Vagrant and am trying to run cargo build whilst ssh'd in.
I'm running into the following error.
> cargo build --target wasm32-unknown-unknown --verbose
       Fresh unicode-xid v0.1.0
       Fresh cfg-if v0.1.6
       Fresh lazy_static v1.2.0
       Fresh log v0.4.6
       Fresh proc-macro2 v0.4.24
       Fresh wasm-bindgen-shared v0.2.29
       Fresh quote v0.6.10
       Fresh syn v0.15.23
       Fresh wasm-bindgen-backend v0.2.29
       Fresh wasm-bindgen-macro-support v0.2.29
       Fresh wasm-bindgen-macro v0.2.29
       Fresh wasm-bindgen v0.2.29
   Compiling colormap v0.1.0 (/vagrant)
     Running `rustc --edition=2018 --crate-name colormap src/lib.rs --color always --crate-type cdylib --emit=dep-info,link -C debuginfo=2 -C metadata=bae851322f19a06d --out-dir /vagrant/target/wasm32-unknown-unknown/debug/deps --target wasm32-unknown-unknown -C incremental=/vagrant/target/wasm32-unknown-unknown/debug/incremental -L dependency=/vagrant/target/wasm32-unknown-unknown/debug/deps -L dependency=/vagrant/target/debug/deps --extern wasm_bindgen=/vagrant/target/wasm32-unknown-unknown/debug/deps/libwasm_bindgen-d5c375595d526f5c.rlib`
error: linking with `rust-lld` failed: exit code: 1
  |
  = note: "rust-lld" "-flavor" "wasm" "-L" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.13k17v8e4f88k07q.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.1twf20wipw2o6j71.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.2n8voq6eg5z6bzup.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.3376557lo0jlb5mp.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.38n8iiz97gf9a188.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.3cf4t33aecxzfs23.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.3etm3y4ssqlp8g5y.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.40ucp5fciql9bq9n.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.415wgnu86mi2osyg.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.4f8qpmbp53wh81ti.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.4k5s3cx7dchgogqh.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.51911haxf6ddp48r.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.5fe375dgmcb296pq.rcgu.o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.biecf0khta96lea.rcgu.o" "-o" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.wasm" "--export" "greet" "--export" "__wbindgen_describe___wbg_alert_784255b767c74791" "--export" "__wbindgen_describe_greet" "--export" "__wbindgen_free" "--export" "__wbindgen_global_argument_ptr" "--export" "__wbindgen_malloc" "/vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.1g8qapulbl4a9k0r.rcgu.o" "--gc-sections" "-O0" "-L" "/vagrant/target/wasm32-unknown-unknown/debug/deps" "-L" "/vagrant/target/debug/deps" "-L" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib" "/vagrant/target/wasm32-unknown-unknown/debug/deps/libwasm_bindgen-d5c375595d526f5c.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/libstd-abe145ba76171775.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/libpanic_abort-96005f604f7dbd6e.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/libdlmalloc-ed3f28cdc088f8c3.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/libbacktrace_sys-5bc11286719e2ece.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/libunwind-d068423794124d61.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/librustc_demangle-f04c7eda49d54f2c.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/liblibc-86eba1c052850cdc.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/liballoc-54d5eed3884d8bd6.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/librustc_std_workspace_core-f298ce55474b8b8e.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/libcore-58a74e26059c2878.rlib" "/home/vagrant/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/wasm32-unknown-unknown/lib/libcompiler_builtins-04d6453cdba92f37.rlib" "--no-threads" "-z" "stack-size=1048576" "--stack-first" "--allow-undefined" "--no-entry" "--export-table" "--fatal-warnings" "--export-dynamic" "--no-demangle"
  = note: rust-lld: error: failed to open /vagrant/target/wasm32-unknown-unknown/debug/deps/colormap.wasm: Invalid argument

error: aborting due to previous error

error: Could not compile `colormap`.

Caused by:
  process didn't exit successfully: `rustc --edition=2018 --crate-name colormap src/lib.rs --color always --crate-type cdylib --emit=dep-info,link -C debuginfo=2 -C metadata=bae851322f19a06d --out-dir /vagrant/target/wasm32-unknown-unknown/debug/deps --target wasm32-unknown-unknown -C incremental=/vagrant/target/wasm32-unknown-unknown/debug/incremental -L dependency=/vagrant/target/wasm32-unknown-unknown/debug/deps -L dependency=/vagrant/target/debug/deps --extern wasm_bindgen=/vagrant/target/wasm32-unknown-unknown/debug/deps/libwasm_bindgen-d5c375595d526f5c.rlib` (exit code: 1)

The VM is running Ubuntu 18.04 (64-bit). For more details I've pushed the latest changes to my repo.
Any help would be much appreciated! :bowing_man:

Just a note that running the equivalent in a Docker container seems to work fine. I wanted to avoid using Docker as a single container for my development environment will be a bit of a hack/bloated if I were to include all the dependencies (node, etc). :thinking:

Could be a C-compile-tools issue. Try sudo apt update and sudo apt install build-essential.

I'm already doing so when I provision the VM. If you see
https://gitlab.com/rycwo/colormap/blob/master/Vagrantfile#L59 and line 69
in the same file.
On Sun, 30 Dec 2018, 15:18 David-OConnor<EMAIL_ADDRESS>wrote:

Could be a C-compile-tools issue. Try sudo apt update and sudo apt
install build-essential.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/rustwasm/wasm-bindgen/issues/1136#issuecomment-450560236,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEmueZEZDTDaMHPPlSAXPg0YicEgrZRdks5u-L0RgaJpZM4ZktuR
.

Are you able to test on your native OS?

With my current setup it's not super easy to, but I've got the first
example working via a Docker container I've built. I guess the issue here
is more about getting it working in a Vagrant-provisioned VM?
On 30 Dec 2018 16:32, "David-OConnor"<EMAIL_ADDRESS>wrote:
Are you able to test on your native OS?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/rustwasm/wasm-bindgen/issues/1136#issuecomment-450564559,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEmueYBwwvDR8XclzQUayrYc8vknDg2Fks5u-M6DgaJpZM4ZktuR
.

Thanks for the report! Unfortunately there's probably not a whole lot we can do about this. The error is:
  = note: rust-lld: error: failed to open /vagrant/target/.../colormap.wasm: Invalid argument

Seeing what's happened in the past, what's probably going on here is that there's a shared filesystem with the VM and LLD is executing some syscall which isn't implemented on the shared filesystem. The bug here is probably with upstream LLD itself to perhaps be a bit more conservative with what filesystem operations it executes (e.g. falling back to slower implementations possibly).
Actually tracking this down and reporting it though may be hard!

Interesting, does this mean that there's a chance using a different Vagrant
box (i.e. Debian instead of Ubuntu) could work? Or is this something
inherently problematic with using Virtualbox/Vagrant? I guess Docker isn't
exactly the same type of virtualization so perhaps would explain why it
works. Happy to help investigate if given some direction!
On 2 Jan 2019 18:46, "Alex Crichton"<EMAIL_ADDRESS>wrote:
Thanks for the report! Unfortunately there's probably not a whole lot we
can do about this. The error is:
= note: rust-lld: error: failed to open
/vagrant/target/.../colormap.wasm: Invalid argument
Seeing what's happened in the past, what's probably going on here is that
there's a shared filesystem with the VM and LLD is executing some syscall
which isn't implemented on the shared filesystem. The bug here is probably
with upstream LLD itself to perhaps be a bit more conservative with what
filesystem operations it executes (e.g. falling back to slower
implementations possibly).
Actually tracking this down and reporting it though may be hard!
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/rustwasm/wasm-bindgen/issues/1136#issuecomment-450916261,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEmuedJ2Ezt3_yJJqx8MRyBMx2AxkHeAks5u_OKBgaJpZM4ZktuR
.

My guess from seeing issues like this historically is that this is a bug in vagrant's drivers, not the image itself. One thing that could help is running strace over the rust-lld command that failed (although running rust-lld may be a bit tricky).
With strace we could narrow down what the exact syscall is (hopefully) and maybe point to a fix.


Adjust score for prefix-matching mw tokens

This fixes a bug with Venus & Chris not matching
their intended targets


Task : Develop toggle button size variant

@vasanthappsmith to link zeplin

@albinAppsmith Part of this can we also consider #24105 as the JS button is too small

@albinAppsmith https://zpl.io/09dPQkQ Zeplin link

#24105

Are you saying that we need to increase the JS icon size more? If yes the what are the sizes?

@albinAppsmith Part of this can we also consider #24105 as the JS button is too small

@vasanthappsmith  Are you saying that we need to increase the JS icon size more? If yes the what are the sizes?


loop in js-wrap-multilines

Hi! What do you think about using loop rendering in this form?
How to write loop under jsx-wrap-multilines rule?
return (

            {
                [1, 2, 3].map(i => (

                        i

                ))
            }

);

Not sure what your question is exactly. What is the lint output you get with that code? And what do you expect the lint output to be?


Watch does not work with ko://

Steps to reproduce:

Be in the root directory of a Go mod project. e.g. module myproject.com
Verify you can successfully ko apply -L -f build/chart.yaml
Attempt to add the -W flag, like so: ko apply -L -W -f build/chart.yaml
Note the following error:

2020/05/28 13:25:01 watching dependencies: adding importpath to dep graph: package ko:/myproject.com/cmd/write-model is not in GOROOT (/usr/local/go/src/ko:/myproject.com/cmd/write-model)

I should also note that if I remove the use of ko:// in the manifests the watch works great.

Your example has ko:/ (single /) is that the bug?


If you are not a space developer, renaming a service fails with an unhelpful error

If you are not a space developer, you are able to list all services, but trying to rename the service gives you the error that "service instance foo not found". This was very confusing, since I had just been shown the service. It would be much nicer if the CLI showed an error message like "You do not have permission to rename spaces".
→ cf services
Getting services in org rivals / space acceptance as<EMAIL_ADDRESS>OK

name           service         plan     bound apps                                         last operation
foo            sendgrid        free    cool-app    update succeeded

→ cf rename-service foo bar
FAILED
Service instance foo not found

@simonleung8 We think this is probably an API bug. I've filed a story in our backlog and am trying to reproduce the issue. If it's on our side, I'll let you know so you can close this issue.

@rmasand what was the outcome of this? was it something on your end?

We can't find the story in our tracker, but it looks like things have changed since this issue was filed.
For managed service instances we get
Server error, status code: 403, error code: 10003, message: You are not authorized to perform the requested action

From talking with @wendorf, it sounds like they were using a user provided service instance, which results in the following message:
Server error, status code: 404, error code: 340001, message: The service instance could not be found: guid-guid-guid-guid

We added a new story to cover this issue.

Raina & @Gerg

@goehmen So, it looks like this is working as intended on the services end - user provided service instances don't have a corresponding service or service plan.
So, how do we determine the difference on our end between a service instance that doesn't actually exist and a UPS on our end? I guess if we get a 404 we could do a lookup on UPS and see if it's there? And then tell the user to use update-UPS?

Closing for now as I think the original issue is captured in https://github.com/golang/go/issues/10464#issuecomment-97974790, and that is apparently expected behaviour.


ability to display private symbols differently

fixes #225
Implemented only the elixir private case. I thought just changing the icon wasn't enough, I had to make the text italic too. Maybe the icon should be the same color by default, this sets the icon for private symbols to NONE. I thought personally I needed all the help I could get to quickly spot the different public/private, so NONE suits me.

screenshots on my setup on aerial's elixir_test.exs.

One option requiring only a single highlight group would be to have everything exactly as it is today, plus a new option specific_highlight_groups_for_scopes.. It could be set to for instance ["Private"].
If you set it to [] you have the exact behavior of today.
If you set it to ["Private"] then a private function would not anymore get the AerialFunction highlight group, but AerialPrivate. And so on.
It is less flexible than what you suggested though. But it might still be enough.
More flexible would be a map...
specific_highlight_groups_for = {Function = ["Private"]}.
And so on. Something like that could work with only single highlight groups. Just an idea.

Check out #228 for a proposal. This is similar to the last option you mention (single group for private function/variable/type/etc), but also exposes a config.get_highlight configuration option that would allow users to change the highlight group dynamically for any particular combination of SymbolKind + scope. What do you think?

superseded by #228 plus #229


Adds command "tabmove ±n", for better tab management

I'm used to being able to switch and swap tabs all the time and couldn't find a way to do it in here, yet. I haven't made this a default for anything (was thinking Alt-< and Alt-> could do left/right) and haven't put it in any documentation, yet (now I have!)
Some usage info I did type up, though:

Tab Move
Moves active tab to another slot while maintaining its focus.
Usage
`> tabmove ±?n`

1. `±` is an *optional* character, either `+` or `-`
	- if it prefixes `n`, `n` will describe a relative position (left and right, respectively)
2. `n` is an integer.
	- if not prefixed by `±`, describes an absolute position (resolving to the closest slot available)

Examples
`> tabmove 20`	moves active tab to slot `min(numSlots, 20)`
`> tabmove 3` 	moves active tab to slot `min(numSlots, 3)`
`> tabmove 0` 	moves active tab to slot `0`
`> tabmove -2`  moves active tab left by (at most) `2`
`> tabmove +1`  moves active tab right by (at most) `1`
`> tabmove +20` moves active tab right by (at most) `20`

Notes
I'm used to this command in Vim and VSCode, but it's missing from `micro`, so I added it.

Action Items
[x] - get command working
[x] - custom keybinding for `command:tabmove ±1`
[x] - documentation

I think it would be better to just add this new relative syntax to the tabswitch command rather than make a new tabmove command. Also, Alt-, and Alt-. (Alt-<, and Alt-> without shift) already move one tab to the left or right.

Ah, I'm afraid I've been unclear. The existing command tabswitch moves the focus from one tab to another:

The command I've added, tabmove, moves the tab itself:

On the note of adding the relative syntax to tabswitch: I did want to do that in an upcoming PR but I had intended to hold off on that until I spoke to you about how commands and actions should relate to one another.
TLDR; tabswitch overlaps responsibilities with NextTab and PreviousTab. At the moment, the keybindings match directly to actions.NextTab and actions.PreviousTab, where once the relative syntax is implemented the keybinding can instead map to command:tabswitch -1 and command:tabswitch +1, respectively.
If we moved forward with this style of keybinding->command, we'd be approaching the Vim style of editing/configuration, wherein everything is just a command. However, if we go in the opposite direction, then every action that keybindings meet with will probably have a command that does the same thing. At the moment, if there's a way to specifically have actions call commands, I just haven't figured it out yet (but haven't put much time into it, either)

@zyedidia Hey there, just curious if you'd seen my elaboration and if it changed your mind at all?

We can also think about having click and drag work to move tabs around.


Updated mappings with numeric and text IDs

New mappings format with numerical IDs, ex. for particle effect clouds.

Whoops, this will have to be merged manually. Thanks for the PR!


add notes to the paper about other applications & future improvements

applications include minflux, storm processing with large numbers of localizations, etc
improvements include minpack algorithm, estimation of derivatives, runtime compilation of fit functions

also SLI support


Replace gcc with modern variant.

There is a modern toolchain for N64 located at https://github.com/tj90241/n64chain/releases/tag/9.1.0
You still need the includes, llibs and the nusys stuff from the official SDK, but you can delete the ultra/mipse directory, place the contents of the bin, include, lib, libexec, and mips64-elf1 directories from the new toolchain in some location (i used gcc-9 in the ultra directory), and alter the steupgcc bat file to set the path to the new gcc bin directory.
For example, here's my new setupgcc.bat file:
setupgcc.bat (new)

set gccdir=%ROOT%\gcc-9
path %gccdir%\bin;%path%
set gccsw=-mips3 -mgp32 -mfp32 -funsigned-char -D_LANGUAGE_C -D_ULTRA64 -D__EXTENSIONS__
set n64align=on
set GCC_CELF=ON

I've tested it with a sample scene and it compiles just fine. Might be worth looking into.
What if you made swappable compilation backends. You could make it so the user could select which toolchain they wanted to use.

(in the image above, Im also using the new makemask. See #83 for more details.

Hello! UltraEd is actually already using a newer version of GCC. I followed instructions from https://github.com/trhodeos/modern-n64sdk to build a new toolchain. That's how I was able to get the project finally running on something beyond Windows XP lol. I have seen that tool chain you mentioned and for some reason back then decided to go with what is currently being used. The swappable toolchain could be cool but not too sure what value it would bring unless I'm missing something?

Nope. I was unaware you had done that.
Woot.


docker-machine scp Permission denied

I created a folder on a Docker machine (default) like this:
docker-machine ssh default -- mkdir -p /home/alexzeitler/src/myproject/subproject

Then I tried to copy local files from the current directory into it:
docker-machine scp -r . default:/home/alexzeitler/src/myproject/subproject

This results in:
scp: /home/alexzeitler/src/myproject/subproject/./config.json: Permission denied
scp: /home/alexzeitler/src/myproject/subproject/./node_modules: Permission denied
scp: /home/alexzeitler/src/myproject/subproject/./.gitignore: Permission denied
scp: /home/alexzeitler/src/myproject/subproject/./docker-compose.yml: Permission denied
scp: /home/alexzeitler/src/myproject/subproject/./api: Permission denied
scp: /home/alexzeitler/src/myproject/subproject/./app.js: Permission denied

I had to regenerate the certs (because of https://github.com/docker/machine/issues/1954 on Ubuntu as well) - might this cause the problem?
After re-creating the VM the issue is gone.

Regeneration of certs doesn't seem to cause it. Created another directory and tried to scp into it and it failed again.

Hi @AlexZeitler, can you tell us which version of docker-machine you are using and which OS you are on? Also if you are not using 0.5.5 of docker-machine, can you please try it?

@dgageot Thanks for your reply.
I'm running on Ubuntu 14.04 x64, docker-machine version 0.5.5, build 02c4254

This problem is incredibly limiting. I can't put a file on my docker machine!

@rjurney You might want to try rsync as I described here:
https://alexanderzeitler.com/articles/docker-machine-and-docker-compose-developer-workflows/

I was able to work-around this like so:
docker-machine scp -r myFolder/ machineName:/tmp
docker-machine ssh machineName sudo cp -r /tmp/myFolder /path/to/actual/destination

Is there a more elegant solution to this than the above? It works but seems counter to what you'd want to do.

wow, this is hacky...

The correct syntax for the scp command is the following:
docker-machine scp path user@machine:path
So for example, it would be:
docker-machine scp ./src ubuntu@my-machine:~/dest
Don't forget the ~ to indicate that you are copying to your home folder. If you simply put /dest, it will not work because the user (in the above example ubuntu does not have permissions outside ~/.

the default password is tcuser

the default password to copy is tcuser


[PE-D][Tester B] Delete Command and Date Command UML Diagram

Under "Delete Feature"
DeleteCommandParser has a private modifier for attributes but it leads to nothing.

Under "[Proposed] Adding an End Time to the Date Feature with Duplicate/Overlap Prevention"
DateCommandParser has a private modifier for attributes but it leads to nothing.

Labels: type.DocumentationBug severity.Low
original: GabrielCWT/ped#12


Add support to

In my case I don't use multiple messages in the template, I use a generic one.
If I use html the text is put all together so you need to add a
 to make a line break.

Good point.

If not see how to make it not put everything together
Here is an example of my code
Hi
Hi

This returns HiHi
You should return
Hi
Hi

I agree with this, it is a very necessary functionality. I couldn't make a line break in any way. Please do it

Try it out:
  - name: send telegram notification
    image: appleboy/drone-telegram
    settings:
      token: xxxxxxxxxx
      to: telegram_user_id
      format: HTML
+     message: >
+       Test HTML Format from file
+       Google .com 1
+       Google .com 2
+       Google .com 3
+       Google .com 4


[bug]: Controlled combobox search

Describe the bug
I have a combobox (which uses cmdk 1.0.0, though this issue happens with older versions as well). When the search input is controlled, like this:
<CommandInput
    value={search}
    onValueChange={setSearch}
/>

and the combobox is closed and the search input is cleared after an input is selected
<CommandItem
    setOpen(false);
    setSearch("");
    }}
>

the full list is rendered for a moment, before the combobox is closed.
Affected component/components
Combobox
How to reproduce

Type "Next.js" into the search bar
Click on the displayed option
Notice that all of the options are rendered for a moment before the combobox is closed.

If the controlled search props are removed, this does not happen.
value={search}
onValueChange={setSearch}

Here's a video showing the issue:
https://github.com/user-attachments/assets/03aacd60-d7b7-4107-bd9a-d5d1c12e2571
Codesandbox/StackBlitz link
https://codesandbox.io/p/devbox/shadcn-ui-vite-forked-p26mvj
Logs
No response
System Info
Codesandbox

Before submitting

[X] I've made research efforts and searched the documentation
[X] I've searched for existing issues

I think this is not a bug. In the video, "Next.js" is already selected. If you click on it again, this will deselect it. If you click on another option, it will select that option instead of clearing the input. This behavior is caused by the onSelect prop of the CommandItem.
onSelect={(currentValue: string) => {
    setValue(currentValue === value ? "" : currentValue);  //  This line makes it work like I said.
    setOpen(false);
    setSearch("");
 }}

If you want the selected option not to be deselected when you click on it, you can change the code to something like this:
onSelect={(currentValue: string) => {
    setValue(currentValue);
    setOpen(false);
    setSearch("");
 }}

Okay, I got it now. I apologize for the misunderstanding.

The issue isn't that Next.js is deselected. As you said, the code is written specifically so that this happens.
The issue occurs when value={search} is used. When a user types into the search field, a filtered list of options are displayed. Once one of them is chosen (either selected for the first time or de-delrcted), the combobox closed. This is intentional and caused by setOpen(false). Before the combobox closes, however, there is a brief moment where the full list of options are rendered.使用 value={search} 时会出现此问题。当用户在搜索字段中键入内容时，会显示经过筛选的选项列表。一旦选择其中一个（无论是第一次选择还是取消删除），组合框就会关闭。这是故意的，是由 setOpen(false) 引起的。然而，在组合框关闭之前，会短暂呈现完整的选项列表。
This also happens if you start with no selection, search for Next.js, and then select it. The list of all of the items is shown for a moment before the combobox is closed.
The current flow is like this:

User searches for a value, is presented with a filtered list of options, and selects one
A re-render happens and the search input is cleared, the full list is shown (instead of just the filtered values), and Next.js is de-selected
Another re-render happens and the combobox is closed

The second item above should not happen. Once an item is clicked, the combobox should close.

If the search state is removed, this bug is gone. I think the search state is not necessary.
<CommandInput
  placeholder='Search framework...'
  // CHANGE ME
  // value={search}
  // onValueChange={setSearch}
/>

Try adding shouldFilter={false} in <Command> should resolve the issue.
Ref


Custom LoginPage / authClient not redirecting to actual List page after authentication

Please do not submit support requests or "How to" questions here. For that, go to StackOverflow.
What you were expecting:
To get redirected to List page after authentication
What happened instead:
The  app stays on /login, but, if I F12 (Dev tools), request has gone through and I get json data back in response successfully and moreover, there are no errors reported in the Console.
Related code:
Auth Client
import {AUTH_GET_PERMISSIONS,
    AUTH_LOGIN,
    AUTH_LOGOUT,
    AUTH_ERROR,
    AUTH_CHECK} from "admin-on-rest";

const auth = async (type:any, params:any) => {
        if (type === AUTH_LOGIN) {
            const { username, password } = params;
            const request = new Request('https://myAuthUrl', {
                method: 'GET',
                //body: JSON.stringify({ username, password }),
                //headers: new Headers({ 'Access-Control-Allow-Origin': '*'}),
            })
            var response = await fetch(request,{mode:'no-cors', credentials: 'same-origin'});
            //if (response.status < 200 || response.status >= 300) {
              //  throw new Error(response.statusText);
            //}

            // get token
            //return response.json();
            return Promise.resolve();
        }
        if (type === AUTH_LOGOUT) {
            localStorage.removeItem('token');
            localStorage.removeItem('role');
            return Promise.resolve();
        }
        if (type === AUTH_ERROR) {
            // ...
        }
        if (type === AUTH_CHECK) {
            //return localStorage.getItem('token') ? Promise.resolve() : Promise.reject();
        }
        if (type === AUTH_GET_PERMISSIONS) {
            //const role = localStorage.getItem('role');
            return Promise.resolve();
        }

        return Promise.reject('Unkown method');
    };

export = auth;

Login - My requirement does not need username and password - by default dispatches to the login action which causes authClient above to call into the Auth url inside the case  AUTH_LOGIN - I reckon this page needs some tweaking ?
import * as React from "react";
import { connect } from 'react-redux';
import { userLogin as userLoginAction } from 'admin-on-rest';

declare namespace Auth {
    type Props = {
        userLoginAction: any
    }
}

class Login extends React.Component<Auth.Props, {}> {
    componentDidMount(){
        const credentials = { };
        this.props.userLoginAction(credentials);
    }

    render() {
        return (<div/>);
    }
};

const component = connect(undefined, { userLoginAction })(Login);
export = component;

Environment

Admin-on-rest version: 1.4.0
React version: 16
Browser: Chrome
Stack trace (in case of a JS error): NA

That's because you commented out the AUTH_CHECK handling which is called by every pages to check whether the user is logged in (documentation).

I see - thanks for that.
Also, why is it adding a "Logout" menu on it's own on the Left Drawer panel (inspite of a custom Login component) ? Any way to get rid of that ?

Hi, and thanks for your question. As explained in the admin-on-rest contributing guide, the right place to ask a "How To" question, get usage advice, or troubleshoot your own code, is StackOverFlow.
This makes your question easy to find by the core team, and the developer community. Unlike Github, StackOverFlow has great SEO, gamification, voting, and reputation. That's why we chose it, and decided to keep GitHub issues only for bugs and feature requests.
So I'm closing this issue, and inviting you to ask your question at:
http://stackoverflow.com/questions/tagged/admin-on-rest
And once you get a response, please continue to hang out on the admin-on-rest channel in StackOverflow. That way, you can help newcomers and share your expertise!


ViRA was omitted from schema update changes

[x] update edges

[x] update published weboftrust published schema

[x] update keripy

[x] update sally

linked https://github.com/WebOfTrust/WebOfTrust.github.io/pull/2

linked https://github.com/WebOfTrust/keripy/pull/380

linked https://github.com/GLEIF-IT/sally/pull/16

linked https://github.com/WebOfTrust/vLEI/pull/72


fix(openchallenges): customize scroll position restoration with different navigation types

fixes #2154

Changelogs

Add a service to enable custom scroll position restoration. The built-in scrollPositionRestoration seems not to support  the navigations when only parameters change. For example, in the search pages, the scroll position is always reset to "top" when filter values changes (if scrollPositionRestoration: 'top'. Therefore, adding a custom service could overwrite default scroll reset behavior and restore the previous position depending on different navigations:
CustomScrollRestorationService:
A service for restoring scroll positions based on the method of navigation.
It helps preserve the user's scroll position during various types of navigation actions.
- Backward navigation: Scrolls to the previous position.
- Forward navigation: Scrolls to the top of the page.
- Anchor navigation: Scrolls to a specified anchor (no example currently).
- Param navigation: Maintains the current scroll position when base url is the same, i.e. /challenge -> /challenge?status=active
- Same url navigation (was not set before): Scrolls to the top of the page, i.e. /home -> /home

Preview
Backward navigation

Forward navigation

Same url navigation

Param navigation

Some attempts using custom directive to prevent scroll position from being reset to 'top' is unsuccessful.
When navigate back from challenge-profile page to challenge-search page, the custom directive works to keep the previous scroll position. However, the scroll position will still be reset to 'top' when filters on the challenge-search page change.
Looking for other options...

Update
It looks like scrollPositionRestoration: 'top' will overwrite the manual scrolls at least in ngOnit. Not sure if it's because of race issues. I am going to test window.scroll(0, 200) in different lifecycle hooks with scrollPositionRestoration: 'top'.
Results:

ngOnit : :x:
ngAfterContentInit:
ngAfterViewInit:

I will explore the simpler solution @tschaffter suggested and convert this pr to draft.

Closing this - the new approach to address the issue is tracked in #2273


components: forbid visibility changes if it contains incoherent records

closes #818

Notes:

The code is not functional, just pseudocode to decide if the solution is accepted.
I am assuming that we should not allow to:

change from public to restricted, if there are public records
change from restricted to public, if there are restricted records (this could be ok though 🤔 )

change from restricted to public, if there are restricted records (this could be ok though 🤔 )

Current implementation:

community restricted? record must be restricted
community public? record can be restricted or public

I hope my code helps. You will need another change in rdm-records probably, when the record restriction is changed from restricted to public: if it is in at least one community that is restricted, you cannot change it.

@ntarocco thanks a lot for the code snippets. I will proceed with the implementation (record agnostic here, and then with records knowledge in rdm-records)

closed in favour of https://github.com/inveniosoftware/invenio-rdm-records/pull/1236


Add handling of nasMessage.PDUSessionTypeIPv4IPv6 for getting EndPoint address

Probably a silly question... now that this is merged, does that mean building free5gc v3.0.5 which uses this as a submodule will mean this change will be active in it, even though v3.0.5 hasn't changed since this addition?

It appears it isn't automatically added.. I'm going to manually add it in but am wondering if there is a better way. to pull in the latest version to free5gc v3.0.5.

@ryanwwest
Yes, you need to checkout the submodule to main branch and git pull to get the latest commits.


feat(assistant): Assistant and AssistantFiles api

Description
This PR adds the assistants and assistant files api.
Signed commits

[X] Yes, I signed my commits.

This is still missing threads, messages and runs.

Yup LGTM.


[support] Spying on observableThrowError - unit testing

Previously in RxJS 5 in our file: service.ts we had:
import { Observable } from 'rxjs/Observable';

// in our method we had:
return Observable.throw({ error: 'lol' });

Using Jasmine it was tested service.spec.ts thus:
spyOn(Observable, 'throw');

// in the test
expect(Observable.throw).toHaveBeenCalledWith({error: 'lol'});

Now with RxJS 6 our file service.ts has:
import { throwError as observableThrowError } from 'rxjs';

// in our method we have:
return observableThrowError({ error: 'lol' });

But how do you spy on throwError or observableThrowError? 😖

Obviously I can't see all of your code in context there, but I believe it would be better to test that the Observable your service returns throws, rather than testing that the throw method was called. It seems like you're testing an (RxJS v5 dependent) implementation detail of your service rather than the actual result you want from your service?
So the jasmine test that does what you want it to under RxJS 6 would look something like
it('should throw an error', (done: DoneFn) => {
  serviceUnderTest.methodThatReturnsThrowingObs().subscribe({
    error: (err) => {
      expect(err).toEqual({ error: 'lol' });
      done();
    }
  })
});

(didn't write that code in an editor, may contain typos!)
Also, while I'm not a maintainer here, I believe that somewhere like Stack Overflow is a better place 'how to' for queries like this (mainly in that you are likely to get more eyes on the problem and a faster answer).


fix: fix stdio and tons of windows issues

This PR adds back stdio for output priting and the shell: true to spawn method so it can properly run on Windows.
This was broken in https://github.com/serverless/serverless-python-requirements/commit/937fa564bf12fcb043678a0b48064bc60cbd2ea2

Hello @jeanbmar - could you share more what exactly was broken? How can I reproduce it to validate the bug?

We can see in https://github.com/serverless/serverless-python-requirements/commit/937fa564bf12fcb043678a0b48064bc60cbd2ea2 that:
https://github.com/serverless/serverless-python-requirements/blob/f2d73eac40e332e59eec8aa50e5999d9462406af/lib/pip.js#L256
was changed to:
https://github.com/serverless/serverless-python-requirements/blob/937fa564bf12fcb043678a0b48064bc60cbd2ea2/lib/pip.js#L275
4 years after the spawnArgs is still present in the code but used nowhere. Which leads me to believe that it should never have been removed in the first place and wasn't intended.
spawnArgs contains 2 critical options for the spawn method.
stdio: 'inherit' is what allows stdout and stderr from the child process to be printed in the caller's console when SLS_DEBUG environment variable is true.
The PR and more changes that followed (like converting spawnSync to a regular spawn call) basically erased this feature from the module. As a result, people aren't even able to see what's the error when something goes wrong and hacky PR have been submitted to try fixing it. That's why so many people submit issues with Exit code 1 logs.
See: https://github.com/serverless/serverless-python-requirements/issues/663, https://github.com/serverless/serverless-python-requirements/issues/677, https://github.com/serverless/serverless-python-requirements/issues/673, https://github.com/serverless/serverless-python-requirements/pull/664 and many more.
This recent PR https://github.com/serverless/serverless-python-requirements/pull/679 is dirty because it will print interesting information when an exception is thrown. Except that bad things happening in Docker don't necessary crash the spawn process, and thus don't throw an exception.
To reproduce what I'm saying, add a private package to your requirements.txt and try building your python requirements without adding the SSH key. Your build will fail and you will get no log.
The std must be added back to the spawn call so people can understand what actually happens in Docker.
We should probably output std in every situation and remove the SLS_DEBUG check. As a relevant comparison, node-gyp outputs the build logs by default in NPM.
I come to the second point. As a work around for this lack of std, I ran the docker run of my failing build manually to actually understand what was going on. To my surprise, running the command manually in PowerShell worked properly.
This is because PowerShell uses a shell and the docker run call may contains stuff that needs a shell to run. Thus the shell: true option that was set before the killer PR happened.
For instance, in order to fix the private key issue that makes this module impossible to use on Windows with private packages I had to add:
dockerRunCmdExtraArgs:
      - '-e'
      - 'GIT_SSH_COMMAND="cp ~/.ssh/id_rsa ~/id_rsa && chmod 600 ~/id_rsa && ssh -i ~/id_rsa"'

This won't work if the spawn process isn't a shell because embedded commands can't be evaluated.
This actually kills the interest of options such as dockerRunCmdExtraArgs, dockerRunCmdExtraArgs and pipCmdExtraArgs since the smallest intelligent command will require a shell.

Hey @jeanbmar - sorry for not taking care of this PR earlier, I missed it, and then didn't have time to dedicate to this project. I'll try to review it more deeply in the coming days/weeks. Thanks for your work 🙇


Public / Private keyword scope

Indeed, my thoughts on this are based on COM type-library support, which doesn't offer type-hierarchy support.  For example, UDTs are never parented by a coclass or module, only the library itself, unlike Types defined in VBx.   FWIW, I would also like to see us be able to optionally define UDTs at the same global scope, so that we can offer a more aligned approach to COM.
So technically speaking, defining aliases at the global scope, along with Modules and Classes is more correct, from a COM perspective.  The Public/Private suggestion is an expansion of the current situation for Public Class vs Private Class, which also denotes whether the class will be exposed via the generated type library.
[DllExport] has very specific meaning in my eyes, as it currently exactly relates to the exporting of DLL function entry points, and so to use it for this purpose would not be ideal IMO.
Originally posted by @WaynePhillipsEA in https://github.com/twinbasic/lang-design/issues/32#issuecomment-1219618470

@WaynePhillipsEA

Public/Private at this level will simply denote whether the alias gets exported to the type library, or not.

the current situation for Public Class vs Private Class, which also denotes whether the class will be exposed via the generated type library

IMO that is a waste of Public/Private modifiers, that's an Exported/Not Exported thing (maybe an attribute or new keyword could be used or Exposed). Public/Private on variables restricts scope to that component, Public/Private on components (class/module) should I think restrict access to the file (.twin). .bas and .cls files would be implicitly Public Module/ Public Class for bwds compatibility.
Typedefs could be treated as another kind of component like a module or a class I agree, in terms of scope.
Public/Private keywords are so fundamental and important we should use them more carefully. They are a fantastic resource for leveraging people's existing understanding and expectations from VBA to learn a new tB concept. Making dll libraries is only one of the many things you can do with tB (make an exe, a CLI app, a GUI app, a device driver), why should the access modifiers only be useful for that usecase and not the language as a whole? I may make a separate discussion about this.
Originally posted by @Greedquest in https://github.com/twinbasic/lang-design/issues/32#issuecomment-1219620279

I don't think there's a need, in a full application as opposed to TLB/OCX,  to impose an artificial restriction on usage, and there should be strong support for using it in all project types, as opposed to primarily for ActiveX controls.
I'd propose having Public Alias/Private Alias within the regular code, behave exactly as those keywords apply to Public/Private type, but Public Alias wouldn't be exported by default, you could tag it with [ COMExport ] instead of Dll to export it.
This would replicate the typedef vs typedef [public] distinction in TLBs, and provide consistent functionality in all project types.
Originally posted by @fafalone in https://github.com/twinbasic/lang-design/issues/32#issuecomment-1219627883

@Greedquest I would welcome a discussion about that.   I think perhaps changing it to Class and Internal Class or similar might be more clear and less ambiguous.   Same for Alias and Internal Alias, perhaps.
Originally posted by @WaynePhillipsEA in https://github.com/twinbasic/lang-design/issues/32#issuecomment-1219627914

I'd propose having Public Alias/Private Alias within the regular code, behave exactly as those keywords apply to Public/Private type, but Public Alias wouldn't be exported by default, you could tag it with [ COMExport ] instead of Dll to export it.

One concern I see with that approach is that in tB, we can MyProject.Export.FizzBuzz but in COM-consuming code, it'd be illegal syntax. It'd be just MyProject.FizzBuzz. Wouldn't that lead to confusion in code usage in both contexts?
Originally posted by @bclothier in https://github.com/twinbasic/lang-design/issues/32#issuecomment-1219640062

Component only scope need not be implemented right away, but the syntax should be designed with the eventual implementation in mind; it could just generate an error for now like when Public is used where it can't be.
@blothier, can you clarify what you mean? I'm not familiar with a .Export method.
Originally posted by @fafalone in https://github.com/twinbasic/lang-design/issues/32#issuecomment-1219647694

@fafalone,

can you clarify what you mean? I'm not familiar with a .Export method.

see my earlier post.
It's the name of the hypothetical module. As mentioned, type hierarchy isn't supported in the COM context, so though it's legal for tB or VBx to fully qualify <project>.<component>.<member>, the same syntax wouldn't work outside that context which also can include VBx code that has the library referenced and thus only see what COM sees. It'd have to be <project>.<member>.
Originally posted by @bclothier in https://github.com/twinbasic/lang-design/issues/32#issuecomment-1219653714

I wouldn't think my hypothetical [ COMExport ] could be used on Private Alias. Private would always be Private only to that module/class/form/etc.
Besides that; how is this handled with Type and Enum? I guess I'm confused about how it's being treated different than that.
Originally posted by @fafalone in https://github.com/twinbasic/lang-design/issues/32#issuecomment-1219662064

Why not just cut through the potential confusion from the start?
Change the public/Private keyword prefixes to be directly applicable to the COM or DLL contexts to which they apply.
So: for COM components:
COMPublic Type xxx...
for DLL:
DLLPublic Type xxx....
That way the context of the type declaration is crystal clear to future devs looking at the code
in intellisense, then the (DLL) or (COM) can easily be shown as well.
I'm all for anything worthwhile that reduces confusion in reading/comprehending code, and making the meaning of Public or Private any more confusing than they can be already now would not be a Good Thing(TM).
Originally posted by @mburns08109 in https://github.com/twinbasic/lang-design/issues/32#issuecomment-1219693521

Let me clarify the above suggestion a tad (since Ben moved my comment and I can't edit it anymore now).
So, For COM components (and IDL):
COMPublic Type xxx...
(or)
COMPublic Alias xxx...
(whichever direction we go in)
The point here is to NOT muddy the water of what Public/Private/Friend (or any other potential scope modifiers you care to throw into this list, Static or Isolated, perhaps?) mean in all other instances with any potential confusion about whether we're caring more about DLL-scope-related TYPE/Alias definitions or COM/IDL-scope-related TYPE/Alias definitions.
Call them out for what we need to be clear about from the beginning with a new scope label that clearly says what it means.

Public and COMPublic seems confusing... Maybe Export Alias? COMExport? But wouldn't that be de facto the same as a more consistent [ COMExport ] like we have [ DllExport ]?
All clarify it's not the same as Public Type and Private Type.

Doh. After moving the thread, I now realize there already was a thread about that. However, it started out specific to Module. Still, we should discuss the question about public/private in more general terms. For the record, I DO think this looks weird:
Private Module Foo
  Public Sub Bar()
  End Sub
End Module

Given that the Module and Class statements are new to tB, I would have preferred to use only either Public or Internal for those top-level components as that's less confusing.
In regards to the COM/DLL exports.... I will have to pull out my old soapbox and re-state the case against making it a language syntax.
I've commented about the need to keep clean separation between different concerns and I think type library generation does not belong as a language syntax but rather as an attribute. See here, here and here.
Stuff like DLL exports and type library generation are not language features. They are  compiler services. Therefore creating a language syntax for them is a mistake. The language itself should be very small and should be abstract enough to work on any hardware. The type library generation and DLL exports are best described with attributes. I understand this isn't a perfect and clean separation because we already have language syntax that influences the corresponding services.
What does that mean? Simply that we don't add any new meaning to Public / Private beyond what it already has. Because aliases (and we will have to deal with other elements such as unions as well) are something new to tB we have the freedom of defining it in the way that feels most natural.
Therefore, I'd argue that this is more natural extension:
Public Module Foo
  [ LibraryExport ]
  Public Alias Fizz As Long
End Module

This allow us to provide type-hierarchy for tB consumers (e.g. MyProject.Foo.Fizz is a legal syntax among tB consumers) while having the ability to support COM consumers, which would be MyProject.Fizz only.
The attribute can be used to perform validation that there is only one alias Fizz defined in the MyProject and throw an error about duplicate definition if there's two aliases named Fizz, even though they are in 2 different modules and thus legal/disambiguable.

There are 2 important points I think about language design:

Private/ Public /Friend are really important language keywords, which already carry connotations of modifying scope or access throughout the project. At the moment they are being wasted for a relatively niche purpose of typelib exposure and I agree that job could be done with an attribute as it is more of a compiler feature anyway.

When I say niche purpose, I mean tB can be used for many things other than com dlls, like GUI apps, CLI apps, standalone exes, device drivers etc. and for those things these access modifiers have no effect.

.twin files containing Module/Class statements bring a new superset level of structure over what was possible in VBx (because VBx had an entirely flat project structure). At the moment twin files are being wasted, it is basically arbitrary whether I declare a Module in fileA.twin or fileB.twin. They act very similarly to RD Folder annotations in grouping things visually but not affecting the code.

I see this as a wasted opportunity because we already support .bas, .cls etc. files to match existing VBx project structures, so .twin files can be leveraged for an additional level of structure. It should mean something to the code for me to decide to put a module in one file or another.

That's the main point I wanted to get across, that there are 2 bad things about the current state of the language (or let's just say wasted opportunities where we can improve). You can stop reading here if you like.

So yes my solution for both of these wasted opportunities is to use access modifiers on components to dictate whether they go into the project scope or not and are accessible from other files. I.e. right now we have

Method Scope for Dim'd variables inside methods.  Accessible to callers inside the same method.
Component Scope for Private variables and methods. Accessible to callers inside the same component.
Project Scope for Option Private modules and Instancing: 1 - Private classes, Friend class methods, globally scope members of referenced dlls/addins.  Accessible to callers inside the same project.
Global Scope for Public Methods/Types in components, and Public Instancing Classes + their Public Methods.  Accessible to callers inside the project and exposed to the outside world when the project is referenced - PS this is confusing I feel.

And we should change to have:

Method Scope as before
Component Scope as before
File Scope for Private Module/Class blocks. Accessible only to callers within the same file.
Project Scope for Public Module/Class blocks with no explicit exported/dll visible property, or .cls files with Instancing: Private, or .bas files with option private
Global Scope for Public Module/Class blocks with an explicit exported property, or Instancing: Public... .cls files, or .bas files.

Now exposure to the outside world is explicit and optional. Much better structure. After all, I may have a file.twin that does something, but half the code in it is implementation details. That stuff should be encapsulated within the file and not leaked to the whole project (or worse, outside it). It should be a conscious decision to make components part of a file's public interface, just as we decide when to make methods part of a component's public interface.

Alternatively to be Really VBx about it, Private componets get File Scope, Friend components get project scope, Public components get Global scope and are visible from the typelib or tB projects which reference this one. That's less explicit which is bad but maybe more expected which is good.

v1 blocker, depending on outcome
The proposal to have Private Class ... End Class or Friend Class ... End Class would break existing tB behaviour so must be decided before v1 fixes the behaviour to what it is now

I think that v1 blockers are issues related to "type 1" of backward compatibility, that is backward compatibility with VBx.
Maybe IDK, but AFAIK there is no commitment to never break backward compatibility from tB version to a new tB version. Or even backward compatibility to VBx after v1.
To my understanding  a "v1 blocker" issue is that, and not alleged "type 2" backward compatibility issues. That anyway how can it have that "backward compatibility" in things that are not present in the previous version?
Because, if we are going to see it that way, tB is not backward compatible with VB6 then, because it needs to import the files, but can use the old files directly.
Perhaps we should discuss somewhere what exactly "v1 blocker" means before putting that label to more issues.

I still think this would be a great feature.


Add getlessons.com

Hello! Add, please getlesssons.com. This is an example of a site fully working on vue 2.

@ghost Please create a PR if this is still relevant


Icon only buttons are not accessible

Issue Description
Icon only buttons fail accessibility testing.
Issue Type

[ ] New Feature
[ ] Enhancement
[x] Bug
[ ] Other

Expected Behavior
Passes accessibility tests
Current Behavior
To solve this violation, you need to:
Fix at least one (1) of these issues:
Element has a value attribute and the value attribute is empty
Element has no value attribute or the value attribute is empty
Element does not have inner text that is visible to screen readers
aria-label attribute does not exist or is empty
aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty or not visible
Element's default semantics were not overridden with role="presentation"
Element's default semantics were not overridden with role="none"
And
Fix the following:
Element is in tab order and does not have accessible text

Steps to Reproduce

Install Axe Chrome Extension
Navigate to the icon only button example page
Run axe by going to developer tools and clicking axe tab.

Environment

Component Version:
Browser Name and Version:
Operating System and version (desktop or mobile):

JIRA created

This is also an issue in button groups: http://engineering.cerner.com/terra-core/#/tests/button-group-tests/icon-only-button-group

This is also an issue in collapsible menu view http://engineering.cerner.com/terra-core/#/tests/collapsible-menu-view-tests


[ADLS] Account APIs object refactor and couple of bugfixes

Swagger PR Links

https://github.com/Azure/azure-rest-api-specs/pull/2417
https://github.com/Azure/azure-rest-api-specs/pull/2391
https://github.com/Azure/azure-rest-api-specs/pull/2263
https://github.com/Azure/azure-rest-api-specs/pull/2353

Changes in 2.4.0-preview
Breaking changes

The Account operations object has been changed from Account to Accounts

E.g., Account.Get(...) to Accounts.Get(...)

When creating or updating resources (accounts, firewall rules, etc.), explicit parameter objects are now required:

Account creation:

DataLakeStoreAccount to CreateDataLakeStoreAccountParameters

List of FirewallRule to CreateFirewallRuleWithAccountParameters
List of TrustedIdProvider to CreateTrustedIdProviderWithAccountParameters

Account update:

DataLakeStoreUpdateParameters to UpdateDataLakeStoreParameters

List of FirewallRule to UpdateFirewallRuleWithAccountParameters
List of TrustedIdProvider to UpdateTrustedIdProviderWithAccountParameters

Firewall rule creation and update:

FirewallRule to CreateOrUpdateFirewallRuleParameters
FirewallRule to UpdateFirewallRuleParameters

Trusted identity provider creation and update:

TrustedIdProvider to CreateOrUpdateTrustedIdProviderParameters
TrustedIdProvider to UpdateTrustedIdProviderParameters

Bugfix: Removed the childrenNum field from FileStatusProperties because it was not supported
Bugfix: Changed the data type of the permission field of AclStatus from int to string

Description

This checklist is used to make sure that common guidelines for a pull request are followed.

[x] Please add REST spec PR link to the SDK PR
[x] I have read the contribution guidelines.
[ ] The pull request does not introduce breaking changes.

General Guidelines

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

SDK Generation Guidelines

[x] If an SDK is being regenerated based on a new swagger spec, a link to the pull request containing these swagger spec changes has been included above.
[x] The generate.cmd file for the SDK has been updated with the version of AutoRest, as well as the commitid of your swagger spec or link to the swagger spec, used to generate the code.
[x] The *.csproj and AssemblyInfo.cs files have been updated with the new version of the SDK.

@shahabhijeet The last commit was to resolve merge conflicts

@shahabhijeet Ping -- I don't think the build error is coming from my changes


Fix render bugs in useful_logs_for_debugging.log

The log copy is located in ~/useful_logs_for_debugging.log in the gazellebox

This is outdated


All tests failing due to undefined macros??

All of a sudden all our tests are failing due to these macros being undefined??
[1;31m   ERROR [0m |  [1;31mhttp://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h: Assembler messages:
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:760: Warning: RVMODEL_CLR_MSW_INT    not defined. Executing this will end test. Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:764: Warning: RVMODEL_CLR_MTIMER_INT not defined. Executing this will end test. Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:768: Warning: RVMODEL_CLR_MEXT_INT   not defined. Executing this will end test. Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:773: Warning: RVMODEL_SET_SSW_INT    not defined. Executing this will end test. Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:777: Warning: RVMODEL_CLR_SSW_INT    not defined. Executing this will end test. Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:781: Warning: RVMODEL_CLR_STIMER_INT not defined. Executing this will end test. Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:785: Warning: RVMODEL_CLR_SEXT_INT   not defined. Executing this will end test. Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:790: Warning: RVMODEL_SET_VSW_INT    not defined. Executing this will end test. Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:794: Warning: RVMODEL_CLR_VSW_INT    not defined. Executing this will end test. Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:798: Warning: RVMODEL_CLR_VTIMER_INT not defined. Executing this will end test. Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:802: Warning: RVMODEL_CLR_VEXT_INT   not defined. Executing this will end test. Define an empty macro to suppress this warning
We cannot make changes that break things like this.  If a company has regression testing (Jenkins) going (like us) then all of a sudden tests blow up and what they thought was passing is now failing. Causing more work for someone to go figure out what has happened??
As I have said before the more roadblocks we put in place (intentional or not) the fewer people will be willing to invest the time and $$ to use this to "brand" their SOC.
Going forward any changes should be backwards compatible or if they will break things a major release should be made with announcements that you have to change things..

It’s a warning, not an error. I’m not sure why it is indicating that a
warning is an error- unless you are testing interrupts.
You can define them all to be empty macros to remove the messages, just as
the warning indicates.
On Monday, May 22, 2023, InspireSemi @.***> wrote:

All of a sudden all our tests are failing due to these macros being
undefined??
[1;31m ERROR [0m | [1;31mhttp://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h: Assembler
messages:
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:760:
Warning: RVMODEL_CLR_MSW_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:764:
Warning: RVMODEL_CLR_MTIMER_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:768:
Warning: RVMODEL_CLR_MEXT_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:773:
Warning: RVMODEL_SET_SSW_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:777:
Warning: RVMODEL_CLR_SSW_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:781:
Warning: RVMODEL_CLR_STIMER_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:785:
Warning: RVMODEL_CLR_SEXT_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:790:
Warning: RVMODEL_SET_VSW_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:794:
Warning: RVMODEL_CLR_VSW_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:798:
Warning: RVMODEL_CLR_VTIMER_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:802:
Warning: RVMODEL_CLR_VEXT_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
We cannot make changes that break things like this. If a company has
regression testing (Jenkins) going (like us) then all of a sudden tests
blow up and what they thought was passing is now failing. Causing more work
for someone to go figure out what has happened??
As I have said before the more roadblocks we put in place (intentional or
not) the fewer people will be willing to invest the time and $$ to use this
to "brand" their SOC.
Going forward any changes should be backwards compatible or if they will
break things a major release should be made with announcements that you
have to change things..
—
Reply to this email directly, view it on GitHub
https://github.com/riscv-non-isa/riscv-arch-test/issues/354, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AHPXVJVGB5JU3ULSRZL3N2LXHOMF5ANCNFSM6AAAAAAYKXDO5Q
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Not sure what is going on…  Somewhere between the 12th and the 19th everything broke…
Marc Karasek
Principal Software Engineer
M:<PHONE_NUMBER>
[A close up of a sign    Description automatically generated]
www.inspiresemi.comhttp://www.cryptocoretech.com/
THIS MESSAGE IS INTENDED ONLY FOR THE USE OF THE INDIVIDUAL OR ENTITY TO WHICH IT IS ADDRESSED AND MAY CONTAIN INFORMATION THAT IS PRIVILEGED, CONFIDENTIAL AND/OR EXEMPT FROM DISCLOSURE UNDER APPLICABLE LAW.  If the reader of this message is not the intended recipient or agent responsible for delivering the message to the intended recipient, then you are hereby notified that any dissemination or copying of this communication is strictly prohibited.  If you have received this electronic transmission in error, please delete it from your system without copying it and notify the sender by reply e-mail  so that our address record can be corrected.  Thank you.
From: Allen Baum @.>
Sent: Monday, May 22, 2023 5:46 PM
To: riscv-non-isa/riscv-arch-test @.>
Cc: Marc Karasek @.>; State change @.>
Subject: Re: [riscv-non-isa/riscv-arch-test] All tests failing due to undefined macros?? (Issue #354)
It’s a warning, not an error. I’m not sure why it is indicating that a
warning is an error- unless you are testing interrupts.
You can define them all to be empty macros to remove the messages, just as
the warning indicates.
On Monday, May 22, 2023, InspireSemi<EMAIL_ADDRESS>wrote:

All of a sudden all our tests are failing due to these macros being
undefined??
[1;31m ERROR [0m | [1;31mhttp://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h: Assembler
messages:
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:760:
Warning: RVMODEL_CLR_MSW_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:764:
Warning: RVMODEL_CLR_MTIMER_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:768:
Warning: RVMODEL_CLR_MEXT_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:773:
Warning: RVMODEL_SET_SSW_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:777:
Warning: RVMODEL_CLR_SSW_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:781:
Warning: RVMODEL_CLR_STIMER_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:785:
Warning: RVMODEL_CLR_SEXT_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:790:
Warning: RVMODEL_SET_VSW_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:794:
Warning: RVMODEL_CLR_VSW_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:798:
Warning: RVMODEL_CLR_VTIMER_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
http://<IP_ADDRESS>:8080/job/riscvarchtest_c/ws/
riscvarchtest/riscv-arch-test/riscv-test-suite/env/arch_test.h:802:
Warning: RVMODEL_CLR_VEXT_INT not defined. Executing this will end test.
Define an empty macro to suppress this warning
We cannot make changes that break things like this. If a company has
regression testing (Jenkins) going (like us) then all of a sudden tests
blow up and what they thought was passing is now failing. Causing more work
for someone to go figure out what has happened??
As I have said before the more roadblocks we put in place (intentional or
not) the fewer people will be willing to invest the time and $$ to use this
to "brand" their SOC.
Going forward any changes should be backwards compatible or if they will
break things a major release should be made with announcements that you
have to change things..
—
Reply to this email directly, view it on GitHub
<https://url.avanan.click/v2/___https://github.com/riscv-non-isa/riscv-arch-test/issues/354https://url.avanan.click/v2/___https:/github.com/riscv-non-isa/riscv-arch-test/issues/354>.YXAzOmluc3BpcmVzZW1pOmE6bzozNDU1OTE4NzlmMmM4NTdlMDdlMWI2ZTU4ODcxNjZmMDo2OjUyMjI6MzY4YTk3ODU1OTM2NTRmODE1ZWJiOGNiNTI4YWU4NzE1NTlhYTQ4ZmFlYzZmNmFjOGRkNzQ2ZTZlZmMyNGU4NTp0OlQ;, or
unsubscribe
<https://url.avanan.click/v2/___https://github.com/notifications/unsubscribe-auth/AHPXVJVGB5JU3ULSRZL3N2LXHOMF5ANCNFSM6AAAAAAYKXDO5Qhttps://url.avanan.click/v2/___https:/github.com/notifications/unsubscribe-auth/AHPXVJVGB5JU3ULSRZL3N2LXHOMF5ANCNFSM6AAAAAAYKXDO5Q>.YXAzOmluc3BpcmVzZW1pOmE6bzozNDU1OTE4NzlmMmM4NTdlMDdlMWI2ZTU4ODcxNjZmMDo2OjEyYTc6MjA2YWUwNzcyYzcyY2QyMTU4NzNiMWQxNzQyYzhmOGY1MDYzMTMzMmJjZDYzZmIzN2JhNWZmNTMwNjk0MzM1Yzp0OlQ;
.
You are receiving this because you are subscribed to this thread.Message
ID<EMAIL_ADDRESS>
—
Reply to this email directly, view it on GitHubhttps://url.avanan.click/v2/___https:/github.com/riscv-non-isa/riscv-arch-test/issues/354%23issuecomment-1558065215___.YXAzOmluc3BpcmVzZW1pOmE6bzozNDU1OTE4NzlmMmM4NTdlMDdlMWI2ZTU4ODcxNjZmMDo2OjFjYTE6MmIwMWJkZGQyNTkyMDQ1OGZjNThlMmQ1MTg5NGExZTg2OTNmNGMxM2MyZjI3ZTc1NTI0ZjA3NDBiNjc2NDZjMTpoOlQ, or unsubscribehttps://url.avanan.click/v2/___https:/github.com/notifications/unsubscribe-auth/AR3S6Y7R3YJEX5N34DGPUHDXHPNCHANCNFSM6AAAAAAYKXDO5Q___.YXAzOmluc3BpcmVzZW1pOmE6bzozNDU1OTE4NzlmMmM4NTdlMDdlMWI2ZTU4ODcxNjZmMDo2OjJjZGU6NDkwYzE2MTM0OTU3ODU4ZDU5ZWZlMDA2ZDUxMWMyZmFmMGY3ZjU2MzdiZWFlYjhiZWRlMzA1MGQ1ZTQ2ZGI5ZjpoOlQ.
You are receiving this because you modified the open/close state.Message ID<EMAIL_ADDRESS>


Send config updates on close

Since the change to batch post config updates was merged, config changes that happen between last post and client closed aren't synced to the server.

The config client actually enqueues the requests on the okhttp thread so I'm not sure this guarantees they are submitted. Does this work?

On graceful swing exits, yes


[Discussion] Would using useLayoutEffect in useDarkMode fix theme flickering?

I've seen many sites that use darkMode with React that have the problem where the theme flickers on load. The same thing happens on the usehooks-ts site for example.
That made me wonder... If using useDarkMode hook, would this issue be solved if instead of using the useLocalStorage hook, we call some type of function to retrieve the theme from storage, or from browser inside a useLayoutEffect hook?
I know this would introduce some other problems, but could this be a doable solution?

The useDarkMode hook has been updated since the issue was created. I'll close the issue for inactivity, feel free to re-open if needed.
About the theme flickering, in CSR applications like when using Vite, it works without flickering. However, you're right on SSR. IMHO we can't fix it using a hook because we can't read LocalStorage nor user preference on the server and so, we have to wait until the hydration, that's the source of flickering.
For the usehooks-ts website, I've removed the ThemeSwitch and only listen for @media (prefers-color-scheme: dark) {} in .css.

I already forgot about this issue 😅
With server actions lately I have been storing the theme in the db to automatically load the needed styles 👌


[WIP] feat: Measurement adapter mappings and save to same series

Add mappings for RectangleROI and Angle to the tools
Save the DICOM SR to the same series as the first found SR series with the same description to allow updating an SR
Add partial mappings for Cobb Angle, Planar Freehand, both of which have some issues but at least allow showing up in the measurements table even if they fail to restore correctly.

Still can't get the CobbAngle to render correctly on initial display, or the Freeform to load after saving (from the SR panel to the measurements), but the rest of them seem pretty good now.
To run, it DOES require an updated DICOM SR module, which is a dependency of this, so I'm not removing the WIP until that is gone.


Enable no-bitwise lint

https://eslint.org/docs/rules/no-bitwise

Not enabling as it would trigger 17 errors. While bitwise ops may not be common in the JS ecosystem, skynet-js uses them in quite a few places as parts of it are quite low-level.


C atchops and Dart AtChops interoperability tests

Interoperability tests between the two crypto libraries is needed to ensure C is in-line with our canonical Dart cryptographic and hash operations library.

Generate test case table
Implement it maybe using named pipes between Dart and C programs?

@XavierChanth I'd like to make interoperability tests between our crypto libraries a high priority because notifications cannot move further if the C atchops is not working correctly

I'll start work on it today

#46 prepares at_mono for these tests

This can be a P2 or P3, #51 has covered the two most important cases: aesctr encrypt/decrypt between dart and c


wrong reference to the channel controlled vocabulary in some classes of CPSV

The Web Site Channel class both in ENG and in ITA (https://ontopia.daf.teamdigitale.it/lodview/onto/CPSV/WebSiteChannel.html) refers to an older version of the channel controlled vocabulary. Use of https://w3id.org/italia/controlled-vocabulary/classifications-for-public-services/channel/023

fixed.


Key rebind bugs? (testing with ESDF layout)

This little app seems amazing, but I have not been able to get it working using settings from any of the pre-set configs. I have attempted to update their bindings to reflect my custom bindings:
  "HotKey": "F10",
  "KeyPrevious": "Q",
  "KeyNext": "T",
  "KeyRotateAntiClockwise": "S",
  "KeyRotateClockwise": "F",
  "KeyInsert": ".",

(Note that I have also tried "Period" for KeyInsert, as i do not know which is expected. I have also tried "Enter", which is also bound to the same in-game function as . / Period.)
When I press F10 with the above json settings and ESDF in-game bindings all that happens is Lockpicker quickly cycles through all the puzzle's keys (it appears "T" is working properly) and then stops.
Here's the output from one such run on the lock pictured below:
config loaded
config loaded
ClientRect: 0,0,2560,1440
Begin
captured key 1
captured key 2
captured key 3
captured key 4
captured key 5
Groups:
Count: 6
  Layer0:<PHONE_NUMBER>1111111101011111111111
  Layer1:<PHONE_NUMBER>0101111101111101111101
  Layer2:<PHONE_NUMBER>0000000000000000000000
  Layer3:<PHONE_NUMBER>0000000000000000000000
Key shapes:
  0:<PHONE_NUMBER>0010000000000010100000
  1:<PHONE_NUMBER>1010000000000000100000
  2:<PHONE_NUMBER>0000000000000000100000
  3:<PHONE_NUMBER>0010000000000000000000
  4:<PHONE_NUMBER>0000001000000010000010
  5:<PHONE_NUMBER>0000000000000000100010
Captured
first solve:
Level: 0, Rot:26
Level: -1, Rot:0
Level: 1, Rot:4
Level: 0, Rot:24
Level: 1, Rot:26
Level: -1, Rot:0
Warning: key is not rotated to position. retrying 0/10.
Warning: key is not rotated to position. retrying 1/10.
Warning: key is not rotated to position. retrying 2/10.
Warning: key is not rotated to position. retrying 3/10.
Warning: key is not rotated to position. retrying 4/10.
Warning: key is not rotated to position. retrying 5/10.
Warning: key is not rotated to position. retrying 6/10.
Warning: key is not rotated to position. retrying 7/10.
Warning: key is not rotated to position. retrying 8/10.
Warning: key is not rotated to position. retrying 9/10.
Failed to rotate key to position, too many times.
task finished with status: Faulted
Task terminated due to error

I have noticed if I run Lockpicker and quickly alt-tab to my text editor it will spam T and sometimes A. I do not have A set to do anything in the config.json so it made me wonder if perhaps Lockpicker was not properly reading my custom "KeyRotateAntiClockwise" binding of S. (I assume A is the default there for WASD players.)
Sure enough, changing my in-game "Strafe Left" and "Strafe Right" bindings to A and D, respectively, then resulted in Lockpicker rotating the currently select key, though the "KeyInsert" functionality still did not work.
Appreciate if you have thoughts on this. Thanks for the really neat-looking utility.

(Note that I have also tried "Period" for KeyInsert, as i do not know which is expected. I have also tried "Enter", which is also bound to the same in-game function as . / Period.)
Enter corresponds to return. While the current version can parse most of the keys, a few seem to be missing, including Period
if you are using 0.5.0 runtime-independent version, the config file is not actually loaded and will always be its default due to some compiler issues.
I will try to add different ways to convert these keys in the next version, so keys like ./:'[ can be properly parsed
For current version, available keys can be found here

Oh, thank you for thinking of that. Yes, I was using 0.5.0 runtime-independent version. I have confirmed that 0.5.1 runtime-independent respects my keybind changes (using "Return") and works as expected.
Thanks for the cool utility and the helpful response.


Unable to reorder more than 10 websites

Describe the Bug
On deployments with more than 10 websites, it is impossible to reorder them all since only the first 10 are shown on the dashboard edit page. This means that any websites beyond the first 10 are unavailable to reorder.
Database
PostgreSQL
Relevant log output
N/A

Which Umami version are you using? (if relevant)
v2.11.3
Which browser are you using? (if relevant)
Chrome
How are you deploying your application? (if relevant)
Railway

Sorry for late response, but agreed. The whole sorting functionality on the dashboard need to be redone. Labeling so it doesn't become stale

Fixed in v2.14.0


Alternative take on an e2e conformance test view + UA filtering support in audit-log-review

This PR, inspired by conversations with @spiffxp, explores an alternative take on viewing the e2e conformance API coverage, presenting a heatmap-style table that one can use to drill down. It also adds importing of User-Agent information from the audit log, which is used for filtering purposes, and changes the import to consider "watch" to be separate from "get".
It also removes all other functionality in dev/audit-log-review, since I broke most of it in the process and it wasn't relevant to my exploration or goals at the time and so I didn't want to put in the work to fix it. Given that, I am very happy to move this into another folder instead of essentially overwriting this, if that would be more useful.
Other changes:

the driver script now always spins up a webserver, which serves the conformance dashboard view introduced here.
You now use python import.py <path to audit log> to do an import.
The data format in the internal API used is now an array of JSON objects instead of an array of arrays with headers, which is less bandwidth efficient but probably not in a way that really matters here.
There is a bug (ponyorm/pony#373) breaking us under some versions of ponyorm, so I have made the version constraint there more specific.
Only data from stable APIs is now displayed

This PR fairly obviously does several things. However, given the code isn't terribly large and is entirely interdependent, I'm not sure if it would be very useful to break it up further.
Here are a couple of screenshots:

Thanks @Katharine ! Great work.
I've been a bit heads down in gingko libaries, but I'd be up for a pair session in the next day or so to go through this.
Ping me here or on the kubernetes slack.

Following on from working with @hh yesterday, I have rebased this PR to more appropriately create dev/e2e-coverage-view, instead of radically altering dev/audit-log-review.