settings: add SettingsExtManual Trait for get::/set:: fn

This current throws
error[E0308]: mismatched types
  --> src/settings.rs:15:31
   |
15 |         self.set_boolean(key, value)
   |                               ^^^^^ expected bool, found type parameter
   |
   = note: expected type `bool` (bool)
              found type `bool` (type parameter)

Not quite positive what to make of that.
I'll add more types once this works.

This because you added bool as implementation constraint:
impl<bool, O: SettingsExt> SettingsExtManual<bool> for O {

try just
impl<O: SettingsExt> SettingsExtManual<bool> for O {

Instead of introducing a new trait here, I'd suggest that we fix up the GVariant API so it works closer to how GValue works. And then you can use exactly the same traits (ToVariant / FromVariant) from GVariant here together with g_settings_get_value() / g_settings_set_value().
Makes no sense to replicate the GVariant machinery here another time.

Ah, so you want to just always use get_value (and converting to the requested type)/set_value (and converting the type to a Variant)? What exactly would need to be fixed in Variant?

Maybe nothing, is anything missing in GVariant for implementing this here?
In any case, that would be the easiest and in the end equivalent to calling get_boolean(), etc. anyway.

Maybe nothing, is anything missing in GVariant for implementing this here?

Oh, alright, I'd suggest that we fix up the GVariant API sounded to me as if something needed to be changed :)
Will work on it tomorrow, thanks for the pointer.

Alright, this now uses the ToVariant/FromVariant API

Alright, this now uses the ToVariant/FromVariant API

Thanks, looks much nicer now :)

Alright, added Results, will write some tests now to see it in action.

Alright, I guess the new version is more in line what GLib expects us to do, since it expects getting an unknown key to be a programmer error. I've made fixup commits so you can see the difference.

Other than that I think this is good to go now (?)

Other than that I think this is good to go now (?)

Indeed, thanks for working on this :)

Indeed, thanks for working on this :)

Well, thanks for all the pointers! :)

Hm, the tests seem to be a bit flaky with:
test settings::test::string_get ...
(process:7244): GLib-GObject-CRITICAL **: 16:50:33.710: g_object_ref: assertion 'G_IS_OBJECT (object)' failed

(process:7244): GLib-GObject-CRITICAL **: 16:50:33.710: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
**
GLib-GObject:ERROR:../gobject/gobject.c:4453:g_weak_ref_set: assertion failed: (weak_locations != NULL)
error: process didn't exit successfully: `/home/rasmus/Projects/gio/target/debug/deps/gio-8e55b7fc5fe6fb99` (signal: 6, SIGABRT: process abort signal)

Can you reproduce the test flakiness yourself too or only on CI?  That looks rather problematic, probably memory unsafe somewhere.
I can take a look if it's easy to reproduce. But gdb and valgrind would be the tools of choice here.

It only happens on my system from time to time while running cargo test

Alright, seems like it happens when I:

run cargo test
Change something in the source file afterwards (so cargo rebuilds the test)
run cargo test again <- it happens here

Not quite sure why though

Yup, it's random, just run it in a loop until it fails, takes 3-5 tries for me:
#!/bin/bash
cargo test
while [ $? == 0 ]; do
	cargo test
done

Maybe it's because the tests are run in parallel though?

Will take a look. It might be that the GSettings API is not thread-safe and we don't guard against that... but that would be rather unfortunate. I'll take a look :)

Also clearly not caused by your changes but something being broken before

Yes it seems to be caused by running multiple threads at once, awesome. Now to find out if that's a bug in gio or we must prevent usage from multiple threads at once!

It usually explodes here for me
Thread 1 (Thread 0x7f57fecf5700 (LWP 31753)):
#0  0x00007f57ff504885 in _g_log_abort (breakpoint=1) at ../../../glib/gmessages.c:554
#1  0x00007f57ff505b8d in g_logv (log_domain=0x7f57ff613258 "GLib-GObject", log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=args@entry=0x7f57fecf41a0) at ../../../glib/gmessages.c:1371
#2  0x00007f57ff505d5f in g_log (log_domain=log_domain@entry=0x7f57ff613258 "GLib-GObject", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7f57ff55557c "%s: assertion '%s' failed") at ../../../glib/gmessages.c:1413
#3  0x00007f57ff506559 in g_return_if_fail_warning (log_domain=log_domain@entry=0x7f57ff613258 "GLib-GObject", pretty_function=pretty_function@entry=0x7f57ff6167f8 <__FUNCTION__.15104> "g_object_ref", expression=expression@entry=0x7f57ff61559f "G_IS_OBJECT (object)") at ../../../glib/gmessages.c:2767
#4  0x00007f57ff5e9c4c in g_object_ref (_object=0x7f57e8002170) at ../../../gobject/gobject.c:3212
#5  0x00007f57ff5efbc5 in g_weak_ref_get (weak_ref=<optimized out>) at ../../../gobject/gobject.c:4393
#6  0x00007f57ff712df2 in g_settings_backend_invoke_closure (user_data=0x7f57e8009e80) at ../../../gio/gsettingsbackend.c:263
#7  0x00007f57ff4ffa05 in g_main_context_invoke_full (context=0x7f57f80061e0, priority=0, function=0x7f57ff712de0 <g_settings_backend_invoke_closure>, data=0x7f57e8009e80, notify=0x0) at ../../../glib/gmain.c:5843
#8  0x00007f57ff4ffa50 in g_main_context_invoke (context=<optimized out>, function=<optimized out>, data=<optimized out>) at ../../../glib/gmain.c:5788
#9  0x00007f57ff712f68 in g_settings_backend_dispatch_signal (backend=0x7f57e8009510 [GMemorySettingsBackend], function_offset=0, name=0x55cc920c0760 "/com/github/gtk-rs/test-bool", origin_tag=0x0, names=0x0) at ../../../gio/gsettingsbackend.c:330
#10 0x00007f57ff7135bb in g_settings_backend_changed (backend=<optimized out>, key=<optimized out>, origin_tag=<optimized out>) at ../../../gio/gsettingsbackend.c:379
#11 0x00007f57ff7129ce in g_memory_settings_backend_write (backend=0x7f57e8009510 [GMemorySettingsBackend], key=0x55cc920c0760 "/com/github/gtk-rs/test-bool", value=0x7f57f8009060, origin_tag=0x0) at ../../../gio/gmemorysettingsbackend.c:80
#12 0x00007f57ff713b24 in g_settings_backend_write (backend=0x7f57e8009510 [GMemorySettingsBackend], key=key@entry=0x55cc920c0760 "/com/github/gtk-rs/test-bool", value=value@entry=0x7f57f8009060, origin_tag=origin_tag@entry=0x0) at ../../../gio/gsettingsbackend.c:793
#13 0x00007f57ff718023 in g_settings_write_to_backend (settings=settings@entry=0x7f57f8007430 [GSettings], value=value@entry=0x7f57f8009060, key=<optimized out>) at ../../../gio/gsettings.c:1151
#14 0x00007f57ff719d78 in g_settings_set_value (settings=0x7f57f8007430 [GSettings], key=0x7f57f80061a0 "test-bool", value=0x7f57f8009060) at ../../../gio/gsettings.c:1591

#0  0x00007f57ff48d0df in futex_abstimed_wait (private=0, abstime=0x0, expected=2, futex_word=0x7f57f800b008) at ../sysdeps/unix/sysv/linux/futex-internal.h:172
#1  0x00007f57ff48d0df in __pthread_rwlock_wrlock_full (abstime=0x0, rwlock=0x7f57f800b000) at pthread_rwlock_common.c:803
#2  0x00007f57ff48d0df in __GI___pthread_rwlock_wrlock (rwlock=0x7f57f800b000) at pthread_rwlock_wrlock.c:27
#3  0x00007f57ff5491f5 in g_rw_lock_writer_lock (rw_lock=rw_lock@entry=0x7f57ff62c220 <weak_locations_lock>) at ../../../glib/gthread-posix.c:468
#4  0x00007f57ff5e9f02 in g_object_unref (_object=<optimized out>) at ../../../gobject/gobject.c:3279
--Type <RET> for more, q to quit, c to continue without paging--
#5  0x00007f57ff5e9f02 in g_object_unref (_object=0x7f57f8007eb0) at ../../../gobject/gobject.c:3238

Seems like at least the memory GSettingsBackend is not thread-safe... or maybe even GWeakRef has a thread-safety bug.

Thread-safety bug in GSettingsBackend. By design it should work but the code is broken.

See https://gitlab.gnome.org/GNOME/glib/issues/1870 with explanation but I don't know a solution. Until that is fixed and we run a new enough version of GLib on the CI the only solution I see here for now is to disable the tests.
It's all unrelated to your code so I'd suggest to disable the tests and we just go on with life for now.

Wouldn't disabling parallel run for the tests work too?

True, that's a better idea actually. Let's go for that then :)

You change the travis/appveyor configs to build only with one thread?

Somehow I had hoped that I could force only one test thread in gio's crate itself so others won't hit this, but seems that that's not possible yet (unless we make our own test harness). I'll modify the configs.

Unless we use something like https://crates.io/crates/serial_test

Pushed fix

Nice


update content of README #190

Alaska Airlines Pull Request
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context. List any dependencies that are required for this change.
Resolves: #190
Summary:
This commit updates core content for how to install the necessary bits of WCSS for optimal use in new projects.
Updates include placing priority emphasis on pre-processed CSS assets and updating the install of npm resources to remove references to the ~ deprecated shortcut.
On branch dsande/docs/190
Changes to be committed:
modified:   README.md
Type of change:
Please delete options that are not relevant.

[ ] New capability
[ ] Revision of an existing capability
[ ] Infrastructure change (automation, etc.)
[x] Other (docs)

Checklist:

[x] My update follows the CONTRIBUTING guidelines of this project
[x] I have performed a self-review of my own update

By submitting this Pull Request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
Pull Requests will be evaluated by their quality of update and whether it is consistent with the goals and values of this project. Any submission is to be considered a conversation between the submitter and the maintainers of this project and may require changes to your submission.
Thank you for your submission!
-- Auro Design System Team

:tada: This PR is included in version 5.1.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Fixed CS

Pull Request Test Coverage Report for Build 61

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 59:
0.0%

Covered Lines:
130

Relevant Lines:
130

💛  - Coveralls

Pull Request Test Coverage Report for Build 61

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 59:
0.0%

Covered Lines:
130

Relevant Lines:
130

💛  - Coveralls


Change the week start from Monday to Sunday

Currently the week starts on Monday. Can we switch it to Sunday?

I've added option. Checkout documentation for more info.
Regards,
Piotrek


SUBMARINE-420. Full TPCDS test coverage for spark security plugin

What is this PR for?
As we rewrite spark SQL plans in the spark-security plugin, we don't want to break anything AS-IS
ADD TPCS full queries support to enhance it.
What type of PR is it?
Improvement
Todos

[ ] - Task

What is the Jira issue?

Open an issue on Jira https://issues.apache.org/jira/browse/SUBMARINE-420
Put link here, and add [SUBMARINE-Jira number] in PR title, eg. [SUBMARINE-23]

How should this be tested?
UT
Screenshots (if appropriate)
Questions:

Does the licenses files need update?No
Is there breaking changes for older versions?No
Does this needs documentation? No

cc @liuxunorg


Come up with ways to shrink the size of dart:typed_data, including the duplication caused by our copying mixins

Currently our dart:typed_data library is quite big in AOT and is artifically made even bigger after https://github.com/dart-lang/sdk/commit/9173aed1baf315d8fa7838c0749f85929e0d357f due to our mixin deduplication no longer working (since the mixin became generic).
There are various ways we can improve this:
One option would be to make our typed data classes tree-shakable on the kernel level by not exposing the individual element types to the embedder and potentially only have the element types for views but not the backing arrays themselves (right now we have the combinatorial explosion: {uint8, uint16, ...} x {internal, external, view}, which we could turn into {uint8, uint16, ...}  + {internal, external, view}).
Short term we could also make the mixin class non-generic again.

I like the idea of removing the element types from the backing arrays and having user code reference element-typed views. Beside shrinking the number of classes, this would also remove polymorphism from places that see a mix of internal lists allocated by the user and external lists allocated by dart:io, which might lead to smaller CheckClass instructions in the JIT.


How to create standalone plugin or extention of new version PIXI.js

Before PIXI.js use ES6 , I know how to do it.
But in ES6 version , I'm lost.
Is there an example under ES6 ?  I found the pixijs official standalone plugins are all under ES5.

Not sure I understand, nothing has changed about writting plugins because the library is written in ES6 now. What issue are you having?

If My plugin also want be write in ES6 ,
I don't know how to import some module in pixi.js and build by babel , and how to write build/lint/dist scripts.

pixi-plugin-example works with pixify, right? just add babelify there, add it as a transform in package.json and it'll work just fine. Please see pixi.js package.json

Closing as answered.


sqlite3-ruby.yml - mswin/sqlcipher - install sqlite3

Changing the vcpkg input from "sqlcipher" to "sqlite3 sqlcipher" seems to allow compile & test to pass?  Not.sure.
Also, ci log for 'bundle exec rake test' shows:
info: sqlite3-ruby version: 1.5.0.rc1/1.5.0.rc1
info: sqlite3 version: 3.39.1/3.37.2
info: sqlcipher?: true
info: threadsafe?: true

Not sure what 'sqlite3 version: 3.39.1/3.37.2' is about?
Lastly, CI is ran on Windows 'mingw', which is a Ruby head build, 'ucrt' is also available...  Didn't change.

Hey, @MSP-Greg - thank you for putting this together!
I think the output "3.39.1/3.37.2" is telling us that this isn't working as expected -- I think it's compiling against sqlite3 and dynamically loading sqlcipher. This is pointing at a lack of both compile-time and run-time assertions that we're pulling in the expected flavor of db library, a shortcoming that dates back to the original PR, #232.
I'm going to add a commit onto this PR that will introduce some checking and I think that will confirm my suspicions by failing CI.

@flavorjones
Need.more.coffee.
Thank you!
Last night I looked here to double check whether it was running CI against mswin.  I'm working on some custom Ruby builds, and wanted to see about extension gems.  This morning I'm looking at the code...

I think the output "3.39.1/3.37.2" is telling us that this isn't working as expected

So that's runtime vs compile, correct?  Question - if one builds with sqlcipher, can one use it just like 'normal' sqlite3?  Or, is it mutually exclusive?
Regardless, I've got vcpkg locally, anything I can check about the sqlcipher install?

Installed vcpkg sqlcipher locally.  Two files sqlcipher/sqlite3.h and sqlcipher/sqlite3ext.h.  Haven't installed vcpkg sqlite3 yet.

I rebased onto master and added checks to extconf.rb and the test suite. Let's see what that tells us before I speculate on the vcpkg packages.

I came up with a possible solution, not sure about naming, etc.  Seems like all CI passes.  I rebased a few hours ago, and added a commit.  Might be a bit hacky...
Test suites:
https://github.com/MSP-Greg/sqlite3-ruby/actions/runs/2827064397
https://github.com/MSP-Greg/sqlite3-ruby/actions/runs/2827065516
sqlcipher log:
https://github.com/MSP-Greg/sqlite3-ruby/runs/7751455763?check_suite_focus=true#step:6:59
Seems like the main issue is that vcpkg sqlcipher is the only platform with the two header files in an sqlcipher folder?

Your solution seems reasonable to me, though I'm realizing now there are a few problems that are interacting here:

the vcpkg header path issue (which your commit fixes!)
macos seems to have a problem with compiled version vs loaded version as well, which fails the test I just introduced in this PR, see https://github.com/sparklemotion/sqlite3-ruby/runs/7751685748?check_suite_focus=true#step:7:10 for an example
the library seen at extconf time is not sqlcipher as expected on mswin 2022, see https://github.com/sparklemotion/sqlite3-ruby/runs/7751684731?check_suite_focus=true for an example

I'm going to add your commit to this PR to see what happens.

I'm going to add your commit to this PR to see what happens.

Sorry, forgot.  The vcpkg input needs to be vcpkg: "sqlcipher", then it should work...

Right, thanks. Fixed!

libname is called a few times, should that value be saved?  Maybe lib_name, @lib_name, or something?

extconf.rb - wondering about the statement elsif find_header("#{libname}/sqlite3.h").  maybe should be:
elsif @lib_name == 'sqlcipher' && find_header("sqlcipher/sqlite3.h")?

Trying to tighten what runs it, as the only problem is mswin & sqlcipher?

:thinking: I'm going to remove my attempt in the extconf to determine whether the libraries is "really sqlcipher", because the sqlcipher library doesn't appear to present that information in a stable, predictable way.
That will get mswin green, I think. I'm still worried about macos versioning being strange, but I can handle that in a different PR.

@MSP-Greg I'm not too worried about making this code perfect -- sqlcipher is an edge case that I don't think many people opt into, and if they do they're responsible for bringing their own (and using the config flags if necessary).
If you'd like to clean it up, I'd be happy to take it, but I'm a bit under water today and won't get to it.

I think this can be merged! @MSP-Greg thanks again for digging in on this. Are you OK with the changeset as-is?

Are you OK with the changeset as-is?

Yes.  Maybe later we can look at reducing the calls to some methods.  Thanks for the quick review, etc...
JFYI, SQLCipher has a new release (4.5.2, uses SQLite 3.39.2), opened a PR in vcpkg to update it.  Haven't checked MSYS2 yet.


Deploying to Netlify?

Curious if anyone can get this to deploy to Netlify. When we tried deploying the current master with no changes at all we get the error below. Any ideas? What is the module 'pnpapi'?
(PS vercel deploys without any problems)

12:32:51 AM:   Dependencies installation error
12:32:51 AM: ────────────────────────────────────────────────────────────────
12:32:51 AM:
12:32:51 AM:   Error message
12:32:51 AM:   A Netlify Function failed to require one of its dependencies.
12:32:51 AM:   Please make sure it is present in the site's top-level "package.json".

12:32:51 AM:   In file "/opt/build/repo/netlify/functions/next_blog/next_blog.js"
12:32:51 AM:   Cannot find module 'pnpapi'
12:32:51 AM:   Require stack:
12:32:51 AM:   - /opt/buildhome/.netlify-build-nvm/versions/node/v12.16.3/lib/node_modules/<EMAIL_ADDRESS>12:32:51 AM:   - /opt/buildhome/.netlify-build-nvm/versions/node/v12.16.3/lib/node_modules/<EMAIL_ADDRESS>12:32:51 AM:   - /opt/buildhome/.netlify-build-nvm/versions/node/v12.16.3/lib/node_modules/<EMAIL_ADDRESS>12:32:51 AM:   -<EMAIL_ADDRESS>12:32:51 AM:   -<EMAIL_ADDRESS>12:32:51 AM:   -<EMAIL_ADDRESS>12:32:51 AM:   -<EMAIL_ADDRESS>

next.js by default is a full-stack application. If you want to deploy it as a static site on netlify you need to modify the image component and use a different provider on a standard HTML img tag and export it as a static site - next build && next export

Thanks. Yeah, we have deployed many NextJS apps to Netlify, so we are familiar with the Image issue and how to set everything else up to do deploy properly on NextJs. Actually you can't use next export. Anyway, with this repo there is some other error related to the  module 'pnpapi'. See the error message in the original issue. I've never seen this before. I've seen other people complain of this error on earlier versions of Next, but never on current. So I am curious if anyone has ever seen this error before and how to solve it. None of the solutions have worked thus far.

I have no such issues. Here's a deployed version on netlify - https://focused-hermann-024a00.netlify.app/

Thanks. What's your deploy settings on Netlify? Have you changed next config at all?

No changes were made, beyond changing the image component - I just took the default branch, build, export and deployed it directly. You might want to try deleting your node_modules and re-installing the dependencies

using  tag but next export still not working. No "exportPathMap" found in "next.config.js". Generating map from "./pages"

It works for me. Please open a new issue, detailing the modifications you made (if any) and the steps you took, thanks.


Postman Activity 3

Closes Issues #470
Changes proposed in this pull request:
1.md: updated picture of a collection so it matches the interface
2.md: fixed grammar, add more visuals to make instructions more obvious, fixed existing visuals
3.md: minor grammar, add a few more visuals, content
4.md: made steps a little clearer
@Kevin

@raynaney Could you remove the Twitter labs from the pull request

going to merge your branch into an overall Postman branch


Add is_following field to user_details endpoint

own_follow_status is added along with many details about followers and followings. More details can be found in API Docs.


⚠ Bofrost.de has degraded performance

In 2916cbd, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 828 ms

Resolved: Bofrost.de performance has improved in 9990805 after 47 minutes.


Align mobile nav items

What does this PR do and why?
Closes #872
Screenshots or screen recordings

Acceptance checklist

[ x ] I have evaluated the Approval Guidelines for this PR.
[ x ] I have tested this PR in all supported browsers.

Done

Legend LGTM


Add SetExtLinux#wait_until

Hello :wave:!
I added a wait_until method on SetExtLinux for X11 to wait until a deadline was exceeded so that:

You wouldn't need a daemon process to call wait on.
Easier for CLI programs who don't want to infinitely loop / wait for new contents to be replaced & want to finish quickly.

This does report the following log when used:
2024-02-22T18:28:30.515424Z  WARN arboard::platform::linux::x11: Could not hand the clipboard contents over to the clipboard manager. The request timed out.

since result.timed_out is used and I'm not too sure what to do in this case:
https://github.com/1Password/arboard/blob/77e0e078eb460ac2fa0eda96124163c11ef6b2d1/src/platform/linux/x11.rs#L711-L715

I can do that as soon as I can. Also, is the WARN log message ok to be emitted or can it be removed?

As far as I know, the warn log is working as intended and unrelated to your changes here. Do you have a clipboard manager on your system? And are you able to share the code you used to test this?

I was able to test it and it does work correctly when I made this PR. I'll test it again and see if it still works once I can fix the suggested changes.
I'm not sure how to do unit tests for this though so I might have to dig through how the 'wait' function does its tests

And are you able to share the code you used to test this?

I am using it for the purposes of auguwu/ume, which uses arboard to copy a link when taking a screenshot (ume screenshot). It really boils down to this:
// the code that does the copying
let mut clipboard = arboard::Clipboard::new()?;
cfg_if::cfg_if! {
  if #[cfg(target_os = "linux")] {
      use arboard::SetExtLinux;

      // wait ~1s to block
      clipboard.set().wait_until(Instant::now() + Duration::from_secs(1)).text(url)?;
    } else {
      clipboard.set_text(url)?;
    }
  }
}

and this is how the application reacts to it:
$ UME_UPLOADER_KEY="1234" cargo run -- screenshot http://localhost:3621
2024-04-10T01:30:11.430927Z  INFO ume::cli::cmds::screenshot: found `flameshot` program :3 flameshot=/run/current-system/sw/bin/flameshot
2024-04-10T01:30:11.431155Z  INFO ume::cli::cmds::screenshot: creating file... file=/tmp/screenshots/2024-04-09T18:30:11.430982407-07:00.png
2024-04-10T01:30:11.432066Z  INFO ume::cli::cmds::screenshot: $ /run/current-system/sw/bin/flameshot gui -r > /tmp/screenshots/2024-04-09T18:30:11.430982407-07:00.png
2024-04-10T01:30:17.069959Z  INFO ume::cli::cmds::screenshot: uploading file to Ume server... file=/tmp/screenshots/2024-04-09T18:30:11.430982407-07:00.png
2024-04-10T01:30:17.070032Z  INFO ume::cli::cmds::screenshot: Now uploading file... file=/tmp/screenshots/2024-04-09T18:30:11.430982407-07:00.png
2024-04-10T01:30:17.149519Z  INFO ume::cli::cmds::screenshot: copying url to clipboard!
2024-04-10T01:30:18.150255Z  INFO ume::cli::cmds::screenshot: copied to clipboard, deleting image
2024-04-10T01:30:18.250519Z  WARN arboard::platform::linux::x11: Could not hand the clipboard contents over to the clipboard manager. The request timed out.

and it'll copy http://localhost:3621/images/{random characters}.png to the clipboard.

I should fix everything that was suggested!

Thanks again for the PR, and additionally thank you for the TRACE logs using arboard on your system. It seems like something is amiss in the clipboard ordering handoff but that can happen in another pull request/issue for sure.


No a issue, but a big thanks 😁

Thank you for making this 👍

Thank you for making this 👍

No problem thanks for trying it out! Appreciate the thanks!


updated azure data studio, now cannot connect

So, everything worked fine until i updated and got the notice that ads enables SSl encryption by default.
The notes indicate to just disable it if you want old behavior, but that didn't work.

Update:
Ok, so switching between these two seemed to clear out some cache and not it works.
So, i say that's a bug.  One should not have to click around to clear out previous cached settings after upgrading.

@coffeebeantraining -- Mark, thank you for your feedback.  Are you following a particular learn.microsoft.com article?  Meanwhile, please consider these resources:

SQL Server on Microsoft Q&A
DBA Stack Exchange
Stack Overflow

If you feel this is a product issue, please add it here:

SQL Server feedback


Suggestion: add to the documentation another way to automatically update the configuration without completely restarting the VPN

Suggestion: add to the documentation another way to automatically update the configuration with wg syncconf, without completely restarting the VPN.
I use the method for openrc from the documentation, but with a different command in the script in /usr/bin/local/:
wg syncconf wg0 <(wg-quick strip /etc/wireguard/wg0.conf)
Advantage: connected clients will not have a temporary disconnection after the configuration update, since the interface will not be removed and added with wg-quick, but the Wireguard settings will be updated.
Disadvantage: since the wg command is used, and not wg-quick, for example, the IP address, the MTU of the Wireguard interface will not be changed. But I think this is not critical for everyone, and even if it is ever needed, it will be possible to restart the VPN manually with wg-quick. And, I think, even this can be solved, automated, at least partially. For example, add commands to the script that get the MTU value from the config and then set it via the "ip link set mtu <<mtu_value>> up dev wg0" command for the WG interface, just like wg-quick does.

I was looking for this solution! Thanks for the heads up.

I was looking for this solution! Thanks for the heads up.
Edit: just tested this, and it works perfectly!

I was looking for this solution! Thanks for the heads up.
Edit: just tested this, and it works perfectly!

Sir i am not able to understand what exactly i need to do. I am new to wireguard.
What i infer there can be two case..i need to start the wg server if i change something in interface, and 2nd if i change something to peer or add new client then i dont want complete restart.
How to do these thing.
Till now on clicking apply config i successfully restart the server with some downtime for my users.


Sqlite3 reporting database is locked?

I'm seeing lots of lines stating database is locked in my find3 logfile:
2018-04-11 05:01:13 [WARN] [PID-12] analysis.go AnalyzeSensorData:117 [gcc] nb1 classify: problem preparing SQL: database is locked
2018-04-11 05:01:13 [WARN] [PID-12] analysis.go AnalyzeSensorData:117 [gcc] nb1 classify: problem preparing SQL: database is locked
2018-04-11 05:01:14 [WARN] [PID-12] analysis.go AnalyzeSensorData:117 [gcc] nb1 classify: problem preparing SQL: database is locked
2018-04-11 05:01:15 [WARN] [PID-12] analysis.go AnalyzeSensorData:117 [gcc] nb1 classify: problem preparing SQL: database is locked
2018-04-11 05:01:15 [WARN] [PID-12] server.go parseRollingData:883 [gcc] problem saving: Columns: database is locked
2018-04-11 05:01:15 [DEBUG] [PID-12] server.go parseRollingData:885 [gcc] saved reverse sensor data for wifi-48:bf:6b:18:66:76
2018-04-11 05:01:15 [DEBUG] [PID-12] server.go parseRollingData:874 [gcc] reverse sensor data: {Timestamp:1523422719868 Family:gcc Device:wifi-32:8f:a9:d2:30:ea Location: Sensors:map[wifi:map[entrance-wifi:-77]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-11 05:01:15 [WARN] [PID-12] server.go parseRollingData:883 [gcc] problem saving: Columns: database is locked
2018-04-11 05:01:15 [DEBUG] [PID-12] server.go parseRollingData:885 [gcc] saved reverse sensor data for wifi-2a:09:44:9c:fa:16
2018-04-11 05:01:15 [DEBUG] [PID-12] server.go parseRollingData:874 [gcc] reverse sensor data: {Timestamp:1523422721323 Family:gcc Device:wifi-ba:e3:39:b3:0c:0e Location: Sensors:map[wifi:map[kidsroom-wifi:-77]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-11 05:01:15 [WARN] [PID-12] analysis.go AnalyzeSensorData:117 [gcc] nb1 classify: problem preparing SQL: database is locked
2018-04-11 05:01:15 [WARN] [PID-12] server.go parseRollingData:883 [gcc] problem saving: AddSensor, execute: database is locked
2018-04-11 05:01:15 [DEBUG] [PID-12] server.go parseRollingData:885 [gcc] saved reverse sensor data for wifi-30:87:d9:b1:1d:e8
2018-04-11 05:01:15 [DEBUG] [PID-12] server.go parseRollingData:874 [gcc] reverse sensor data: {Timestamp:1523422720304 Family:gcc Device:wifi-f0:d7:aa:c5:9c:3b Location: Sensors:map[wifi:map[mainhallleft-wifi:-75 mainhallright-wifi:-79]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-11 05:01:16 [WARN] [PID-12] server.go parseRollingData:883 [gcc] problem saving: AddSensor, execute: database is locked
2018-04-11 05:01:16 [DEBUG] [PID-12] server.go parseRollingData:885 [gcc] saved reverse sensor data for wifi-5e:7e:32:e1:01:93
2018-04-11 05:01:16 [DEBUG] [PID-12] server.go parseRollingData:874 [gcc] reverse sensor data: {Timestamp:1523422717748 Family:gcc Device:wifi-d6:4c:24:15:bb:71 Location: Sensors:map[wifi:map[entrance-wifi:-73]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-11 05:01:16 [WARN] [PID-12] server.go parseRollingData:883 [gcc] problem saving: AddSensor, execute: database is locked
2018-04-11 05:01:16 [DEBUG] [PID-12] server.go parseRollingData:885 [gcc] saved reverse sensor data for wifi-16:ec:aa:9b:db:2a
2018-04-11 05:01:16 [DEBUG] [PID-12] server.go parseRollingData:874 [gcc] reverse sensor data: {Timestamp:1523422719847 Family:gcc Device:wifi-ba:12:68:ed:6b:54 Location: Sensors:map[wifi:map[entrance-wifi:-65 mainhallright-wifi:-69 kidsroom-wifi:-75]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-11 05:01:18 [WARN] [PID-12] analysis.go AnalyzeSensorData:117 [gcc] nb1 classify: problem preparing SQL: database is locked
2018-04-11 05:01:19 [WARN] [PID-12] server.go handlerReverse:812 Set: database is locked
2018-04-11 05:01:19 [INFO] [PID-12] server.go func1:971 <IP_ADDRESS>:56610 POST /passive 15.349143496s

And then in my passive scanners:
2018-04-11 05:03:24 [DEBUG] server-main.go postData:47 posting data
2018-04-11 05:03:24 [ERROR] main.go reverseCapture:122 Post http://<IP_ADDRESS>:8005/passive: dial tcp <IP_ADDRESS>:8005: connect: connection refused
2018-04-11 05:03:24 [INFO] main.go main:79 reverse scanning with wlan1
2018-04-11 05:03:24 [DEBUG] reverse.go ReverseScan:23 saving tshark data to /tmp/tshark-JIDeBSEgjd
2018-04-11 05:03:24 [DEBUG] reverse.go ReverseScan:23 tshark -I -i wlan1 -a duration:40 -w /tmp/tshark-JIDeBSEgjd
2018-04-11 05:03:24 [DEBUG] utils.go RunCommand:14 tshark -I -i wlan1 -a duration:40 -w /tmp/tshark-JIDeBSEgjd

Is it possible I've hit some limit on Sqlite3?
I have 5 passive scanners (running on Raspberry Pis).

@victorhooi I've never had that issue... I'm using a separate locking file for SQLite access so it seems that that ran into some race condition (possibly deleting a file that was created by another process so it thought it was okay to write). I think I need to do some load testing to see if I can reproduce

Will it help if I share with you my sqlite db files? Or the logfiles?
Or I can give you private access to the system?

@victorhooi Maybe the db. But first - did you ever get it to unlock?

I checked just now, and I'm not seeing the database is locked lines. However, I did shutdown 2 of the 5 Raspberry PI passive trackers.
My SQLite3 database file is around 800 MB...file size limit here is 25MB.
Any other thoughts on best way to get it across to you?

@schollz Uploaded to Slack for you.

This should be fixed with https://github.com/schollz/find3/commit/c787ee806f46016ee17b007d5cc690914496df6f

I'm still seeing this a lot - particularly when I try to access the dashboard:
2018-04-28 22:32:34 [DEBUG] [PID-12] db.go AddSensor:350 [gcc] inserted sensor data, 49.05879ms
2018-04-28 22:32:35 [DEBUG] [PID-12] server.go 1:140 [gcc] getting device counts
2018-04-28 22:32:40 [WARN] [PID-12] server.go parseRollingData:890 [gcc] problem saving: problem getting device ID: AddName: database is locked
2018-04-28 22:32:40 [DEBUG] [PID-12] server.go parseRollingData:892 [gcc] saved reverse sensor data for wifi-c2:23:f8:40:10:8b
2018-04-28 22:32:40 [DEBUG] [PID-12] server.go parseRollingData:881 [gcc] reverse sensor data: {Timestamp:1524954750413 Family:gcc Device:wifi-00:26:08:fa:d2:ef Location: Sensors:map[wifi:map[entrance-wifi:-69]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-28 22:32:50 [WARN] [PID-12] server.go parseRollingData:890 [gcc] problem saving: AddSensor: database is locked
2018-04-28 22:32:50 [DEBUG] [PID-12] server.go parseRollingData:892 [gcc] saved reverse sensor data for wifi-00:26:08:fa:d2:ef
2018-04-28 22:32:50 [DEBUG] [PID-12] server.go parseRollingData:881 [gcc] reverse sensor data: {Timestamp:1524954750465 Family:gcc Device:wifi-e2:b9:e5:ac:5e:5e Location: Sensors:map[wifi:map[mainhallleft-wifi:-73 kidsroom-wifi:-75 entrance-wifi:-75 mainhallright-wifi:-77]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-28 22:32:50 [WARN] [PID-12] analysis.go AnalyzeSensorData:117 [gcc] nb1 classify: problem preparing SQL: database is locked
2018-04-28 22:32:55 [WARN] [PID-12] server.go parseRollingData:890 [gcc] problem saving: AddSensor: database is locked
2018-04-28 22:32:55 [DEBUG] [PID-12] server.go parseRollingData:892 [gcc] saved reverse sensor data for wifi-e2:b9:e5:ac:5e:5e
2018-04-28 22:32:55 [DEBUG] [PID-12] server.go parseRollingData:881 [gcc] reverse sensor data: {Timestamp:1524954750702 Family:gcc Device:wifi-08:3e:5d:13:48:46 Location: Sensors:map[wifi:map[entrance-wifi:-75 cafetv-wifi:-73]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-28 22:32:57 [WARN] [PID-12] server.go handlerReverse:819 Set: database is locked
2018-04-28 22:32:57 [INFO] [PID-12] server.go func1:978 <IP_ADDRESS>:60532 POST /passive 10.049664648s
2018-04-28 22:33:00 [WARN] [PID-12] server.go handlerReverse:819 Set: database is locked
2018-04-28 22:33:00 [INFO] [PID-12] server.go func1:978 <IP_ADDRESS>:55060 POST /passive 16.998434206s
2018-04-28 22:33:00 [WARN] [PID-12] server.go parseRollingData:890 [gcc] problem saving: AddSensor: database is locked
2018-04-28 22:33:00 [DEBUG] [PID-12] server.go parseRollingData:892 [gcc] saved reverse sensor data for wifi-08:3e:5d:13:48:46
2018-04-28 22:33:00 [DEBUG] [PID-12] server.go parseRollingData:881 [gcc] reverse sensor data: {Timestamp:1524954750733 Family:gcc Device:wifi-f0:9f:c2:7d:76:56 Location: Sensors:map[wifi:map[mainhallleft-wifi:-63 cafetv-wifi:-51 kidsroom-wifi:-27 entrance-wifi:-47 mainhallright-wifi:-55]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-28 22:33:05 [WARN] [PID-12] server.go parseRollingData:890 [gcc] problem saving: AddSensor: database is locked
2018-04-28 22:33:05 [DEBUG] [PID-12] server.go parseRollingData:892 [gcc] saved reverse sensor data for wifi-f0:9f:c2:7d:76:56
2018-04-28 22:33:05 [DEBUG] [PID-12] server.go parseRollingData:881 [gcc] reverse sensor data: {Timestamp:1524954750991 Family:gcc Device:wifi-ec:8c:a2:27:b8:38 Location: Sensors:map[wifi:map[mainhallleft-wifi:-57]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-28 22:33:10 [WARN] [PID-12] server.go handlerReverse:819 Set: database is locked
2018-04-28 22:33:10 [INFO] [PID-12] server.go func1:978 <IP_ADDRESS>:56890 POST /passive 15.949608689s
2018-04-28 22:33:10 [WARN] [PID-12] server.go parseRollingData:890 [gcc] problem saving: AddSensor: database is locked
2018-04-28 22:33:10 [DEBUG] [PID-12] server.go parseRollingData:892 [gcc] saved reverse sensor data for wifi-ec:8c:a2:27:b8:38
2018-04-28 22:33:10 [DEBUG] [PID-12] server.go parseRollingData:881 [gcc] reverse sensor data: {Timestamp:1524954751053 Family:gcc Device:wifi-2c:76:8a:c5:9c:be Location: Sensors:map[wifi:map[kidsroom-wifi:-75]] GPS:{Latitude:0 Longitude:0 Altitude:0}}
2018-04-28 22:33:15 [WARN] [PID-12] server.go parseRollingData:890 [gcc] problem saving: AddSensor: database is locked
2018-04-28 22:33:15 [DEBUG] [PID-12] server.go parseRollingData:892 [gcc] saved reverse sensor data for wifi-2c:76:8a:c5:9c:be
2018-04-28 22:33:15 [DEBUG] [PID-12] server.go parseRollingData:881 [gcc] reverse sensor data: {Timestamp:1524954750630 Family:gcc Device:wifi-34:8a:ae:e9:9b:2f Location: Sensors:map[wifi:map[entrance-wif

Stopping and starting the docker container for find3 seems to help.

Also, when hitting the locations endpoint (api/v1/by_location/<family>?history=5), I'm still seeing frequent timeouts (30 seconds).


[Quantum] [DRAFT - Do not merge] Update version and history info for az quantum extension 0.18.0

Release PR for az quantum extension, version 0.18.0.

Quantum


Can't get download of full, zipped .epub files to work

I have readium-js-viewer embedded in a page in my website, and I can successfully use it to read epubs that I've unzipped into their full directory structure. But when I try to access a .epub file that isn't unzipped, readium appears to just spin and doesn't ever display the contents.
I've looked at the network console in Chrome whilst doing this, and it appears that there aren't any errors in the requests/responses. And I'm not seeing any messages in the console window that gives me information on what's failing.
Is this a known problem? If not, is there a demo system that shows this functionality working?
I'm not sure how to move forward with debugging the issue I'm seeing, so any pointers are appreciated.

I believe uploading an .epub is only meant to work when readium-js-viewer is built as a chrome extension. I might be wrong though. @danielweck Do you know something about this?

Looks like a recently introduced bug. See #381. This definitely worked at some point.

It appears to be a problem associated with some device/browser combinations. I am able to get his to work on a PC on Chrome, but not on an iOS device with Chrome. It does not work on a Kindle on Silk.

I am seeing this on both Chrome and Firefox on OSX 10.10.4

Is your HTTP server providing adequate headers? See https://github.com/readium/readium-js-viewer/issues/381#issuecomment-128845837

I'm pretty sure this isn't a cross-site scripting issue since in my instance the epub is on the same server as the website. So that doesn't appear to be the problem.

@ddeheer this isn't about HTTP CORS headers, just about Content-Length, see https://github.com/divshot/superstatic/issues/169

I see. I looked at the packets using the Chrome dev tools, and the correct  content length is coming back from the server when I use Chrome on my PC (which is the case that works), so this implies to me that the server is doing the right thing.
I don't really know how to bring up the developer tools on Chrome on iOS, but the client behavior there is definitely different.

Just to clarify: are you testing using the develop branch?
The master branch contains an older version of Readium that may not include the latest improvements in the "cloud reader" configuration.

PS: on my corporate HTTP server, I had to modify the gzip Apache directive for EPUB loading to work correctly on the client / browser side:
SetEnv no-gzip 1
<ifModule mod_gzip.c>
  mod_gzip_on No
</ifModule>

As you can see, it works fine (this is ./dist/cloud-reader/ generated from npm run dist):
http://development.readium.divshot.io/?epub=http://www.daisy.org/projects/tobi/readium/epub_content/internal_link.epub

@danielweck  - I believe we're currently using the master branch. We'll try the develop branch.

@danielweck  - just for completeness, I did make sure that content compression was turned off on my server - but there's no difference in the behavior on iOS using Chrome - the .epub still doesn't render.

@ddeheer Chrome-iOS EPUB loading failure is a known issue: https://github.com/readium/readium-js-viewer/issues/352

@danielweck  - I see that that issue #352 is not the highest priority, which I understand.
At this point it is a high priority for us, and we're not familiar enough with the Readium codebase to fix the issue quickly. Is there anybody that you know of who is familiar with the code that we could pay on a consulting basis to look at this issue for us?

@ddeheer just out of interest: why not recommend the use of the default Safari browser on iOS, instead of Chrome?

@danielweck - We don't have control of which browser our users choose, so we need to have a coherent experience across browsers.

This was fixed here:
https://github.com/readium/readium-js-viewer/issues/381#issuecomment-139771326


python38.dll conflicts with this verison of python error

hi i'm getting an error when i try to render a replay

not sure what to do as I tried reinstalled python via chocolatey and it doesn't work

a temporary fix is to delete python3.8 and install python3.7


[TASK] Update localstorage to store an object indexed by create2 address

Overview
The usage of localStorage in the bridge causes disruption and failures when new deployments are done. Developers have to clear storage or know exactly what notes are valid for any given deployment.
We should update how we store encrypted data in localStorage and index the object by create2 address being used in the dApp. It would provide a clear distinction between localStorage objects that can then be removed. We are currently storing by <NoteAccountPublicKey : {encryptedNotes... }>. The limitation here is that most developers are making use of the same address to create their Note Account resulting in the appending of notes to this object even though the bridge deployment addresses may have changed.
Potential Solution
I potential approach could be to update storage to be <Create2Address: {NoteAccountPublicKey: {encrypedNotes...}>. This would provide clear distinction if deployments had changed and reducing the amount of times the dApp fails due to an old notes from a previous deployment.
Thoughts here @AtelyPham ?

The way I initially envisioned this is to index everything under the specific contract addresses in question:
{
	[anchorAddress]: {
		[notePublicKey]: { ...encryptedNotes },
		leaves: [ ...arrayOfLeaves ]
	}
}

Scratch my exact thoughts above, instead I think we should be indexing these objects by the ResourceId that we use universally around the system. This makes it much easier for us to separate between Substrate / EVM as we are currently planning to handle. The new scheme would then look something like
	[resourceId]: {
		leaves: [ ... ],
		notePublicKey: [ ... ],
	}

CC @AtelyPham


Update libvirt & drop NET_ADMIN

What this PR does / why we need it:
This PR update libvirt in order to drop NET_ADMIN once again.
Special notes for your reviewer:
Release note:

Remove CAP_NET_ADMIN from the virt-launcher pod(second take).

/sig network

Nice to see the fix landed in libvirt.
Upgrading to libvirt 7.0 is a bit aggressive, but if we do this, we need to keep support in the code for the older version.
Any D/S usage of the kubevirt project will surely depend on D/S releases of the same.

/hold

/hold cancel
intermediate commits that don't serve a purpose have been squashed/fixed

/hold
wrong PR :facepalm:

This attempts to switch to fedora qemu builds which will cause some regressions: the slirp cap_net_bind_service bit won't work anymore because the qemu binary path changes, and cluster upgrade migration will fail due to lack of RHEL machine types.
If the intent here is to pull in new enough libvirt that has the fix for https://bugzilla.redhat.com/show_bug.cgi?id=1905929 then the builds I just published to copr should cover it.
For just current libvirt version + the fix: https://copr.fedorainfracloud.org/coprs/g/kubevirt/libvirt-6.6.0-13.1.el8_3/
For libvirt 7.0.0 and qemu-5.2.0 rhel style builds: https://copr.fedorainfracloud.org/coprs/g/kubevirt/libvirt-7.0.0-9.el8/ https://copr.fedorainfracloud.org/coprs/g/kubevirt/qemu-5.2.0-13.el8/

This attempts to switch to fedora qemu builds which will cause some regressions: the slirp cap_net_bind_service bit won't work anymore because the qemu binary path changes, and cluster upgrade migration will fail due to lack of RHEL machine types.
If the intent here is to pull in new enough libvirt that has the fix for https://bugzilla.redhat.com/show_bug.cgi?id=1905929 then the builds I just published to copr should cover it.
For just current libvirt version + the fix: https://copr.fedorainfracloud.org/coprs/g/kubevirt/libvirt-6.6.0-13.1.el8_3/
For libvirt 7.0.0 and qemu-5.2.0 rhel style builds: https://copr.fedorainfracloud.org/coprs/g/kubevirt/libvirt-7.0.0-9.el8/ https://copr.fedorainfracloud.org/coprs/g/kubevirt/qemu-5.2.0-13.el8/

Good to know that fedora is set up differently.
I needed also https://bugzilla.redhat.com/show_bug.cgi?id=1819801 to be included. I think that 6.6.0 should be enough for us since we fixed https://bugzilla.redhat.com/show_bug.cgi?id=1935039 on our side. @AlonaKaplan do we agree that 6.6.0 is enough for the networking?
@crobinso Thanks for the builds and review!

do we agree that 6.6.0 is enough for the networking?

yes. If it includes the mentioned bug fix, it is enough.

/hold cancel

@xpivarc do we have a d/s build? If not, please re-hold.

@xpivarc do we have a d/s build? If not, please re-hold.

We either need to wait for d/s relevant versions to exist or adjust the code to support deployments on versions that do not support this fix from libvirt.
/hold

I can confirm that libvirt version on D/S won't be an issue and thus we don't need to hold this on that.

/hold cancel

/retest

/approve

/retest
Not sure if this is a cache issue or I need to update RPMs one more time.
@fgimenez Would you know?

@xpivarc looks like all the mirrors for vim-minimal are failing, do you know of other sources?

I ran make rpm-deps and it seems to be good again.

I ran make rpm-deps and it seems to be good again.

I do not understand how is this related to the libvirt bump. I see a lot of packages got updated, is this due to the libvirt version update?

The flow of update is following:

edit repo.yaml
edit rpm-deps.sh
run make rpm-deps

The make rpm-deps update all packages to the latest version. It's a noise but I don't think it's a problem.
Not sure how I ended up dropping the MTU once again...

The flow of update is following:

edit repo.yaml
edit rpm-deps.sh
run make rpm-deps

The make rpm-deps update all packages to the latest version. It's a noise but I don't think it's a problem.

The problem is that it is unexpected to see upgrades that are not related to what the change mentions. It is under the hood.
Can we perform step 3 in a separate commit and then do again 1,2,3 in a commit after?
Not even sure if it will work or how complicated it may be. I just feel it will be more explicit if it works.

@EdDev It should be isolated now.

/retest


Creating a schema with incorrect version triggers agent shutdown

When creating a schema with an incorrect version identifier (e.g. 1 instead of 1.0) this will trigger a ledger transaction error in ACA-Py, shutting down the agent.
I think it would be good to catch such errors to at least prevent an agent shutdown.
Ledger errors via the Admin API do not trigger shutdown, but ledger errors via protocol messages (as is the case with creating a schema in aries-toolbox) does trigger the shutdown

Agreed that this definitely shouldn't be causing a shutdown. We'll take a look!

@burdettadam and @cjhowland took a look at this one today. They weren't able to reproduce the shutdown issue but they did put some frontend checks on the toolbox: https://github.com/hyperledger/aries-toolbox/pull/219.

Thanks for looking into this @burdettadam and @cjhowland. I guess I did something weird that triggered the shutdown. I'll reopen if I run into something like this again


Special effect - click on floating text

I had an idea to have something happen if you click on the text that floats and bounces around.
Maybe it rains emojis in a simple outline style that matches the aesthetic.
Maybe the message changes with each click.
Maybe the theme changes and the background color goes to a rainbow gradient.
Have fun with it! This should be a cool easter egg that flexes your creativity.

@jenniferhail raining emojis down diagonally could be really fun! They could even splash on impact or something like that — but what kind of emojis would make the most sense here?


Empty x and y CSV with Deploy() make impossible to use Restore()

First off, make sure to check your support options.
The preferred way to resolve usage related matters is through the docs which are maintained up-to-date with the latest version of Talos.
If you do end up asking for support in a new issue, make sure to follow the below steps carefully.
1) Confirm the below

[x] I have looked for an answer in the Docs
[x] My Python version is 3.5 or higher
[x] I have searched through the issues Issues for a duplicate
[x] I've tested that my Keras model works as a stand-alone

2) Include the output of:
talos.__version__ '1.0.0'
3) Explain clearly what you are trying to achieve
I want to store my Scan object with Deploy and then get it back with Restore it.
4) Explain what you have already tried
I've tried using different names and objects, even restarting the kernel. I get the ZIP data after using Deploy(), obtaining the message that "data is not 2d, dummy data written instead". As x and y CSV are empty, Restore() fails when reading them. The training data has X.shape is (13125, 200, 1) and y.shape (13125, 105) as it is categorical with 105 classes.
I don't know if I'm using them wrong, but the Scan object data gets properly saved
5) Provide a code-complete reference

[x] My support question includes an input model
[x] My support question includes a parameter dictionary
[x] My support question includes a Scan() command
[ ] My support question includes a link to a sample of the data

NOTE: If the data is sensitive and can't be shared, create dummy data that mimics it.
A self-contained Jupyter Notebook, Google Colab, or similar is highly preferred and will speed up helping you with your issue.

def Model(x, y, x_val, y_val, params):

    model = Sequential()
    steps_per_epoch = y.shape[0] // params['batch_size']
    validation_steps = x_val.shape[0] // params['batch_size']

    n_outputs = y.shape[1]
    #conv1D
    model.add(Conv1D(filters = params['filters']*16, kernel_size = params['kernel_size'],
                        strides = params['strides'], batch_input_shape = (None, x.shape[1], x.shape[2])))
    #model.add(BatchNormalization())
    #model.add(Activation('tanh'))
    #model.add(Dropout(0.5))

    # Recurrent layer
    #model.add(Dropout(params['dropout']))
    model.add(LSTM(units = params['hidden_units']*2, return_sequences = True))
    model.add(Dropout(params['dropout']))
    #model.add(LSTM(units = n_h*2, return_sequences = True))
    model.add(LSTM(units = params['hidden_units'], return_sequences = False))

    model.add(Dropout(params['dropout']))
    #model.add(BatchNormalization())
    #model.add(Dropout(0.1))
    #Dropout for regularization
    model.add(Dense(n_outputs, activation = 'softmax'))
    model.summary()
    # Compile the model
    #if params['optimizer'] == "Adam": añadir LR
    model.compile(optimizer=params['optimizer'], loss=params['loss'], metrics=['accuracy'])

    history = model.fit(x, y, epochs = params['epochs'], batch_size = params['batch_size'],
                        steps_per_epoch = steps_per_epoch, callbacks = [early_stopper(params['min_delta'], patience=10, monitor = 'loss')],
                       validation_data = (x_val, y_val), validation_steps = validation_steps)

    return history, model

p = {'hidden_units':[4, 8, 16, 32, 64, 128],
     'batch_size': [50, 100, 150],
     'kernel_size': [5, 7, 9],
     'strides': [1, 2, 3],
     'epochs': [30, 40, 50],
     'dropout': [0, 0.2, 0.4, 0.6, 0.8],
     'optimizer': ['Adam', 'Nadam'],
     'kernel_initializer': ['uniform','normal'],
     'loss': ['categorical_crossentropy'],
     'last_activation': ['softmax'],
     'weight_regulizer': [None],
      'min_delta': [0.001],
      'filters': [1, 2, 3, 4]}

#2D data and numeric labels, make it suitable for the model
X = X_train.reshape(X_train.shape[0], X_train.shape[1], 1)
y = to_categorical(y_train)

scan_object = talos.Scan(x=X, y=y, params=p, model=Model, experiment_name = 'first', val_split = .2, round_limit = 3, print_params = True)

a = talos.Deploy(scan_object, 'first_try', 'val_accuracy')

object = talos.Restore('first_try.zip')

You have to provide one of:

original data
dummy data of the same shape
command to produce dummy data of the same shape

Closing this for lack activity. Feel free to re-open if still relevant.

Sorry for necro-ing, I hope this is okay. I encountered the same problem, Restore() would fail due to empty *_x.csv and *_y.csv. Data is of 4D shape (5118, 83, 768, 1), producible using the command np.random.rand(5118, 83, 768, 1).
thalos v1.0.0


Signed-off-by: Dhi Aurrahman<EMAIL_ADDRESS>

I'm still trying a way to test it.

I'm rebooting this PR. I start with the test first. Please take a look if that's the expected scenario. Apparently, windows is failing.

Thanks, @codefromthecrypt for your time looking at this. I'll redo this. So, to clarify, do you want me to test specifically for Pdeathsig on Linux and only that? Sorry I was confused since in our discussion it seems (sorry I caught you wrong) we also want to have no special treatment for the goroutine-os-thread-pinning (LockOSThread) since it is not Linux specific.
So for testing, where do you want me to add it? proc_linux_tes.go (by spawning fake_func-e that spawns fake_envoy) or extending run_test with kill() instead of ctrlC()? Thanks!

I pushed another attempt here https://github.com/tetratelabs/func-e/pull/371 that specifically tests sending SIGKIL to a fake func-e process that runs envoy as its child and is initialized using the same SysProcAttr as the real func-e (calling moreos.ProcessGroupAttr()).


App consumable purchase not registered, also not restorable

Bug Information
Version Number of Plugin: 1.2.2
Device Tested On: iPhone/iPad (iOS)
Simulator Tested On: iPhone 10.3.3
Version of VS:  2017
Version of Xamarin: <IP_ADDRESS>
Steps to reproduce the Behavior
Purchase the in app purchase, but get navigated to apple store to update your payment information. After updating payment information the in app purchase is bought.. but not registered in the app back.
Doing the purchase again isn't possible because it returns to you that you already own the product.
Restore is also not giving any purchases back.
it's a non-consumable (premium account payment)
Expected Behavior
the purchase is also registered in the app, or restoreable
Actual Behavior
Doing the purchase again isn't possible because it returns to you that you already own the product.
Restore is also not giving any purchases back.
Code snippet
For restoring the inapp product (there is only one, so i just check .Any())
public static async Task<bool> PremiumAccountPurchased()
        {
            try
            {
                var connected = await CrossInAppBilling.Current.ConnectAsync();
                if (!connected)
                {
                    App.AddLog("Currently we can't connect to the app store. Try again later.");
                    return false;
                }

                var purchases = await CrossInAppBilling.Current.GetPurchasesAsync(ItemType.InAppPurchase);
                var inAppBillingPurchases = purchases as InAppBillingPurchase[] ?? purchases.ToArray();
                if (inAppBillingPurchases.Any())
                {
                    App.AddLog("Premium restored.");
                    App.AppSettings.PremiumBought = inAppBillingPurchases.Any();
                    return true;
                }
            }
            catch (InAppBillingPurchaseException purchaseEx)
            {
                var message = string.Empty;
                switch (purchaseEx.PurchaseError)
                {
                    case PurchaseError.AppStoreUnavailable:
                        message = "Currently the app store seems to be unavailble. Try again later.";
                        break;
                    case PurchaseError.BillingUnavailable:
                        message = "Billing seems to be unavailable, please try again later.";
                        break;
                    case PurchaseError.PaymentInvalid:
                        message = "Payment seems to be invalid, please try again.";
                        break;
                    case PurchaseError.PaymentNotAllowed:
                        message = "Payment does not seem to be enabled/allowed, please try again.";
                        break;
                }
                App.AddLog(!string.IsNullOrEmpty(message) ? message + " " + purchaseEx.Message : purchaseEx.Message);
                return false;
            }
            catch (Exception ex)
            {
                App.AddLog("Exception occured: " + ex.Message);
            }
            finally
            {
                App.AddLog("Disconnecting Apple store");
                await CrossInAppBilling.Current.DisconnectAsync();
            }
            return false;
        }

for doing the purchase:

/// <summary>
        /// Purchase item
        /// </summary>
        public static async Task<bool> PurchaseItem()
        {
            if (!CrossInAppBilling.IsSupported)
            {
                App.AddLog("InAppBilling not supported... ");
                return false;
            }

            //check if it's already bought
            if (await InAppPurchaseHelper.PremiumAccountPurchased())
                return true;

            var billing = CrossInAppBilling.Current;
            try
            {
                var connected = await billing.ConnectAsync();
                if (!connected)
                {
                    App.AddLog("Currently we can't connect to the app store. Try again later.");
                    return false;
                }

                var purchase = await billing.PurchaseAsync(productId, ItemType.InAppPurchase, payload);
                if (purchase != null)
                {
                    App.AppSettings.PremiumBought = true;
                    return true;
                }
                else
                {
                    App.AppSettings.PremiumBought = false;
                }
            }
            catch (InAppBillingPurchaseException purchaseEx)
            {
                var message = string.Empty;
                switch (purchaseEx.PurchaseError)
                {
                    case PurchaseError.AppStoreUnavailable:
                        message = "Currently the app store seems to be unavailble. Try again later.";
                        break;
                    case PurchaseError.BillingUnavailable:
                        message = "Billing seems to be unavailable, please try again later.";
                        break;
                    case PurchaseError.PaymentInvalid:
                        message = "Payment seems to be invalid, please try again.";
                        break;
                    case PurchaseError.PaymentNotAllowed:
                        message = "Payment does not seem to be enabled/allowed, please try again.";
                        break;
                }

                //Something else has gone wrong, log it
                App.ShowToast(string.IsNullOrEmpty(message) ? "Issue with payment: " + purchaseEx.Message : "Issue with payment: " + message);
                App.AddLog(purchaseEx.Message);
                return false;
            }
            catch (Exception ex)
            {
                //Something else has gone wrong, log it
                App.AddLog("Issue connecting: " + ex);
                return false;
            }
            finally
            {
                App.AddLog("Disconnecting Apple store");
                await billing.DisconnectAsync();
                CrossInAppBilling.Dispose();
            }
            return false;
        }

Any ideas? I've received several reports from users now...

Is it a consumable or a non-consumable?
On iOS a consumable is automatically consumed when purchased.
If it is a non-consumable it will be returned in the GetPurchasesAsync, which is how I check.
Also, if you get the you have already purchased it, it will then return the purchase.

It's a non-consumable (premium account payment).
But if you see my code above, thats all i do. I do exactly what you describe, or do i overlook something

Maybe don't dispose of it, i never do. This will ensure that additional callbacks register and finish transactions.
if it reports that they already bought it you will get a purchase back from it. As I have had that happen after an uninstall and re-install.
it has to come back in the restore or else it didn't finish the purchase.

So you say remote the dispose from the finally...?
weird thing is that the restore code is also not working.. but they can't buy it a second time..

so remove the finally scope? so dispose and disconnect?

just the dispose. you will want to disconnect

Sounds for me exactly like this issue: https://github.com/jamesmontemagno/InAppBillingPlugin/issues/51
Because as we already found out it not only happens with redeemed codes, it also happens with normal purchases on some devices.

@jamesmontemagno Can you confirm that - in Android - GetPurchasesAsync() returns only not consumed purchases? I see that if I consume a purchase, it's never returned by GetPurchasesAsync().

Once you consume a purchase it is gone and consumed. Consumables must be tracked by the app.

Should be fixed in latest.


bootstrap2.3 rails4.2 simple_form3.x?

Hey there. I'm stuck using bootstrap 2 on a project that i'm upgrading to rails 4. If I use the latest build of simple_form I have issues with my wrappers and whatnot. Specifically around checkboxes showing up in a span instead of a label.
If I lock simple_form to 3.0.2, all is well, but I have all the deprecations with rails 4.2. Thoughts?

Which issues are you seeing? Have you generated the default bootstrap initializer - which is for bootstrap v3, that might conflict? Have you tried tweaking the wrappers more? Which deprecations you're seeing?
Please try to provide some more information, and some example code / results. I'm not sure there's much we can do in terms of v3.0.2, though, lets see. Thanks!

I have encountered what seems to be the same issue while upgrading a Rails 3 project to Rails 4.2.  We're using Bootstrap 2.
This is produced in Rails 3 with simple_form 2.1.1:

    Action state types

            <input checked="checked" class="check_boxes optional" id="_action_action_state_type_ids_1" name="_action[action_state_type_ids][]" type="checkbox" value="1" />Value #1

            <input checked="checked" class="check_boxes optional" id="_action_action_state_type_ids_2" name="_action[action_state_type_ids][]" type="checkbox" value="2" />Value #2

        <input name="_action[action_state_type_ids][]" type="hidden" value="" />

This is produced in Rails 4 with simple_form 3.4.0:

    Action state types

                <input class="check_boxes optional" type="checkbox" value="1" name="_action[action_state_type_ids][]" id="_action_action_state_type_ids_1" />Value #1

                <input class="check_boxes optional" type="checkbox" value="2" name="_action[action_state_type_ids][]" id="_action_action_state_type_ids_2" />Value #2

        <input type="hidden" name="_action[action_state_type_ids][]" value="" />

This is the code used to render it:
<%= f.association :action_state_types, :as => :check_boxes, :collection => @action_state_types %>

config/initializers/simple_form*.rb are unchanged from when they were originally generated with simple_form 2.1.1.
I'm guessing that a new wrapper has been added to simple_form.  TBH, I've always found the simple_form setup API to be a bit confusing, and I'd appreciate a pointer in the right direction if you could.  Is there a way to turn off that  wrapper?

Adding item_wrapper_tag: false causes the span tag to be omitted.  Adding item_label_class: 'checkbox' returns the "checkbox" class to the label tag.
I still need to figure out how to add this to the default configuration so it doesn't need to be added to every collection of checkboxes.


[google_sign_in] Locking iOS device during sign-in prevents going further

Steps to Reproduce

Run the example project using an iOS simulator or real device
Hit the login button
An alert is shown
Lock the device
Unlock device (alert is gone, but is normal on iOS)
Hit the login button

Expected results:
Alert should be shown like when hitting the login button the first time.
Actual results:
No alert is shown, nothing happens. (See attached video.)
Note: while the sample app does not give any error logs, I was able to log an exception using another app:
PlatformException(concurrent-requests, Concurrent requests to account signin, null, null)

Code sample
Just use the example project

Logs

verbose.log

% flutter analyze
Analyzing example...
No issues found! (ran in 2.4s)

% flutter doctor -v
[✓] Flutter (Channel stable, 2.10.0, on macOS 12.1 21C52 darwin-arm, locale en-DE)
    • Flutter version 2.10.0 at /opt/homebrew/Caskroom/flutter/2.5.1/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5f105a6ca7 (13 days ago), 2022-02-01 14:15:42 -0800
    • Engine revision 776efd2034
    • Dart version 2.16.0
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0-rc4)
    • Android SDK at /Users/tobi/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0-rc4
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7772763)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.11.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7772763)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.64.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.34.0

[✓] Connected device (2 available)
    • iPhone SE (2nd generation) (mobile) • 8D00E4E4-3334-4749-BD5E-147C036CAC76 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-15-2 (simulator)
    • Chrome (web)                        • chrome                               • web-javascript • Google Chrome 98.0.4758.80

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

https://user-images.githubusercontent.com/366172/153894652-534e6f13-6f33-4da0-b0ce-4fe2f1cbfd78.mp4

Using the plugin example and running it on iOS simulator and on physical device, locking the screen and then unlock it, after which the sign in button becomes unresponsive. Restart the app and then tap on sign in again that throws below exception in console:
Performing hot restart...
Syncing files to device iPhone 12 Pro Max...
Restarted application in 448ms.
flutter: PlatformException(concurrent-requests, Concurrent requests to account signin, null, null)
flutter: PlatformException(concurrent-requests, Concurrent requests to account signin, null, null)

 stable, master flutter doctor -v
[✓] Flutter (Channel stable, 2.10.1, on Mac OS X 10.15.4 19E2269 darwin-x64,
    locale en-GB)
    • Flutter version 2.10.1 at /Users/dhs/documents/fluttersdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision db747aa133 (5 days ago), 2022-02-09 13:57:35 -0600
    • Engine revision ab46186b24
    • Dart version 2.16.1
    • DevTools version 2.9.2

[!] Xcode - develop for iOS and macOS (Xcode 12.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! Flutter recommends a minimum Xcode version of 13.
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.11.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] VS Code (version 1.62.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.21.0

[✓] Connected device (4 available)
    • Darshan's iphone (mobile)  • 21150b119064aecc249dfcfe05e259197461ce23 •
      ios            • iOS 14.4.1 18D61
    • iPhone 12 Pro Max (mobile) • A5473606-0213-4FD8-BA16-553433949729     •
      ios            • com.apple.CoreSimulator.SimRuntime.iOS-14-3 (simulator)
    • macOS (desktop)            • macos                                    •
      darwin-x64     • Mac OS X 10.15.4 19E2269 darwin-x64
    • Chrome (web)               • chrome                                   •
      web-javascript • Google Chrome 98.0.4758.80

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

[✓] Flutter (Channel master, 2.11.0-0.0.pre.555, on Mac OS X 10.15.4 19E2269
    darwin-x64, locale en-GB)
    • Flutter version 2.11.0-0.0.pre.555 at
      /Users/dhs/documents/fluttersdk/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 06bf6a128d (30 minutes ago), 2022-02-14 23:30:18 -0500
    • Engine revision 20bd78ca3e
    • Dart version 2.17.0 (build 2.17.0-105.0.dev)
    • DevTools version 2.10.0

[!] Xcode - develop for iOS and macOS (Xcode 12.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! Flutter recommends a minimum Xcode version of 13.
      Download the latest version or update via the Mac App Store.
    • CocoaPods version 1.11.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] VS Code (version 1.62.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.21.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-x64     • Mac OS X 10.15.4 19E2269
      darwin-x64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 98.0.4758.80

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

Faced the same problem and can't find a solution, please share if anyone knows what is that


Allow setting session_event when sending non-reply messages.

Currently the session_event is hard coded to SESSION_NONE, which makes sense in many cases. However, MT session transports require the initial send to have SESSION_NEW.

Ready for review.

:+1:


[Kubernetes] Ignore missing pass host header annotation. [v1.3 - CHERRY-PICK]

We are starting to see reports of people using 1.3-rc1 and complaining/wondering about the problem reported in #1548. Hence, I think we should include the fix in the 1.3 branch as well.

@emilevauge LGTY?


runtime: convert atomic values to runtime/internal/atomic types

runtime/internal/atomic added Int32, etc types a while ago, which are slowing getting used on new code. We should also go through existing code and convert bare atomic values to use the atomic types.

I did some initial benchmarking with x/bench/sweet on linux-arm64 to look for potential effects of these changes.
As of 0e16d67a560f22ac1fcbc1fa12d25add8bf649d6 (Aug 29), I see (vs 1.19):
name                                old time/op            new time/op            delta
BiogoIgor                                      11.7s ± 1%             11.2s ± 1%  -4.30%  (p=0.000 n=10+9)
BiogoKrishna                                   16.1s ± 0%             16.0s ± 0%  -0.41%  (p=0.000 n=10+10)
BleveIndexBatch100                             5.21s ± 3%             5.05s ± 1%  -2.98%  (p=0.000 n=10+10)
BleveQuery                                     2.45s ± 0%             2.46s ± 1%  +0.35%  (p=0.035 n=9+10)
FoglemanPathTraceRenderGopherIter1             18.5s ± 3%             18.4s ± 2%    ~     (p=0.796 n=10+10)
GopherLuaKNucleotide                           27.5s ± 1%             28.4s ± 1%  +3.13%  (p=0.000 n=10+10)
MarkdownRenderXHTML                            232ms ± 1%             236ms ± 1%  +1.43%  (p=0.000 n=9+10)
[Geo mean]                                     6.01s                  5.98s       -0.49%

name                                old average-RSS-bytes  new average-RSS-bytes  delta
BiogoIgor                                     67.5MB ± 5%            65.4MB ± 5%    ~     (p=0.105 n=10+10)
BiogoKrishna                                  4.19GB ± 0%            4.12GB ± 0%  -1.58%  (p=0.000 n=8+8)
BleveIndexBatch100                             202MB ± 2%             200MB ± 3%    ~     (p=0.165 n=10+10)
BleveQuery                                     535MB ± 1%             534MB ± 0%    ~     (p=0.905 n=10+9)
FoglemanPathTraceRenderGopherIter1             138MB ± 1%             137MB ± 2%  -1.09%  (p=0.043 n=10+10)
GopherLuaKNucleotide                          39.3MB ± 5%            38.7MB ± 3%    ~     (p=0.182 n=10+9)
MarkdownRenderXHTML                           22.2MB ± 7%            21.6MB ± 5%    ~     (p=0.133 n=10+9)
[Geo mean]                                     167MB                  165MB       -1.60%

name                                old peak-RSS-bytes     new peak-RSS-bytes     delta
BiogoIgor                                     92.3MB ± 4%            89.7MB ± 3%  -2.86%  (p=0.007 n=10+9)
BiogoKrishna                                  4.56GB ± 0%            4.49GB ± 0%  -1.50%  (p=0.000 n=10+10)
BleveIndexBatch100                             287MB ± 3%             285MB ± 4%    ~     (p=0.497 n=9+10)
BleveQuery                                     536MB ± 1%             536MB ± 0%    ~     (p=0.436 n=10+10)
FoglemanPathTraceRenderGopherIter1             185MB ± 1%             183MB ± 1%  -1.04%  (p=0.023 n=10+10)
GopherLuaKNucleotide                          44.2MB ± 7%            45.4MB ± 4%    ~     (p=0.356 n=9+10)
MarkdownRenderXHTML                           23.0MB ± 6%            22.3MB ± 9%    ~     (p=0.143 n=10+10)
[Geo mean]                                     198MB                  197MB       -0.88%

name                                old peak-VM-bytes      new peak-VM-bytes      delta
BiogoIgor                                      807MB ± 0%             804MB ± 0%  -0.27%  (p=0.000 n=10+10)
BiogoKrishna                                  5.31GB ± 0%            5.24GB ± 0%  -1.30%  (p=0.000 n=10+9)
BleveIndexBatch100                            2.39GB ± 0%            2.39GB ± 0%  -0.16%  (p=0.000 n=9+10)
BleveQuery                                    3.71GB ± 0%            3.66GB ± 3%  -1.40%  (p=0.003 n=8+10)
FoglemanPathTraceRenderGopherIter1             876MB ± 0%             873MB ± 0%  -0.33%  (p=0.000 n=10+10)
GopherLuaKNucleotide                           735MB ± 0%             734MB ± 0%  -0.13%  (p=0.000 n=10+10)
MarkdownRenderXHTML                            734MB ± 0%             733MB ± 0%  -0.15%  (p=0.000 n=10+10)
[Geo mean]                                    1.51GB                 1.50GB       -0.54%

Most of this improvement is likely from https://go.dev/cl/422634.
I intend to further investigate GopherLuaKNucleotide and MarkdownRenderXHTML to determine the source of regression.


[WIP] zwave refactor, don't use ozw values directly in properties.

Description:
Refactor the use of values.
I think I got them all, but discussion open :)
Related issue (if applicable): fixes #4867
Possibly #5568

You forget the component :)

Currently discovery is not done in OZW thread, this means we can't touch zwave properties in constructors.

Currently discovery is not done in OZW thread, this means we can't touch zwave properties in constructors.
To be honest, I have no clue what that means.
I can't wrap my head around this threading issue, and caching.

I think that Andrey makes a good point with that we now don't set any data in the constructors.
We could consider to add a call to update properties. That way we only violate thread safety on startup but not for the rest of the runtime of HASS. That should at least solve most issues.

I did remove all the update_properties from all components, because it was considered unsafe. Most of the comonents did that.
However removing the call,  leaves us with no data until the device checks in on the network, no problem for mains devices, but it will take some time with battery devices. Is this ok, or should we have the update properties call in the constructors?

I think it is better to unsafe-call update_properties from constructor (or otherwise pull data if update_properties is doing too much) rather than be left with missing state.
We can further improve this in subsequent PR

👍  🐬

In the future, no need to wait for me to merge Z-Wave things @turbokongen @armills @andrey-git . I can't test it locally so you are in control 👍


Is pytest still relevant?

The pinax-starter-app tox.ini file and setup.py include pytest as as an extra. Yet, pytest was not included in the tox.ini and setup.py files for the most recent release, and pytest is only included within DUA, pinax-points, and pinax-stripe. Should the pytest extra be kept in the pinax-starter-app?

Even though pytest has not been heavily used in Pinax, it is extremely relevant in the Python/Django world. I'm going to keep pytest configs in the pinax-starter-app. Closing issue.


[Q] Using WandB Sweep + SLURM + Pytorch Lightning DDP + Multiple GPUs

I'm trying to register SLURM nodes as agents for sweeps. I'm using Pytorch Lightning with DDP and multiple GPUs. Following the recommendations from Pytorch Lightning (here), my SLURM sbatch script is something like below.
#!/bin/bash

#SBATCH --gres=gpu:4
#SBATCH --cpus-per-task=8
#SBATCH --ntasks=4
#SBATCH --ntasks-per-node=4
#SBATCH --nodes=1

sweep_id=***********"
api_key="***********"

# Method 1:
# Creates 4 processes which are bound to run 1 job on 4 gpus
# cant receive sweep configs from wandb so must manually change configs (aka bad)

srun python3 myprogram.py ${static_notsweep_args}

# Method 2:
# My attempt at registering this node as a wandb agent with access to 4 gpus
# Instead creates 4 agents each with access to 1 gpu

srun  wandb login $api_key
srun  wandb agent $sweep_id

My jobs require multiple gpus (4 in this example) to run. Note that Pytorch Lightning requires running commands with srun and setting ntasks=ngpus when using multiple gpus. These combined cause the srun lines to be run ntasks times, essentially creating  ntasks  processes running in parallel.
The problem I'm having with sweeping is since wandb agent $sweep_id gets ran  ntasks times, it creates  ntasks agents each running a separate configuration from the sweep. Furthermore, this causes Lightning DDP to not bind them together which restricts each agent to only having 1 GPU. This would actually be fine if 1 GPU per agent was enough, but I need all gpus.
There are some potential solutions I thought of, but they have their downsides:

Setting ntasks=1 and using ddp_spawn for the Lightning trainer strategy. This way wandb agent only gets called once, and the appropriate number of processes are spawned for training. The downside is ddp_spawn is widely discouraged for performance reasons.

Switching from CLI to python wandb, and registering the agent from inside myprogram.py. The python wandb seems more flexible, but I haven't used it so I don't actually know if this would work. The downside is I'd prefer to stick to wandb CLI.

The behavior I'd like to see is wandb agent $sweep_id running the same program + hyperparameters in parallel ntasks times, so that Lightning DDP can bind them together and use all gpus. I'm wondering if there is a way to accomplish this with the wandb CLI, for example like  wandb agent <agent_id> so that the multiple calls to wandb agent get linked to the same agent.

Hi @OFSkean, my first instinct would be to only use a single task and use Trainer(accelerator="gpu", devices=4, strategy="ddp") in your train.py to spin up the parallel GPU processes. You will need to put wandb.init() in an if block like this:
if __name__ == "__main__":
    # Get args
    args = parse_args()

    if args.local_rank == 0:  # only on main process
        # Initialize wandb run
        run = wandb.init(
            entity=args.entity,
            project=args.project,
        )
        # Train model with DDP
        train(args, run)
    else:
        train(args)

So that you can only create a run in the rank 0 process.
I don't think we have a complete example of Slurm + Sweep + DDP but happy to work through this if this doesn't work.

Hi @nate-wandb,
I tried setting ntasks=1, and while that solves the problem of wandb agent being called too much, it causes issues with Pytorch Lightning. Per this doc, when using SLURM with Lightning, ntasks  must equal the number of devices.

There are two parametres in the SLURM submission script that determine how many processes will run your training, the #SBATCH --nodes=X setting and #SBATCH --ntasks-per-node=Y settings. The numbers there need to match what is configured in your Trainer in the code: Trainer(num_nodes=X, devices=Y). If you change the numbers, update them in BOTH places.

I don't know enough about Lightning to know why that's required when using SLURM. But pretty much I have to keep ntasks=4.

Ok I figured out a way to do this. It's really ugly but it works.
Sweep Configuration
project: slurm_test
name: my_sweep
program: main.py

command:
  - ${env}
  - echo
  - python3
  - ${program}
  - ${args}

SLURM sbatch script
#!/bin/bash

#NUMBER OF AGENTS TO REGISTER AS WANDB AGENTS
#SHOULD BE -array=1-X, where X is number of estimated runs
#SBATCH --array=1-4    #e.g. 1-4 will create agents labeled 1,2,3,4

#SBATCH --gres=gpu:4
#SBATCH --cpus-per-task=8
#SBATCH --ntasks=4 # must equal number of gpus, as required by Lightning

.... other SLURM configuration like partition, time, etc ....
.... module purge and start conda environment if needed .....

# SET SWEEP_ID HERE. Note sweep must already be created on wandb before submitting job
SWEEP_ID="**************************************"
API_KEY="******************************************"

# LOGIN IN ALL TASKS
srun wandb login $api_key

# adapted from https://stackoverflow.com/questions/11027679/capture-stdout-and-stderr-into-different-variables
# RUN WANDB AGENT IN ONE TASK
{
    IFS=$'\n' read -r -d '' SWEEP_DETAILS; RUN_ID=$(echo $SWEEP_DETAILS | sed -e "s/.*\[\([^]]*\)\].*/\1/g" -e "s/[\'\']//g")
    IFS=$'\n' read -r -d '' SWEEP_COMMAND;
} < <((printf '\0%s\0' "$(srun --ntasks=1 wandb agent --count 1 $SWEEP_ID)" 1>&2) 2>&1)

SWEEP_COMMAND="${SWEEP_COMMAND} --wandb_resume_version ${RUN_ID}"

# WAIT FOR ALL TASKS TO CATCH UP
wait

# RUN SWEEP COMMAND IN ALL TASKS
srun  $SWEEP_COMMAND

Python code using Pytorch Lightning DDP
... whatever code before

wandb_logger = pl.loggers.WandbLogger(name=args.experiment_name, version=args.wandb_resume_version, resume="must")

# once again, pytorch lightning requires setting:
# devices=number of allocated slurm gpus = number of slurm tasks
# num_nodes= number of slurm nodes

trainer = pl.Trainer(devices=args.devices, num_nodes=args.num_nodes,
                        accelerator='gpu', strategy='ddp_find_unused_parameters_false',
                        logger=wandb_logger)

... whatever training code after .....

So the basic flow of whats going on here:

Make sweep configuration in sweep.yaml. Instead of running python3 {args}, set the configuration to echo python3 {args}. Run wandb sweep sweep.yaml . Put the created sweep_id and your API key into the slurm script.

When the SLURM script starts being ran, ALL of the ntasks tasks will execute wandb login $api_key.

Only ONE task will execute wandb agent --count 1 $SWEEP_ID. This will create a run for the sweep and capture the echo python3 {args} via stdout and run_id via stderr.

Because the wandb sweep command is echo rather than python3, the call to wandb agent will finish immediately. So we have to resume the run with RUN_ID in our pytorch lightning code. I use an argument called wandb_resume_version to do this.

ALL tasks will execute the SWEEP_COMMAND.

So once again, this is a roundabout way to do this but I couldn't find any better solution. I'll also say that this would be greatly simplified if there was a way to get run_id into the wandb command. Is it possible to add run_id like below in sweep.yaml?
command:
  - ${env}
  - echo
  - python3
  - ${program}
  - ${args}
  - ${run_id}

I can't even get WandB Sweep + SLURM + Pytorch Lightning (1 GPU) working.
I just get  "ValueError: signal only works in main thread"

Hi @OFSkean, I can make a feature request to add the  - ${run_id} to the command. I'm glad you have a workaround even though it's not ideal in the meantime.
I can also add that a general way to run SLURM + SWEEP + DDP is requested as well since the above is more of a workaround it seems rather than an official way to run this.

Hi @nate-wandb, yes please make a feature request for ${run_id}. It would be great if it adds the run_id as an argument to the command such as python3 main.py --random-arg 42 --run_id abcdefg.

Ok, I've submitted this to the team and can follow up once they have a chance to look into this.

Hi, any updates yet?

Hi @TheLukaDragar, we are currently working on better supporting Sweeps on Slurm as the solution but unfortunately this work is not expected to land until early 2024

Hi @nate-wandb, any updates on supporting Sweeps on Slurm?

Hi @sararb, the solution for this is going to be enabling our launch product to run Slurm jobs. Unfortunately, this is still potentially a few quarters away. I'm bumping the priority on this though since this has been requested several times to see if we can get this planned sooner. I'll provide an update as soon as there is any progress on this

Hi @sararb, the solution for this is going to be enabling our launch product to run Slurm jobs. Unfortunately, this is still potentially a few quarters away. I'm bumping the priority on this though since this has been requested several times to see if we can get this planned sooner. I'll provide an update as soon as there is any progress on this

Hi @nate-wandb  any updates on this?

Hey @MostHumble, no updates on this as of yet. We are still working on Sweeps/Launch on SLURM and it is the way to fix this, but we still not have an ETA, apologies for the delay.

my first instinct would be to only use a single task and use Trainer(accelerator="gpu", devices=4, strategy="ddp") in your train.py to spin up the parallel GPU processes. You will need to put wandb.init() in an if block like this:
From: https://github.com/wandb/wandb/issues/5695#issuecomment-1587958030

I tried this way, but since I'm using Python CLI and if we put only wandb_init in rank 0 the next sweep agent cannot initial in multiple GPUs...


Unable to build .deb

packaging/cups.list.in is not up-to-date which results in $ make deb  failing.
Build log: https://gist.github.com/mfly/fc6f1487afefbf77a833326ecb6f0c34.
It looks like this issue: https://github.com/apple/cups/issues/4518 was solved only partially and banner files still exist in cups.list.in. There is a similar problem with files in doc/help/.

Closing this one, tracking with PR #4832.


Shadcn tooltips to do not work on mobile

They suggest to use popovers instead, but @stackingsaunter was not really happy with tooltips in the first place. Can we do better?

Let's add those hybrid tooltips please.
If it's not possible or very hard, can we maybe at least hide tooltips on mobile?


[DOCUMENTATION] Update tests README

From #5620
I've done a complete rewrite at best of my knowledge, if anything here is not right, please review and comment, thanks!

I think this is ready to be merged..

Totally missed this - merging. Thanks @Jean85!


Support returning WorkflowExecutionAlreadyStartedError in tests

Without this change, it is not possible to return a WorkflowExecutionAlreadyStartedError in tests.
This make the following possible:
s.env.OnWorkflow(Workflow, mock.Anything, mock.Anything).
		Once().
		Return(&shared.WorkflowExecutionAlreadyStartedError{
			RunId: &runID,
		})

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

Just added a test.


Bottom of text gets cut off in form inputs on Firefox (Chrome is okay)

Here's a screenshot from the [docs form page] (http://foundation.zurb.com/apps/docs/#!/forms), using Firefox 36.0.1:

That Firefox <input> line height issue, what a fun one.


Clipped polygon to preserve style of feature

Hi, I would like to know if is possible to style polygons features consume by the vector-tile service, Iḿ doing something like this
style:function(feature,context){
var style = {};
if(feature.properties.ganador == 'X'){
style.color = '#FF0000';
}else if(feature.properties.ganador == 'Y'){
style.color = '#000';
}
return style;
}
but I have notice that all polygons get cut by the edge of each tile, I would like to preserve the style of all the polygons over each tile, and zoom, is it possible to do this, sorry for my bad english, hope you could help me!, thanks in advance

Hi - what are you using to consume the vector tiles?  All of the styling is handled on the browser - only the geometry is served by this service.

Hi I'm using the chubb spatial server to serve the tiles, see I might have explain myself wrong, what I'm trying to do is to style all my polygons, yes browser side, I could achieve it already, but, I'm seeing that the color is changing on every zoom event, and I'm using a feature.propertie.value to assing each color, something like I did above, I already could make it respect the geometry, I was returning wrong ID to the getIDForLayerFeature
I was returning something like this
getIDForLayerFeature: function(feature){
return feature._id;
},
I changed to this
getIDForLayerFeature: function(feature){
return feature.properties.id;
},
seeing the static label example I realized about this, it worked as expected, each color is respecting each geometry, but now, when I zoom in or out, those colors change, I though those color would be the same since the value of my polygons never change, I hope I was clear enough, I hope you can give me a hint on what I'm doing wrong, thanks in advance

Hmm.  Can you send me an e-mail (listed in my profile) with an example of your code?  It'll be easier to check it out there.  Thanks!


changed prop from component to componentOrRenderCallback

Closes #31

This introduce a cost for the binding and a door to bugs.
 Maybe the binding should not be responsible for checking that you use the lib correctly...

But if with that both of these can be None or both of them can be provided, which would lead to app crash.

react navigation really trigger a crash if you forget component or children?

Yeah I tried it

If I am correct this error happen on first launch, when the routing is being processed right? Isn't it acceptable to have this "runtime error" with zero cost bindings?

I am thinking about another zero cost solution:
implement 2 components Screen (component) & ScreenWithCallback (render prop)

Implemented two components Screen and ScreenWithCallback.

I'm really interested on this change!
But, maybe we should do the same change for (Bottom/Material)Tab Screen?

@Freddy03h Would make sense indeed. @a-c-sreedhar-reddy can you handle this?

@a-c-sreedhar-reddy up about the request :) Do you want us to handle it if you don't have time?

Yes @MoOx .🙂

@Freddy03h would you like to handle that in another PR?

The all change or the tab screen part?

Ok I'll try to duplicate the changes on the tabs navigators

Thanks!


DS-3680: Database changes of consumers aren't persisted anymore

https://jira.duraspace.org/browse/DS-3680
This needs to be cherry-picked to master too.

I'm currently running this code on our staging server, which is running a fork of DSpace 6.x. So far, so good. Passes the smoke test.

@tdonohue I tested it against DS-3656.

Verified in today's DevMtg that @hardyoyo has tested DS-3648 and confirmed it is still fixed

Also cherry-picked to master

I applied the changes in Context.java according to this pull #1830. below are the results:
The batch import (ZIP) works fine (from XMLUI and from the command with workflow enabled).
The indexer is working correctly.
the problem is that the performance of DSpace is affected, I've encountered a serious slow performance in the response time of tomcat. each request is taking around 20 seconds to get the response !!!

Changes applied in our dev branch here and I don't have that performance issue, is it on specific requests that writes to database or all requests to Tomcat?

It's on all requests to Tomcat.
I didn't face this slowness before this modification


docs: change root element ids from app to root

The root element ids in the examples changed from app to root. Because when we create a new solid-js app, vite uses root as the default.

Hmm.. and SolidStart uses app and will replace those templates eventually. Its a good thought, but I'm going to leave it as is for now.


Add missing png in item-container-templates

@HO-COOH : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#label:"aq-pr-triaged"

#sign-off


docs: Add user guide for Make a public stream private feature

Automated message from Dropbox CLA bot
@synicalsyntax, it looks like you've already signed the Dropbox CLA. Thanks!


Tweaks and fixes

Added the ability to set the room name when creating a new room.
Fixed bug where saving the item edit form with no edits caused an error
Fixed bug where item wasn't deselected when hidden from editor
Added a transition to the button hover color change

The motherboard on my desktop machine died (I don't know how) so I can't test the code, however I don't see any glaring issues after looking through everything quickly. If everything works well on your end then you can go ahead and merge.

After noticing an issue that the room name wasn't being properly copied when cloning, I ended up changing the cloning function. Instead of manually copying each field from the target room, it just passes all the target room data into a rethink Update() query called on the room.
Even though it wasn't broken, I also changed the EditRoomItem function to no longer use on the reflect function I wrote that deeply updates struct fields from a map[string]interface{}. Instead it now uses the rethink Merge operation. The previous way might have worked fine, but I'm more confident in the current method than I am in the function I originally wrote.


Updated Apps list to include Medley

I am the author of the app. But in case you want to confirm, you can email<EMAIL_ADDRESS>Thanks for all the great work on Electron :+1:  its awesome

Thanks for submitting this app!
To make it easier for our team to review and verify the quality of app submissions, we've moved all the app metadata to a new repository. See github.com/electron/electron-apps#adding-your-app for info on how to open a new pull request there. Sorry for the inconvenience, and thanks again for taking the time to submit your app. For more info on the motivation behind this change, see this pull request: https://github.com/electron/electron.atom.io/pull/616

I created a followup PR at https://github.com/electron/electron-apps/pull/13


fix: adds non .default export option to ts class

fixes #217

:tada: This PR is included in version 1.9.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket: