Add aws max change count flag

Adding a new aws-max-change-count flag to override the default max
change count on the aws provider.
Included updated tests with a new defaultMaxChangeCount constant and
tests for setting the value as a flag and as an environment variable.
Rather than calling NewAWSProvider with a list of objects, you will
now call it using a new AWSConfig struct. This allows for clearer
declarations of variables which becomes even  more important as more
variables are added.
Part of: #515

Thank you for your PR @peterbale
We'll have a look

mind adding the change to the changelog ?
otherwise LGTM

Thanks @peterbale 👍


lx-text-field: Password label not floating with Chrome password-manager auto-fill

The same issue in angular material https://github.com/angular/material/issues/1376

We've just released LumX v1.0.0rc1. This new version fixes the issue, so I'm closing it.

It's continues happen on 1.4.3 :(


Many-to-many association across two databases.

I can't figure out how handles this use case with the belongsToMany method. I have two databases professional and cities. I'm using two differents Knex connections for that. The name of the join table is professional_cities and this table is located in the professional database.
// City.js
professionnals: function () {
   this.belongsToMany(Professional, 'professional_cities'); // Okay, Bookshelf refers to `professional.professional_cities`.
}

// Professionnal.js
cities: function () {
   this.belongsToMany(City, 'professional_cities'); // Not okay, Bookshelf refers to `cities.professional_cities` instead of `professional.professional_cities`.
}

I got this error Error: ER_NO_SUCH_TABLE: Table 'cities.professionnal_cities' doesn't exist when I make this request (see below) because Bookshelf refers to the wrong database.
Professionnal.forge(params).query(params).fetchAll({
   withRelated: ['cities']
});

How can I fix this?

@Aurelsicoko Could you try
cities: function () {
   this.belongsToMany(City, 'professional_cities').query(qb => qb.withSchema('professional'))
}

@absolux Thanks for your time! I got this error Error: ER_NO_SUCH_TABLE: Table 'professionnal.cities' doesn't exist. It's a correct behavior this table is located in the cities database.

@absolux Thanks for your help, I found another solution. There is a ton of issues caused by this kind of association, so I decided to migrate the cities databases into the professional.

You are welcome @Aurelsicoko
But, just a last question, what is the exact name of the joining table ?
because in the error message, the missing table is professionnal_cities, but in the sample code it is professional_cities. There is an additional N in professional

Oh, you're right! There is a typo in my table name. The name is professionnal_cities with two n.


dotnet8 support!

I tried changing the target framework of the example to .NET 8, updating NuGet packages, and modifying the file path for dynamic loading. However, I couldn't get it to work as before.
Would it be possible for you to modify the example so that it works on .NET 8?

I found a fix. You can switch the build back to using ".dll" extensions by adding <WasmEnableWebcil>false</WasmEnableWebcil> to a PropertyGroup in  your prject .csproj. Then the code works.
Modify your .Net 8 project .csproj
<PropertyGroup>
	<WasmEnableWebcil>false</WasmEnableWebcil>
</PropertyGroup>

<WasmEnableWebcil> MS Docs Flag documentation

yes It works fine! Thank you so much for helping me.


Remove package from conda-forge

@conda-forge/core Is it possible to remove this package from conda-forge? For various reasons it no longer makes sense to have this as a conda package.
Thanks a lot!

For the sake of reproducibility we never really remove packages. I'll move the current builds to the broken label and archive this feedstock.


server

Checklist

[x] I've searched for similar issues.
[x] I'm using the latest version of HTTPie.

Minimal reproduction code and steps

Current result
…
Expected result
…

Debug output
Please re-run the command with --debug, then copy the entire command & output and paste both below:
$ http --debug <COMPLETE ARGUMENT LIST THAT TRIGGERS THE ERROR>
<COMPLETE OUTPUT>

Additional information, screenshots, or code examples
…

https://discordapp.page.link/?link=https://discord.gg/GBmmty82CM?fingerprint%3D1207217965704159232.q4zj6f7hgbRIL2PpnxkMxycLxb4%26attemptId%3D34982efc-f877-4a9e-b0db-d3e82dcb1c54&apn=com.discord&isi=985746746&ibi=com.hammerandchisel.discord&ifl=https://discord.com/api/download/mobile?invite_code%3DGBmmty82CM&sd=Your+place+to+talk+with+communities+and+friends.&utm_source=invite&cid=2098412183801341565&_icp=1


Add a TagProcessor to change the case of string

Add a TagProcessor that can change all capital letters to title case or sentence case.  Or change lower to title case or sentence case.
Do not capitalize words such as:
of, to, in, the, as

Copy from Format.ChangeCase and change to handle internal braces "{" "}".

se and change to handle i

This should be handled by the pattern matching of the regular expression search.

This has been implemented as StringCaseTagProcessor.

This has been implemented as StringCaseTagProcessor.


Manager Quality of Life statistics

Added quality of life stats to the Queue Manager reporting,
only really works in parsl for efficiency, but will track totals
as well.
Progress towards (and possible resolution) of #262
Still a work in progress, but I wanted to open this anyways. Getting stats on running jobs turns out to be kind of a large pain.
Status

[ ] Changelog updated
[x] Ready to go

The most recent commit made a few other changes which I needed to do while getting this sample of the logfile output from below, I'll want a sign off on some of these since they do touch a few things I was not working on at first (cc @dgasmith for the first 3, I can undo them and make a separate PR if you want for them.):

Fixed a bug in Snowflake I found in an error catch
Made LGTM ignore the @validator error
Found a bug in the recursive directory creation of the qcfractal-server init
Made the stats output numbers less long floats

On a related note: Nested f-string formatting is a thing

Sample of the output (with changes from latest commit):
Uses a Snowflake and the ProcessPoolExecutor to do short tasks on 1 core, 1 worker. Since it is the Pool executor, the potential and used resources will be the same as its always running.
[I 190709 16:23:50 managers:288] QueueManager successfully started.

[I 190709 16:23:50 managers:536] Pushed 0 complete tasks to the server (0 success / 0 fail).
[I 190709 16:23:50 managers:583] Stats (Tasks): Processed=0, Failed=0, Success=(N/A yet)%, Core Hours (est.)=0, Worker Core Efficiency (est.): 0.00%, Max Resource Core Efficiency (est.): 0.00%
[I 190709 16:23:50 managers:592] Acquired 10 new tasks.
[I 190709 16:24:01 managers:536] Pushed 10 complete tasks to the server (10 success / 0 fail).
[I 190709 16:24:01 managers:583] Stats (Tasks): Processed=10, Failed=0, Success=100.00%, Core Hours (est.)=0.002128599683443705, Worker Core Efficiency (est.): 74.55%, Max Resource Core Efficiency (est.): 74.55%
[I 190709 16:24:01 managers:592] Acquired 10 new tasks.
[I 190709 16:24:11 managers:536] Pushed 10 complete tasks to the server (10 success / 0 fail).
[I 190709 16:24:11 managers:583] Stats (Tasks): Processed=20, Failed=0, Success=100.00%, Core Hours (est.)=0.004118374983469645, Worker Core Efficiency (est.): 72.57%, Max Resource Core Efficiency (est.): 72.57%
[I 190709 16:24:11 managers:592] Acquired 10 new tasks.
[I 190709 16:24:21 managers:536] Pushed 10 complete tasks to the server (10 success / 0 fail).
[I 190709 16:24:21 managers:583] Stats (Tasks): Processed=30, Failed=0, Success=100.00%, Core Hours (est.)=0.006145976119571262, Worker Core Efficiency (est.): 72.40%, Max Resource Core Efficiency (est.): 72.40%
[I 190709 16:24:21 managers:592] Acquired 10 new tasks.
[I 190709 16:24:31 managers:536] Pushed 10 complete tasks to the server (10 success / 0 fail).
[I 190709 16:24:31 managers:583] Stats (Tasks): Processed=40, Failed=0, Success=100.00%, Core Hours (est.)=0.008195060094197591, Worker Core Efficiency (est.): 72.50%, Max Resource Core Efficiency (est.): 72.50%
[I 190709 16:24:31 managers:592] Acquired 10 new tasks.
[I 190709 16:24:41 managers:536] Pushed 10 complete tasks to the server (10 success / 0 fail).
[I 190709 16:24:41 managers:583] Stats (Tasks): Processed=50, Failed=0, Success=100.00%, Core Hours (est.)=0.010241767830318875, Worker Core Efficiency (est.): 72.47%, Max Resource Core Efficiency (est.): 72.47%
[I 190709 16:24:41 managers:592] Acquired 0 new tasks.

I think the status line is too long:
[I 190709 16:24:41 managers:583] Task stats: Complete=50, Failures=0, Success=100.00%, Pending=30
[I 190709 16:24:41 managers:583] Worker stats (est.): Core-hours=%.2f, Distribution-efficiency=%.2f, Worker-uptime=%.2f

For core-hours we can use the lovely:
>>> val =<PHONE_NUMBER>40000.12341
>>> f'{val:,.2f}'
'300,000,012,340,000.12'

The log now looks like this:
[I 190710 10:00:49 managers:536] Pushed 10 complete tasks to the server (10 success / 0 fail).
[I 190710 10:00:49 managers:585] Task Stats: Processed=30, Failed=0, Success=100.00%
[I 190710 10:00:49 managers:586] Worker Stats (est.): Core Hours Used=0.01, Core Usage Efficiency: 80.45%

In verbose mode, it includes an additional field
[I 190710 09:57:21 managers:536] Pushed 10 complete tasks to the server (10 success / 0 fail).
[I 190710 09:57:21 managers:585] Task Stats: Processed=40, Failed=0, Success=100.00%
[I 190710 09:57:21 managers:586] Worker Stats (est.): Core Hours Used=0.01, Core Usage Efficiency: 83.35%, Core Usage vs. Max Resources Requested: 83.35%

Because of rounding, the Core Hours used don't report until above 0.01 hours.


Time difference is huge in Quirrel UI

Bug Report
Current Behavior
It shows weird dates on cronjob but executes it at a proper time.

Sidenote: Would love a feature that shows time a cron starts & ends in CLI as well. I can't use console.time() & console.timeEnd() without errors.

So the dates are 11:41:45 & rescheduled at 2021-11-01T06:11:54.200Z
If you see the time difference, it's 11:41:45 & 06:11:54 which is huge & I'm running my cronjob in like every 10sec with 30sec delay like:
await hello.enqueue(name, {
    id: name,
    delay: '30sec',
    repeat: {
      every: '10sec',
      times: 2, // 2 * 10sec = 20sec
    },
  })

Input Code

Repo: See this commit → https://github.com/deadcoder0904/quirrel-log/tree/16dbc610f9392af07b68683159d899c4e7d96800

Expected behavior/code
It should show time difference like 30 seconds or appropriate. It looks way off. Maybe a timezone issue?
Environment

Quirrel version: v1.7.4
Node/npm version: Node v16.1.0 & npm v7.21.0

Possible Solutions
I think a 30 seconds later or human-readable format is more suitable. Or show it like the first column but include hours, mins, & secs too.
Additional context/Screenshots

Hi @deadcoder0904! That absolutely looks like a timezone issue, and I'll have a look at it later today. What timezone are you in, btw?

Indian Standard Timezone GMT+5:30
Also, can you take a look at my other discussions which I'm having a hard-time figuring out :)

Found the reason: The time column is localised, but the right-most column is not. #858  should fix it. Can you try the deploy preview in there?

Oh yes, it works :)

Would love a way to add time in console as well. Like absolute time (just like in columns) or relative time (10 seconds later) besides Created Job & Executing Job:
[1] 📝Created Job
[1]    queue: /api/queues/hello
[1]       id: Anon
[1]     body: 040e:soE0xf+5QwmxyYEty0lq1w==:cngP24X4:mbzMpdOMV8uGkSxPtIS9Jw==
[1]
[1] 👟Executing job
[1]   queue: /api/queues/hello
[1]      id: Anon
[1]    body: 040e:soE0xf+5QwmxyYEty0lq1w==:cngP24X4:mbzMpdOMV8uGkSxPtIS9Jw==


Home tab now customisable

In preparation for persistent settings, the Home button is customisable via Napture settings.

Saving to disk has been implemented. If you wish to, you can solve the conflicts and I'll check it again

Closing due to inactivity + conflicts


Compiling parking_lot v0.10.2 error: cannot find macro llvm_asm in this scope

🐛 Bug Reports
I'm trying to build the example found on crates.io. However, during compilation, I get the following error
   Compiling parking_lot v0.10.2
error: cannot find macro `llvm_asm` in this scope                      ] 30/51: syn, regex, regex-syntax, parking_lot
  --> /Users/maximetremblay/.cargo/registry/src/github.com-1ecc6299db9ec823/parking_lot-0.10.2/src/elision.rs:77:13
   |
77 |             llvm_asm!("xacquire; lock; cmpxchgq $2, $1"
   |             ^^^^^^^^

error: cannot find macro `llvm_asm` in this scope
   --> /Users/maximetremblay/.cargo/registry/src/github.com-1ecc6299db9ec823/parking_lot-0.10.2/src/elision.rs:108:13
    |
108 |             llvm_asm!("xrelease; lock; xaddq $2, $1"
    |             ^^^^^^^^

error: aborting due to 2 previous errors======>                        ] 30/51: syn, regex, regex-syntax, parking_lot

error: could not compile `parking_lot`.

🌍 Environment

Your operating system and version: MacOs Mojave 10.14.6
Your python version: python = 2.7.16, python3 = 3.7.4
How did you install python (e.g. apt or pyenv)? Did you use a virtualenv?: brew install python
Your rust version (rustc --version): rustc 1.44.0-nightly (f509b26a7 2020-03-18)
Are you using the latest pyo3 version? Have you tried using latest master (replace version = "0.x.y" with git = "https://github.com/PyO3/pyo3")? I'm using 0.9.2 and it is not working. However, I just tried using git instead of version and it worked.

💥 Reproducing
I tried to build to project by using cargo build --release and maturin build and both failed for the same reason. I created a git repo with the code.

Hi @matrem94 you're correct; we've fixed this issue on the git master. We will release this fix with 0.10.0 if you're happy to use the git version for now.

Hi @davidhewitt. This if fine for me. After I notice the quick fix, I kept my report just in case you didn't know. Thanks for the answer.


Restructuring

threading support
many renames of functions and methods
got rid of Dynamic and moved to fget and fset
set_name instead of init based setup
python with types

Hi @VigneshVSV
Looks interesting and massive. Why did you close the PR?

It was supposed to be merged to my forked version of main branch. Got assigned here by mistake.
I am also not up to date with your recent changes (which overlaps idealogically with some of my changes) since I worked on these changes about 6-8 months back.  At some point, I might have to merge your changes to my own fork.
Nevertheless, the changes relate to my adaptation your repository for RPC applications for data acquisition in experimental physics/industrial automation. I have a subclass of Parameter called RemoteParameter & subclass of Parameterized called RemoteObject. Its not a part of my fork though, it lives in my own package called 'hololinked' (https://github.com/VigneshVSV/hololinked/tree/main/hololinked). I had some difficulties using your package as it is, except the main ideas and core logic/structure. One thing lead to another, and I had to make lot of changes.
Mainly, threading was necessary for dispatching events because instrument control requries thread safety. I added support for fget (which I think is what Dynamic parameter also does - so just a rearrangement of logic),
You can take a look at an example here if you are interested about how I use param in data-acquisition:
https://hololinked.readthedocs.io/en/latest/examples/server/spectrometer/index.html

Just FYI - anybody from holoviz who might be interested in data-acquisition/RPC and likes my project are welcome to contribute. Its relationship with param is quite foundational and provides more than a few elegant features which I am not yet done documenting. At least this is my view.
There is not a python based RPC out there which provides parameters on the network (at least I think so, including pyro and gRPC). I think this is similar how you model GUIs with param.
Of course, it can also be discussed how much my fork is diverging from holoviz and if there is a possibility to merge the differences.

What do you mean by "Python with types"?

What do you mean by "Python with types"?

It just refers to the typing module. Sorry - as I said its supposed to be an internal merge to my fork.
I think when I forked it there were no type hints in the master/main branch. I still could not properly overload the __get__() with proper type hints.


fix(autoware_pid_longitudinal_controller): correct the PID controller

Description
The previous PID controller in Autoware is actually equivalent to a PD/PI controller.
This PR corrects the utilization of and upgrades to the PID controller.
N.B. Without specific reasons, the parameters adopted in the previous PD/PI controller are adopted in another PR. And the parameters in that PR are equivalent to the PD/PI controller.
Before change:
Screencast from 07-19-2024 02_05_57 PM.webm
After change:
Screencast from 07-19-2024 02_37_49 PM.webm

Note that one of the benefits of using implementing PID controllers is being robust to the external noise (e.g., driving on an ice road). Therefore, a noise was introduced artificially to test the PD/PI controller (before) and PID controller (after).
Noise definition: a constant acceleration (+1.0 m/s2), that is return feedback_acc + 1.0;.
Also, note the PID output constraint has been relaxted to max_out: 2.0, min_out: -2.0 in the analysis.
Before change:
Screencast from 07-19-2024 02_15_43 PM.webm
After change (with new parameters below)
kp: 1.5 # kp > 0 (stability proof) for third-order
ki: 0.8 # ki > 0 && Ki < kp * kd (stability proof) for third-order
kd: 2.5 # kd > 0 (stability proof) for third-order

Screencast from 07-19-2024 04_26_14 PM.webm
N.B. In the parameter PR, we picked the parameters equivalent to the PI/PD controller.
It means that it will also show limit robustness to the external noise.

Conclusions:

The previous PI/PD controller shows the logical error , which is fixed in this PR.
The updated PID controller (this PR) works as expected in the normal case.
The previous PI/PD controller can fail to track the reference once the external disturbance in introduced.
The previous PI/PD controller successfully tracks the reference for some introduced external disturbances.

Further steps:

The user may change the coefficients of the PID controller based on the concentrations and missions.
The max P, I, and D constraints can be adjusted.
The coefficients of the PID controller for a robust tracking performances can be analyzed.

Discussions:

Honestly, erasing the integration when and only when the car is controlled manually is personally preferred. If latecomers have interests on this topic, do not hesitate to contact me.
If you are trying to implement Discussion 1, consider using reset().

Tests performed
Effects on system behavior

Not applicable.
Interface changes

Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.

[x] I've confirmed the contribution guidelines.
[x] The PR follows the pull request guidelines.

In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.

[ ] The PR follows the pull request guidelines.

Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.

[ ] There are no open discussions or they are tracked via tickets.

After all checkboxes are checked, anyone who has write access can merge the PR.

https://github.com/autowarefoundation/autoware.universe/blob/c0f07c2713c3bb53f915c86646293846263d6f1d/control/autoware_pid_longitudinal_controller/include/autoware/pid_longitudinal_controller/pid.hpp#L33
doxygen comment also should be changed

https://github.com/autowarefoundation/autoware.universe/blob/c0f07c2713c3bb53f915c86646293846263d6f1d/control/autoware_pid_longitudinal_controller/include/autoware/pid_longitudinal_controller/pid.hpp#L33
doxygen comment also should be changed

fixed in 55f0787dd9aa538f4f9b9a91591aa5d2f3ee48a6

@HansOersted @takayuki5168 Do you still need this modification?

It will take time to confirm this PR including the real vehicle experiment and we don't have a plan for that, so let me close it for now.


fix reverse image on nexus 5x

fix for #209
tested with Nexus 5x and Nexus 5.
I don't have more devices, so I would be happy if someone could test this with more "special" devices, too.

I tried this on a few more devices (Old Samsung phone, Nexus 7, Amazon Fire, Moto-G) as well, and it's working fine, looks good!

I'm very interested to know when this change will make it into a Xamarin Component release?


As a User, I want to see the dashboard ,so I can use the Dashboard.

@ChathuraHasanga  Test comment.


Please add an example/guide to change keyboard layout

I have just received my Macropad and having trouble changing the default keyboard layout. The docs only refer to the guide from Neradoc that are not very helpful for a beginner. I have tried to change to the German Layout but cannot get it to work. I think a detailled example or a step by step guide would be helpful.
UPDATE:
Got it to work. Found this PR but it is rather not intuitive: https://github.com/Neradoc/Circuitpython_Keyboard_Layouts/pull/17

There is an example, there is no guide yet though:
https://github.com/adafruit/Adafruit_CircuitPython_MacroPad/blob/main/examples/macropad_keyboard_layout.py

Thank you!


update snyk version, add badge to README.md

LGTM.
Anyone with more experience with Snyk know if there's any reason not to update to the new version?

I'm on ^1.19.1 with no issues

LGTM
On Tue, Oct 25, 2016 at 10:20 PM, Tim Elfelt<EMAIL_ADDRESS>wrote:

I'm on ^1.19.1 with no issues
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/linnovate/meanio/pull/115#issuecomment-256148228, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAO9I66BcuqsWqybJzLO2bPYDN_2iAkbks5q3lZ_gaJpZM4JZSI9
.

--
Lior Kesos - http://www.linnovate.net
Linnovate - Community Infrastructure Care
mail<EMAIL_ADDRESS>office: +972 722500881
cell: +972 524305252
skype: liorkesos


Add Github workflow on copybara import

When the import/copybara status check succeeds, post a comment on the PR directing developers to see the imported CL on Gerrit.
Unfortunately, it is not possible to test this workflow until it lands, so a debugging job is included as well which will be removed in the future.

this was merged in https://github.com/google/dawn/commit/8232be876f712de32f5d0e3cbc069a12cd3d9999


Set support(?)

Add support for setting Sets, probably mainly at first level?
https://redis.io/commands/sadd
etc

Thought about it some more and nah.


Footer added

Description
New footer design added.
Fixes #73

@Jagannath8 hey can you remove the Facebook icon and attach my twitter url in the twitter icon? You can find it in my GitHub profile.

Ya sure!

@Jagannath8 merged. Thank you for your contribution 🥇


Update views.py

replace reverse with reverse lazy at get success url

Why are you suggesting this change?  It seems to me that reverse makes more sense as a choice here.  I am pretty sure either will work but I see reverse_lazy as something that if for a particular use.  Curious what you think.

thanks for replaying .. i put that reverse lazy cause i am reversing an object which lazyreversing would handles it better

I think I will close this one.  According to the documentation
https://docs.djangoproject.com/en/4.2/ref/urlresolvers/#reverse-lazy
According to the documentation, you use reverse_lazy() "when you need to use a URL reversal before your project’s URLConf is loaded".
In this situation, in a method in views.py, the URLConf is fully loaded so reverse() is recommended.


[about the paper] PPDN, FN2EN comparisons

Dear Cugu,
Thanks for your help!
Your group's paper mentioned PPDN, FN2EN's running time on GTX1050 and i7.
My question is how you find FN2EN's sources?
I cannot find FN2EN's implementation via Google even though the paper says "Upon publication, the trained expression models will be made publicly available"
And thanks again for sharing your work!
BR,
JimmyYS

Authors of FN2EN shared a pretrained caffemodel for CK+ and the Caffe implementation of their model, but as far as I know there is no other available implementation of the model with other frameworks like Keras or Tensorflow. Long story short, you can find it in http://www.huiding.org/pub/

Dear Cugu,
Thanks for your help!
Embarrassingly, I never used caffe.
By "Caffe implementation of their model", do you mean "deploy.prototxt" in the zip file?
Any else?
All you need to run a pre-trained model in caffe is deploy.prototxt?
BR,
JimmyYS

Yes, "deploy.prototxt" contains the model specifications, Caffe uses them to build its internal model.
"caffemodel" provides you the learned weights & biases in the network.
There is a nice blog post about Caffe in which all of these files are explained:
http://adilmoujahid.com/posts/2016/06/introduction-deep-learning-python-caffe/

Dear Cugu,
Thanks for your generous help!
Another question, did you get the CK+ dataset from here: http://www.consortium.ri.cmu.edu/ckagree/
?
Or the CK+ dataset webpage's url changed?
The web page does not show and I get the following response :
Gateway Timeout
Server error - server <IP_ADDRESS> is unreachable at this moment.
Please retry the request or contact your administrator.
BR,
JimmyYS

Yes, I did. The website is working now.

Dear Cugu,
I saw your response at https://github.com/cuguilke/microexpnet/issues/7
about "labelPath" format.
My question is how you get from the raw CK+ data set to (path, label) pairs in a single txt?
/home/username/Desktop/OuluCASIA/batch0/example.jpeg 0
/home/username/Desktop/OuluCASIA/batch1/example2.jpeg 3
...
/home/username/Desktop/OuluCASIA/batch9/example13.jpeg 2
Did you wrote a script to traverse the CK+ data set's directories?
And then read the image path and labels and write to a single txt?
Did you upload such script?
And can you share how to do distillation?
I briefly read through your code, I see the following line:
./Candidates/trainCandidates.py:95: testX, testY, testSoftTargets = deployImages(valSet, teacherSoftmaxInputs)
But I cannot find how to put teacher model's logits into the teacherSoftmaxInputs variable.
BR,
JimmyYS

Dear Cugu,
Another question about "labelPath" format:
does the (path label) in the same batch has to be next to each other?
/home/username/Desktop/OuluCASIA/batch0/example.jpeg 0
/home/username/Desktop/OuluCASIA/batch1/example2.jpeg 3
...
/home/username/Desktop/OuluCASIA/batch9/example13.jpeg 2
because now, my labels_CK.txt looks like:
microexpnet/dataset/batch1/S076_006_00000019.png 5
microexpnet/dataset/batch2/S131_001_00000016.png 7
microexpnet/dataset/batch0/S100_005_00000023.png 1
microexpnet/dataset/batch3/S089_002_00000021.png 5
microexpnet/dataset/batch6/S092_001_00000017.png 7
microexpnet/dataset/batch7/S160_006_00000010.png 2
microexpnet/dataset/batch1/S063_002_00000023.png 5
microexpnet/dataset/batch1/S079_001_00000012.png 7
microexpnet/dataset/batch2/S506_004_00000038.png 4
microexpnet/dataset/batch7/S097_004_00000030.png 3
microexpnet/dataset/batch6/S132_002_00000018.png 6
microexpnet/dataset/batch7/S135_001_00000039.png 7
microexpnet/dataset/batch9/S064_004_00000014.png 6
microexpnet/dataset/batch2/S090_007_00000014.png 1
microexpnet/dataset/batch4/S101_002_00000019.png 7
microexpnet/dataset/batch8/S083_003_00000019.png 5
microexpnet/dataset/batch8/S014_002_00000016.png 6
And I got error when I run : "python trainCandidates.py ..."
BR,
JimmyYS

Dear Cugu,
To answer my own question in previous comment,
if I arrange the (path, label) pairs in labels_CK.txt
that are in the same batch to be next to each other (as below)
then "python trainCandidates.py ..." can proceed without error :
microexpnet/dataset/batch0/S022_001_00000030.png 7
microexpnet/dataset/batch0/S032_004_00000014.png 4
microexpnet/dataset/batch0/S035_005_00000019.png 3
microexpnet/dataset/batch0/S042_004_00000020.png 1
microexpnet/dataset/batch0/S066_004_00000010.png 6
...
microexpnet/dataset/batch1/S005_001_00000011.png 3
microexpnet/dataset/batch1/S014_005_00000017.png 5
microexpnet/dataset/batch1/S022_006_00000017.png 3
microexpnet/dataset/batch1/S026_006_00000013.png 5
microexpnet/dataset/batch1/S032_006_00000016.png 5
microexpnet/dataset/batch1/S042_002_00000016.png 6
...
What's remaining is how to do distillation, and hope it's okay for you to share how to do distillation.
Thanks for your great work and generous sharing already.
BR,
JimmyYS

Candidates are not trained with distillation, you have to modify them manually for that.
For distillation, you can use MicroExpNet.py which takes

softy = tf.placeholder(tf.float32, shape=[None, nClasses])

as "teacherLogits".
Then, training part becomes something like this:

c, p = sess.run([classifier.cost, classifier.accuracy], feed_dict={x: batch_x, y: batch_y, softy: batch_softy, lr: learningRate, keepProb: 1.0})

Dear Cugu,
Thanks for your help!
Some more questions:

accuracy
whether training data set is too small
can you share how Resnet50 is trained to beat state of the art? which layers are fine tuned?

More details regarding Q1 and Q2:

About accuracy, I trained : "python trainCandidates.py -v 9 ../labels_CK.txt ./Graphs/candidateV.png ./Models/tfmodel_candidateV 0.0001 1"

for 100000 epochs, but I only get 0.18 test accuracy
I think maybe I used too few training data.

About training data size too small: from CK+, there are only 327 image with emotion labels
I used only these 327 images to train.
Have you train such training before?

Do I have to use unlabeled as neutral?
And also for each label, take last 3 frame and first frame?
looking at the label:
S084_002_00000023.png 4
it specified the frame number 23, as fear
however the first frame looks neutral to me,
and this points to my unease: is it okay to use first frame have the same emotion as labeled frame?
And are all the unlabeled images truly neutral?
However if I don't try to add more training data,
using only label 327 images, the accuracy is really bad.
BR.
JimmyYS

Dear Cugu,
I used last 3 frame as labeled and first frame as neutral.
And also first frame of unlabeled as neutral.
total 1574 images exactly as mentioned in your paper.
The accuracy improved a lot.
However, when squeeze=16, pooling is better than no pooling,
this seemed different from your result.
Do you know why?
Any different setup compared to yours?
Or it's because I didn't do distillation?

BR,
JimmyYS

I assume you are using the preprocessing phase of the inputs we put here. Your results are very bad considering the results reported in literature for CK+. Few quick points:

Are these the average 10-fold cross validation results? If not, then it is the first step to do.
Assuming they are obtained from 10-fold cross validation, we separeted batches in a way that, each batch has images from all emotion labels (all images are shuffled per class) with nearly the same number of samples.
In addition, we gave models 3 chances to learn for each validation batch. I mean, initial weights are random and this may directly lead the model to learn nothing, so we roll the dice three times. If model starts to learn, than we say the reason was the initialization.
Distillation is not relevant, because we didn't do that for candidates either.

If you are not using our preprocessing stuff, then I need to know the specifications.

Dear Cugu,
Thanks for your help!
The above result is from 10-fold cross validation since I didn't modify your training script.
And by average, do you mean: I pick fold no 1 as test set, get one result, then use fold no.2 as test and get another result, and so on, and then average 10 training accuracies?
About each batch having the all emotions and equal numbers of each emotion, I haven't implement this yet. I will try this and see if accuracy improves.
About 3 chances to learn, I will try this also.
By the way did you put batch normalization in your neural network?
I think you did not?
Do you think batch normalization can improve training?
And thanks for your help again!
BR,
JimmyYS

Dear Cugu,
did you use Viola and Jones to crop smalling containing rectangular area?
Because I can not find code that does this cropping step
BR,
JimmyYS

Dear Cugu,
Sorry I am vague in previous comment.
I mean, during trainCandidates, did you use Viola and Jones to crop smallest rectangular area containing face?
I asked because I see you mentioned Viola and Jones to crop face, But in trainCandidates and Preprocessing, I cannot find Viola and Jones.
BR,
JimmyYS

Dear Cugu,
From a recent paper:
Compact Deep Learning Model for Robust Facial Expression Recognition
I found a potential problem.
The above paper mentioned :
To avoid subjects appearing in both the training and testing
sets simultaneously, we divide the subjects into 10 subsets
by their IDs in the ascending order, which is the same
as the 10-fold cross validation protocol in [24].
And after checking my implementation,
I found same subject and emotion appeared in multiple batch.
Therefore, test accuracy might come from testing training data.
For example, in my dataset : 'S505_002', appeared in batches : ['9', '0', '6']
If I avoid same subject and emotion in multiple batch, the test accuracy drops significantly.
Did you check whether different batches (folds) in your dataset contain the same subject+emotion?
BR,
Jimmy


Validate GraphQL query arguments

What type of PR is this?
Bugfix
What does this PR do / why is it needed ?
Validate GraphQL query arguments and throw an appropriate error in case an invalid argument found
Which issue(s) this PR fixes:

Fixes #
Other notes for reviewers:
Does this PR introduce a user-facing change?
No

/easycla

This PR is stale because it has been open for 30 days with no activity. Please remove stale label or add any comment to keep this open. Otherwise this will be closed in 5 days.

This PR was closed because it has been inactive for 35 days. Please re-open if this PR is still relevant.


Material UI v5 Migration

Migrated to Material UI v5

Closing this as it will be easier to start from scratch


VSCode plugin docs: Navigation

PR sent https://github.com/wso2/docs-ballerina-visual-studio-code-plugin/pull/5

Closing this since this was completed


Remove cargo check fallback to cargo rustc -- -Zno-trans when cargo-check is stabilized

In cargo added a new command check.
Currently it is in nightly.
When it is stabilized fallback to cargo rustc -- -Znotrans should be deleted.

Actually you have already assuming nightly by removing check-lib. This could be removed as well, although it affects more users.

@ishitatsuyuki,
What do you mean under removing check-lib?
I replaced it with custom configurations.

I see. Nevermind then.

@ishitatsuyuki,
I kept default, but allowed to customize.
I think it is more powerful than having only several default choices.

cargo check lands on thursday 🎊

It's nice.

It's now stable!


Saleor 2509/channels for simple product and product variants

I want to merge this change because SALEOR-2509
What happened in here:

Add useChannelsWithProductVariants hook, to keep data of channels, along with selected variants, variants to add and variants to remove
Add this hook ^ to product update
Not add this hook, to product create, since it needs variants data to work, and we only want to use it after product was created
Therefore create the CannotDefineChannelsAvailabilityCard component, when managing channels with variants availability is a no-no
Split logic in product update form - since we're planning to get rid of simple product, decided to make the logic more "iffed" but then it'll be much easier to just remove all the simple product parts
Since some parts of both channels availability modal and channels availability card are share'able throughout both channels and channels-with-variants availability features, separate those components into smaller ones:
ChannelsAvailability →

Rename to ChannelsAvailabilityCard for clarity
ChannelsAvailabilityCardWrapper - wrapper for the card, shared
ChannelAvailabilityItemWrapper - wrapper for card item, different for both
ChannelAvailabilityItemContent - content for card item, shared

Add ChannelsWithVariantsAvailabilityCard →

Uses shared card wrapper and item content
ChannelWithVariantsAvailabilityItemWrapper - wrapper for card item

ChannelsAvailabilityContent - divide into:

ChannelsAvailabilityDialogWrapper - wrapper for the dialog with search field, title etc. shared
ChannelsAvailabilityDialogChannelsList - simple channels list, different for both

ChannelsWithVariantsAvailabilityDialog

uses shared dialog wrapper
ChannelsWithVariantsAvailabilityDialogContent - the expandable list for channels with variants

Move (TableCell) Avatar to a separate component, to use it outside of tables
Add DeletableItem component - simply trash with some space and onClick, but we're gonna be using it quite a lot

PR intended to be tested with API branch:
Screenshots

Pull Request Checklist

[ ] All visible strings are translated with proper context.
[ ] All data-formatting is locale-aware (dates, numbers, and so on).
[ ] Translated strings are extracted.
[ ] Number of API calls is optimized.
[ ] The changes are tested.
[ ] Data-test are added for new elements.
[ ] Type definitions are up to date.
[ ] Changes are mentioned in the changelog.
[ ] The changes are tested in different browsers (Chrome, Firefox, Safari).
[ ] The changes are tested in light and dark mode.

Test environment config

API_URI=https://feature-variants-and-shipping-zones-per-channel.api.saleor.rocks/graphql/

Task linked: SALEOR-2509 [variants per channel] Extend Product Manage Channels Popup Picker

Task linked: SALEOR-2552 Allow assigning shipping zones to channels

In modal when some variants are added to a channel. channel should be marked as "mixed" checkbox rather than selected state. see here:

We use two different styles of checkboxes here, is it on purpose?

@jwm0 opened a ticket for this refactor

@pwgryglak changed


robust json parsing & entity extraction progress log

The JSON generated by large models may have issues such as being incomplete, redundant, or having formatting errors. The original solution was too brief and provided few prompts, so we made some improvements to address these.
Entity extraction is the most time-consuming part of this project, but there was no explicit progress indicator. We added a percentage indicator to let users know the current progress more clearly.

I didn't see this PR until now, yesterday I ended up adding tqdm to every task so that all the progress was available by default. Happy to help with this if needed :+1:

I didn't see this PR until now, yesterday I ended up adding tqdm to every task so that all the progress bars were available by default. Happy to help with this if needed.

Hi @NazimHAli. You can bring up a new PR, and I will reorganize the submitted code by removing the percentage related parts. But it's better to do it quickly, because tonight this PR will be merged.

@gusye1234 cc

I didn't see this PR until now, yesterday I ended up adding tqdm to every task so that all the progress bars were available by default. Happy to help with this if needed.

Hi @NazimHAli. You can bring up a new PR, and I will reorganize the submitted code by removing the percentage related parts. But it's better to do it quickly, because tonight this PR will be merged.

I won't have time to do it before this gets merged. You can continue with this change and I can do a follow-up later.


fix issue in case when namespace has no prefix

@cjbarth Please take a look

This is good, but let's get this PR against master first, once that is approved we can just pick the changes back to 3.x.

@git9527 This PR broke the tests. I can't release 3.x until this gets resolved. I pulled a31e7ff30822b6fc81c584ce4b13951e4d81458b, which is where this code landed on master and ran npm ci && npm test and it failed. The commit before worked fine.

all test cases are pass in the check https://github.com/node-saml/xml-crypto/pull/330/checks on master branch, what's the error you get?

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -c with the switch command. Example:

  git switch -c <new-branch-name>

Or undo this operation with:

  git switch -

Turn off this advice by setting config variable advice.detachedHead to false

HEAD is now at be17c06 Bump @xmldom/xmldom (#333)
chris@CB-SB3:~/code/xml-crypto$ git status
HEAD detached at be17c06
nothing to commit, working tree clean
chris@CB-SB3:~/code/xml-crypto$ npm ci
npm WARN prepare removing existing node_modules/ before installation

><EMAIL_ADDRESS>postinstall /home/chris/code/xml-crypto/node_modules/@cjbarth/github-release-notes
> node ./_postinstall.js

                    | ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ |
                          🙏  Thanks for downloading gren
                    | ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ |

Before you start:

    1. Generate a token with repo scope at this link: https://github.com/settings/tokens/new
    2. For every project, run gren init to create a config file (optional)
    3. Run gren help for more help or see https://github-tools.github.io/github-release-notes/

For any questions/issues, go here: https://github.com/github-tools/github-release-notes/issues

If you like gren, feel free to ⭐  it!

.:| ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ |:.

><EMAIL_ADDRESS>postinstall /home/chris/code/xml-crypto/node_modules/nodeunit/node_modules/ejs
> node ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)

added 1023 packages in 15.281s
chris@CB-SB3:~/code/xml-crypto$ npm test

><EMAIL_ADDRESS>test /home/chris/code/xml-crypto
> nodeunit ./test/canonicalization-unit-tests.js ./test/c14nWithComments-unit-tests.js ./test/signature-unit-tests.js ./test/saml-response-test.js ./test/signature-integration-tests.js ./test/document-test.js ./test/wsfed-metadata-test.js ./test/hmac-tests.js ./test/c14n-non-exclusive-unit-test.js

canonicalization-unit-tests.js
✔ Exclusive canonicalization works on xml with no namespaces
✔ Exclusive canonicalization works on inner xpath
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes
✔ element used prefixed ns which is also the default
✔ Exclusive canonicalization works with default namespace for prefix
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes. ns definition is not duplicated on each usage
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes but before used
✔ Exclusive canonicalization works on xml with prefixed namespaces defined outside output nodes
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list
✔ Exclusive canonicalization works on xml with multiple prefixed namespaces defined in inclusive list
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list defined outside output nodes
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list used on attribute
✔ Exclusive canonicalization works on xml with default namespace inside output nodes
✔ Exclusive canonicalization works on xml with multiple different default namespaces
✔ Exclusive canonicalization works on xml with multiple similar default namespaces
✔ Exclusive canonicalization works on xml with default namespace outside output nodes
✔ Exclusive canonicalization works when prefixed namespace is defined in output nodes not in the parent chain of who needs it
✔ Exclusive canonicalization works on xml with unordered attributes
✔ Exclusive canonicalization sorts upper case attributes before lower case
✔ Exclusive canonicalization removes Comments
✔ Exclusive canonicalization works on xml with attributes with different namespace than element
✔ Exclusive canonicalization works on xml with attribute values with special characters
✔ Exclusive canonicalization does not normalize whitespace characters into single spaces
✔ Exclusive canonicalization works on xml with element values with special characters
✔ Exclusive canonicalization preserves white space in values
✔ Exclusive canonicalization does not alter CR-NL (windows line separator) sequences
✔ Exclusive canonicalization preserves and encodes CR white space
✔ Exclusive canonicalization preserves white space between elements
✔ Exclusive canonicalization turns empty element to start-end tag pairs
✔ Exclusive canonicalization preserves empty start-end tag pairs
✔ Exclusive canonicalization with empty default namespace outside output nodes
✔ Exclusive canonicalization with empty default namespace inside output nodes
✔ The XML declaration and document type declaration (DTD) are removed
✔ Attribute value delimiters are set to quotation marks (double quotes)
✔ CDATA sections are replaced with their character content
✔ SignedInfo canonization
✔ Exclusive canonicalization works on complex xml
✔ Multiple Canonicalization with namespace definition outside of signed element
✔ Enveloped-signature canonicalization respects currentnode
✔ The XML canonicalization method processes a node-set by imposing the following additional document order rules on the namespace and attribute nodes of each element:   - An element's namespace and attribute nodes have a document order position greater than the element but less than any child node of the element.     Namespace nodes have a lesser document order position than attribute nodes.   - An element's namespace nodes are sorted lexicographically by local name (the default namespace node, if one exists, has no local name and is therefore lexicographically least).   - An element's attribute nodes are sorted lexicographically with namespace URI as the primary key and local name as the secondary key (an empty namespace URI is lexicographically least).     Lexicographic comparison, which orders strings from least to greatest alphabetically, is based on the UCS codepoint values, which is equivalent to lexicographic ordering based on UTF-8.
✔ saml attributed order (bug #25)
✔ Body Xml Element Canonicalization
✔ Overriding namespace in canonicalization

c14nWithComments-unit-tests.js
✔ Exclusive canonicalization works on xml with no namespaces
✔ Exclusive canonicalization works on inner xpath
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes
✔ element used prefixed ns which is also the default
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes. ns definition is not duplicated on each usage
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes but before used
✔ Exclusive canonicalization works on xml with prefixed namespaces defined outside output nodes
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list
✔ Exclusive canonicalization works on xml with multiple prefixed namespaces defined in inclusive list
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list defined outside output nodes
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list used on attribute
✔ Exclusive canonicalization works on xml with default namespace inside output nodes
✔ Exclusive canonicalization works on xml with multiple different default namespaces
✔ Exclusive canonicalization works on xml with multiple similar default namespaces
✔ Exclusive canonicalization works on xml with default namespace outside output nodes
✔ Exclusive canonicalization works when prefixed namespace is defined in output nodes not in the parent chain of who needs it
✔ Exclusive canonicalization works on xml with unordered attributes
✔ Exclusive canonicalization sorts upper case attributes before lower case
✔ C14N#WithComments retains Comments
✔ Exclusive canonicalization works on xml with attributes with different namespace than element
✔ Exclusive canonicalization works on xml with attribute and element values with special characters
✔ Exclusive canonicalization preserves white space in values
✔ Exclusive canonicalization preserves white space between elements
✔ Exclusive canonicalization turns empty element to start-end tag pairs
✔ Exclusive canonicalization preserves empty start-end tag pairs
✔ Exclusive canonicalization with empty default namespace outside output nodes
✔ Exclusive canonicalization with empty default namespace inside output nodes
✔ The XML declaration and document type declaration (DTD) are removed
✔ Attribute value delimiters are set to quotation marks (double quotes)
✔ CDATA sections are replaced with their character content
✔ SignedInfo canonization
✔ Exclusive canonicalization works on complex xml
✔ Multiple Canonicalization with namespace definition outside of signed element
✔ Enveloped-signature canonicalization respects currentnode
✔ The XML canonicalization method processes a node-set by imposing the following additional document order rules on the namespace and attribute nodes of each element:   - An element's namespace and attribute nodes have a document order position greater than the element but less than any child node of the element.     Namespace nodes have a lesser document order position than attribute nodes.   - An element's namespace nodes are sorted lexicographically by local name (the default namespace node, if one exists, has no local name and is therefore lexicographically least).   - An element's attribute nodes are sorted lexicographically with namespace URI as the primary key and local name as the secondary key (an empty namespace URI is lexicographically least).     Lexicographic comparison, which orders strings from least to greatest alphabetically, is based on the UCS codepoint values, which is equivalent to lexicographic ordering based on UTF-8.
✔ saml attributed order (bug #25)

signature-unit-tests.js
✔ signer adds increasing id attributes to elements
✔ signer adds references with namespaces
✔ signer does not duplicate existing id attributes
✔ signer adds custom attributes to the signature root node
✔ signer appends signature to the root node by default
✔ signer appends signature to a reference node
✔ signer prepends signature to a reference node
✔ signer inserts signature before a reference node
✔ signer inserts signature after a reference node
✔ signer creates signature with correct structure
✔ signer creates signature with correct structure (with prefix)
✔ signer creates correct signature values
✔ signer creates correct signature values using async callback
✔ correctly loads signature
✔ verify valid signature
✔ fail invalid signature
✔ allow empty reference uri when signing
✔ signer appends signature to a non-existing reference node
✔ signer adds existing prefixes
✔ creates InclusiveNamespaces element when inclusiveNamespacesPrefixList is set on Reference
✔ does not create InclusiveNamespaces element when inclusiveNamespacesPrefixList is not set on Reference
✔ creates InclusiveNamespaces element inside CanonicalizationMethod when inclusiveNamespacesPrefixList is set on SignedXml options
✔ does not create InclusiveNamespaces element inside CanonicalizationMethod when inclusiveNamespacesPrefixList is not set on SignedXml options
✔ adds attributes to KeyInfo element when attrs are present in keyInfoProvider

saml-response-test.js
✔ test validating SAML response
✔ test validating wrapped assertion signature
✔ test validating SAML response where a namespace is defined outside the signed element
✔ test reference id does not contain quotes
✔ test validating SAML response WithComments

signature-integration-tests.js
✔ verify signature
✔ verify signature of complex element
✔ empty URI reference should consider the whole document
✔ add canonicalization if output of transforms will be a node-set rather than an octet stream
✔ signature with inclusive namespaces
✔ signature with inclusive namespaces with unix line separators
✔ signature with inclusive namespaces with windows line separators
✔ should create single root xml document when signing inner node

document-test.js
✔ test with a document (using FileKeyInfo)
✔ test with a document (using StringKeyInfo)

wsfed-metadata-test.js
✔ test validating WS-Fed Metadata

hmac-tests.js
✔ test validating HMAC signature
✔ test HMAC signature with incorrect key
✔ test create and validate HMAC signature

c14n-non-exclusive-unit-test.js
✔ findAncestorNs: Correctly picks up root ancestor namespace
✔ findAncestorNs: Correctly picks up intermediate ancestor namespace
✔ findAncestorNs: Correctly picks up multiple ancestor namespaces declared in the one same element
✔ findAncestorNs: Correctly picks up multiple ancestor namespaces scattered among depth
✔ findAncestorNs: Correctly picks up multiple ancestor namespaces without duplicate
✔ findAncestorNs: Correctly eliminates duplicate prefix
✔ findAncestorNs: Exclude namespace which is already declared with same prefix on target node
✔ findAncestorNs: Ignores namespace declared in the target xpath node
✔ C14n: Correctly picks up root ancestor namespace
✔ C14n: Correctly picks up intermediate ancestor namespace
✔ C14n: Correctly picks up multiple ancestor namespaces declared in the one same element
✔ C14n: Correctly picks up multiple ancestor namespaces scattered among depth
✔ C14n: Correctly picks up multiple ancestor namespaces without duplicate
✔ C14n: Correctly eliminates duplicate prefix
✔ C14n: Exclude namespace which is already declared with same prefix on target node
✔ C14n: Preserve namespace declared in the target xpath node
✔ C14n: Don't redeclare an attribute's namespace prefix if already in scope
✔ C14n: Don't declare an attribute's namespace prefix if in scope from parent

OK: 232 assertions (571ms)

And here is what I get when I checkout the next commit in master, which is the one with your change:
chris@CB-SB3:~/code/xml-crypto$ git checkout a31e7ff30822b6fc81c584ce4b13951e4d81458b
Previous HEAD position was be17c06 Bump @xmldom/xmldom (#333)
HEAD is now at a31e7ff Fix issue in case when namespace has no prefix (#329)
chris@CB-SB3:~/code/xml-crypto$ git status
HEAD detached at a31e7ff
nothing to commit, working tree clean
chris@CB-SB3:~/code/xml-crypto$ npm ci
npm WARN prepare removing existing node_modules/ before installation

><EMAIL_ADDRESS>postinstall /home/chris/code/xml-crypto/node_modules/@cjbarth/github-release-notes
> node ./_postinstall.js

                    | ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ |
                          🙏  Thanks for downloading gren
                    | ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ |

Before you start:

    1. Generate a token with repo scope at this link: https://github.com/settings/tokens/new
    2. For every project, run gren init to create a config file (optional)
    3. Run gren help for more help or see https://github-tools.github.io/github-release-notes/

For any questions/issues, go here: https://github.com/github-tools/github-release-notes/issues

If you like gren, feel free to ⭐  it!

.:| ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ |:.

><EMAIL_ADDRESS>postinstall /home/chris/code/xml-crypto/node_modules/nodeunit/node_modules/ejs
> node ./postinstall.js

Thank you for installing EJS: built with the Jake JavaScript build tool (https://jakejs.com/)

added 1023 packages in 14.787s
chris@CB-SB3:~/code/xml-crypto$ npm test

><EMAIL_ADDRESS>test /home/chris/code/xml-crypto
> nodeunit ./test/canonicalization-unit-tests.js ./test/c14nWithComments-unit-tests.js ./test/signature-unit-tests.js ./test/saml-response-test.js ./test/signature-integration-tests.js ./test/document-test.js ./test/wsfed-metadata-test.js ./test/hmac-tests.js ./test/c14n-non-exclusive-unit-test.js

canonicalization-unit-tests.js
✔ Exclusive canonicalization works on xml with no namespaces
✔ Exclusive canonicalization works on inner xpath
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes
✔ element used prefixed ns which is also the default
✔ Exclusive canonicalization works with default namespace for prefix
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes. ns definition is not duplicated on each usage
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes but before used
✔ Exclusive canonicalization works on xml with prefixed namespaces defined outside output nodes
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list
✔ Exclusive canonicalization works on xml with multiple prefixed namespaces defined in inclusive list
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list defined outside output nodes
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list used on attribute
✔ Exclusive canonicalization works on xml with default namespace inside output nodes
✔ Exclusive canonicalization works on xml with multiple different default namespaces
✔ Exclusive canonicalization works on xml with multiple similar default namespaces
✔ Exclusive canonicalization works on xml with default namespace outside output nodes
✔ Exclusive canonicalization works when prefixed namespace is defined in output nodes not in the parent chain of who needs it
✔ Exclusive canonicalization works on xml with unordered attributes
✔ Exclusive canonicalization sorts upper case attributes before lower case
✔ Exclusive canonicalization removes Comments
✔ Exclusive canonicalization works on xml with attributes with different namespace than element
✔ Exclusive canonicalization works on xml with attribute values with special characters
✔ Exclusive canonicalization does not normalize whitespace characters into single spaces
✔ Exclusive canonicalization works on xml with element values with special characters
✔ Exclusive canonicalization preserves white space in values
✔ Exclusive canonicalization does not alter CR-NL (windows line separator) sequences
✔ Exclusive canonicalization preserves and encodes CR white space
✔ Exclusive canonicalization preserves white space between elements
✔ Exclusive canonicalization turns empty element to start-end tag pairs
✔ Exclusive canonicalization preserves empty start-end tag pairs
✔ Exclusive canonicalization with empty default namespace outside output nodes
✔ Exclusive canonicalization with empty default namespace inside output nodes
✔ The XML declaration and document type declaration (DTD) are removed
✔ Attribute value delimiters are set to quotation marks (double quotes)
✔ CDATA sections are replaced with their character content
✔ SignedInfo canonization
✔ Exclusive canonicalization works on complex xml
✔ Multiple Canonicalization with namespace definition outside of signed element
✔ Enveloped-signature canonicalization respects currentnode
✔ The XML canonicalization method processes a node-set by imposing the following additional document order rules on the namespace and attribute nodes of each element:   - An element's namespace and attribute nodes have a document order position greater than the element but less than any child node of the element.     Namespace nodes have a lesser document order position than attribute nodes.   - An element's namespace nodes are sorted lexicographically by local name (the default namespace node, if one exists, has no local name and is therefore lexicographically least).   - An element's attribute nodes are sorted lexicographically with namespace URI as the primary key and local name as the secondary key (an empty namespace URI is lexicographically least).     Lexicographic comparison, which orders strings from least to greatest alphabetically, is based on the UCS codepoint values, which is equivalent to lexicographic ordering based on UTF-8.
✔ saml attributed order (bug #25)
✔ Body Xml Element Canonicalization
✔ Overriding namespace in canonicalization

c14nWithComments-unit-tests.js
✔ Exclusive canonicalization works on xml with no namespaces
✔ Exclusive canonicalization works on inner xpath
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes
✔ element used prefixed ns which is also the default
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes. ns definition is not duplicated on each usage
✔ Exclusive canonicalization works on xml with prefixed namespaces defined in output nodes but before used
✔ Exclusive canonicalization works on xml with prefixed namespaces defined outside output nodes
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list
✔ Exclusive canonicalization works on xml with multiple prefixed namespaces defined in inclusive list
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list defined outside output nodes
✔ Exclusive canonicalization works on xml with prefixed namespace defined in inclusive list used on attribute
✔ Exclusive canonicalization works on xml with default namespace inside output nodes
✔ Exclusive canonicalization works on xml with multiple different default namespaces
✔ Exclusive canonicalization works on xml with multiple similar default namespaces
✔ Exclusive canonicalization works on xml with default namespace outside output nodes
✔ Exclusive canonicalization works when prefixed namespace is defined in output nodes not in the parent chain of who needs it
✔ Exclusive canonicalization works on xml with unordered attributes
✔ Exclusive canonicalization sorts upper case attributes before lower case
✔ C14N#WithComments retains Comments
✔ Exclusive canonicalization works on xml with attributes with different namespace than element
✔ Exclusive canonicalization works on xml with attribute and element values with special characters
✔ Exclusive canonicalization preserves white space in values
✔ Exclusive canonicalization preserves white space between elements
✔ Exclusive canonicalization turns empty element to start-end tag pairs
✔ Exclusive canonicalization preserves empty start-end tag pairs
✔ Exclusive canonicalization with empty default namespace outside output nodes
✔ Exclusive canonicalization with empty default namespace inside output nodes
✔ The XML declaration and document type declaration (DTD) are removed
✔ Attribute value delimiters are set to quotation marks (double quotes)
✔ CDATA sections are replaced with their character content
✔ SignedInfo canonization
✔ Exclusive canonicalization works on complex xml
✔ Multiple Canonicalization with namespace definition outside of signed element
✔ Enveloped-signature canonicalization respects currentnode
✔ The XML canonicalization method processes a node-set by imposing the following additional document order rules on the namespace and attribute nodes of each element:   - An element's namespace and attribute nodes have a document order position greater than the element but less than any child node of the element.     Namespace nodes have a lesser document order position than attribute nodes.   - An element's namespace nodes are sorted lexicographically by local name (the default namespace node, if one exists, has no local name and is therefore lexicographically least).   - An element's attribute nodes are sorted lexicographically with namespace URI as the primary key and local name as the secondary key (an empty namespace URI is lexicographically least).     Lexicographic comparison, which orders strings from least to greatest alphabetically, is based on the UCS codepoint values, which is equivalent to lexicographic ordering based on UTF-8.
✔ saml attributed order (bug #25)

signature-unit-tests.js
✔ signer adds increasing id attributes to elements
✔ signer adds references with namespaces
✔ signer does not duplicate existing id attributes
✔ signer adds custom attributes to the signature root node
✔ signer appends signature to the root node by default
✔ signer appends signature to a reference node
✔ signer prepends signature to a reference node
✔ signer inserts signature before a reference node
✔ signer inserts signature after a reference node
✔ signer creates signature with correct structure
✔ signer creates signature with correct structure (with prefix)
✔ signer creates correct signature values
✔ signer creates correct signature values using async callback
✔ correctly loads signature
✔ verify valid signature
✔ fail invalid signature
✔ allow empty reference uri when signing
✔ signer appends signature to a non-existing reference node
✔ signer adds existing prefixes
✔ creates InclusiveNamespaces element when inclusiveNamespacesPrefixList is set on Reference
✔ does not create InclusiveNamespaces element when inclusiveNamespacesPrefixList is not set on Reference
✔ creates InclusiveNamespaces element inside CanonicalizationMethod when inclusiveNamespacesPrefixList is set on SignedXml options
✔ does not create InclusiveNamespaces element inside CanonicalizationMethod when inclusiveNamespacesPrefixList is not set on SignedXml options
✔ adds attributes to KeyInfo element when attrs are present in keyInfoProvider

saml-response-test.js
✔ test validating SAML response
✔ test validating wrapped assertion signature
✔ test validating SAML response where a namespace is defined outside the signed element
✔ test reference id does not contain quotes
✔ test validating SAML response WithComments

signature-integration-tests.js
✔ verify signature
✔ verify signature of complex element
✔ empty URI reference should consider the whole document
✔ add canonicalization if output of transforms will be a node-set rather than an octet stream
✔ signature with inclusive namespaces
✔ signature with inclusive namespaces with unix line separators
✔ signature with inclusive namespaces with windows line separators
✔ should create single root xml document when signing inner node

document-test.js
✔ test with a document (using FileKeyInfo)
✔ test with a document (using StringKeyInfo)

wsfed-metadata-test.js
✔ test validating WS-Fed Metadata

hmac-tests.js
✔ test validating HMAC signature
✔ test HMAC signature with incorrect key
✔ test create and validate HMAC signature

c14n-non-exclusive-unit-test.js
✔ findAncestorNs: Correctly picks up root ancestor namespace
✔ findAncestorNs: Correctly picks up intermediate ancestor namespace
✔ findAncestorNs: Correctly picks up multiple ancestor namespaces declared in the one same element
✔ findAncestorNs: Correctly picks up multiple ancestor namespaces scattered among depth
✔ findAncestorNs: Correctly picks up multiple ancestor namespaces without duplicate
✔ findAncestorNs: Correctly eliminates duplicate prefix
✔ findAncestorNs: Exclude namespace which is already declared with same prefix on target node
✖ findAncestorNs: Should not find namespace when both has no prefix

Error: XPath parse error
    at XPathParser.parse (/home/chris/code/xml-crypto/node_modules/xpath/xpath.js:1278:27)
    at new XPathExpression (/home/chris/code/xml-crypto/node_modules/xpath/xpath.js:4341:24)
    at Object.exports.selectWithResolver (/home/chris/code/xml-crypto/node_modules/xpath/xpath.js:4818:26)
    at findAncestorNs (/home/chris/code/xml-crypto/lib/signed-xml.js:190:25)
    at test_findAncestorNs (/home/chris/code/xml-crypto/test/c14n-non-exclusive-unit-test.js:22:16)
    at Object.exports.findAncestorNs: Should not find namespace when both has no prefix (/home/chris/code/xml-crypto/test/c14n-non-exclusive-unit-test.js:103:3)
    at Object.<anonymous> (/home/chris/code/xml-crypto/node_modules/nodeunit/lib/core.js:236:16)
    at /home/chris/code/xml-crypto/node_modules/nodeunit/lib/core.js:236:16
    at Object.exports.runTest (/home/chris/code/xml-crypto/node_modules/nodeunit/lib/core.js:70:9)
    at /home/chris/code/xml-crypto/node_modules/nodeunit/lib/core.js:118:25

✖ findAncestorNs: Should find namespace without prefix

Error: XPath parse error
    at XPathParser.parse (/home/chris/code/xml-crypto/node_modules/xpath/xpath.js:1278:27)
    at new XPathExpression (/home/chris/code/xml-crypto/node_modules/xpath/xpath.js:4341:24)
    at Object.exports.selectWithResolver (/home/chris/code/xml-crypto/node_modules/xpath/xpath.js:4818:26)
    at findAncestorNs (/home/chris/code/xml-crypto/lib/signed-xml.js:190:25)
    at test_findAncestorNs (/home/chris/code/xml-crypto/test/c14n-non-exclusive-unit-test.js:22:16)
    at Object.exports.findAncestorNs: Should find namespace without prefix (/home/chris/code/xml-crypto/test/c14n-non-exclusive-unit-test.js:112:3)
    at Object.<anonymous> (/home/chris/code/xml-crypto/node_modules/nodeunit/lib/core.js:236:16)
    at /home/chris/code/xml-crypto/node_modules/nodeunit/lib/core.js:236:16
    at Object.exports.runTest (/home/chris/code/xml-crypto/node_modules/nodeunit/lib/core.js:70:9)
    at /home/chris/code/xml-crypto/node_modules/nodeunit/lib/core.js:118:25

✔ findAncestorNs: Ignores namespace declared in the target xpath node
✔ C14n: Correctly picks up root ancestor namespace
✔ C14n: Correctly picks up intermediate ancestor namespace
✔ C14n: Correctly picks up multiple ancestor namespaces declared in the one same element
✔ C14n: Correctly picks up multiple ancestor namespaces scattered among depth
✔ C14n: Correctly picks up multiple ancestor namespaces without duplicate
✔ C14n: Correctly eliminates duplicate prefix
✔ C14n: Exclude namespace which is already declared with same prefix on target node
✔ C14n: Preserve namespace declared in the target xpath node
✔ C14n: Don't redeclare an attribute's namespace prefix if already in scope
✔ C14n: Don't declare an attribute's namespace prefix if in scope from parent
✔ C14n: should not has colon when parent namespace has no prefix

FAILURES: 2/235 assertions failed (572ms)
npm ERR! Test failed.  See above for more details.

@cjbarth Fixed in https://github.com/node-saml/xml-crypto/pull/338


Masonry layout gap issue

You see a screenshot

Thanks for the feedback!
Currently, the masonry layout is optimized for column-based flex directions. Changing the direction to row or row-reverse will indeed cause misalignment.
However, a new masonry layout for row-based flex directions will be added in the next update.
Thanks again for your input—it’s greatly appreciated!


Textless NLP / GSLM: Speech resynthesis produces something unrelated to source speech

What is your question?
As far as I understand, examples/textless_nlp/gslm/tools/resynthesize_speech.py should take a speech sample (audio), encode it to units, and generate output speech from these units. The output speech should resemble the input sample.
However, when I do this with the released pre-trained models, output is gibberish that doesn't sound like input at all.
I attach the samples and steps I took. Is there anything I do is wrong?
Thank you!
Code

Download pre-trained models (HuBERT-km200 in this example):

mkdir -p /content/speech/hubert200
cd /content/speech/hubert200
wget https://dl.fbaipublicfiles.com/hubert/hubert_base_ls960.pt -nc
wget https://dl.fbaipublicfiles.com/textless_nlp/gslm/hubert/km200/km.bin -nc
wget https://dl.fbaipublicfiles.com/textless_nlp/gslm/hubert/tts_km200/tts_checkpoint_best.pt -nc
wget https://dl.fbaipublicfiles.com/textless_nlp/gslm/waveglow_256channels_new.pt -nc

Generate the code_dict.txt file. I didn't find "official" description of how to do it, so I used this comment. Note that if I use dict of size 199 or 200, the models will fail

with open("code_dict.txt", "wt") as f:
    for i in range(1, 199):   # Effectively 198 items
        f.write(str(i) + "\n")

Download and convert source audio sample from the speech resynthesis example site:

wget https://speechbot.github.io/resynthesis/audio/teaser/p269_182.mp3 -nc
ffmpeg -y -i p269_182.mp3 sample.input.wav

Run resynthesis:

export FAIRSEQ_ROOT=/home/ubuntu/fairseq
export DATA=/content/speech/hubert200
export TYPE=hubert

echo sample.input.wav > input.txt
echo sample.out.layer5.wav >> input.txt

PYTHONPATH=${FAIRSEQ_ROOT}:${FAIRSEQ_ROOT}/examples/textless_nlp/gslm/unit2speech python ${FAIRSEQ_ROOT}/examples/textless_nlp/gslm/tools/resynthesize_speech.py \
    --feature_type $TYPE \
    --layer 5 \
    --acoustic_model_path $DATA/hubert_base_ls960.pt \
    --kmeans_model_path $DATA/km.bin \
    --tts_model_path $DATA/tts_checkpoint_best.pt \
    --code_dict_path $DATA/code_dict.txt \
    --waveglow_path $DATA/waveglow_256channels_new.pt \
    --max_decoder_steps 1000 < input.txt

Check the result (in the attachement
). It doesn't sound like the original audio at all.

What have you tried?
I tried to run resynthesis with different number of units, taking different HuBERT layer for features, different audio, and different offsets for code_dict.txt
In addition to steps outlined above, I tried to generate speech with units2speech directly from units in devset. It still produces gibberish. This makes me think that the problem may lie in bad pre-trained tts checkpoint.
What's your environment?

fairseq Version (e.g., 1.0 or main): main
PyTorch Version (e.g., 1.0) 1.9.1
OS (e.g., Linux): Ubuntu 18.04
How you installed fairseq (pip, source): source
Build command you used (if compiling from source): pip install -e .
Python version: 3.7.0
CUDA/cuDNN version: cuda_11.1.TC455_06.29190527_0
GPU models and configuration: Tesla V100-SXM2
Any other relevant information:

samples.zip contains generates samples - both audio and units.

thank you asivokon for posting this issue. i ran into the same.
seems like missing code_dict.txt file is doing some magic mappings which should not just be a seq of index from 1 to N.

@asivokon I've updated TTS checkpoints + provided code_dict files and manually verified that a few of the checkpoints work.
@bradgrimm unfortunately, it seems we don't have a good Hubert500 model. As those were not used in the paper, we decided not to support the case of 500 unit models. Sorry about the confusion.
Thanks for your help!

Hi,
I am also re synthesizing audio using the same checkpoints but I am not getting correct results. My generated audio seems truncated.
I have attached google drive link for the original and generated audio. If someone knows what's the issue please help me out.
Thanks
Link


DW2-WiFi switch

The latest Home Assistant updates  (core 2024.1.2) and (OS 11.3), have caused the integration to throw up a lot of confusion.
The previous update 14 days ago rendered the binary sensor unavailable, however the read only Lock sensor became available.
The latest update now shows the binary sensor available, which, is good, but it doesn't respond to any changing state.
The lock binary sensor still works however, this means you have to use the lock in automations and well the door open/closed sensor is now just a useless decoration.

Exactly the same issue here. I have the DW2 switches as key components in automations, but now the state changes are so slow. none of my integrations work.

As an alternative I used to use Node-Red to do the automation, but that
died the death.  It seems Sonoff is becoming a useless investment.  I will
write to them and see what they have to say
On Wed, 10 Jan 2024, 18:23 Breworks, @.***> wrote:

Exactly the same issue here. I have the DW2 switches as key components in
automations, but now the state changes are so slow. none of my integrations
work.
—
Reply to this email directly, view it on GitHub
https://github.com/AlexxIT/SonoffLAN/issues/1314#issuecomment-1885391099,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASL32WBQFRXDYRZDJEE6VXTYN3MDTAVCNFSM6AAAAABBTCAUY2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOBVGM4TCMBZHE
.
You are receiving this because you authored the thread.Message ID:
@.***>

I don't know if this might help, to keep things operating, while somebody
sorts the issue out.
You can use the DW2 Switch LOCK, which for some reason does still work (the
only thing that does now). and I found a little trick to set the binary
state of the DW2 door open/closed, so that you can use the entity that
doesn't work
This also might be of use in some other scenarios.
Go to the Config folder

Put the following in the config file    python_script:
Put a folder in the config folder     python_scripts
Put a file called*    set_state.py    in the python_scripts folder*
Restart HA
I have put the file set_state,py as an attachment, but iif it gets
stripped out of this email you should be able to search for it

In Automations you can use the python script to set the state as this
example

service: python_script.set_state
data_template:
entity_id: binary_sensor.sonoff_1001429a3d
state: "on"

Norman Dilley
On Thu, 11 Jan 2024 at 08:01, goodsale @.***> wrote:

I have the same problems too.
The Zigbee devices linked to the sonoff hub do not respond to on off
commands and the automations no longer work.
I have many Sonoff devices controlled by homeassistant and right now my
house is down.
—
Reply to this email directly, view it on GitHub
https://github.com/AlexxIT/SonoffLAN/issues/1314#issuecomment-1886571910,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASL32WGI56OUEXX7KDJ45GTYN6L6NAVCNFSM6AAAAABBTCAUY2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOBWGU3TCOJRGA
.
You are receiving this because you authored the thread.Message ID:
@.***>

#==================================================================================================
python_scripts/set_state.py
#==================================================================================================
#--------------------------------------------------------------------------------------------------
Set the state or other attributes for the entity specified in the Automation Action
#--------------------------------------------------------------------------------------------------
inputEntity = data.get('entity_id')
if inputEntity is None:
logger.warning("===== entity_id is required if you want to set something.")
else:
inputStateObject = hass.states.get(inputEntity)
inputState = inputStateObject.state
inputAttributesObject = inputStateObject.attributes.copy()
for item in data:
    newAttribute = data.get(item)
    logger.debug("===== item = {0}; value = {1}".format(item,newAttribute))
    if item == 'entity_id':
        continue            # already handled
    elif item == 'state':
        inputState = newAttribute
    else:
        inputAttributesObject[item] = newAttribute

hass.states.set(inputEntity, inputState, inputAttributesObject)

same issue...my automations are not working anymore :(

I got fed up with it, gave in and went back to  Core 2023.12.4 and version
v3.5.3 Sonoff, which works just fine
On Fri, 12 Jan 2024 at 10:20, LukeRabauke @.***> wrote:

same issue...my automations are not working anymore :(
—
Reply to this email directly, view it on GitHub
https://github.com/AlexxIT/SonoffLAN/issues/1314#issuecomment-1888821375,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASL32WFGFOBJWJZ4I7KU7OLYOEE5XAVCNFSM6AAAAABBTCAUY2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOBYHAZDCMZXGU
.
You are receiving this because you authored the thread.Message ID:
@.***>

…

just wanted to let you know its working now after updating to the latest OS.
Core
2024.1.3
Supervisor
2023.12.1
Operating System
11.4
Frontend
20240104.0
Sonoff LAN:
v3.5.4

Thank you so much.  I am sure everyone will appreciate your kind
attention.   I will do the update tomorrow morning
Best wishes,
On Thu, 18 Jan 2024, 16:32 LukeRabauke, @.***> wrote:

… <#m_6595575140483003533_>
just wanted to let you know its working now after updating to the latest
OS.
Core
2024.1.3
Supervisor
2023.12.1
Operating System
11.4
Frontend
20240104.0
Sonoff LAN:
v3.5.4
—
Reply to this email directly, view it on GitHub
https://github.com/AlexxIT/SonoffLAN/issues/1314#issuecomment-1898821847,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASL32WGPFA2YVM72LM3ZZVTYPFFDTAVCNFSM6AAAAABBTCAUY2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQOJYHAZDCOBUG4
.
You are receiving this because you authored the thread.Message ID:
@.***>

https://github.com/AlexxIT/SonoffLAN#issues


Stream Deck XL

Configured my buttons in companion.
When i connect my Stream Deck to the pc it lights up with only white buttons.
Stream deck software installed on pc and from time to time the buttons appear on the stream deck software but not on the stream deck itself, buttons stay white.
what am i doing wrong.
Thanks

Does it do the same with neither the stream deck software and companion running?
If so this sounds like a faulty device that should be returned.

closing due to inactivity


[Question]

¿To you see your own skin, the multiogar-edited need release to official page?,
example:
minemoore.tk
play.ogarul.tk
etc
Answer me please.

@AlexByte918 No, https://github.com/Megabyte918/MultiOgar-Edited/issues/132


[Bug]: Unable to Process MP4 due to OGG Vorbis Audio Track

What happened?
Vibe does not start processing the video file. OGG Vorbis is the issue. I had to convert the audio track to AAC first.
Steps to reproduce

Make sure video's audio track is Vorbis.
Start conversion, and Vibe won't even start converting.

What OS are you seeing the problem on?
Linux
Relevant log output
options: {
  "path": "/home/helene/Videos/tmp/RV-FM.mp4",
  "model_path": "/home/helene/.local/share/github.com.thewh1teagle.vibe/ggml-medium.bin",
  "lang": "en",
  "verbose": false,
  "n_threads": 6,
  "init_prompt": "",
  "temperature": 0.4,
  "translate": null,
  "max_text_ctx": 32
}

Caused by:
    Invalid argument

Location:
    core/src/audio/encoder.rs:143:13

Thanks for reporting!
Can you share the audio file? So I can check why it failed to load it?
You can upload it to google drive and share the link here

Hi, please download audio 1 and audio 2. Thank you for examining the files.

Hi, please download audio 1 and audio 2. Thank you for examining the files.

I just tried to transcribe both files, looks like it does transcribe them without errors on Windows 11 with vibe 2.0.3
Does it partially works for you too and only after a while throws error? or for you it doesn't work at all and immediately show error?

Ah, of course, tested on Linux. Vibe doesn't even start transcribing.

Maybe try from cli with rust log enabled? See debug.md in this repo

OK, I'll try it again.

Hi, please download audio 1 and audio 2. Thank you for examining the files.

I tested audio 1 on Linux Mint 21 (Ubuntu 22.04-based) with Vibe 2.0.6 and it does start to transcribe.

@oleole39
Thanks! It works for me too. since we now use ffmpeg directly, seems like the problem resolved :)


Update Russian translation

Translation of fileSizeTypes in Russian.

Added new label "now": "Now", to the English file if you don't mind adding it to yours?


Upgrade PodDisruptionBudget API to v1

Q
A

Bug fix?
no

New feature?
yes

API breaks?
no

Deprecations?
no

License
Apache 2.0

What's in this PR?
Upgrade PodDisruptionBudget API to v1
Why?

Relying on newly stable APIs
Additional context

Checklist

[x] Implementation tested
[x] Error handling code meets the guideline
[x] Logging code meets the guideline
[x] User guide and development docs updated (if needed)

Thank you again for the contribution Adrian.


Add convenient cli transaction build command

The API parts of this have now been tidied up in #2906.
This PR should now either:

be rebased on top of #2906 to contain only the CLI parts (as all dep updates and API changes should now be done)
used to cherry-pick the CLI changes and made into a new PR based on top of #2906.

Superceded by https://github.com/input-output-hk/cardano-node/pull/2921


Review Flask-MailboxValidator extension for listing

Dear Flask Team,
MailboxValidator had introduced a new Flask extension that can help Flask users to validate email in various purpose. We would like to submit this extension for listing in the Flask Extension Registry.
Extension Name: Flask_MailboxValidator
PYPI link: https://pypi.org/project/flask-MailboxValidator/
Version: 1.0.1
Maintainer: MailboxValidator<EMAIL_ADDRESS>Repository: https://github.com/MailboxValidator/Flask_MailboxValidator
License: MIT
Documentation link: https://flask-mailboxvalidator.readthedocs.io/en/latest/
Thank You.

Extensions are added by submitting a pr to the https://github.com/pallets/flask-website repo. Note that I'm not currently deploying new versions of that site (I'm working towards a new process), but please submit a PR anyway so I can keep track. Thank you!

OK, I have created the PR. Thanks!


Reapply changes from wayland PR manually on top of ubuntu/jammy

This PR should be equivalent to merging https://github.com/regolith-linux/ilia/pull/48

@SoumyaRanjanPatnaik feel free to copy this diff to another PR to merge so that the commit reflects it's true author..

Thanks 🙂


Error: cannot use ksw.Keyset

To serialize keyset, i use ks, err := proto.Marshal(ksw.Keyset)
But there is a warning: package github.com/golang/protobuf/proto is deprecated: Use the "google.golang.org/protobuf/proto" package instead.
With "google.golang.org/protobuf/proto" there is an error: cannot use ksw.Keyset (variable of type *tink_go_proto.Keyset) as protoreflect.ProtoMessage value in argument to proto.Marshal: missing method ProtoReflect
Please help to fix.

I believe this is a known issue. @chuckx thoughts?
BTW can you tell us why you want to serialize keysets? Does https://github.com/google/tink/blob/master/go/insecurecleartextkeyset/insecurecleartextkeyset.go#L60 work for you?

I want to exchange private key for Decryption later (Hybrid).
I think your link is that i have to try.
Thank you.

In the context of Hybrid encryption, the private key material should be kept on the encrypting side. There should be no need to serialize it. Instead, you should extract the public key material and serialize that.
Serializing private key material in the clear should be avoided, which is why that functionality is in package named insecureclearttextkeyset and contains warning against it's usage.
Assuming that ksw.Keyset is a keyset.Handle instance that contains private key material, you'll want to use Handle.Public() to create a new keyset.Handle instance which contains only the corresponding public keys.
Then you can use Handle.WriteWithNoSecrets() to serialize an unencrypted copy of the keyset. This approach avoids needing to use the insecurecleartextkeyset package.

Regarding the warning message, it's more of a call to action for us, the maintainers of Tink, as opposed to something that users of the library need to do something about. I'm working on a set of updates to the Go protobuf code which will remove that warning. The updates should probably land before the next minor release. In any case, the issue is being tracked in #439.

Thank you chuckx


ch: Get error string from exception when error stack is undefined

When out of memory happens, exception value reference doesn’t have
a stack property or stack is undefined.
This update converts exception value reference to string in such case
to produce a meaningful output.
To test the issue, run script below with ch:
var arr = [];
for(var i=0;i<1e9;i++)
 arr[i]  = i%9;

print(“-> " + arr[Date.now()%1e9]);

Hi @obastemur, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, MSBOT;

Awesome, thanks for this, it actually just came up in another issue someone opened (#95)! @kunalspathak, can you review?
I believe this should resolve #8 as well.

Awesome, thanks for this, it actually just came up in another issue someone opened (#95)! @kunalspathak, can you review?
I believe this should resolve #8 as well.

@MikeHolman yes it fixes both.

@obastemur, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, MSBOT;

Could you add your test case as a unit test with a baseline?

@dilijev I was thinking about that too, but different host might give different error message. IMO we would need to add that ourselves so we can make sure we have standardized OOM/OOS console message across our testing.

@MikeHolman true, but if the messages are different, tests won't necessarily catch that and it's still a work item to follow up with. If it does break any internal tests it should be fairly straightforward to correct.

@dilijev You've sold me. So :+1: to that suggestion.

The location for the test case, how about /test/Error/ ? and test filename errorOutOfMemory.js (and baseline) ?
Test script: (the one below produces OutOfMemory much faster than the initial one on x64)
var arr = [];

arr[0] = "HelloWorld";

for(var i=0; i < 1e9; i++) {
  arr[i] = arr.join("" + (i%10));
}

print(arr[Date.now()%1e9]);

@obastemur . That is the right location, you can add test\Error\errorOutofMemory.js and update the PR.

Sorry to be wishy-washy on this. I think we don't want tests actually bringing us to low memory situation. Especially on x64, this can cause tests to run slow or to lock up your machine reading/writing to disk. It might also cause some instability if some other program fails an allocation.
Instead of having a UT to throw out of memory, I think it might be better to throw out of stack instead. (Going to OOM can make your machine slow, and cause some instability if some other program fails an allocation). And yes, putting in test/Error/ seems good. Just make sure to add your new test to the rlexe.xml file in that folder.

I think I'd recommend against trying to catch an OOM on x64 since it's really hard on the machine's resources and will slow down or prevent other tests from running in parallel, or cause unexpected errors. I would tag it as exclude_x64 or similar in the rlexe.xml. Testing this case in x86 will cover the code path we're trying to cover without forcing the entire system into a low memory state.

exclude_amd64 is the proper tag.  rl tests still use legacy build architecture and build type names.
I've opened issue #110 as a suggestion to convert the tags to the new names.

How about global variables for ARCH and other things ? "PROCESS_PLATFORM", "PROCESS_ARCH" etc ?

@obastemur do you mean in your command shell environment?  runtests.cmd requires the build flavor be specified as a command line switch (e.g. -x64debug) and then it knows how to look up the binaries in the default build output location relative to the script.
We've made the decision to move away from a shell build environment that relies on environment variables to remove getting started overhead.  Personally I have a little script that sets up a default build flavor for quick testing and creates a doskey alias for ch.exe, but I haven't hammered it into a state that I find ready to meet everyone's needs yet.  I definitely recommend setting up an alias in your shell for quick usage of ch.

@ianwjhalliday No. I mean embedding those into ch as Javascript global variables.

@obastemur oh, for what purpose?

I remember outofmemory behavior was different on x86, x64 and ARM back to preview days. It is kind a useful to keep some switches inside the test file. I agree test_outOfMemory is a potential trouble on CI / x64 yet it can be tested on dev machine.

So, what is the expected test effort here to finalize this PR? and rest?

You could run unittest as mentioned in contribution guidelines. Also I don't see any unit test added by you. Are you planning to add it?
I didn't get chance to review your latest PR. I will do it sometime today or over the weekend.
Thanks once again!

You could run unittest as mentioned in contribution guidelines.

I do that anyways but doesn't CI already doing that ? (11 successful checks..)

Also I don't see any unit test added by you. Are you planning to add it?

That was the question. There are many opinions around testing effort under this thread and the expectation is not clear to me.

I recommend updating the test in test/Error/outofmem.js as @kunalspathak mentioned earlier.  This test runs instantly on x64.  You can take the body of the try block and repeat it after the catch block.  That will test both the properties of the error object within javascript as well as ch.exe's handling of the error object.
E.g.
diff --git a/test/Error/outofmem.js b/test/Error/outofmem.js
index 58e43ff..d871793 100644
--- a/test/Error/outofmem.js
+++ b/test/Error/outofmem.js
@@ -18,3 +18,7 @@ catch (e)
     WScript.Echo(e.number);
 }

+var longString = "A";
+for (var i = 0; i < 31; i++)
+    longString += longString;
+WScript.Echo(longString.toString());

You can run just the Error test directory before updating the PR to make sure your update to the test passes by using runtests.cmd -x64debug -dirs Error.  Note runtests.cmd must be called from the test directory.

I do that anyways but doesn't CI already doing that ? (11 successful checks..)

Yes it does, my bad. Once you add new unit test, do a pass with it as @ianwjhalliday  mentioned.

Updated the existing test/Error/outofmem.js test.

@kunalspathak now this PR uses exception.toString instead of name + message as discussed
@dilijev @ianwjhalliday current test case is extended to cover printException failure.

The test and baseline look good to me. Someone else should sign off on the other changes.

Awesome, looks good to me too.  @kunalspathak you should take a look too

The code looks good to me. Thanks @obastemur !

Thanks for the review.

I'm also in favor of printing warning message if any one of IfJsrtErrorFail fails inside this method.

That's a good point. Feel free to update this PR or submit another PR for it.

Once this merged, going to work on this part.

@obastemur  our internal tool has problem with the new unittest – due to difference in the baseline on what ch.exe produces compared to our internal tool. This internal tool is based upon IActiveScriptError interface, which has richer exception information.
Could you remove the unittest? I saw @MikeHolman already pointed that out earlier in this PR itself of not adding the unittest.
The actual fix for this problem would be to provide the stack from the ChakraCore, as we ideally want to print that where the OOM has happened.

Could you remove the unittest?

@akroshg  Done

@obastemur Thanks! And really sorry for the runaround on what should have been a small change.

@MikeHolman wasn't a bad experience though. Helped me to learn couple of dynamics here.

I think it's possible for us to add ch.exe-specific tests. For a change like this that would be reasonable...
Still this is fine as it is And we can pick up the discussion later.


Display 20 results on search page

Since the introduction of pagination there is no need to show an
excessive amount of results on the search page.
This commit changes the maximum number of results to 20.
Some tests had to be updated to reflect this, because they either
relied on the default value (they don't anymore) or relied on the fact
that when searching with the default number of results we don't show
the count in the URL.
From now on, changing the default number of results to anything but 50
wil not make the tests fail.

From now on, changing the default number of results to anything but 50
wil not make the tests fail.

:clap:

Would you be able to elaborate on the reason behind this change? When we built some of the filter pages on GOV.UK we initially had infinite scroll on the page. We added some tracking to that page to see how far people scrolled and found out that a large number of people scrolled to somewhere within the first 40 results but few went beyond that. So when we removed the infinite scroll and reverted to standard pagination we showed 40 results per page and were pretty confident that most users (more than 98% from memory) would never need to use the pagination.
I know that there is much more sophisticated analytics on the search pages though so we be interesting to see what the effect this change has on how users use search results and what we can learn from it. It would be good to also be consistent about the number of documents we show per page on all our document result style pages and iterate them with this page.

+1 to @edds comment, it would be really good to feed this change into our other design patterns wrt result count.

Good point.
Here's a graph of the click positions in the past month:

From Tara:

The main point is that 95% of clicks are on the top 20 results. There is a clear dropoff after 50, so I'd expect a similar dropoff at 20 instead, and we can monitor how much the use of pagination increases.

This sprint we're also improving on the search results itself, so we're also going to track what results appear for any given search. This should help us to improve the results in the future.
This might get changed in the future, depending on what the data says. For now we want to keep this change to this search interface because that's what we're working on.
CC @KushalP

In addition to what @tijmenb said, we're not going to propagate this change across all similar search interfaces.
We're intending to capture specific data for this interface which we can then use to tweak and improve it. Hopefully the same data points can be used on similar interfaces in the future (with hypotheses) and we can improve those too.

I agree with all the above, but In further addition ... there's good reason to think that the appropriate number of results to display for a "finder" might be different than for the appropriate number to display for the main search interface.  A reasonable hypothesis is that users on finder pages will often want to see all the results which match their search, whereas most users on the main search interface are searching for the answer to a particular question, so only want 1, or a few, documents.
This all depends on the quality of our ranking, of course, and we'll be monitoring closely with analytics.
There is a strong technical benefit to showing fewer results:

less data for users to download, and a faster response
we're adding tracking of which results have been shown, and this is easier with fewer results

But, I think the most compelling reason to reduce the results per page is that some users get overwhelmed by long lists of documents, and even if the top few are what they need, they feel they have to read all of them to be sure.  I've observed this happen in user research sessions, and it's painful to see.  I'd like to get to a state where we're happy to only show 10 results per page (or at least on the first page), but I don't think our ranking quality is high enough yet.