Can Rasa handle question answering

Rasa Core version: 0.9.7
Python version:  3.6
Operating system (windows, osx, ...): ubuntu18.04
Issue:
I just wanted to have your opinion on whether Rasa can handle multiple questions and answers that normally would not be more than just one level or two of a dialogue flow. For example asking several websites offer Q&As that could potentially be handled by the chatbot.
I can see how Rasa's intent recognition would work nicely and find what the question is about, but then how would it pick from an answer, especially if there are multiple matches.
I suppose we could build many intents that map to a few answers (to randomly select from), but what if there are thousands of intents (i.e. questions) and those keep growing. Can Rasa handle anything like that (since is already using SpaCy for featurisation) or should we be looking to integrate Rasa into another modules?
Anyone has any experiences or ideas?

Sure, QA is possible by providing short stories. I would imagine that these thousands of questions would probably fall into a few more general intents, in which case NLU should be able to handle this.
Have you tried out the tensorflow_embedding pipeline yet? In our experience this works better for things like faq intents

Ok, that is interesting! So lets try to build an example if you dont mind. Say we wanted to build a chatbot to help potential users understand the Rasa offering and how it compares against other similar chatbots. So the chatbot would need to answer the following questions (sample):

Q1: Why python?

A1: Because of its ecosystem of machine learning tools. Head over to But I don’t code in python! for details.

Q2: Is this only for ML experts?

A2: You can use Rasa if you don’t know anything about machine learning, but if you do it’s easy to experiment.

Q3: How much training data do I need?

A3: You can bootstrap from zero training data by using interactive learning. Try the tutorials!

Q4: How is Rasa different from other approaches?

 A probabilistic model chooses which action to take, and this can be trained using supervised, reinforcement, or interactive learning.

Q5: Where to Start

A5: After going through the Installation, most users should start with Building a Simple Bot. However, if you already have a bunch of conversations you’d like to use as a training set, check the Supervised Learning Tutorial.

Q6: What is Rasa NLU

A6: You can think of Rasa NLU as a set of high level APIs for building your own language parser using existing NLP and ML libraries. The setup process is designed to be as simple as possible.

Q7: What is Rasa Core

A7: Rasa Core takes in structured input: intents and entities, button clicks, etc., and decides which action your bot should run next. If you want your system to handle free text, you need to also use Rasa NLU or another NLU tool.

So the intents would be something like:
intents:
 - rasa_whatis
 - rasa_technical
 - rasa_comparison
 - ... (other intents like greet, etc.)

The NLU intent examples would be:
## intent : rasa_whatis
 - What is Rasa NLU
 - What is Rasa Core

## intent : rasa_technical
 - Why python?
 - Is this only for ML experts?
 - How much training data do I need?
 - Where to Start

## intent : rasa_comparison
 - How is Rasa different from other approaches?

And the utters would be:
utter_technical_A1:
  - text: "Because of its ecosystem of machine learning tools. Head over to But I don’t code in python! for details."
utter_technical_A2:
  - text: "You can use Rasa if you don’t know anything about machine learning, but if you do it’s easy to experiment."
utter_technical_A3:
  - text: "You can bootstrap from zero training data by using interactive learning. Try the tutorials!"
 A probabilistic model chooses which action to take, and this can be trained using supervised, reinforcement, or interactive learning."
utter_technical_A5:
  - text: "After going through the Installation, most users should start with Building a Simple Bot. However, if you already have a bunch of conversations you’d like to use as a training set, check the Supervised Learning Tutorial."
utter_whatis_A6:
  - text: "You can think of Rasa NLU as a set of high level APIs for building your own language parser using existing NLP and ML libraries. The setup process is designed to be as simple as possible."
utter_whatis_A7:
  - text: "Rasa Core takes in structured input: intents and entities, button clicks, etc., and decides which action your bot should run next. If you want your system to handle free text, you need to also use Rasa NLU or another NLU tool."

Is that right? But again... I am not sure how I would build the stories. For example would it be like:
## example 1
* rasa_technical
 - utter_technical_A1

## example 2
* rasa_technical
 - utter_technical_A2

But then how does one get correctly chosen when there are two equal options in the story? My only guess would be to extract some entities and use those as examples (e.g. rasa_technical{"technology": "python"})? But that would mean that we need to model each intent to extract entities from them... unless there is a way to use the entire user input (sentence) in the same way as the entities?
Could you possibly share your thoughts or provide a few example stories for the above Q&As?

@akelad ... sorry to insist on this, but I think it will help a lot of people if we have some advise on how this could be done. So just wanted to see if you or anyone from your team (@amn41 @Ghostvv ) had any insights on that?

in order for algorithm to pick utter_technical_A1 or A2 you'd need to add longer stories that would define whether A1 or A2

But this will only work on question answering when drilling down the subject on the same topic. Most of the question answering scenarios (stories) will be just one level: q --> a
What would work is a way that the user's question is tokenised and the tokens are used to determine the answer. At the moment the only way to achieve that would be to try and extract entities and used those as examples for all stories in the user intents. E.g.:
## example 1
* rasa_technical{"technology": "python"}
 - utter_technical_A1

## example 2
* rasa_technical{"subject": "machine learning"})
 - utter_technical_A2

But I think that extracting entities in such generic way might be challenging, as we need to model the entity names in an abstract way to fit all examples. But if there was a generic way to include the tokens/words from the user input then this will influence the utter/answer chosen, without the need to extract them as entities. Unless we can force them into the entity values somehow?

I also like to see some insights from the team about how to solve the QA problem using rasa.

Ok so for the case where you've described above you would indeed probably need separate intents. but you could e.g. define these similarly, like rasa_technical_python, rasa_technical_trainingdata etc. with the tensorflow_embedding pipeline. You would definitely need to provide more examples of NLU data than just the one per each intent

Probably it would be safer to assume that Rasa is not designed for Question Answering yet. The only way that I see this working (probable feature suggestion?), would be to allow for the entire user input/sentence (featurised using word embedding as you suggested) to be used within the different stories (instead of the entities). That way the dialogue flow module (LSTM) will be biased by the additional features from the user input to eventually select the correct utter.
If that is implemented, I think, it will be another major advantage of Rasa over other chatbots!

To be honest I am very tempted to try and see if a workaround where, say I create 10 slots (named as token1 .. token10) and choose the top 10 (up to) most discriminant words from the user input and include those in all my relevant (q&a) stories if that will make a difference. If I have time to do that I will report back.

did you able to find any solution for this..I am looking for same

"would be to allow for the entire user input/sentence (featurised using word embedding as you suggested) to be used within the different stories (instead of the entities)" could you explain what you mean by this?

So my thinking is that if we use KerasPolicy (not just MemoizationPolicy) which is a loopy RNN (i.e. LSTM network in Rasa's case), this accepts as inputs the features generated from the current and previous actions including the entities extracted at each interaction. The entity extraction is very important as this will distinguish the follow up action when the stories contain similar paths, and therefore it will be the only discriminating factor for the decision.
Therefore, if the entities are not extracted we would face a problem where from the same historical dialogue flow we might have two choices, but not indication on which one to take. So we could potentially include as additional information the salient features extracted from the user input. This could be the word embedding features that could be added to the LSTM's input in the same way that the entities would have been added. The result of that would be that the LSTM will have enough information to eventually identify the correct utter (i.e. answer), based on the user's input (i.e. question).
Since at the moment this automatic way to extract additional features from the user input is not available, I was thinking to create 10 slots where I would run my own keyword extraction and fill in those slots with those words. Just to be able to have additional features for the classifier to distinguish the next action/utter.
Does this make sense?

utter_name :
text : whats your name?
then action_listen
it would be name eg :      jack
so i want that text or name(jack) in my name slots
how can we do ?

I'm going to close this issue now since this is more of a discussion than an issue. Please make a new post on our forum for these kinds of questions


Metronome bump launch timeout 1.11

High-level description
What features does this change enable? What bugs does this change fix?
Corresponding DC/OS tickets (obligatory)
These DC/OS JIRA ticket(s) must be updated (ideally closed) in the moment this PR lands:

DCOS_OSS-39620 Bump task launch timeout to match mesos

Checklist for all PRs

[x] Added a comprehensible changelog entry to CHANGES.md or explain why this is not a user-facing change:
[x] Included a test which will fail if code is reverted but test is not. If there is no test please explain here:
[x] Read the DC/OS contributing guidelines
[x] Followed relevant code rules Rules for Packages and Systemd

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[x] Change log from the last version integrated (this should be a link to commits for easy verification and review): N/A
[x] Test Results: N/A
[x] Code Coverage (if available): N/A

@mesosphere-mergebot bump-ee

@mesosphere-mergebot override-status teamcity/dcos/test/azure/arm https://jira.mesosphere.com/browse/DCOS-38027

@orsenthil this bump is really broken and should not be merged! Please close... I'll follow up with a correct bump


Retexrute grass and dirt tiles

About the PR

Retexture grass and dirt tiles. Also replace texture of grass battleground
Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

:cl: Ko4erga

tweak: Grass and dirt tiles retexture.

The way better, than what we have now

Hmmm. I don't dislike them, but they also kind of feel like leaves.

Hmmm. I don't dislike them, but they also kind of feel like leaves.
Though maybe that's not true when they're not in isolation. That is usually the case with tile sprites.

Mmm... I can agree with you, but in-game that's looks normal. idk why :p
I tried to use noise, but it's looks like pixel camouflage. I think it's better to leave it and don't change

Жесть он крут


Support size 0 tensors with parse_example and parse_single_example

Currently, this fails InvalidArgumentError: Name: <unknown>, Feature: a is required but could not be found.:
import tensorflow as tf
sess = tf.InteractiveSession()

features = {'a': tf.FixedLenFeature([0], tf.int64, [])}
serialized = tf.placeholder(tf.string, [])
parsed = tf.parse_single_example(serialized, features)

example_str = tf.train.Example().SerializeToString()
sess.run(parsed['a'], feed_dict={serialized: example_str})

(The same is true for tf.parse_example.)
This sort of thing may seem useless, but can be handy for writing generic code that handles variable sized input (with fixed size for each graph).

This is definitely useful.  Are you interested in piping this through the parser library?

Automatically closing due to lack of recent activity. Thanks!


docker-entrypoint-initdb.d should complain about missing permissions

During the research for that problem I came to the finding that if any files mounted to docker-entrypoint-initdb.d are unreadable to postgres user (e.g. have wrong permissions),  docker-entrypoint.sh just goes ahead and ignores them.
IMHO the entrypoint script should be more verbose in terms of complaining about files being there but having wrong permissions, instead of just passing by and starting up the server.

That is incorrect. Your problem seems to be that it can't even read the directory and thus it can't list the files that are in there (which looks identical to an empty directory with for f in /docker-entrypoint-initdb.d/*;).  We could add a line similar to the mysql image so that the startup fails and prints a reasonable error (https://github.com/docker-library/mysql/pull/453).
This is what happens when the folder is readable and the file is not readable by postgres:
$ ls -lan docker-entrypoint-initdb.d/
total 12
drwxrwsr-x 2 1000 1000 4096 Nov 12 13:54 .
drwxrwsr-x 4 1000 1000 4096 Sep 13  2018 ..
-rwx------ 1 1000 1000 241 Nov 12 13:54 test.sql
docker run -it --rm -v "$PWD"/docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d/ postgres:11
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.

The database cluster will be initialized with locale "en_US.utf8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".

Data page checksums are disabled.

fixing permissions on existing directory /var/lib/postgresql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting dynamic shared memory implementation ... posix
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok

WARNING: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the option -A, or
--auth-local and --auth-host, the next time you run initdb.

Success. You can now start the database server using:

    pg_ctl -D /var/lib/postgresql/data -l logfile start

****************************************************
WARNING: No password has been set for the database.
         This will allow anyone with access to the
         Postgres port to access your database. In
         Docker's default configuration, this is
         effectively any other container on the same
         system.

         Use "-e POSTGRES_PASSWORD=password" to set
         it in "docker run".
****************************************************
waiting for server to start....2019-05-09 23:25:16.854 UTC [44] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2019-05-09 23:25:16.871 UTC [45] LOG:  database system was shut down at 2019-05-09 23:25:16 UTC
2019-05-09 23:25:16.876 UTC [44] LOG:  database system is ready to accept connections
 done
server started

/usr/local/bin/docker-entrypoint.sh: running /docker-entrypoint-initdb.d/test.sql
/docker-entrypoint-initdb.d/test.sql: Permission denied
$ # here it crashed
$ # maybe this case could be improved, but it is not what you saw

And here is when the directory is unreadable:
$ chmod 700 docker-entrypoint-initdb.d/
$ ls -lna docker-entrypoint-initdb.d/
total 12
drwx--S--- 2 1000 1000 4096 Nov 12 13:54 .
drwxrwsr-x 4 1000 1000 4096 Sep 13  2018 ..
-rwx------ 1 1000 1000  241 Nov 12 13:54 test.sql
$ docker run -it --rm -v "$PWD"/docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d/ postgres:11
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.

The database cluster will be initialized with locale "en_US.utf8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".

Data page checksums are disabled.

fixing permissions on existing directory /var/lib/postgresql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting dynamic shared memory implementation ... posix
creating configuration files ... ok
running bootstrap script ... ok
performing post-bootstrap initialization ... ok
syncing data to disk ... ok

WARNING: enabling "trust" authentication for local connections
You can change this by editing pg_hba.conf or using the option -A, or
--auth-local and --auth-host, the next time you run initdb.

Success. You can now start the database server using:

    pg_ctl -D /var/lib/postgresql/data -l logfile start

****************************************************
WARNING: No password has been set for the database.
         This will allow anyone with access to the
         Postgres port to access your database. In
         Docker's default configuration, this is
         effectively any other container on the same
         system.

         Use "-e POSTGRES_PASSWORD=password" to set
         it in "docker run".
****************************************************
waiting for server to start....2019-05-09 23:30:35.380 UTC [44] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2019-05-09 23:30:35.391 UTC [45] LOG:  database system was shut down at 2019-05-09 23:30:35 UTC
2019-05-09 23:30:35.394 UTC [44] LOG:  database system is ready to accept connections
 done
server started

/usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*

2019-05-09 23:30:35.465 UTC [44] LOG:  received fast shutdown request
waiting for server to shut down....2019-05-09 23:30:35.466 UTC [44] LOG:  aborting any active transactions
2019-05-09 23:30:35.469 UTC [44] LOG:  background worker "logical replication launcher" (PID 51) exited with exit code 1
2019-05-09 23:30:35.470 UTC [46] LOG:  shutting down
2019-05-09 23:30:35.487 UTC [44] LOG:  database system is shut down
 done
server stopped

PostgreSQL init process complete; ready for start up.

2019-05-09 23:30:35.597 UTC [1] LOG:  listening on IPv4 address "<IP_ADDRESS>", port 5432
2019-05-09 23:30:35.597 UTC [1] LOG:  listening on IPv6 address "::", port 5432
2019-05-09 23:30:35.599 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2019-05-09 23:30:35.616 UTC [53] LOG:  database system was shut down at 2019-05-09 23:30:35 UTC
2019-05-09 23:30:35.620 UTC [1] LOG:  database system is ready to accept connections
^C2019-05-09 23:30:38.345 UTC [1] LOG:  received fast shutdown request
2019-05-09 23:30:38.346 UTC [1] LOG:  aborting any active transactions
2019-05-09 23:30:38.353 UTC [1] LOG:  background worker "logical replication launcher" (PID 59) exited with exit code 1
2019-05-09 23:30:38.353 UTC [54] LOG:  shutting down
2019-05-09 23:30:38.371 UTC [1] LOG:  database system is shut down

I can sympathize.
Would be nice if /docker-entrypoint-initdb.d/* was special cased because it represents something has gone wrong.
Posted a lousy workaround here.

https://github.com/docker-library/postgres/pull/694 should make the case of "/docker-entrypoint-initdb.d/ being unreadable" easier to see.

This was really fixed by https://github.com/docker-library/postgres/pull/694 :sweat_smile:


Update for 6.3

this plugin its gonna be update to the 6.3??

Yes it will. I'm also planning on doing a release version at the same time.


Add Spreaker from iHeart to supported apps

Spreaker from iHeart is a platform for creating, distributing, and monetizing podcasts. It allows users to host, record, edit, and publish audio content to various podcast directories and social media platforms. Additionally, Spreaker offers analytics tools and advertising opportunities to help podcasters grow their audience and earn revenue.

@dymissy Is Spreaker incorporating these elements from the Podcasting namespace: https://github.com/Podcastindex-org/podcast-namespace/blob/main/docs/1.0.md or from somewhere else?

@dymissy Is Spreaker incorporating these elements from the Podcasting namespace: https://github.com/Podcastindex-org/podcast-namespace/blob/main/docs/1.0.md or from somewhere else?

@dymissy It's unclear if these features listed are all using the podcast namespace or if some may be proprietary.  Let us know if you can.

Yes, if you can do an update that'd be great.


pioneer 20150927 (new formula)

Replacing #329, #377, #388.

Ping. The Pioneer team is looking forward to getting this merged. Their OS X package has been stalled for several months, so it'd be nice to have homebrew as an alternative distribution channel for them. Let me know if there's any issue with this formula.

Many apologies for the delay.  Now our bottling system is acting up, so I need to run this build once more.

Merged in 65db0c19c61992ad73abebcca33b5a4411f720ac 🚀🚀🚀 Thanks so much for your patience and hard work.


Option to "restart" Pods when ExternalSecrets are updated

It is useful to reload the process running inside a container when an ExternalSecret is updated (e.g., username/password rotation).  An API to facilitate this feature has been discussed at length in other places (e.g., https://github.com/kubernetes/kubernetes/issues/24957).  In the meantime, there are some hackish approaches that might work well enough:

Add an option to ExternalSecrets to declare that Pods should be deleted after an ExternalSecret update (not safe for all types of Pod usage)
Add an option to exec a CLI tool in all containers that depend on the ExternalSecret/Secret (exposing exec to the controller seems like a step backwards for security).
...

The first step in making progress on this issue is probably to think through the options above (and maybe others) and augment this issue with a proposal for how to proceed.

Perhaps recommending another tool to handle this is better? Haven't tried it but just came by https://github.com/stakater/Reloader which looks interesting.

Oh, cool.  I'd like that idea, but it won't work for the "Volume frontend" work that's underway, which is going to avoid creating a backing Secret and instead write the secret data to a memory-backed volume.

Closing this as out of scope for KES.
It might be worth bringing up again for ESO


dialer can be injected

this allows the caller to decide things like TCP keepalive
configuration, timeouts, etc. etc.
[#101647542] [#101732194]

Thanks, @vito. We refactored all constructors of Stream Hijacker, added tests, and have now merged to master.

thanks!


Thread-safe C4Document

While we did not succeed in root-causing CBL-583, it is pretty clear what the problem was: the C4Document code was wildly non-thread-safe.  This code should make it thread-safe and also corrects some loosey-goosey visibility.
This is another near-rewrite.  It might make more sense to just read the code, than to try to read the diffs.
I am currently developing a minimal subset of this change, for Mercury.

I forgot that I think we need to make that new Exception() converted to stack trace string as well.

There:  Fixed static analysis and testing.

Umm ... if we happen to have a new mercury build, I think we should get the stack trace in log with error in mercury.


Added account deactivation on spam detection of profile/bio updates

Issue: https://github.com/Metaculus/metaculus/issues/1386
New spam detection flow:

Someone makes an account
They come to edit their profile
When they submit a profile edit (i.e. with the bio section) the information is passed to a spam check
The spam check always passes if the user has been around for at least 7 days
Otherwise GPT Analyzes the bio and decides whether its spam
If spam is detected, there is an alert given the the user on the front end, an email is sent, and the user is logged out after 10sec

Identification rates:

I tested on the ~300 profiles that has at least one comment or prediction and has a bio. The spam detection getting 16% positives on these. A number of these were spam in and of themselves, so I'm putting the true false-positive rate around 2-7%. The first iteration was at ~35%.
I tested on a smaller set of verified spam and the identification is getting 100% on the spam profiles

@lsabor You mentioned that the 2-7% false positive rate was too high. Should I shoot for a 1-3%? There are some profiles which are hard to distinguish from spam. I'm guessing so few people change their bio that this is probably an ok rate (and people will understand why they were flagged when they are). Only 300 have bios of our 210,000 users (granted probably ~50% of those users are spam).
Though more iterations couldn't hurt, just curious how much of a difference it will make since they can reach out if there is a problem.

Also looks like I need to apply flake8 formatting. Let me fix that real quick.

@lsabor Who would I invite to request review? I should invite Sylvain for the final QA review because he assigned the ticket to me, but for the preliminary review, will just anyone from the team do?

@lsabor

I'm generally much more worried about false positive error as it's super inconvenient if the user is legitmate. Can you do more testing on definitely not spam accounts. I'd suggest playing around with the filters on the admin page: https://www.metaculus.com/admin/users/user/ to find ?definitely? not spam accounts with bios. Maybe: https://www.metaculus.com/admin/users/user/?authored_comments=1%2B&bio_length=1%2B&forecasted=Yes&is_active__exact=1

Just make sure you've already read this since you responded to the wrong comment: https://github.com/Metaculus/metaculus/pull/1484#issuecomment-2491865104.
Though generally I'm down to spend another iteration on spam detection. So to clarify then, what false positive rate are you thinking (since I'm guessing current repercussions are low right now)? To do more general testing I'll randomly sample and verify good profiles from the 300 users with bios and >1 comments/forecasts and randomly sample from the 71k users with bios (though most of those will be spam). Then I can get a more direct false positive rate without eyeballing based on ones it got wrong in my local csv.

Added timeout for gpt, improved the gpt prompt to an estimated ~3% false positive rate (which is only for those submitting in the first 7 days of their account being active). There is an estimated 3-20% false negative rate (didn't evaluate this one as deeply).
I moved the spam check to a service file, and moved the users/services.py into users/sservices/common.py. After some research into Dramatiq and a discussion with Hlib, I decided not to make the spam check a dramatic actor to allow for instant feedback to the front end.

Just make sure you've already read...

On second thought, with what you've said I think this failure rate is totally acceptable. Let's not change anything until someone complains.

I should invite Sylvain for the final QA review because he assigned the ticket to me

No need. Sylvain should be informed to do QA on the results live in production (or dev if it's deployed there first). But Sylvain won't do any code review, so pinging him here isn't worth it. Instead, move the ticket to QA and ping Sylvain it's ready for him to close if he's happy with the initial results.


[release/v1.54] Revert "Pin flatcar to 3510.2.8 (#1714)"

What this PR does / why we need it:
This reverts commit b3607e1011b9fe14e60bcf0d20098a1254826589 since this issue is resolved in OSM now and we don't need to pin the image for AWS anymore.
Which issue(s) this PR fixes:

Fixes #
What type of PR is this?

/kind cleanup
Special notes for your reviewer:
Does this PR introduce a user-facing change? Then add your Release Note here:

NONE

Documentation:

NONE

/approve

@embik needs an LGTM

/lgtm
weird, the approving review should have done this ... sorry!


Fix get_unchecked panic by raw pointer calculation

It is related to #878 but doesn't fix it. Miri still complains with this PR.
It fixes the panic on recent toolchains (after https://github.com/rust-lang/rust/pull/92686) when using -Zbuild-std.
$ RUST_BACKTRACE=1 cargo test -p crossbeam-skiplist -Zbuild-std --target x86_64-unknown-linux-gnu --test map -- smoke
    Finished test [unoptimized + debuginfo] target(s) in 0.03s
     Running tests/map.rs (target/x86_64-unknown-linux-gnu/debug/deps/map-509dc855f6125f07)

running 1 test
thread 'smoke' panicked at 'unsafe precondition(s) violated: slice::get_unchecked requires that the index is within the slice', /home/yilin/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panicking.rs:87:58
stack backtrace:
   0: rust_begin_unwind
             at /home/yilin/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/std/src/panicking.rs:575:5
   1: core::panicking::panic_str_nounwind
             at /home/yilin/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/panicking.rs:90:14
   2: <usize as core::slice::index::SliceIndex<[T]>>::get_unchecked::runtime
             at /home/yilin/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/intrinsics.rs:2284:21
   3: <usize as core::slice::index::SliceIndex<[T]>>::get_unchecked
             at /home/yilin/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/slice/index.rs:236:13
   4: core::slice::<impl [T]>::get_unchecked
             at /home/yilin/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/slice/mod.rs:399:20
   5: <crossbeam_skiplist::base::Tower<K,V> as core::ops::index::Index<usize>>::index
             at ./src/base.rs:39:18
   6: crossbeam_skiplist::base::SkipList<K,V>::search_position
             at ./src/base.rs:781:24
   7: crossbeam_skiplist::base::SkipList<K,V>::insert_internal
             at ./src/base.rs:871:26
   8: crossbeam_skiplist::base::SkipList<K,V>::insert
             at ./src/base.rs:1085:9
   9: crossbeam_skiplist::map::SkipMap<K,V>::insert
             at ./src/map.rs:375:20
  10: map::smoke
             at ./tests/map.rs:9:5
  11: map::smoke::{{closure}}
             at ./tests/map.rs:7:12
  12: core::ops::function::FnOnce::call_once
             at /home/yilin/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:507:5
  13: core::ops::function::FnOnce::call_once
             at /home/yilin/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/core/src/ops/function.rs:507:5
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
thread panicked while panicking. aborting.
error: test failed, to rerun pass `-p crossbeam-skiplist --test map`

Caused by:
  process didn't exit successfully: `/home/yilin/Repos/crossbeam/target/x86_64-unknown-linux-gnu/debug/deps/map-509dc855f6125f07 smoke` (signal: 6, SIGABRT: process abort signal)

any updates in tikv ? my tikv6.5 panic with the same panic backtrace in components/cdc, which reference to currency_manager::lock_table::skiplist


not finding files

Workflow version
2024.2
Alfred version
5.5.1
macOS version
13.7.2
Debugger output
[15:21:35.853] Delete Configuration[Script Filter] Queuing argument 'c'
[15:21:35.987] Delete Configuration[Script Filter] Queuing argument 'ch'
[15:21:36.103] Delete Configuration[Script Filter] Queuing argument 'che'
[15:21:36.335] Delete Configuration[Script Filter] Queuing argument 'ches'
[15:21:36.493] Delete Configuration[Script Filter] Queuing argument 'chess'

More details
latest update doesn't find any files

You have to install fd now.

The workflow now requires fd, which can be installed with the Dependencies Manager. First results are a bit slower to show up but more things are caught.


Fix issue #8939

Fixes #8939: Legalize var name when defining a new variable in the scope.

@gmarkall I updated the labels on this one and wanted to ask: is it good to merge now that a test has been added?

@esc I think it's ready for review now that a test has been added - I was just explaining my labelling decision as part of FPOC duties above.

I'm picking this one up now.

@stuartarchibald suggests to take a closer look, I'm moving this back into waiting on reviewer.

Taking a closer look here, it seems like this may not suffice yet.
Using the following test-input:
test = np.array([(1, 2), (2, 3)], dtype=[("[a1", "f8"), ("a2", "f8")])

I.e. inclusion of a square bracket. We get following issue:
'v[a1__28binary_subscr_7' is not a valid parameter name

File "issue_8939.py", line 13:
def f(arr):
    <source elided>
    for k in literal_unroll(fields):
        res = res + np.abs(arr[k]).sum()
        ^

During: lowering "v[a1_$30call_method.8 = arrayexpr(expr=(<ufunc 'absolute'>, [Var(v[a1_$28binary_subscr.7, issue_8939.py:13)]), ty=array(float64, 1d, C))" at /Users/vhaenel/git/numba/issue_8939.py (13)

As an alternative, using main at dd082ca03169382ac7d2ffd7d4711a5d485ccce2 with the revert of https://github.com/numba/numba/commit/c6a25069deabe982bbc589bc98c4290808f8a4e4
diff --git i/numba/core/untyped_passes.py w/numba/core/untyped_passes.py
index f76b2d1b79..d563207cd1 100644
--- i/numba/core/untyped_passes.py
+++ w/numba/core/untyped_passes.py
@@ -906,8 +906,14 @@ class MixedContainerUnroller(FunctionPass):
             new_var_dict = {}
             for name, var in var_table.items():
                 scope = switch_ir.blocks[lbl].scope
-                new_var_dict[name] = scope.define(
-                    f"v{branch_ty}_{name}", var.loc).name
+                try:
+                    scope.get_exact(name)
+                except errors.NotDefinedError:
+                    # is this correct? In case the scope doesn't have the
+                    # variable, we need to define it prior creating new
+                    # copies of it!
+                    scope.define(name, var.loc)
+                new_var_dict[name] = scope.redefine(name, var.loc).name
             replace_var_names(loop_blocks, new_var_dict)

             # clobber the sentinel body and then stuff in the rest

And the reproducer:
from numba import literal_unroll, njit
import numpy as np

test = np.array([(1, 2), (2, 3)], dtype=[("a1[0]", "f8"), ("a2", "f8")])
fields = tuple(test.dtype.fields.keys())

@njit
def f(arr):
    res = 0
    for k in literal_unroll(fields):
        res = res + np.abs(arr[k]).sum()
    return res

print(f(test))

Does yield the correct answer.

As an alternative, using main at dd082ca with the revert of c6a2506

I ran the Numba test-suite locally, and didn't see any failures with this revert.

Removing this from the milestone 0.57.1 again as it has been superseded by: #8998


libdevice not found error for a fresh Careless install

While setting up a dedicated conda environment at S3DF, a compute facility used by LCLS, Fred Poitevin and I encountered the following error when running Careless for the first time:
`Traceback (most recent call last):
File "/sdf/group/lcls/ds/tools/conda_envs/careless/bin/careless", line 8, in
sys.exit(main())
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/careless/careless.py", line 9, in main
run_careless(parser)
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/careless/careless.py", line 53, in run_careless
history = model.train_model(
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/careless/models/merging/variational.py", line 173, in train_model
_history = train_step((self, data))
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/tensorflow/python/util/traceback_utils.py", line 153, in error_handler
raise e.with_traceback(filtered_tb) from None
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/tensorflow/python/eager/execute.py", line 52, in quick_execute
tensors = pywrap_tfe.TFE_Py_Execute(ctx._handle, device_name, op_name,
tensorflow.python.framework.errors_impl.InternalError: Graph execution error:
Detected at node 'StatefulPartitionedCall_24' defined at (most recent call last):
File "/sdf/group/lcls/ds/tools/conda_envs/careless/bin/careless", line 8, in
sys.exit(main())
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/careless/careless.py", line 9, in main
run_careless(parser)
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/careless/careless.py", line 53, in run_careless
history = model.train_model(
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/careless/models/merging/variational.py", line 173, in train_model
_history = train_step((self, data))
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/careless/models/merging/variational.py", line 159, in train_step
history = model.train_step((data,))
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/keras/engine/training.py", line 1054, in train_step
self.optimizer.minimize(loss, self.trainable_variables, tape=tape)
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/keras/optimizers/optimizer.py", line 543, in minimize
self.apply_gradients(grads_and_vars)
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/keras/optimizers/optimizer.py", line 1174, in apply_gradients
return super().apply_gradients(grads_and_vars, name=name)
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/keras/optimizers/optimizer.py", line 650, in apply_gradients
iteration = self._internal_apply_gradients(grads_and_vars)
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/keras/optimizers/optimizer.py", line 1200, in _internal_apply_gradients
return tf.internal.distribute.interim.maybe_merge_call(
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/keras/optimizers/optimizer.py", line 1250, in _distributed_apply_gradients
_fn
distribution.extended.update(
File "/sdf/group/lcls/ds/tools/conda_envs/careless/lib/python3.9/site-packages/keras/optimizers/optimizer.py", line 1245, in apply_grad_to_update_var
return self._update_step_xla(grad, var, id(self._var_key(var)))
Node: 'StatefulPartitionedCall_24'
libdevice not found at ./libdevice.10.bc
[[{{node StatefulPartitionedCall_24}}]] [Op:__inference_train_step_6403]
`

I suspect this is due to a missing package as specified at the end of the TensorFlow installation instructions at https://www.tensorflow.org/install/pip#step-by-step_instructions and will follow the recommendations at the end of section 6 thereof. We'll report back.


Update shared-experiences-in-unity.md

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/shared-experiences-in-unity.md
:white_check_mark:Succeeded
View

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


BIGTOP-3809: Fix Tez deb package build fails

Description of PR
How was this patch tested?
Test installed tez in bigtop/slaves:trunk-ubuntu-20.04:
root@73cf4c494cd2:/# ll /etc/tez/conf
lrwxrwxrwx 1 root root 26 Sep 12 07:24 /etc/tez/conf -> /etc/alternatives/tez-conf/
root@73cf4c494cd2:/# ll /etc/alternatives/tez-conf/
total 12
drwxr-xr-x 2 root root 4096 Sep 12 07:24 ./
drwxr-xr-x 3 root root 4096 Sep 12 07:24 ../
-rw-r--r-- 1 root root  924 Sep 12 07:05 tez-site.xml
root@73cf4c494cd2:/# update-alternatives --list tez-conf
/etc/tez/conf.dist
root@73cf4c494cd2:/# ll /etc/tez/conf.dist
total 12
drwxr-xr-x 2 root root 4096 Sep 12 07:24 ./
drwxr-xr-x 3 root root 4096 Sep 12 07:24 ../
-rw-r--r-- 1 root root  924 Sep 12 07:05 tez-site.xml

For code changes:

[ ] Does the title or this PR starts with the corresponding JIRA issue id (e.g. 'BIGTOP-3638. Your PR title ...')?
[ ] Make sure that newly added files do not have any licensing issues. When in doubt refer to https://www.apache.org/licenses/

+1, tested on Debian 11.
$ curl -sL https://github.com/apache/bigtop/pull/1006.patch | git apply
$ ./gradlew tez-clean tez-pkg repo -Dbuildwithdeps=true

...

BUILD SUCCESSFUL in 3m 53s
34 actionable tasks: 34 executed

$ cd provisioner/docker
$ ./docker-hadoop.sh -d -C config_debian-11.yaml -F docker-compose-cgroupv2.yml -r file:///bigtop-home/output/apt -G -k hdfs,yarn,tez -s tez -c 3

...

BUILD SUCCESSFUL in 1m 30s
30 actionable tasks: 6 executed, 24 up-to-date

Merged into master. Thank you for fixing this @kevinw66!


Improve e2e test coverage for stringified scripts

Combined with https://github.com/puppeteer/replay/issues/268 and https://github.com/puppeteer/replay/blob/main/test/lighthouse/lighthouse-e2e.test.ts#L131 we should create e2e tests that test the stringified output to make sure the scripts are actually executable. cc @jecfish @jrandolf

I think that's a good idea. I want to do something similar for Testing Library Recorder Extension. I've also thought about running Prettier and TypeScript on the emitted output and using snapshot to automate managing changes in output.

#318 #
Duplicate of #

#329

Combined with #268 and https://github.com/puppeteer/replay/blob/main/test/lighthouse/lighthouse-e2e.test.ts#L131 we should create e2e tests that test the stringified output to make sure the scripts are actually executable. cc @jecfish @jrandolf

I have added a so-called "everything" test that tries to test every possible replay feature on a single site: https://github.com/puppeteer/replay/blob/main/test/everything.test.ts The site produces the log based on the actions and it's expected that any kind of runner results in the exactly same log. Still we need to add coverage for iframes and targets and re-package the test so that it can be easily integrated into other projects.


isIdentical for float and double

What's the difference from is?

Issue 3632 hasn't been fixed, so floating point is currently fowards to == and mis-compares NaN and +-0.

The current failure should probably be fixed by templatizing isIdentical and converting the smaller type to the larger type if they don't match.

Guess the focus should go in the fix, not in adding a library artifact for working around it.

So isIdentical should be deprecated in the future?

Only if Walter can be convinced that NaN payload should be tracked at compile time/mangled.


Add back in padding around video

@antingshen  this is hard-ish. Do we fore sure need this for mturk launch? Can we do without it?

Ok


Handle more open/save error codes with custom notifications

Adds several more codes to the handling of read/write errors that have been reported via notifications.
Open

[x] EIO
[x] ENOTCONN
[x] ENXIO
[x] UNKNOWN

Save

[x] EINTR
[x] EIO
[x] ENOTSUP
[x] ESPIPE

Refs #2539
Closes #4467
Closes #6348
Closes #6799
Closes #7203
Refs #7649
Closes #7651
Closes #7654
Closes #7780
Closes https://github.com/atom/tree-view/issues/412

Sweeping. :+1:


Departments are not displayed in alphabetical order

Automatically created from Linear (#12)
via LinearSync

Comment from Linear (#12)
Currently, the departments are returned as is from our GraphQL query. We need to sort it on the serverless function.

via LinearSync


Does phaser support transparency info from video?

Hi all,
Does phaser support transparency info from video?
thanks

Yes, but it's nothing to do with Phaser. Only webm videos can include alpha and only Chrome supports webm with alpha at the moment.

hi @photonstorm, I want to implement a custom component to support transparent for video
1, in chrome, I will use webm.
2, in other browsers, I will use mp4  just like http://jakearchibald.com/scratch/alphavid/
do you have any suggest how to do it?

If you view source on the alphavid page you'll see that they draw the video to a canvas, then process every single pixel of the canvas extracting  a colour value and drawing it out again. This is an incredibly expensive way of supporting alpha - it's also why they use such a tiny video file for the demonstration.
Even so, to replicate it just use a BitmapData and essentially exactly the same code as they're using, using the BitmapData's context to draw to instead.

yes, I know how does it work. I just want to have the suggestion from you about how to compatible with Phaser since I will use Phaser to handle all the other things in my games.
thanks.


Add chart for createdb job, bump trillian version.

Signed-off-by: Ville Aikas<EMAIL_ADDRESS>
Description of the change
Add a chart inside trillian for createdb which will initialize a Trillian DB schema.

Existing or Associated Issue(s)

Additional Information

Checklist

[ x ] Chart version bumped in Chart.yaml according to semver. Where applicable, update and bump the versions in any associated umbrella chart
[ x ] Variables are documented in the values.yaml and added to the README.md. The helm-docs utility can be used to generate the necessary content. Use helm-docs --dry-run to preview the content.
[ ] JSON Schema generated.
[ ] List tests pass for Chart using the Chart Testing tool and the ct lint command.

to confirm, there is no harm rerunning the createdb job when there is one already right? or should we add a flag to toggle the createdb job?

Correct, it will simply check the tables and if they exist, it doesn't do anything.
https://github.com/sigstore/scaffolding/blob/main/cmd/trillian/createdb/main.go
But, to be extra super duper sure, I'll add a flag for toggling it!


Create Component Flow

Closes #24
Add create component flow.

Will display a 'Create Component' button under the local components tree view if no local components are found.
Provides an interface for the user to submit component name, version, provider, and scheme.
The component is created in the current workspace under component-archive.
Adds a Create Component command via the command palette.

I think it would be good if we can add resources, sources and references from this view directly.
Then we have a really nice workflow for creating a component version.
I'm think vscode has a built in file selector?

@phoban01 yes, that is the next step, there is another ticket for that (#25). Would be good to merge this and then I can start on that ticket.

@phoban01 updated to address your suggestions!


Obsoletion: a few more process-y function terms

protein tagging - this describes the process of attaching a
specific molecule to a protein. The appropriate function
would be 'protein binding'.
protein tagging activity ; GO:0008638
Covalent addition of a specific tagging molecule to a protein,
targeting the tagged protein for some fate e. g.
degradation.
-->'protein modification ; GO:0006464' or children
protein binding ; GO:0005515 or children
protein degradation tagging activity ; GO:0000211
Covalent addition of polyubiquitin to another protein,
targeting the tagged protein for destruction.
-->modification-dependent protein catabolism ; GO:
0019941 or children
protein ubiquitination during ubiquitin-dependent protein
catabolism ; GO:0042787
protein binding ; GO:0005515 or children
toxin activity ; GO:0015070
Acts as to cause injury to other living organisms.
-->This is a classification, not a function. Toxins work in
many different ways, but appropriate replacements would
be:
pathogenesis ; GO:0009405
toxin receptor binding ; GO:0050NEW
'Interacting selectively with a toxin receptor.'
surfactant activity ; GO:0019214 [0 annotations]
The action of reducing the surface tension of a liquid.
-->As defined, this is an activity only possessed by inorganic
chemicals, eg. detergents and emulsifiers. There are no
proteins that we could find which act as surfactants.
Therefore recommend obsoleting the term; if a protein is
found that does this job, it can be reinstated or a more
appropriate term created.
Reported by: girlwithglasses
Original Ticket: "geneontology/ontology-requests/1442":https://sourceforge.net/p/geneontology/ontology-requests/1442

thanks www.movied.org


Variable vibration intensity from vibrotactors during session

During walking/standing sessions, the motors in the vibrotactors were very noticeably increasing in intensity and returning to the set value. This happened intermittently, was very sudden, and would cycle in/out in somewhat regular intervals after starting.
The severity of the vibration fluctuations also dropped significantly when the lab's all-in-one PC was turned to face the treadmill, but didn't go away completely. Maybe it's related to Bluetooth range? It was verified during calibration after the issue occurred that the vibrotactors' intensity was higher than at the session start as well, with the right foot being noticeable at a threshold of 20/255 even with a 50 Ohm resistor connected to it.
Log file is pasted below:
STARTUP: Wed Aug  3 12:12:10 2022
STARTUP: Manufacturer - Dell Inc.
STARTUP: Model - OptiPlex 7450 AIO
STARTUP: Name - MMIATPC2
STARTUP: NumberOfProcessors - 1
STARTUP: SystemType - x64-based PC
STARTUP: SystemFamily - OptiPlex
STARTUP: Physical Memory Total - 15.70GB
STARTUP: Physical Memory Available - 8.22GB
STARTUP: Physical Memory Used - 7.48GB
STARTUP: Physical Memory Percentage - 47.6%
STARTUP: Swap Memory Total - 2.38GB
STARTUP: Swap Memory Free - 1.42GB
STARTUP: Swap Memory Used - 976.10MB
STARTUP: Swap Memory Percentage - 40.1%
STARTUP: C:\Users\gaitlab\AppData\Local\Programs\cometrics\1.3.0
INFO: imageio_ffmpeg exe location - C:\Users\gaitlab\AppData\Local\Programs\cometrics\1.3.0\external_bin\ffmpeg\ffmpeg-win64-v4.2.2.exe
INFO: C:\Users\gaitlab\AppData\Local\Programs\cometrics\1.3.0\external_bin\ffmpeg\ffmpeg-win64-v4.2.2.exe
INFO: C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\S02.json C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\KSF\Vibrotactor KSF_7-26-2022.json C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Primary C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Reliability
INFO: ('Purisa', 16) ('Purisa', 14) 70 1920 1080
INFO: Thresholds ['', '', '']
No handles with labels found to put in legend.
No handles with labels found to put in legend.
No handles with labels found to put in legend.
INFO: Vibrotactors not calibrated!
INFO: Woodway is not calibrated!
INFO: Number of fields: 10
INFO: Number of frames: 3
INFO: Vibrotactor array connected!
INFO: Vibrotactor array connected!
INFO: VTA Left - VibrotactorArraySide.RIGHT VTA Right - VibrotactorArraySide.LEFT
INFO: VTA Left - VibrotactorArraySide.LEFT VTA Right - VibrotactorArraySide.RIGHT
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: Disconnected from vibrotactor: <adafruit_ble.BLEConnection object at 0x000001A9CF6B6AC0>
INFO: Disconnected from vibrotactor: <adafruit_ble.BLEConnection object at 0x000001A9CF6D1610>
INFO: Saved session file to: C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Primary\115_1_0811Aug032022.json
INFO: Wed Aug  3 14:29:47 2022
INFO: Process Memory - 273.44 MB
INFO: RAM Usage - 47.9%
INFO: Physical Memory Used - 7.52GB
INFO: Physical Memory Percentage - 47.9%
INFO: Swap Memory Used - 1019.12MB
INFO: Swap Memory Percentage - 41.9%
INFO: C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\S02.json C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\KSF\Vibrotactor KSF_7-26-2022.json C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Primary C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Reliability
INFO: ('Purisa', 16) ('Purisa', 14) 70 1920 1080
INFO: Thresholds [70, 148, 1.6749999999999998]
No handles with labels found to put in legend.
No handles with labels found to put in legend.
No handles with labels found to put in legend.
INFO: Vibrotactors already calibrated - Right: 70 Left: 148 Calibrated: True
INFO: Woodway calibrated already - Thresh: 1.6749999999999998 Calibrated: True
INFO: Number of fields: 10
INFO: Number of frames: 3
INFO: Loading primary data session 1
INFO: Vibrotactor array connected!
INFO: Vibrotactor array connected!
INFO: VTA Left - VibrotactorArraySide.LEFT VTA Right - VibrotactorArraySide.RIGHT
INFO: VTA Left - VibrotactorArraySide.LEFT VTA Right - VibrotactorArraySide.RIGHT
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: Disconnected from vibrotactor: <adafruit_ble.BLEConnection object at 0x000001A9D309C880>
INFO: Disconnected from vibrotactor: <adafruit_ble.BLEConnection object at 0x000001A9D3052C10>
INFO: Saved session file to: C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Primary\100_2_0810Aug032022.json
INFO: Wed Aug  3 14:42:40 2022
INFO: Process Memory - 302.44 MB
INFO: RAM Usage - 48.7%
INFO: Physical Memory Used - 7.65GB
INFO: Physical Memory Percentage - 48.7%
INFO: Swap Memory Used - 1.03GB
INFO: Swap Memory Percentage - 43.2%
INFO: C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\S02.json C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\KSF\Vibrotactor KSF_7-26-2022.json C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Primary C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Reliability
INFO: ('Purisa', 16) ('Purisa', 14) 70 1920 1080
INFO: Thresholds [70, 148, 1.6749999999999998]
No handles with labels found to put in legend.
No handles with labels found to put in legend.
No handles with labels found to put in legend.
INFO: Vibrotactors already calibrated - Right: 70 Left: 148 Calibrated: True
INFO: Woodway calibrated already - Thresh: 1.6749999999999998 Calibrated: True
INFO: Number of fields: 10
INFO: Number of frames: 3
INFO: Vibrotactor array connected!
INFO: Vibrotactor array connected!
INFO: VTA Left - VibrotactorArraySide.LEFT VTA Right - VibrotactorArraySide.RIGHT
INFO: VTA Left - VibrotactorArraySide.LEFT VTA Right - VibrotactorArraySide.RIGHT
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: No key events returned
INFO: Disconnected from vibrotactor: <adafruit_ble.BLEConnection object at 0x000001A9D39B8820>
INFO: Disconnected from vibrotactor: <adafruit_ble.BLEConnection object at 0x000001A9D3A1F550>
INFO: Saved session file to: C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Primary\85_3_0885Aug032022.json
INFO: Wed Aug  3 14:57:32 2022
INFO: Process Memory - 320.09 MB
INFO: RAM Usage - 48.7%
INFO: Physical Memory Used - 7.64GB
INFO: Physical Memory Percentage - 48.7%
INFO: Swap Memory Used - 1.01GB
INFO: Swap Memory Percentage - 42.5%
INFO: C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\S02.json C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\KSF\Vibrotactor KSF_7-26-2022.json C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Primary C:\cometrics\1.1.4\Projects\OneDrive - University of Nebraska Medical Center\Vibrotactor Project 1 (IRB#0800-21-EP)\Adult Neurotypical\S02\Data Collection Assessment\Raw Data\Reliability
INFO: ('Purisa', 16) ('Purisa', 14) 70 1920 1080
INFO: Thresholds [70, 148, 1.6749999999999998]
No handles with labels found to put in legend.
No handles with labels found to put in legend.
No handles with labels found to put in legend.
INFO: Vibrotactors already calibrated - Right: 70 Left: 148 Calibrated: True
INFO: Woodway calibrated already - Thresh: 1.6749999999999998 Calibrated: True
INFO: Number of fields: 10
INFO: Number of frames: 3
INFO: Vibrotactor array connected!
INFO: Vibrotactor array connected!
INFO: VTA Left - VibrotactorArraySide.LEFT VTA Right - VibrotactorArraySide.RIGHT
INFO: VTA Left - VibrotactorArraySide.LEFT VTA Right - VibrotactorArraySide.RIGHT

This has been determined to be an issue with the Bluetooth device battery and not an issue with cometrics.  Closing for now.


Problem to render italic

I'm having trouble rendering text in italics:

Hello @guedesfelipe 👋
You likely want to install the tmux-256color terminal description:
$ /*/*/Cellar/ncurses/6.3/bin/infocmp -x tmux-256color >tmux-256color.src
$ sudo /usr/bin/tic -x tmux-256color.src

Then relaunch tmux.
See https://github.com/tmux/tmux/issues/3218

Hello @guedesfelipe 👋
You likely want to install the tmux-256color terminal description:
$ /*/*/Cellar/ncurses/6.3/bin/infocmp -x tmux-256color >tmux-256color.src
$ sudo /usr/bin/tic -x tmux-256color.src

Then relaunch tmux.
See tmux/tmux#3218

Hello @gpakosz 👋
Tnx a lot for the reply!
I did that and it worked, but i needed to change my config with this:
set -g default-terminal "tmux-256color" # colors!
instead of
set -g default-terminal "screen-256color" # colors!

@guedesfelipe You don't need to change anything.
.tmux.conf contains
set -g default-terminal "screen-256color"
if 'infocmp -x tmux-256color > /dev/null 2>&1' 'set -g default-terminal "tmux-256color"'

You just need to quit tmux entirely and relaunch it

@guedesfelipe You don't need to change anything.
.tmux.conf contains
set -g default-terminal "screen-256color"
if 'infocmp -x tmux-256color > /dev/null 2>&1' 'set -g default-terminal "tmux-256color"'

You just need to quit tmux entirely and relaunch it

You're right, my config was outdated. Now is updated! Tnx so much for the reply!


V1.9.0

Checklist

[ ] Used a fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@jakirkham as I do not have permission to change the bot's PR I created that one with the suggestions.
After we integrate this PR we might integrate this one as well #18

Sounds good. Could you please fix the merge conflicts. Then we can merge 🙂

Sounds good. Could you please fix the merge conflicts? Then we can merge slightly_smiling_face

Fixed!

@conda-forge-admin , please rerender


feat(tooling): terraform initial setup

DO NOT MERGE
Describe your changes

Issue ticket number and link
Type of change 🧩

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] Documentation update
[ ] Other (please explain in the description section above)

Checklist before requesting a review

[ ] I have performed a self-review of my own code
[ ] I have double checked this work does not include any hardcoded secrets or passwords
[ ] I have made corresponding changes to the documentation
[ ] I have provided details on how I have tested my code
[ ] I have referenced the ticket number above
[ ] I have provided a description of the ticket
[ ] I have included unit tests to cover any testable code changes

Superseded by other PRs.


chore: bdd-spring-1574883744 to 0.0.1

chore: Promote bdd-spring-1574883744 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Add logout functionality

Requests sent to /logout delete the current session from the database and return the user to the login page.

Addresses (#3, #8)


EX era bug fixes

fixing mysterious fossil from sandstorm

I forgot to label this most recent change
its making it so when blastoise ex uses energy rain it correctly detects the attachment is coming from the hand


[RESOLVED] Interface eth0(): High error rate (>2 for 5m)

Problem started at 10:15:29 on 2023.06.05
Problem name: Interface eth0(): High error rate (>2 for 5m)
Host: S100-Primario
Severity: Warning
Operational data: errors in: 4, errors out: 0
Original problem ID: 23388
Event details in Zabbix: http://<IP_ADDRESS>/tr_events.php?triggerid=23483&eventid=23388

Problem has been resolved in 6m 0s at 10:21:29 on 2023.06.05
Problem name: Interface eth0(): High error rate (>2 for 5m)
Host: S100-Primario
Severity: Warning
Original problem ID: 23388


titanfall/viper: update to 1.12.1

Updates Viper to the latest version.

Northstar Proton doesn't build anymore either, but it seems defunct anyways.


Strange behavior regarding html tag text

While www.yahoo.com will return perfectly as
www.yahoo.com
www.yahoo.com goes strangely and show
www.yahoo.com
This might be a minor problem, but it's bugging me hard.

This is a symptom of using the http:// protocol. When http:// is present, linkify will interpret everything that follows as a URL, up to the next whitespace character or another appropriate delimiter. This is mainly to support custom internal protocols such as .dev top-level domains. Browsers like Chrome do this as well (e.g., when differentiating between URLs and search requests).
I'd consider this a minor issue, but pull requests are welcome!

I suggest using linkify-html if your input string has existing HTML to avoid this issue


Getting Started with Object Oriented PHP 8

We ask that you please be patient as our team works through approving and publishing all articles/tutorials in a timely manner. Allow 1-3 days for a topic to be reviewed and/or approved - allow 3-7 days for an articles to be reviewed and/or published.
Be sure to visit our Resources Page for tools, resources, and example articles to go over.
NOTE: (Please ensure that you have only one open issue + linked pull request at a time. This will ensure that we complete the article in a timely manner from inception to publishing.)
NOTE: We tend to stray away or tend not to publish reviews/comparisons of commercial product offerings.
We're looking for the first 2-3 paragraphs of the article that appropriately summarize what your article will be about.
Proposed title of article
Getting Started with Object Oriented PHP 8
Introduction paragraph (2-3 paragraphs):
We can imagine our universe made of different objects like sun, earth, moon etc. Similarly we can imagine our car made of different objects like wheel, steering, gear etc. Same way there is object oriented programming concepts which assume everything as an object and implement a software using different objects.
This PHP OOP series helps you master Object-oriented Programming in PHP.
PHP introduced object-oriented programming features since version 5.0. Object-Oriented programming is one of the most popular programming paradigms based on the concept of objects and classes.
PHP OOP allows you to structure a complex application into a simpler and more maintainable structure.
Key takeaways:
Class − This is a programmer-defined data type, which includes local functions as well as local data. You can think of a class as a template for making many instances of the same kind (or class) of object.
Object − An individual instance of the data structure defined by a class. You define a class once and then make many objects that belong to it. Objects are also known as instance.
Member Variable − These are the variables defined inside a class. This data will be invisible to the outside of the class and can be accessed via member functions. These variables are called attribute of the object once an object is created.
Member function − These are the function defined inside a class and are used to access object data.
Inheritance − When a class is defined by inheriting existing function of a parent class then it is called inheritance. Here child class will inherit all or few member functions and variables of a parent class.
Parent class − A class that is inherited from by another class. This is also called a base class or super class.
Child Class − A class that inherits from another class. This is also called a subclass or derived class.
References:
Please list links to any published content/research that you intend to use to support/guide this article.
Templates to use as guides

How To Guide Template
Software Review Template
Tutorial Template

@TheresaAtieno
Good afternoon and thank you for submitting your article for publishing.
Your article has been entered into our queue and should be reviewed (and published pending any changes) as soon as a peer reviewer is finished with the ones in the queue before it. 🚀
Thank you.

Thank you for submitting your topic. @TheresaAtieno
After some careful consideration, it struck us that this topic may be a bit over-saturated throughout other blog sites and official documentation.
We believe this is the best way for students to build a great portfolio (for potential employers) is by building what does not exist and what can provide the most value.
Please feel free to suggest an alternate topic to explore. 🚀


Reporting error caused by dependencies on external libararies: "cachecontrol" and "msgpack"

[READ] Step 1: Are you in the right place?

For issues or feature requests related to the code in this repository
file a Github issue.

If this is a feature request make sure the issue title starts with "FR:".

For general technical questions, post a question on StackOverflow
with the firebase tag.
For general Firebase discussion, use the firebase-talk
google group.
For help troubleshooting your application that does not fall under one
of the above categories, reach out to the personalized
Firebase support channel.

[REQUIRED] Step 2: Describe your environment

Operating System version: macos catalina 10.15.2
Firebase SDK version: not sure how to find this
Library version: 3.0.0
Firebase Product: auth(auth, database, storage, etc)

[REQUIRED] Step 3: Describe the problem
Steps to reproduce:
What happened? How can we make the problem occur?
It seems firebase_admin_python's dependency on cachecontrol is causing this problem. Basically what I understand is as follows:

firebase-admin-python is dependent on cachecontrol library.
cachecontrol is dependent on msgpack which seems to have deprecated "encoding" parameter in msgpack.loads() method in its recent release (v1.0.0rc1) 10 days ago.
fix has been merged to cachecontrol, but there seem to be no releases since 2018.
so if I pipenv-install firebase-admin-python, cachecontrol==0.12.5 is installed; a version without the fix.
hence the error below. See the error log.

related links that might help you understand the problem
DeprecationWarning in use of msgpack #198
issue related to above
This could be a description, log/console output, etc.
# error.log
django_1    |   File "/usr/local/lib/python3.8/site-packages/django/core/handlers/exception.py", line 34, in inner
django_1    |     response = get_response(request)
django_1    |   File "/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py", line 115, in _get_response
django_1    |     response = self.process_exception_by_middleware(e, request)
django_1    |   File "/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py", line 113, in _get_response
django_1    |     response = wrapped_callback(request, *callback_args, **callback_kwargs)
django_1    |   File "/usr/local/lib/python3.8/contextlib.py", line 75, in inner
django_1    |     return func(*args, **kwds)
django_1    |   File "/usr/local/lib/python3.8/site-packages/django/views/decorators/csrf.py", line 54, in wrapped_view
django_1    |     return view_func(*args, **kwargs)
django_1    |   File "/usr/local/lib/python3.8/site-packages/rest_framework/viewsets.py", line 114, in view
django_1    |     return self.dispatch(request, *args, **kwargs)
django_1    |   File "/usr/local/lib/python3.8/site-packages/rest_framework/views.py", line 505, in dispatch
django_1    |     response = self.handle_exception(exc)
django_1    |   File "/usr/local/lib/python3.8/site-packages/rest_framework/views.py", line 465, in handle_exception
django_1    |     self.raise_uncaught_exception(exc)
django_1    |   File "/usr/local/lib/python3.8/site-packages/rest_framework/views.py", line 476, in raise_uncaught_exception
django_1    |     raise exc
django_1    |   File "/usr/local/lib/python3.8/site-packages/rest_framework/views.py", line 493, in dispatch
django_1    |     self.initial(request, *args, **kwargs)
django_1    |   File "/usr/local/lib/python3.8/site-packages/sentry_sdk/integrations/django/__init__.py", line 275, in sentry_patched_drf_initial
django_1    |     return old_drf_initial(self, request, *args, **kwargs)
django_1    |   File "/usr/local/lib/python3.8/site-packages/rest_framework/views.py", line 410, in initial
django_1    |     self.perform_authentication(request)
django_1    |   File "/usr/local/lib/python3.8/site-packages/rest_framework/views.py", line 324, in perform_authentication
django_1    |     request.user
django_1    |   File "/usr/local/lib/python3.8/site-packages/rest_framework/request.py", line 220, in user
django_1    |     self._authenticate()
django_1    |   File "/usr/local/lib/python3.8/site-packages/rest_framework/request.py", line 373, in _authenticate
django_1    |     user_auth_tuple = authenticator.authenticate(self)
django_1    |   File "/usr/local/lib/python3.8/site-packages/drf_firebase/authentication.py", line 39, in authenticate
django_1    |     return self.authenticate_credentials(firebase_token)
django_1    |   File "/code/apps/firebase_auth/authentication.py", line 25, in authenticate_credentials
django_1    |     decoded_token = firebase_auth.verify_id_token(
django_1    |   File "/usr/local/lib/python3.8/site-packages/firebase_admin/auth.py", line 177, in verify_id_token
django_1    |     verified_claims = token_verifier.verify_id_token(id_token)
django_1    |   File "/usr/local/lib/python3.8/site-packages/firebase_admin/_token_gen.py", line 234, in verify_id_token
django_1    |     return self.id_token_verifier.verify(id_token, self.request)
django_1    |   File "/usr/local/lib/python3.8/site-packages/firebase_admin/_token_gen.py", line 328, in verify
django_1    |     verified_claims = google.oauth2.id_token.verify_token(
django_1    |   File "/usr/local/lib/python3.8/site-packages/google/oauth2/id_token.py", line 121, in verify_token
django_1    |     certs = _fetch_certs(request, certs_url)
django_1    |   File "/usr/local/lib/python3.8/site-packages/google/oauth2/id_token.py", line 95, in _fetch_certs
django_1    |     response = request(certs_url, method="GET")
django_1    |   File "/usr/local/lib/python3.8/site-packages/google/auth/transport/requests.py", line 168, in __call__
django_1    |     response = self.session.request(
django_1    |   File "/usr/local/lib/python3.8/site-packages/requests/sessions.py", line 533, in request
django_1    |     resp = self.send(prep, **send_kwargs)
django_1    |   File "/usr/local/lib/python3.8/site-packages/requests/sessions.py", line 646, in send
django_1    |     r = adapter.send(request, **kwargs)
django_1    |   File "/usr/local/lib/python3.8/site-packages/cachecontrol/adapter.py", line 44, in send
django_1    |     cached_response = self.controller.cached_request(request)
django_1    |   File "/usr/local/lib/python3.8/site-packages/cachecontrol/controller.py", line 145, in cached_request
django_1    |     resp = self.serializer.loads(request, cache_data)
django_1    |   File "/usr/local/lib/python3.8/site-packages/cachecontrol/serialize.py", line 97, in loads
django_1    |     return getattr(self, "_loads_v{}".format(ver))(request, data)
django_1    |   File "/usr/local/lib/python3.8/site-packages/cachecontrol/serialize.py", line 182, in _loads_v4
django_1    |     cached = msgpack.loads(data, encoding="utf-8")
django_1    |   File "msgpack/_unpacker.pyx", line 144, in msgpack._cmsgpack.unpackb
django_1    | TypeError: unpackb() got an unexpected keyword argument 'encoding'

I am running django/nginx in docker container with docker-compose. Funny this is if I send the request with firebase token in header directly to django container, this error does not show up. This error only arises if I send the request to nginx container which acts as proxy.
Any plans to fix this? in the meantime how should ideas for quick fix before next release?
Relevant Code:
// TODO(you): code here to reproduce the problem

rolling-back and fixing msgpack = "==0.6.2" will do for now.

This issue is resolved as maintainer of cachecontrol has just releases updates.


Update sbt-ghpages to 0.7.0

Updates com.typesafe.sbt:sbt-ghpages from 0.6.3 to 0.7.0.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.typesafe.sbt", artifactId = "sbt-ghpages" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "com.typesafe.sbt", artifactId = "sbt-ghpages" }
}]

labels: sbt-plugin-update, early-semver-major, semver-spec-minor, commit-count:1

Superseded by #337.


Mixer EL should support < and > operators

Describe the feature request
Currently the Mixer EL only supports operators that check for equality (or inequality).
It would be good if there were also operators to compare two values for greater than and less than, i.e. < and >.
Maybe even <= and >=.
Describe alternatives you've considered
There are no alternatives to my knowledge.
Additional context
{{ Add any other context about the feature request here }}

Created #10086 to add this.


Add binary support

This will support binary data.
@app.route('/upload', methods=['POST'],
        content_types=['application/octet-stream'],
        binary_support=True)
def upload:
    # Body is binary data.
    body = app.current_request.raw_body
    # Use boto3 s3 client
    s3.put_object(
        Bucket=S3_BUCKET,
        Key=KEY,
        Body=body,
        ContentType='application/octet-stream'
    )
    return {}

https://aws.amazon.com/jp/about-aws/whats-new/2016/11/binary-data-now-supported-by-api-gateway/

Will this cover binary responses as well? For example, a dynamically generated image.

@mihow
Yes.
However a client needs to specify the content_types specified in the accept header.
For example,
when specified content_types=['image/png'] binary_support=True in the @app.route() entry,
a client needs to attach an 'Accept: image/png' header in request.

Thank you @haginaga! I will try this.

Current coverage is 70.84% (diff: 85.71%)

Merging #210 into master will increase coverage by 0.24%

@@             master       #210   diff @@
==========================================
  Files            12         12
  Lines          1480       1506    +26
  Methods           0          0
  Messages          0          0
  Branches        191        198     +7
==========================================
+ Hits           1045       1067    +22
- Misses          384        386     +2
- Partials         51         53     +2

Powered by Codecov. Last update 79560c8...2113186

Any news on merging this?

Awesome, thanks for the pull request.  Taking a look at this now.

@haginaga I'd like to this merged so I'm happy to take this PR and incorporate my remaining feedback.
Let me know if you're working on this so we don't duplicate effort, but otherwise I'll start making changes.

@jamesls I'm sorry I did not reply.
I have been busy here for several weeks and I can not code it. You may start changing.

Would love to see this merged, if possible...

Looking forward to getting this merged.    Thanks!

I post new PR #286 on Chalice version 0.7.0.
I close this PR.


Update voterBot.js

This happens to be something purely done for fun.

@tellafriend You put your posting key in this PR. I suggest you to delete your branch and change your Steem password.


Dashboard App user access stats

Describe the feature request.
Provide a way for dashboard app owners to view timing and frequency stats of user access, and the access log of those who access
Describe the context.
Owner of the probation staffing dashboard app, wanting to view user stats and logs
Value / Purpose
Would provide insight into app user data to most effectively prioritise development and management of the app and the service it provides
User Types
Application owner

Request Forum: Tactical solution is to use the user object and output this to logs.  Currently, AP does not contain any information about App users.  This has been request in the past.  This request will be taken to refinement.


Restore scroll position on reload

See https://github.com/next-theme/hexo-theme-next/pull/74#issuecomment-827625957 for details.

Just found a similar https://github.com/nuxt/nuxt.js/pull/5080, except that the load event is not needed here.
For now they use it in:
https://github.com/nuxt/nuxt.js/blob/8e2cad5a8fd7c4fa731fea92d762b650ee5ce095/packages/vue-app/template/router.scrollBehavior.js#L8-L22


Can I upload folder using elementHandle.uploadFile() in headless mode?

@aslushnikov please go through this.

I seem to be able to, though I think I'm having trouble with race conditions afterwards. I think puppeteer may not be waiting for the upload to finish.


Update financial_systems_access_policy.md

Suggestions from Andrew Wetmore (andreww), editor for the Infrastructure team.
Line 16: removed comma after "Foundation"
line 17: information for => information about
line 18: removed comma after "privacy"
line 19: moved commas to improve readability; removed redundant "that"
line 29: removed final period so this item matches the others in this list.
line 31: removed unneeded comma
line 40: added comma after "frequently"
line 55: treasurer's => Treasurer's
line 64: added final period.
line 69: with minimum a => with the minimum
line 70: Removed redundant "For example".
line 72: under => on

Thanks for the improvements!


Failed inventory transactions when editing a book

When editing a page in a book & quil, it sends the BookEdit packet as well as a normal inventory transaction with 3 actions. Dragonfly currently expects only 2 actions for normal transactions, which causes it to fail and produce the following error
DEBU[0067] failed processing packet from <IP_ADDRESS>:61419 (TwistedAsylumMC): InventoryTransaction: failed verifying actions in Normal transaction: expected two actions for dropping an item, got 3 ```

Does the book editing not actually work? Or does it just only send this message while still working?

Closing this issue as discussed in the Discord. This is a debug message that doesn't otherwise affect or break the functionality, so it is safe to ignore.


[Feature Request] Variable group linked to Azure Key Vault keys

Variable group linked to Azure Key Vault keys would be a great addition as well
Originally posted by @LaurentLesle in https://github.com/Azure/azure-devops-cli-extension/issues/639#issuecomment-498039169

For clarification - there are no documented APIs to support this and we are working with the stakeholder to get an estimate on timeline. Will keep this thread posted.

For those blocked on this can use the az devops invoke command to automate this if required.
Here is the sample command with Json Request-
az devops invoke --http-method post --area distributedtask --resource variablegroups --debug --in-file .\vgroup_azure_rm.json --encoding ascii --route-parameters project=atbagga --api-version 5.0-preview
{
    "description": "vgroup description",
    "name": "vgroup1",
    "providerData": {
        "serviceEndpointId": "5763599f-0a8b-403a-a4ca-dsdsdsd4b6",
        "vault": "MyAzureKeyvaultName"
    },
    "type": "AzureKeyVault",
    "variables": {
        "VARIABLE_NAME": {
            "isSecret": true,
            "value": "",
            "enabled": true,
            "contentType": "",
            "expires": null
        }
    }
}

ServiceEndpoint Id is the AzureRm Service endpoint id which can be created using az devops service-endpoint command.

For those blocked on this can use the az devops invoke command to automate this if required using the undocumented API (API signature can change in future).
Here is the sample command with Json Request-
az devops invoke --http-method post --area distributedtask --resource variablegroups --debug --in-file .\vgroup_azure_rm.json --encoding ascii --route-parameters project=atbagga --api-version 5.0-preview
{
    "description": "vgroup description",
    "name": "vgroup1",
    "providerData": {
        "serviceEndpointId": "5763599f-0a8b-403a-a4ca-dsdsdsd4b6",
        "vault": "MyAzureKeyvaultName"
    },
    "type": "AzureKeyVault",
    "variables": {
        "VARIABLE_NAME": {
            "isSecret": true,
            "value": "",
            "enabled": true,
            "contentType": "",
            "expires": null
        }
    }
}

ServiceEndpoint Id is the AzureRm Service endpoint id which can be created using az devops service-endpoint command.

This worked for me, however it doesn't allow you to associate a service connection with the the variable group to access they key vault. Looks like there hasn't been an update to the cli yet, does anyone know if this is possible?

For those blocked on this can use the az devops invoke command to automate this if required using the undocumented API (API signature can change in future).
Here is the sample command with Json Request-
az devops invoke --http-method post --area distributedtask --resource variablegroups --debug --in-file .\vgroup_azure_rm.json --encoding ascii --route-parameters project=atbagga --api-version 5.0-preview
{
    "description": "vgroup description",
    "name": "vgroup1",
    "providerData": {
        "serviceEndpointId": "5763599f-0a8b-403a-a4ca-dsdsdsd4b6",
        "vault": "MyAzureKeyvaultName"
    },
    "type": "AzureKeyVault",
    "variables": {
        "VARIABLE_NAME": {
            "isSecret": true,
            "value": "",
            "enabled": true,
            "contentType": "",
            "expires": null
        }
    }
}

ServiceEndpoint Id is the AzureRm Service endpoint id which can be created using az devops service-endpoint command.

This worked for me, however it doesn't allow you to associate a service connection with the the variable group to access they key vault. Looks like there hasn't been an update to the cli yet, does anyone know if this is possible?

Any updates on this feature?

+1

plus one

+1

+1

+1

We definitely need this, as it's just about the last thing we can't automate for our pipeline creation.  To have secrets in the keyvault, we have to manually go in and link the variable group to the keyvaults.

+1 Thank you!

And what about updating already existing VG that linked with KeyVault?
While this article says that PUT method should be used, modification to your command says the following:
cli.azure.cli.core.azclierror: The requested resource does not support http method 'PUT'.
az_command_data_logger: The requested resource does not support http method 'PUT'.

Full CLI command:
az devops invoke --http-method put --area distributedtask --resource variablegroups --debug --in-file ./body3.json --encoding ascii --route-parameters project=redacted --api-version 7.1-preview

#body3.json
{
    "name": "redacted",
    "providerData": {
        "serviceEndpointId": "redacted",
        "vault": "redacted"
    },
    "type": "AzureKeyVault",
    "variableGroupProjectReferences": [
        {
            "projectReference": {
                "id": "redacted",
                "name": "redacted"
            },
            "name": "redacted",
            "description": ""
        }
    ],
    "variables": {
        "redacted": {
            "isSecret": true,
            "value": "",
            "enabled": true,
            "contentType": "",
            "expires": null
        }
    }
}

I do this with POST, exactly as the suggested az devops invoke comment states, and I add
    "authorized": true,
    "variableGroupProjectReferences": [
            {
                "projectReference": {
                    "id": "redacted",
                    "name": "redacted"
                },
                "name": "redacted",
                "description": ""
            }
        ],

I do this with POST, exactly as the suggested az devops invoke comment states, and I add
    "authorized": true,
    "variableGroupProjectReferences": [
            {
                "projectReference": {
                    "id": "redacted",
                    "name": "redacted"
                },
                "name": "redacted",
                "description": ""
            }
        ],

And you are then able to create/update/link variable groups to keyvault without manual intervention?


[Bug]:  Radix Primitive: Form Data Clears on Dialog Close

Environment
System:
    OS: Windows 11 10.0.22631
    CPU: (8) x64 Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
    Memory: 4.25 GB / 15.81 GB
  Binaries:
    Node: 18.18.2 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD
    npm: 9.8.1 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Chromium (126.0.2592.68)
    Internet Explorer: 11.0.22621.3527
  npmPackages:
    nuxt: ^3.12.2 => 3.12.2
    radix-vue: ^1.8.3 => 1.8.3
    shadcn-nuxt: ^0.10.4 => 0.10.4
    vue: ^3.4.29 => 3.4.29

Link to minimal reproduction
https://stackblitz.com/edit/nuxt-starter-ggrskg?file=README.md
Steps to reproduce

Wrap a form inside a shadcn dialog component.
Open the dialog and enter data into the form fields.
Close the dialog.
Reopen the dialog.

Describe the bug
Reproduction
https://stackblitz.com/edit/nuxt-starter-ggrskg?file=README.md
Describe the bug
Description
Issue Description:
When using a form wrapped inside a shadcn dialog component, the form data clears every time the dialog is closed and reopened. This behavior is not desired as it results in users losing their input data if the dialog is accidentally closed or if they navigate away and come back to the dialog.
Steps to Reproduce:

Wrap a form inside a shadcn dialog component.
Open the dialog and enter data into the form fields.
Close the dialog.
Reopen the dialog.

Expected Behavior:
The form should retain its data when the dialog is closed and reopened.
Actual Behavior:
The form data clears each time the dialog is closed and reopened.
Proposed Solution:
Manage the form's state outside the dialog component to ensure that the form data persists. Here is an example implementation:
FormWrapper.vue
<script lang="ts" setup>
import { type HTMLAttributes } from "vue";
const props = defineProps<{
  class?: HTMLAttributes["class"];
  isLoading?: boolean;
  id: string;
  label?: string;
  required?: boolean;
}>();
</script>

<template>
  <FormField v-slot="{ componentField }" :name="id">
    <FormItem>
      <FormLabel :class="{ 'required-label': required }" v-if="label" :for="id">
        {{ label }}
      </FormLabel>
      <FormControl>
        <slot :componentField="componentField" />
      </FormControl>
      <FormMessage />
    </FormItem>
  </FormField>
</template>

FormDialog.vue
<template>
  <Dialog>
    <DialogTrigger as-child>
      <Button variant="default">Edit</Button>
    </DialogTrigger>
    <DialogContent
      class="rounded-lg sm:max-w-[525px] md:max-w-[725px] lg:max-w-[825px] max-h-[95dvh]"
    >
      <DialogHeader>
        <DialogTitle>Personal data</DialogTitle>
        <DialogDescription>
          Please update the necessary customer information and submit
        </DialogDescription>
      </DialogHeader>
      <div class="p-2 overflow-y-auto">
        <form
          @submit.prevent="onSubmit"
          class="grid md:grid-cols-2 gap-4 py-4 h-[60dvh]"
        >
          <FormWrapper
            v-slot="{ componentField }"
            id="firstName"
            required
            label="First Name"
          >
            <Input
              v-model="formData.firstName"
              placeholder=""
              type="text"
              auto-capitalize="none"
              auto-complete="off"
              auto-correct="off"
              :disabled="isLoading"
              id="firstName"
              v-bind="componentField"
            />
          </FormWrapper>
          <FormWrapper
            v-slot="{ componentField }"
            id="lastName"
            required
            label="Last Name"
          >
            <Input
              v-model="formData.lastName"
              placeholder=""
              type="text"
              auto-capitalize="none"
              auto-complete="off"
              id="lastName"
              auto-correct="off"
              :disabled="isLoading"
              v-bind="componentField"
            />
          </FormWrapper>
          <FormWrapper
            v-slot="{ componentField }"
            id="phoneNumber"
            required
            label="Phone Number"
          >
            <Input
              v-model="formData.phoneNumber"
              placeholder=""
              type="text"
              auto-capitalize="none"
              auto-complete="off"
              auto-correct="off"
              :disabled="isLoading"
              id="phoneNumber"
              v-bind="componentField"
            />
          </FormWrapper>
          <FormWrapper
            v-slot="{ componentField }"
            id="address"
            label="Address (Optional)"
          >
            <Input
              v-model="formData.address"
              placeholder=""
              type="text"
              auto-capitalize="none"
              auto-complete="off"
              auto-correct="off"
              :disabled="isLoading"
              id="address"
              v-bind="componentField"
            />
          </FormWrapper>
          <FormWrapper
            v-slot="{ componentField }"
            id="gender"
            required
            label="Gender"
          >
            <Input
              v-model="formData.gender"
              placeholder=""
              type="text"
              auto-capitalize="none"
              auto-complete="off"
              id="gender"
              auto-correct="off"
              :disabled="isLoading"
              v-bind="componentField"
            />
          </FormWrapper>
          <FormWrapper
            v-slot="{ componentField }"
            id="natureOfBusiness"
            required
            label="Nature of Business"
          >
            <Input
              v-model="formData.natureOfBusiness"
              placeholder=""
              type="text"
              id="natureOfBusiness"
              auto-capitalize="none"
              auto-complete="off"
              auto-correct="off"
              :disabled="isLoading"
              v-bind="componentField"
            />
          </FormWrapper>
        </form>
      </div>
      <DialogFooter>
        <DialogClose as-child>
          <Button id="dialogClose" variant="destructive" type="button">
            Close
          </Button>
        </DialogClose>
        <Button
          :loading="isLoading"
          @click="onSubmit"
          loading-text="Creating..."
          type="submit"
        >
          Update Customer
        </Button>
      </DialogFooter>
    </DialogContent>
  </Dialog>
</template>

<script>
export default {
  data() {
    return {
      isLoading: false,
      formData: {
        firstName: '',
        lastName: '',
        phoneNumber: '',
        address: '',
        gender: '',
        natureOfBusiness: ''
      }
    };
  },
  methods: {
    onSubmit() {
      this.isLoading = true;
      // Handle form submission logic here
      // After submission, you can reset the form if needed
      // For example: this.resetForm();
    },
    resetForm() {
      this.formData = {
        firstName: '',
        lastName: '',
        phoneNumber: '',
        address: '',
        gender: '',
        natureOfBusiness: ''
      };
    }
  }
};
</script>

This also happens on this form: https://stackblitz.com/edit/nuxt-starter-ggrskg?file=README.md
System Info
System:
    OS: Windows 11 10.0.22631
    CPU: (8) x64 Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
    Memory: 4.25 GB / 15.81 GB
  Binaries:
    Node: 18.18.2 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD
    npm: 9.8.1 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Chromium (126.0.2592.68)
    Internet Explorer: 11.0.22621.3527
  npmPackages:
    nuxt: ^3.12.2 => 3.12.2
    radix-vue: ^1.8.3 => 1.8.3
    shadcn-nuxt: ^0.10.4 => 0.10.4
    vue: ^3.4.29 => 3.4.29

Expected behavior
No response
Context & Screenshots (if applicable)
No response

Hey @jeremiah-olisa .. this doesn't looks like a radix-vue issue to me. The Form data was removed because the internal state of Form was clear when unmounted, this is expected.
And as the concept of shadcn-vue, feel free to modify and wrap the component in your own way. 😁

Is there a unmount prop for dialog, that keeps it mounted??


Add Progress and Failure to auto update

Fixed in https://github.com/dustinblackman/Championify/tree/0.4.0