Read stream

Thanks for the plugin!
I must implement a client TCP/IP that needs to read on a socket while the socket is working.
I put the reading cycle on a separate thread and I use the block method ReadStrem.Read with set the readtimeout, but I can't known if exit by timeout or because the socket is closed.
Ideally the Readstream.Read is blocking indefinitely and exit only if socket is closed.
Anothe question:
If the server called close the socket or socket is pending status,I don't have any event that signals me .
Can you help me?

Hi!
From what I understand, you want to be able to wait indefinitely for a read. I believe that by default, ReadStream has a timeout of -1 aka Timeout.Infinite. So, by default it will block until the connection is dropped or data is received - just dont set a timeout! If you do want to set a timeout, I would recommend using the async read methods instead and using a Task-based timeout like this - it will throw TimeoutException if the timeout is exceeded, otherwise it will return the results of the original task.
To know if the socket was closed, you can check the return value. If you use ReadByte, it returns the single byte that was sent, or -1 if the stream was closed. If you use Read to read to seperate byte[] variable, the return value indicates the number of bytes read - if this is 0, the stream was closed.
For your second question, knowing that the connection was closed or dropped is actually a relatively difficult/annoying problem! Generally, it is accepted that you cannot trust a socket to be connected without performing a read or write operation from it. There is some useful discussion here. Because sockets-for-pcl is quite 'light touch' (i.e. I'm letting you as the developer deal directly with the read/write streams), there isn't really a good point to inject that kind of detection into the code - if you are working directly with the streams, other code written to test connectivity etc. is going to interfere.
That said, I also have the sockethelpers project that I aim to include that kind of functionality in. The idea is that you defer read/writing from sockets to the library, allowing it to do the connectivity detection itself without worrying messaging operations being mixed up in the middle of it. Right now the connectivity stuff is not complete but it is on my radar for the next few weeks. In the short term, you can implement the suggestions above, longer term I should have something standardised for it :star2: .

Just chipping in here becos it's an interesting problem. I am new to sockets so it's all unfamiliar terrain. I have also just discovered that writing to my server socket does not fail if the server is disconnected. So I am planning to write a little handshaking step in my connection service that will ping the server with a guid and fail if it doesnt get it pinged back within a timeout period. Does that sound feasible to you? I have node.js on the backend so I'm not sure if your sockethelpers project will help me...

@freever Thanks for joining the discussion!
Yes, bouncing messages back and forth is a feasible approach, but I do see a few drawbacks:

You don't find out about disconnection until timeout occurs - this may or may not be a big deal for your application
If timeout is relatively short, it is more susceptible to network issues - this is unlikely but still possible
You might hit complexity co-ordinating your 'true' read/write operations with your 'keepalive' chatter

All that said, if you can handle the last point reliably it should work fine for most applications. It does require you to have control over the other end's code in order to handle the keepalive stuff though, which is a bummer from a library perspective.
From everything I've seen, I think that riding ReadStream is the most reliable and portable way to independently determine you are disconnected. After thinking hard for while, I'm playing with the idea of a version of TcpSocketClient that exposes ReadStream as an in-memory stream that it feeds by eagerly/constantly reading from the underlying socket stream. In that way, it will always know immediately when the connection is dropped - so can raise a disconnected event - but you as the developer still have the ability to read out data from the exposed ReadStream at your own pace. I'll experiment with this idea a bit!

Ok, I have written an implementation of ITcpSocketClient that wraps the standard TcpSocketClient but does what I described in the previous message to detect when it has been disconnected. Seems to be working well! I will think about how to bring it into the core library, but for now you can drop these classes into your project's PCL and use BetterTcpSocketClient wherever you previously used TcpSocketClient.
BetterTcpSocketClient is a drop-in replacement, but it is not a TcpSocketClient subclass. It has Connected and Disconnected events, as well as an Errored event for anything that gets thrown in the middle of the stream reading code. I'm not sure what errors could be thrown from there so that part may need some more thought.
Let me know how it goes for you guys!

Thanks Ryan, that looks awesome. I'll try and integrate it with my app and
feedback on how it goes.
On 17 April 2015 at 13:20, Ryan Davis<EMAIL_ADDRESS>wrote:

Ok, I have written an implementation of ITcpSocketClient that wraps the
standard TcpSocketClient but does what I described in the previous
message to detect when it has been disconnected. Seems to be working well!
I will think about how to bring it into the core library, but for now you
can drop these classes
https://gist.github.com/rdavisau/7b466c855118a00c901a into your
project's PCL and use BetterTcpSocketClient wherever you previously used
TcpSocketClient.
BetterTcpSocketClient is a drop-in replacement, but it is not a
TcpSocketClient subclass. It has Connected and Disconnected events, as
well as an Errored event for anything that gets thrown in the middle of
the stream reading code. I'm not sure what errors could be thrown from
there so that part may need some more thought.
Let me know how it goes for you guys!
—
Reply to this email directly or view it on GitHub
https://github.com/rdavisau/sockets-for-pcl/issues/9#issuecomment-93967618
.

Thanks Ryan for the help !
It's all right

Glad it's working for you both!
There will be a major version bump for sockets-for-pcl in the next couple of weeks - at that point I will replace the current TcpSocketClient implementation with one more like BetterTcpSocketClient, so you'll get connection monitoring by default. When that happens I'll come back here and let you know so you can switch back to it and be on the main code again :star2:


format_strings: take into account newline occurring within a rewritten line

Close #202
Close #564
Close #687
Close #2833

Awesome, thank you!


"^@" in comments

Any ideas about what is causing this? It's only in the comments. Same thing with different terminals and fonts.

Thanks for reporting this.
It looks like curses is trying to print a vertical bar (ACS_VLINE) to the terminal, but failing and sending a NUL character (0x00) instead. Normally, if the terminal doesn't support the vline character, curses should automatically detect it and fall back to using a PIPE ( | ).
What OS / terminal / python version are you running? Also, does the box at the top of the comments page look like that too? Here's what it looks like for me for reference.

Thanks for the reply.
Comments page with top
Ubuntu 15.10, screen-256color-s, Python 3.5.1
Same with or without tmuximg

I added a section to the FAQ but have been unable to reproduce this, feel free to reopen if you have any additional info.


[WIP] ReadTheDocs Corrections

This is a rolling PR that fixes tiny things I notice as I move through the Pact guide on ReadTheDocs.

Heh, I guess the version of pandoc I used (2.2) adds one less whitespace than whoever did the last commit.

Hi Colin!
Just a heads-up that some of these files are auto-generated.
See:

https://github.com/kadena-io/pact/blob/e6d5c9cd1cf23c930806da0f4de6b11e53ecd26b/docs/build.sh
https://github.com/kadena-io/pact/blob/e6d5c9cd1cf23c930806da0f4de6b11e53ecd26b/src/Pact/Docgen.hs
https://github.com/kadena-io/pact/blob/e6d5c9cd1cf23c930806da0f4de6b11e53ecd26b/src/Pact/Analyze/Feature.hs

Ah, as mentioned here. I hadn't seen that, thanks.
Luckily the only .md I touched myself was pact-reference.md, which doesn't seem to be one of the auto-gen'd ones.

Yup, that's what I was basing things off of.

That reminds me, I should add Linux instructions to that README.


Added CMSIS-NN specialization for int8 depthwise conv op.

Change-Id: Icc8b933363677eca7cc444078ff15721c734ca8f

@petewarden, ready for review


Ignore .. and . special dirs regardless of the NERDTreeShowHidden option

This fixes #154

@mihaifm, Is this issue still happening to you? I can't reproduce it on either Mac or Windows.

I can't replicate it any longer as well.
It's an old item, it must have been fixed in the meantime.


#214 fix: 🐛 Scroll position now persists when open/closing options

Optionally, based on rememberScrollPosition, the dropdown options box will scroll to where it was previously scrolled to. This is useful in many standard cases, but when dynamic options are being passed in, remembering the scroll position can be harmful to the UX - hence the optional prop.
✅ Closes: #214

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Bot marking external collaborators as internal

Is your feature request related to a problem? Please describe.
I do submit a bunch of stuff, so maybe the bot is getting confused between the GitHub contributor vs. member stuff https://github.com/MicrosoftDocs/azure-docs/pull/33314#event-2412527880
Describe the solution you'd like
External contributors shouldn't get autoclosed and directed to submit to a private PR

@meganbradley Can you please take a look at this issue?

Filed internal bug https://ceapex.visualstudio.com/Engineering/_workitems/edit/99549 and assigned to @adunndevster


Visual Studio Win32 build fails, although platforms page says 32/64 supported

Build fails due to mishandling of int types in two library files, and dozens of the test files.
Build FAILED.

"...\_build\ALL_BUILD.vcxproj" (default target) (1) ->
"...\_build\third_party\abseil-cpp\absl\debugging\absl_failure_signal_handler.vcxproj" (default tar
get) (17) ->
"...\blocxxi\_build\third_party\abseil-cpp\absl\synchronization\absl_synchronization.vcxproj" (default targ
et) (21) ->
(ClCompile target) ->
  ...\third_party\abseil-cpp\absl\synchronization\internal\graphcycles.cc(281): warning C4309: 'sta
tic_cast': truncation of constant value [E:\dev\projects\blocxxi\_build\third_party\abseil-cpp\absl\synchronization\abs
l_synchronization.vcxproj]
  ...\third_party\abseil-cpp\absl\synchronization\mutex.cc(277): warning C4309: 'static_cast': trun
cation of constant value [E:\dev\projects\blocxxi\_build\third_party\abseil-cpp\absl\synchronization\absl_synchronizati
on.vcxproj]

Many test files fail to build as well...

Works for me. Building with Visual Studio 2017 15.7 targeting x64, either with CMake + Ninja or Bazel on Windows. I don't have 32-bit compiler to test though.
Tests don't work with CMake yet. Abseil currently only supports running tests with Bazel (and tests do pass there).

As I said, 64bit works, 32bit build fails exactly at mutex.cc and it's a real fail. Can be easily fixed though by checking for 32bit vs 64 bit enviornment. Visual Studio can compile code both in 64 and 32. You just need to use the proper generator with cmake -G:
Generators
  Visual Studio 15 2017 [arch] = Generates Visual Studio 2017 project files.
                                 Optional [arch] can be "Win64" or "ARM".
  Visual Studio 14 2015 [arch] = Generates Visual Studio 2015 project files.
                                 Optional [arch] can be "Win64" or "ARM".
  Visual Studio 12 2013 [arch] = Generates Visual Studio 2013 project files.
                                 Optional [arch] can be "Win64" or "ARM".

The failure in 32bit compilation comes from the following cast in mutex.cc:

// We need to hide Mutexes (or other deadlock detection's pointers)
// from the leak detector.
static const uintptr_t kHideMask = **static_cast<uintptr_t>(0xF03A5F7BF03A5F7BLL);**
static uintptr_t MaskMu(const void *mu) {
  return reinterpret_cast<uintptr_t>(mu) ^ kHideMask;
}

That cast is ugly, although it has no real impact at runtime. Still, it makes the build fail:
....\abseil-cpp\absl\synchronization\mutex.cc(277): error C2220: warning treated as error - no 'object' file generated
....\abseil-cpp\absl\synchronization\mutex.cc(277): warning C4309: 'static_cast': truncation of constant value

@abdes Sorry, I didn't realize your "Win32" literally mean Windows 32-bit. I normally see "Win32" as "traditional Windows API" (think "Win32" vs "UWP").

yes

The compile error above should be fixed by 014f02a3eca93ef88163c3b408c86998ecf6572c, but I only tested the fixed section of code on godbolt.org with the "x86 MSVC 19 2017 RTW" compiler. I'm not sure what flags you need to pass to cl.exe to force 32-bit mode. There may be other errors.
I'm going to close this bug. Re-open if there is another 32-bit error. Patches are also welcome.

I reviewed your changes and they look good. Thanks for the quick turnaround.


Update requests and importlib-metadata to fix CVEs

Fixes up a host of CVEs in the st2 package:
Note: The XRAY references are vulnerabilities listed by JFrog Xray, that don't seem to have a corresponding CVE. JFrog doesn't seem to publish these references publicly - but I've linked to the issue disclosing the vulnerability thats referenced by the XRAY entry.
Bump cryptography to 41.0.4, pyopenssl to 23.2.0
Fixes:

CVE-2023-4807
CVE-2023-2650
CVE-2023-3446

pyopenssl 23.2.0 required for cryptography to 41.0.x support
Bump virtualenv to 20.16.7
Fixes:

CVE-2019-20916

Bump importlib-metadata to 4.10.1
Fixes:

XRAY-195083

Bump requests to 2.31.0
Fixes:

CVE-2023-32681

Bump gitpython to 3.1.37
Fixes:

CVE-2023-40267
CVE-2023-41040
CVE-2023-40590
CVE-2022-24439
XRAY-198950

Supercedes/Implements

https://github.com/StackStorm/st2/pull/6059
https://github.com/StackStorm/st2/pull/6058
https://github.com/StackStorm/st2/pull/6057
https://github.com/StackStorm/st2/pull/6056
https://github.com/StackStorm/st2/pull/6054
https://github.com/StackStorm/st2/pull/6053

@armab As you can probably see from my commits I've hit a bit of a depedency hell trying to get requirement ranges that:

Allow the last supported py3.6
A version with relevant CVEs fixed in py3.8

I can see in https://github.com/StackStorm/st2/pull/6063 you've hopefully got gitpython handled.
I'll probably do the same as you here and split this into bit size PRs to make it more manageable.
I did look at fixing fixate-requriements.py to support reading python_version which I actually got working (See https://github.com/StackStorm/st2/pull/6062/commits/61b47db603c7d21a06142228f031713ba77d7a35) (which is probably worth having, even after dropping py3.6 in 3.9.0 - issue I hit was the stackstorm/packagingbuild:bionic was missing the package that I wanted to using (packaging) so that image would also need bumped.

@jk464 Your enhancement looks really clean. But overall I felt like env markers are buggy in many places, including older pip version we're locked to (because of py3.6) and even pants that doesn't support them in requirements-pants.txt so touching them might be like opening a can of worms.
I hope the builds would be migrated to pants from all the old machinery and so fixate-requriements.py may be obsolete by then.
@cognifloyd do you think it's doable to migrate to the pants builds in the upcoming v3.9.0?

So importlib-metadata changes are extracted into a dedicated PR which could be merged ASAP: https://github.com/StackStorm/st2/pull/6072

@armab if the build is failing for requests and the update to importlib-metadata was merged in #6072 is there anything left to do in this PR?
The only CVE I see listed against requests is CVE-2023-32681 - which is only medium Sev - so I think we could just drop fixing that to 3.9.0 at which point we can(?) drop python 3.6 and bump this w/o issue. (And I assume for 3.9.0 we'd probably rather being bumping dependencies to the highest support by 3.8.)
Let me know what you think and I can close this PR if there's nothing further to do

@jk464 Yeah, let's reassign this PR to the v3.9.0 roadmap
It'll help keeping in mind that requests will need an update after dropping the py3.6.


docs: templates updated titles

Updated titles into a consistent format.
Fixed links to the diagrams.
Fixed typos.
Note: The Templates menu in the navbar is now sorted by the file names. I'll try sorting the navbar menus by the page titles, not the page file names.

@baskaryan Thanks!


Jest security error

The out-of-the-box test is failing with the following:
 ● Test suite failed to run

    SecurityError: localStorage is not available for opaque origins

      at Window.get localStorage [as localStorage] (node_modules/jsdom/lib/jsdom/browser/Window.js:257:15)
          at Array.forEach (<anonymous>)

Adding a Jest specific config in package.json does the trick.

Thanks @helaili!


_.property accept a value argument.

It seems that a common case is {prop:value} but that's pretty clunky since the object has to be crawled, cloned, and compared. It seems that a more straight forward approach would be to allow _.property to accept a value param creating a simple return object[prop] === value callback.
This could be seen in callback sugar as _.filter(objects, prop, value).
This would also handle the transition of #2044 is done since "property" matches would have no own-prop checks.
Thoughts?

This would also handle the transition if #2044 is done as "property" matches would have no own-prop checks.

Yeah, sounds like a good enhancement - should probably be implemented with a guard

Closing as stale.


Cayman theme

Theme submission
Link to my theme repository: https://github.com/zwbetz-gh/cayman-hugo-theme
Thank you guys for your time in reviewing this.

Hey Zachary,
thank you for porting the Cayman theme to Hugo. Your theme should be listed soon on the themes site.
As always, your theme will be promoted on Hugo's official Twitter account.


Cfn-user lambda update handler

The update event should delete the old user and create a new.
This would be the easiest way without parsing differences and using different signup/edit flows. since the user is used just for logging into the designer ui, there should be no side effects from a delete/create cycle.

This would be better solved by #4 ,


I can't find AverageSpanExtractor module :(

Hi. @Impavidity @pnpnpn,
I'm referring to your code for my text-to-SQL study.
To modify the GAP encoder part, I tuned relogic/tabart-pretraining.py.
In order to execute the code, AverageSpanExtractor module is needed.
But I can't find this module from relogic.logickit.modules.span_extractors.average_span_extractor.
Is the module missing from github?
Best regard!

how did you solve this?

How did you solve this?
I cannot find modules in logickit, too.


fix: ignore empty attributes

supersedes #4

now with tests
throws on invalid attribute
doesn't create a space for empty attributes when generating

Merged, I will release it this week, thanks for PR!


The Da Vinci Code (2006) - Character polygons stretch and fall apart constantly

The Da Vinci Code (2006) - Character polygons stretch and fall apart constantly
So this is a issue that has long been present in regular wine and seems that D8VK for the moment can't render any better.
Basically your playable character polygons stretch and fall apart constantly.
The issue is present from the first level.

Software information
The Da Vinci Code (2006)
System information

GPU: NVIDIA GeForce RTX 2080 Ti Rev. A
Driver: 530.41.03
Wine version: 8.7 Staging
D8VK version: e1df54c

Apitrace file(s)
Slayer.trace.tar.gz
Log files
Slayer_d3d8.log

As a note, #100 might be the same underlying issue, or something related. It's the only other instance of "vertex surrealism" I'm aware of (it also happens with WineD3D).

He, he, i would bet that The Da Vinci Code is one of these apps that suffers from WINE's msvcrt & friends sse2 issue.

Thanks dungeon007 that was really helpful.
Managed to get it to work on my end just by setting "msvcr71.dll" to native in winecfg.
That  fixed the issue for me.

Longest fix - https://bugs.winehq.org/show_bug.cgi?id=27594


🐛 [firebase_messaging] APNS token has not been set yet

Bug report
Describe the bug
I am now seeing the following error in Sentry (since the new version of firebase_messaging):
[firebase_messaging/apns-token-not-set] APNS token has not been set yet. Please ensure the APNS token is available by calling getAPNSToken().
Expected behavior
The APNS token should not be required.
Additional context
Here the code in firebase_auth triggering that error.
Future<void> _APNSTokenCheck() async {
    if (Platform.isMacOS || Platform.isIOS) {
      String? token = await getAPNSToken();
      if (token == null) {
        throw FirebaseException(
          plugin: 'firebase_messaging',
          code: 'apns-token-not-set',
          message:
              'APNS token has not been set yet. Please ensure the APNS token is available by calling `getAPNSToken()`.',
        );

In my code, I am getting the token like this:
String? token = await fbm.getToken();
Did the new version introduce a new requirement to also get the APNS token and use that instead?

Flutter doctor
Run flutter doctor and paste the output below:
Click To Expand
Doctor summary (to see all details, run flutter doctor -v):
[√] Flutter (Channel stable, 3.13.2, on Microsoft Windows [Version 10.0.19045.3324], locale de-AT)
[√] Windows Version (Installed version of Windows is version 10 or higher)
[√] Android toolchain - develop for Android devices (Android SDK version 32.0.0-rc1)
[√] Android Studio (version 2021.2)
[√] IntelliJ IDEA Ultimate Edition (version 2020.3)
[√] VS Code (version 1.81.1)
[!] Connected device
    ! No devices available
[√] Network resources

! Doctor found issues in 1 category.

Flutter dependencies
Run flutter pub deps -- --style=compact and paste the output below:
Click To Expand
Dart SDK 3.1.0
Flutter SDK 3.13.2
aupair 2.0.7+131

dependencies:
- age_calculator 1.0.0 [flutter]
- auto_size_text 3.0.0 [flutter]
- cached_network_image 3.2.3 [flutter flutter_cache_manager octo_image cached_network_image_platform_interface cached_network_image_web]
- carousel_slider 4.2.1 [flutter]
- collection 1.17.2
- device_info_plus 9.0.3 [device_info_plus_platform_interface ffi file flutter flutter_web_plugins meta win32 win32_registry]
- dropdown_button2 2.3.9 [flutter meta]
- easy_localization 3.0.3 [flutter shared_preferences intl args path easy_logger flutter_localizations]
- firebase_analytics 10.4.5 [firebase_analytics_platform_interface firebase_analytics_web firebase_core firebase_core_platform_interface flutter]
- firebase_app_check 0.1.5+2 [firebase_app_check_platform_interface firebase_app_check_web firebase_core firebase_core_platform_interface flutter]
- firebase_auth 4.9.0 [firebase_auth_platform_interface firebase_auth_web firebase_core firebase_core_platform_interface flutter meta]
- firebase_core 2.15.1 [firebase_core_platform_interface firebase_core_web flutter meta]
- firebase_messaging 14.6.7 [firebase_core firebase_core_platform_interface firebase_messaging_platform_interface firebase_messaging_web flutter meta]
- firebase_remote_config 4.2.5 [firebase_core firebase_core_platform_interface firebase_remote_config_platform_interface firebase_remote_config_web flutter]
- firebase_storage 11.2.6 [firebase_core firebase_core_platform_interface firebase_storage_platform_interface firebase_storage_web flutter]
- flutter 0.0.0 [characters collection material_color_utilities meta vector_math web sky_engine]
- flutter_app_badger 1.5.0 [flutter]
- flutter_easyloading 3.0.5 [flutter flutter_spinkit]
- flutter_native_splash 2.3.2 [args flutter flutter_web_plugins js html image meta path universal_io xml yaml]
- flutter_slidable 3.0.0 [flutter]
- flutter_staggered_grid_view 0.7.0 [flutter]
- flutter_svg 2.0.7 [flutter vector_graphics vector_graphics_codec vector_graphics_compiler]
- font_awesome_flutter 10.5.0 [flutter]
- google_fonts 5.1.0 [flutter http path_provider crypto]
- google_mobile_ads 3.0.0 [meta flutter visibility_detector webview_flutter_android webview_flutter_wkwebview webview_flutter]
- google_sign_in 6.1.5 [flutter google_sign_in_android google_sign_in_ios google_sign_in_platform_interface google_sign_in_web]
- http 1.1.0 [async http_parser meta]
- image_cropper 5.0.0 [flutter image_cropper_platform_interface image_cropper_for_web]
- image_picker 1.0.4 [flutter image_picker_android image_picker_for_web image_picker_ios image_picker_linux image_picker_macos image_picker_platform_interface image_picker_windows]
- in_app_review 2.0.6 [flutter in_app_review_platform_interface]
- intl_phone_number_input 0.7.3+1 [flutter libphonenumber_plugin equatable collection]
- introduction_screen 3.1.11 [flutter collection dots_indicator flutter_keyboard_visibility]
- lottie 2.6.0 [archive flutter path vector_math]
- package_info_plus 4.1.0 [ffi flutter flutter_web_plugins http meta path package_info_plus_platform_interface win32]
- percent_indicator 4.2.3 [flutter]
- photo_view 0.14.0 [flutter]
- pie_chart 5.3.2 [flutter]
- pin_code_fields 8.0.1 [flutter]
- provider 6.0.5 [collection flutter nested]
- purchases_flutter 5.6.4 [flutter freezed_annotation json_annotation]
- realm 1.4.0 [flutter args build_cli_annotations collection crypto ffi json_annotation logging meta package_config path pubspec_parse pub_semver realm_common realm_generator tar build_runner http cancellation_token]
- responsive_framework 1.1.0 [flutter collection]
- sentry_flutter 7.9.0 [flutter flutter_web_plugins sentry package_info_plus meta]
- shared_preferences 2.2.1 [flutter shared_preferences_android shared_preferences_foundation shared_preferences_linux shared_preferences_platform_interface shared_preferences_web shared_preferences_windows]
- sign_in_with_apple 5.0.0 [flutter meta sign_in_with_apple_platform_interface sign_in_with_apple_web]
- stylish_bottom_bar 1.0.0 [flutter]
- system_settings 2.1.0 [flutter]
- upgrader 8.1.0 [flutter device_info_plus html http os_detect package_info_plus shared_preferences url_launcher version xml]
- url_launcher 6.1.14 [flutter url_launcher_android url_launcher_ios url_launcher_linux url_launcher_macos url_launcher_platform_interface url_launcher_web url_launcher_windows]

dev dependencies:
- flutter_lints 2.0.3 [lints]
- flutter_test 0.0.0 [flutter test_api matcher path fake_async clock stack_trace vector_math async boolean_selector characters collection material_color_utilities meta source_span stream_channel string_scanner term_glyph web]
- sentry_dart_plugin 1.5.0 [yaml injector ansicolor system_info2 file http crypto convert process]

dependency overrides:
- webview_flutter_wkwebview 3.5.0 [flutter path webview_flutter_platform_interface]

transitive dependencies:
- _fe_analyzer_shared 61.0.0 [meta]
- _flutterfire_internals 1.3.5 [collection firebase_core firebase_core_platform_interface flutter meta]
- analyzer 5.13.0 [_fe_analyzer_shared collection convert crypto glob meta package_config path pub_semver source_span watcher yaml]
- ansicolor 2.0.1
- archive 3.3.7 [crypto path pointycastle]
- args 2.4.2
- async 2.11.0 [collection meta]
- boolean_selector 2.1.1 [source_span string_scanner]
- build 2.4.1 [analyzer async convert crypto glob logging meta package_config path]
- build_cli_annotations 2.1.0 [args meta]
- build_config 1.1.1 [checked_yaml json_annotation path pubspec_parse yaml]
- build_daemon 4.0.0 [built_collection built_value http_multi_server logging path pool shelf shelf_web_socket stream_transform watcher web_socket_channel]
- build_resolvers 2.3.1 [analyzer async build collection convert crypto graphs logging package_config path pool pub_semver stream_transform yaml]
- build_runner 2.4.6 [analyzer args async build build_config build_daemon build_resolvers build_runner_core code_builder collection crypto dart_style frontend_server_client glob graphs http_multi_server io js logging meta mime package_config path pool pub_semver pubspec_parse shelf shelf_web_socket stack_trace stream_transform timing watcher web_socket_channel yaml]
- build_runner_core 7.2.10 [async build build_config build_resolvers collection convert crypto glob graphs json_annotation logging meta package_config path pool timing watcher yaml]
- built_collection 5.1.1
- built_value 8.6.2 [built_collection collection fixnum meta]
- cached_network_image_platform_interface 2.0.0 [flutter flutter_cache_manager]
- cached_network_image_web 1.0.2 [flutter flutter_cache_manager cached_network_image_platform_interface]
- cancellation_token 2.0.1 [meta collection]
- characters 1.3.0
- checked_yaml 2.0.3 [json_annotation source_span yaml]
- clock 1.1.1
- code_builder 4.6.0 [built_collection built_value collection matcher meta]
- convert 3.1.1 [typed_data]
- cross_file 0.3.3+5 [js meta]
- crypto 3.0.3 [typed_data]
- csslib 1.0.0 [source_span]
- dart_style 2.3.2 [analyzer args path pub_semver source_span]
- device_info_plus_platform_interface 7.0.0 [flutter meta plugin_platform_interface]
- dots_indicator 2.1.2 [flutter]
- easy_logger 0.0.2 [flutter]
- equatable 2.0.5 [collection meta]
- fake_async 1.3.1 [clock collection]
- ffi 2.1.0
- file 6.1.4 [meta path]
- file_selector_linux 0.9.2+1 [cross_file file_selector_platform_interface flutter]
- file_selector_macos 0.9.3+2 [cross_file file_selector_platform_interface flutter]
- file_selector_platform_interface 2.6.1 [cross_file flutter http plugin_platform_interface]
- file_selector_windows 0.9.3+1 [cross_file file_selector_platform_interface flutter]
- firebase_analytics_platform_interface 3.6.5 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_analytics_web 0.5.4+5 [_flutterfire_internals firebase_analytics_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
- firebase_app_check_platform_interface 0.0.9+2 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_app_check_web 0.0.11+2 [_flutterfire_internals firebase_app_check_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins js]
- firebase_auth_platform_interface 6.18.0 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
- firebase_auth_web 5.8.0 [firebase_auth_platform_interface firebase_core firebase_core_web flutter flutter_web_plugins http_parser js meta]
- firebase_core_platform_interface 4.8.0 [collection flutter flutter_test meta plugin_platform_interface]
- firebase_core_web 2.7.0 [firebase_core_platform_interface flutter flutter_web_plugins js meta]
- firebase_messaging_platform_interface 4.5.6 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_messaging_web 3.5.6 [_flutterfire_internals firebase_core firebase_core_web firebase_messaging_platform_interface flutter flutter_web_plugins js meta]
- firebase_remote_config_platform_interface 1.4.5 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_remote_config_web 1.4.5 [firebase_core firebase_core_web firebase_remote_config_platform_interface flutter flutter_web_plugins js]
- firebase_storage_platform_interface 4.4.5 [collection firebase_core flutter meta plugin_platform_interface]
- firebase_storage_web 3.6.6 [_flutterfire_internals async firebase_core firebase_core_web firebase_storage_platform_interface flutter flutter_web_plugins http js meta]
- fixnum 1.1.0
- flutter_blurhash 0.7.0 [flutter]
- flutter_cache_manager 3.3.1 [clock collection file flutter http path path_provider rxdart sqflite uuid]
- flutter_keyboard_visibility 5.4.1 [meta flutter_keyboard_visibility_platform_interface flutter_keyboard_visibility_linux flutter_keyboard_visibility_macos flutter_keyboard_visibility_web flutter_keyboard_visibility_windows flutter]
- flutter_keyboard_visibility_linux 1.0.0 [flutter_keyboard_visibility_platform_interface flutter]
- flutter_keyboard_visibility_macos 1.0.0 [flutter_keyboard_visibility_platform_interface flutter]
- flutter_keyboard_visibility_platform_interface 2.0.0 [flutter meta plugin_platform_interface]
- flutter_keyboard_visibility_web 2.0.0 [flutter_keyboard_visibility_platform_interface flutter_web_plugins flutter]
- flutter_keyboard_visibility_windows 1.0.0 [flutter_keyboard_visibility_platform_interface flutter]
- flutter_localizations 0.0.0 [flutter intl characters clock collection material_color_utilities meta path vector_math web]
- flutter_plugin_android_lifecycle 2.0.16 [flutter]
- flutter_spinkit 5.2.0 [flutter]
- flutter_web_plugins 0.0.0 [flutter characters collection material_color_utilities meta vector_math web]
- freezed_annotation 2.4.1 [collection json_annotation meta]
- frontend_server_client 3.2.0 [async path]
- glob 2.1.2 [async collection file path string_scanner]
- globbing 1.0.0 [path]
- google_identity_services_web 0.2.1+1 [js meta]
- google_sign_in_android 6.1.19 [flutter google_sign_in_platform_interface]
- google_sign_in_ios 5.6.3 [flutter google_sign_in_platform_interface]
- google_sign_in_platform_interface 2.4.2 [flutter plugin_platform_interface quiver]
- google_sign_in_web 0.12.0+5 [flutter flutter_web_plugins google_identity_services_web google_sign_in_platform_interface http js]
- graphs 2.3.1 [collection]
- html 0.15.4 [csslib source_span]
- http_multi_server 3.2.1 [async]
- http_parser 4.0.2 [collection source_span string_scanner typed_data]
- image 4.0.17 [archive meta xml]
- image_cropper_for_web 3.0.0 [flutter flutter_web_plugins image_cropper_platform_interface js]
- image_cropper_platform_interface 5.0.0 [flutter plugin_platform_interface http]
- image_picker_android 0.8.7+5 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface]
- image_picker_for_web 3.0.1 [flutter flutter_web_plugins image_picker_platform_interface mime]
- image_picker_ios 0.8.8+2 [flutter image_picker_platform_interface]
- image_picker_linux 0.2.1+1 [file_selector_linux file_selector_platform_interface flutter image_picker_platform_interface]
- image_picker_macos 0.2.1+1 [file_selector_macos file_selector_platform_interface flutter image_picker_platform_interface]
- image_picker_platform_interface 2.9.1 [cross_file flutter http plugin_platform_interface]
- image_picker_windows 0.2.1+1 [file_selector_platform_interface file_selector_windows flutter image_picker_platform_interface]
- in_app_review_platform_interface 2.0.4 [flutter url_launcher plugin_platform_interface platform]
- injector 3.0.0
- intl 0.18.1 [clock meta path]
- io 1.0.4 [meta path string_scanner]
- js 0.6.7 [meta]
- json_annotation 4.8.1 [meta]
- libphonenumber_platform_interface 0.4.1 [flutter plugin_platform_interface]
- libphonenumber_plugin 0.3.2 [flutter flutter_web_plugins libphonenumber_platform_interface libphonenumber_web]
- libphonenumber_web 0.3.1 [flutter flutter_web_plugins js libphonenumber_platform_interface]
- lints 2.1.1
- logging 1.2.0
- matcher 0.12.16 [async meta stack_trace term_glyph test_api]
- material_color_utilities 0.5.0 [collection]
- meta 1.9.1
- mime 1.0.4
- nested 1.0.0 [flutter]
- objectid 2.1.0
- octo_image 1.0.2 [flutter flutter_blurhash]
- os_detect 2.0.1
- package_config 2.1.0 [path]
- package_info_plus_platform_interface 2.0.1 [flutter meta plugin_platform_interface]
- path 1.8.3
- path_parsing 1.0.1 [vector_math meta]
- path_provider 2.1.1 [flutter path_provider_android path_provider_foundation path_provider_linux path_provider_platform_interface path_provider_windows]
- path_provider_android 2.2.0 [flutter path_provider_platform_interface]
- path_provider_foundation 2.3.1 [flutter path_provider_platform_interface]
- path_provider_linux 2.2.1 [ffi flutter path path_provider_platform_interface xdg_directories]
- path_provider_platform_interface 2.1.1 [flutter platform plugin_platform_interface]
- path_provider_windows 2.2.1 [ffi flutter path path_provider_platform_interface win32]
- petitparser 5.4.0 [meta]
- platform 3.1.2
- plugin_platform_interface 2.1.6 [meta]
- pointycastle 3.7.3 [collection convert js]
- pool 1.5.1 [async stack_trace]
- process 4.2.4 [file path platform]
- pub_semver 2.1.4 [collection meta]
- pubspec_parse 1.2.3 [checked_yaml collection json_annotation pub_semver yaml]
- quiver 3.2.1 [matcher]
- realm_common 1.4.0 [objectid sane_uuid]
- realm_generator 1.4.0 [analyzer build_resolvers build dart_style realm_common source_gen source_span]
- rxdart 0.27.7
- sane_uuid 1.0.0-alpha.5 [meta crypto]
- sentry 7.9.0 [http meta stack_trace uuid]
- shared_preferences_android 2.2.1 [flutter shared_preferences_platform_interface]
- shared_preferences_foundation 2.3.4 [flutter shared_preferences_platform_interface]
- shared_preferences_linux 2.3.1 [file flutter path path_provider_linux path_provider_platform_interface shared_preferences_platform_interface]
- shared_preferences_platform_interface 2.3.1 [flutter plugin_platform_interface]
- shared_preferences_web 2.2.1 [flutter flutter_web_plugins shared_preferences_platform_interface]
- shared_preferences_windows 2.3.1 [file flutter path path_provider_platform_interface path_provider_windows shared_preferences_platform_interface]
- shelf 1.4.1 [async collection http_parser path stack_trace stream_channel]
- shelf_web_socket 1.0.4 [shelf stream_channel web_socket_channel]
- sign_in_with_apple_platform_interface 1.0.0 [flutter plugin_platform_interface meta]
- sign_in_with_apple_web 1.0.1 [flutter flutter_web_plugins sign_in_with_apple_platform_interface js]
- sky_engine 0.0.99
- source_gen 1.4.0 [analyzer async build dart_style glob path source_span yaml]
- source_span 1.10.0 [collection path term_glyph]
- sqflite 2.3.0 [flutter sqflite_common path]
- sqflite_common 2.5.0 [synchronized path meta]
- stack_trace 1.11.0 [path]
- stream_channel 2.1.1 [async]
- stream_transform 2.1.0
- string_scanner 1.2.0 [source_span]
- synchronized 3.1.0
- system_info2 4.0.0 [globbing path]
- tar 0.5.6 [async meta typed_data]
- term_glyph 1.2.1
- test_api 0.6.0 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph]
- timing 1.0.1 [json_annotation]
- typed_data 1.3.2 [collection]
- universal_io 2.2.2 [collection meta typed_data]
- url_launcher_android 6.1.0 [flutter url_launcher_platform_interface]
- url_launcher_ios 6.1.5 [flutter url_launcher_platform_interface]
- url_launcher_linux 3.0.6 [flutter url_launcher_platform_interface]
- url_launcher_macos 3.0.7 [flutter url_launcher_platform_interface]
- url_launcher_platform_interface 2.1.5 [flutter plugin_platform_interface]
- url_launcher_web 2.0.20 [flutter flutter_web_plugins url_launcher_platform_interface]
- url_launcher_windows 3.0.8 [flutter url_launcher_platform_interface]
- uuid 3.0.7 [crypto]
- vector_graphics 1.1.7 [flutter vector_graphics_codec]
- vector_graphics_codec 1.1.7
- vector_graphics_compiler 1.1.7 [args meta path_parsing xml vector_graphics_codec]
- vector_math 2.1.4
- version 3.0.2
- visibility_detector 0.3.3 [flutter]
- watcher 1.1.0 [async path]
- web 0.1.4-beta
- web_socket_channel 2.4.0 [async crypto stream_channel]
- webview_flutter 4.2.4 [flutter webview_flutter_android webview_flutter_platform_interface webview_flutter_wkwebview]
- webview_flutter_android 3.9.5 [flutter webview_flutter_platform_interface]
- webview_flutter_platform_interface 2.5.1 [flutter meta plugin_platform_interface]
- win32 5.0.7 [ffi]
- win32_registry 1.1.1 [ffi win32]
- xdg_directories 1.0.3 [meta path]
- xml 6.3.0 [collection meta petitparser]
- yaml 3.1.2 [collection source_span string_scanner]

Thanks for the report @Navil
With the firebase-ios-sdk (v10.4.0+) an APNS token is strictly required as a prerequisite to get an FCM token
The SDKs try to handle this for you by swizzling in AppDelegate methods that register an APNS token if one comes, but if you disable swizzling, or you do not register for remote notifications prior to calling getToken, you'll never get one

do not disable swizzling
make sure you call registerForRemoteNotifications

You may read about it here and check if it helps in your case or not : https://github.com/firebase/firebase-ios-sdk/issues/10742

Hey, thank you for the answer. I did not disable swizzling afaik. Should I just call getAPNSToken() before I call getToken() ?
The flutter documentation does not really mention how to disable/enable swizzling, so I left this untouched.

@Navil
Per plugin's example, it does call the method as below:
https://github.com/firebase/flutterfire/blob/4e9bb694ad13cd06ecc6c1936cab0a6b9c77273c/packages/firebase_messaging/firebase_messaging/example/lib/main.dart#L252
See if it helps in your case or not.

@darshankawar @russellwheatley how to fix it then. I'm getting null APNSToken even though i have followed all the steps in the documentation.

I tried by calling  String? token = await FirebaseMessaging.instance.getAPNSToken();. but I got same error.
[firebase_messaging/apns-token-not-set] APNS token has not been set yet. Please ensure the APNS token is available by calling getAPNSToken().

plist
FirebaseAppDelegateProxyEnabled

swift code
import UIKit
import Flutter
import Firebase
import FirebaseMessaging
@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
FirebaseApp.configure()
if #available(iOS 10.0, *) {
UNUserNotificationCenter.current().delegate = self as? UNUserNotificationCenterDelegate
}
application.registerForRemoteNotifications()
GeneratedPluginRegistrant.register(with: self)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
override func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
Messaging.messaging().apnsToken = deviceToken
print("Token: (deviceToken)")
Messaging.messaging().setAPNSToken(deviceToken, type: .unknown)
super.application(application,didRegisterForRemoteNotificationsWithDeviceToken: deviceToken)
}
}

@Navil @aarjan @computerfriendlog2
Anyone resoved this issue. I'm trying to subscribeToTopic. While calling that subscribeToTopic method i'm facing this issue.
I don't need token. Still I have to call getAPNSToken method?

@msarkrish Check this comment for reference.

@darshankawar My question is I'm not using that token still I have to call that method before calling subscribeToTopic method?

https://github.com/firebase/flutterfire/issues/11548#issuecomment-1728200243
where resolved?

@darshankawar Can you open this issue? Because for this issue no solution is added.

@msarkrish Does this not help ?

@darshankawar No, That is not helping to resolve this issue.
In the mentioned comment. They said for Apple platform APNSToken is mandatory alone. I have added condition to check apnstoken but still facing issue.
        final token = await _firebaseMessaging.getAPNSToken();
        if (token != null) {
          await _firebaseMessaging.subscribeToTopic(personID);
        } else {
          print('APNS token is not available');
        }
      }

Check https://github.com/firebase/flutterfire/pull/11400 and see if it helps.

The APNS token should not be required.

APNS token is a requirement for Firebase Messaging on Apple platform. See documentation that has yet to be updated on the Firebase website.

For me FirebaseMessaging.instance.getAPNSToken(); always returns null. Is there a fix for that?

did anyone find a solution for this ?


Issue with license

Hello,
We want to use the tosource package, but in NPM, the license is showing as "none" on the right hand side(under weekly downloads).
Because of this our automated package checker is unable to download and rejecting the package I guess. Could you please help update the license on NPM?
Thanks a lot!!! @marcello3d

Additional info -
Artifact:                    NPM -<EMAIL_ADDRESS>Dependencies (7)
Dependency: NPM -<EMAIL_ADDRESS>Dependency: NPM -<EMAIL_ADDRESS>RejectReasons (1)
RejectReason:   50453a93-308a-4f7c-b568-fb20c7c2ef8d
Type:      UNKNOWN_LICENSE_FOUND
License:   Custom: https://github.com/marcello3d/node-tosource/workflows/Node

I have the same issue @marcello3d
I see you mentioned in this discussion that it's zlib licensed, but we need the package.json updated to reflect that. Could you make that change?
https://groups.google.com/g/nodejs/c/I7hCR7iJYRU
Thanks!!

There's a license file in the repo already. I think maybe your license checker is buggy? GitHub seems to recognize it with no issue.
If there's something specific you need, please submit a PR!


DSS Editor doesn't support securing data service

Description:
Currently there are no UI element to add security policy to a data service. Have to add support for the below elements in order to add security.
<policy key="conf:security/policy.xml"/>
 <enableSec/>

Duplicate of https://github.com/wso2/devstudio-tooling-ei/issues/895


add library for managing flow and custom ipso objects for proximity s…

Signed-off-by: Onkar Kshirsagar<EMAIL_ADDRESS>

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

Can one of the admins verify this patch?

This needs to be updated with AWA static APIs so discarding this pull request.


Using 2nd HDMI on Pi 4

Love the work so much I got the Pi 4, It would be great to utilise the 2nd HDMI port for another display.
Usage Modes I would envisage needed would be:
Mirroring
Current Rotation method spread across two displays
Differing Rotation on each display, eg. 1st rotating Fullscreen, the 2nd static matrix of all feed.

For that matter, how is the performance on the pi4? I'm specifically thinking about 4k applications, such as having a 4x4 display on a giant 4k output.
Is downscaling improved on the pi 4 as well? We have 4k cameras that I would like to decode and downscale to 1080p (as a single display).

I'd love this too, I have a rpi4 ready to go and would like to do something similar with 1 full screen and 6 matrix on second screen (one large and 5 smaller)

I have no idea when I might be able to revisit this for RPi 4's new capabilities.  I suspect that all or most of these requests would require significant reworking and are probably beyond the capabilities of a shell scripted system.  I don't even have an RPi 4.  If I get one, I may revisit this.  Feel free to make code contributions or fork the code.

Just throwing this here and I don't know if that will be useful but if we had in the feeds configuration file both HDMI 0 (main HDMI output) and HDMI 7 (second HDMI output) we can then send the --display option to omxplayer.
This play the feed in the first screen
omxplayer --no-keys --no-osd --avdict rtsp_transport:tcp rtsp://x.x.x.x:7447/yxzyxzyxz  --live -n -1 --timeout 30 --display 0
And this play on the second
omxplayer --no-keys --no-osd --avdict rtsp_transport:tcp rtsp://x.x.x.x:7447/yxzyxzyxz  --live -n -1 --timeout 30 --display 7

I'm looking for a solution with Anonymousdog's displaycameras but to output on 2 screens.
It will send 4(2x2) to display1 and 6(3x2) to display2
In total 10 different cameras.
But is it possible?
Currently using displaycamera on different RPI's, and its working very nicely
... just need that last tweak :)

@pzzt2t Using a 2nd display is possible. See the reply above your comment from @SebDominguez.
However, this does require some trial and error especially with camera and display resolutions. I have an RPi4 4GB model running omxplayer to output 6 cameras on a 16:10 aspect ratio monitor and another 2 cameras on a 4:3 monitor. I had to tweak the camera resolution and fps settings quite a bit though. Especially so that there is no downscaling at all, otherwise omxplayer would crash immediately.
You can have a look at my fork of this repo for a way this could be done with displaycameras. I will finish testing and updating that fork when I have time so that it might be added in a future version.

@bal0u45 Wow.. sounds very nice.
I look over your repo, not 100% sure what do to.
I run anonymousdog's setup right now.
Do I only need to replace displaycameras with your displaycameras?
or do will I just have to install your modified displaycamera?
.. And im not sure which files needed to modify for the cameras to be displayed on the two different screens.
Sorry for all the questions, hope for you helpfull reply :)
Best Regards

@pzzt2t The fork is still WIP. You would need to include the designated monitor in the layout.conf for each camera you want to display. As I said, I will update the repo and then submit it to @Anonymousdog

Hi @bal0u45 !  Thanks for that, I downloaded it, however I am not seeing how to specify which display in the configuration?
Also, I am using two screens with the exact same resolution, so I'm not sure if that would be an issue or not

The project doesn't support multiple displays. That's outside the use case.
However,  you may edit the main script code to include an omxplayer target
display parameter (in both places the omxplayer command line is constructed
in the script, lines 121 and 223).  That appears to be '--display 2' for
HDMI 0 and '--display 7' for HDMI 1.
On Thu, Dec 17, 2020, 8:19 PM Ajay<EMAIL_ADDRESS>wrote:

Hi @bal0u45 https://github.com/bal0u45 ! Thanks for that, I downloaded
it, however I am not seeing how to specify which display in the
configuration?
Also, I am using two screens with the exact same resolution, so I'm not
sure if that would be an issue or not
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Anonymousdog/displaycameras/issues/21#issuecomment-747806456,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHIYIKM76URDMXNMIBUJNVDSVKU2JANCNFSM4H7OIEIA
.

@bal0u45 @pzzt2t I have modified displaycameras to display to multiple screens, if you'd like to see my revisions, lmk and I can setup a fork. I basically did what anonymousdog suggested before I read his comment, making modifications to the script and the config file appropriately.

@bal0u45 @pzzt2t I have modified displaycameras to display to multiple screens, if you'd like to see my revisions, lmk and I can setup a fork. I basically did what anonymousdog suggested before I read his comment, making modifications to the script and the config file appropriately.

That does sound very nice sanaking.
I would like to try it
Best regards

Hi,
Just want to give a heads up that v3 of Rpisurv has been released https://github.com/SvenVD/rpisurv/releases/tag/v3.0.0-beta3.
This includes full support for dual displays.
Mirroring = possible  by configuring the same streams for each display
Current Rotation method spread across two displays = each display will have his own rotation.
Differing Rotation on each display, eg. 1st rotating Fullscreen, the 2nd static matrix of all feed. = This is possible
Please test it out, we need some beta testers for the new version.
Thanks

Nice job!
On Tue, Dec 29, 2020, 6:04 PM SvenVD<EMAIL_ADDRESS>wrote:

Hi,
Just want to give a heads up that v3 of Rpisurv has been released
https://github.com/SvenVD/rpisurv/releases/tag/v3.0.0-beta3.
This includes full support for dual displays.
Mirroring = possible by configuring the same streams for each display
Current Rotation method spread across two displays = each display will
have his own rotation.
Differing Rotation on each display, eg. 1st rotating Fullscreen, the 2nd
static matrix of all feed. = This is possible
Please test it out, we need some beta testers for the new version.
Thanks
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Anonymousdog/displaycameras/issues/21#issuecomment-752270477,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AHIYIKPFVE5Y46WO5N6GB3DSXJOAPANCNFSM4H7OIEIA
.

@pzzt2t > That does sound very nice sanaking.

I would like to try it
Best regards

I haven't been able to make it stable (it keeps spawning new omxplayer processes which layer on top of each other until it closes them all), so while I could give you the tiny mods that make it work, I haven't figured out how to keep it running or what the issue is.  That said, it may not be a displaycameras issue, because it is also complaining about finding the root and pid file for omx in /tmp and I don't know why, so..
I gave up, and I moved on to rpisurv

@pzzt2t > That does sound very nice sanaking.

I would like to try it
Best regards

I haven't been able to make it stable (it keeps spawning new omxplayer processes which layer on top of each other until it closes them all), so while I could give you the tiny mods that make it work, I haven't figured out how to keep it running or what the issue is.  That said, it may not be a displaycameras issue, because it is also complaining about finding the root and pid file for omx in /tmp and I don't know why, so..
I gave up, and I moved on to rpisurv


Investigate caching in workflows using JPS

Once #13 is closed, investigate caching of artifacts and detection of changes when JPS builds platform using github workflow. This will significantly reduce build and test time.

We don't have a lot of PRs in this repo, the action builds only on Linux, and the build takes about 19 minutes. So, let's not spend much time on optimizing this (i.e., low priority).

Agreed, just wanted to document this somewhere. This exploration will also be important in designing the build system for the tool.


Baud rate and ping

These are deprecated or undocumented ?

You saw nothing :eyes:  :laughing:
This is experimental and is not supposed to be in this version. Thanks for pointing it out - I have now removed this.


Upgraded commons-cli and commons-lang3 package version.

upgraded commons-cli version from 1.2 to 1.5.0
upgraded commons-lang3 version from 3.11 to 3.12.0

Codecov Report

Merging #11083 (54a61da) into master (4375043) will increase coverage by 0.00%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master   #11083     +/-   ##
=========================================
  Coverage    0.11%    0.11%
=========================================
  Files        2203     2148     -55
  Lines      118141   115618   -2523
  Branches    17877    17571    -306
=========================================
  Hits          137      137
+ Misses     117984   115461   -2523
  Partials       20       20

Flag
Coverage Δ

integration1temurin11
?

integration1temurin17
?

integration1temurin20
?

integration2temurin17
?

integration2temurin20
?

unittests1temurin11
?

unittests1temurin17
?

unittests1temurin20
?

unittests2temurin17
0.11% <ø> (ø)

unittests2temurin20
?

Flags with carried forward coverage won't be shown. Click here to find out more.
see 57 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Context aware ReacTree?

Starting a diagram is a little cumbersome. I have to click the start button, then click to choose a file. The folder that the file picker defaults to is not near the repository I am modifying. I end up taking 15 seconds to hunt down my repo, and select the file I want. However, in most cases I already have the file I want open in the project. Would be much more convenient to be able to right click on a react component and choose "Start Tree", or have the "Start Tree" button just assume that the file I have open already is the initial file, so long as the extension ends in jsx or tsx

Hey Andrew!
Great point. That's something we've thought about as the dev team and something we do hope to implement in a future update of the product. Thank you for the suggestion. I can update this thread when that feature is added.
Best


V1 escape characters

References to other Issues or PRs

Have you read the Contributing Guidelines?
Brief description of what is fixed or changed
Other comments

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 5 committers have signed the CLA.:white_check_mark: feedmeapples:x: johanbrandhorst:x: renovate-bot:x: dungnx:x: elijah-robertsYou have signed the CLA already but the status is still pending? Let us recheck it.


Two Grid Shenanigans

_collision = (GRID[# _left,  _top] == BLOCKED ||
            GRID[# _right, _top] == BLOCKED ||
            GRID[# _left,  _bot] == BLOCKED ||
            GRID[# _right, _bot] == BLOCKED);

becomes
_collision = (GRID [# _left , _top] == BLOCKED ||
GRID [# _right , _top] == BLOCKED) ||
GRID [# _left , _bot] == BLOCKED ||GRID [# _right , _bot] == BLOCKED );

This is a generalized problem that we have for newlines.
The solution will require a small refactor of how we handle bare newlines -- they'll need to hold onto whether they have indentation after them. We'll need the printer to control where or not it allows that indentation to matter.


check extra field for change for reindexing

I confirm that this contribution is made under the terms of the license found in the root directory of this repository's source tree and that I have the authority necessary to make this contribution on behalf of its copyright owner.
This is an attempt to address the re-indexing issues seen by an application.
Issue was caused by comparing two SimpleLinguistics object, in testing at least, in the class NormalizeExpression
Changed to
       if (linguistics.getClass() != other.linguistics.getClass()) return false;
Not sure if this is the best way to address this.

@jonmv

@arnej27959 did this in #18682


Transforming Object.assign() with Babel (fix IE11 issue)

Thanks a lot for this awesome library!
We detected an issue on IE11, as Babel does not include the polyfill for Object.assign() in its es2015 preset. You need to include yourself the plugin to transform it, so here it is ^^

:+1: thanks for fixing @PerrineBoissieres

any plans to release this change ?

This is still an issue today in the latest version (5.4.0). Check out the files on npm<EMAIL_ADDRESS>and notice the use of Object.assign (CTRL/CMD+F)

Would be lovely if this gets pushed to npm soon :heart:

thank you for this awesome lib, also waiting on this for IE11 support 😀

There's a PR for this ready: https://github.com/jamiebuilds/react-loadable/pull/144

Hi, the NPM artifacts still need updated. ctrl+f for Object.assign in 5.5.0<EMAIL_ADDRESS>


Update request: ALVR 20.6.1 -> 20.8.1

Package name: ALVR
Latest released version: 20.8.1

Current version on the unstable channel: 20.6.1
Current version on the stable/release channel: N/A

[x] Checked the nixpkgs pull requests

Notify maintainers
@PassiveLemon

Issue I've noticed: They've discontinued the AppImage so we need to build it from scratch :\
Note for maintainers: Please tag this issue in your PR.

Add a :+1: reaction to issues you find important.

ALVR removed the appimage format in version 20.7.1 and above so it will need to be built from source.

ALVR removed the appimage format in version 20.7.1 and above so it will need to be built from source. I've tried to do this and have not been successful but I'll give it another shot.

I have been having a go at this today via an overlay on my nix-configs: https://github.com/alisonjenkins/nix-config/tree/alvr-overlay
I am currently stuck as I cannot seem to get it to find the ffmpeg includes directory.
I am hoping to get this working as an overlay and then submit a PR to get it working as a proper Nix package.

ALVR removed the appimage format in version 20.7.1 and above so it will need to be built from source. I've tried to do this and have not been successful but I'll give it another shot.

I have been having a go at this today via an overlay on my nix-configs: https://github.com/alisonjenkins/nix-config/tree/alvr-overlay
I am currently stuck as I cannot seem to get it to find the ffmpeg includes directory.
I am hoping to get this working as an overlay and then submit a PR to get it working as a proper Nix package.

So I changed tack to just trying to get the project to compile on NixOS. It appears that the ALVR dev is using cargo xtask to vendor and patch several dependencies including ffmpeg and x264 so I have been trying to get those to compile but am still having issues with getting those dependencies to compile due to missing dependencies of the dependencies.

Just to note that the latest version is now 20.9.1.

Is there something wrong with using the tarballs in their releases instead of building from scratch? I know it would be preferable to build from scratch, but might be a stopgap to ensure the latest version is available.

I've had success with the tarballs but and I posted a derivation for other contributors to use since I don't plan on maintaining ALVR anymore because I don't use it. Building directly from source is ideal in my opinion but tarballs are still a good solution

Ah - I see there is a PR in draft #308097 - I'll try things out from there.


FEAT(SIDENAV): Build SideNav component

Add SideNav component to story.

:tada: This issue has been resolved in version 1.32.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

:tada: This issue has been resolved in version 1.32.0 :tada:
The release is available on npm package (@release-1.x dist-tag)
Your semantic-release bot :package::rocket:


Supporting Django2.0

Fixed CI failures in previous pull request.

Thank you, this was done in the v3 branch aside.


After reboot ip automatically changing

What should i do to put static ip
Just an idea, Can i change the ip adress to hostname like <IP_ADDRESS> to www.esp8266dsgn.com
Regards

Hi @BoSsOfDMaX,
setting an Hostname as IP is not possible. But McLighting implements Bonjour, so you could call it by its name, if you have Bonjour installed.
Some Wifi routers also have the possibility to set a name for a device or to fix the IP adress.
You could also try to set a static IP according to this example: https://github.com/tzapu/WiFiManager/blob/master/examples/AutoConnectWithStaticIP/AutoConnectWithStaticIP.ino
Regards
Tobias


putting stuff live

update of events page
8.2 banners
minor fix to Proxy page

all tested on staging.


Use the new Framework API

Opening this issue so we can address the upcoming changes on how addons are built/updated for the upcoming 7.0 release. If anyone is interested in making the changes required and continuing to support and maintain the addon, let us know so that we're aware and help/guide the community moving forward. To help with this process, we've built an abridged guide here, and should any questions or issues, please reach out to us in the prerelease channel in our Discord Server.

Hey @jonniebigodes thanks for opening this issue! The changes have already been addressed.

@yannbf, thanks for following up with me and letting me know of this. Appreciate it 🙏 . I'm going to update the issue in the Storybook monorepo accordingly.


add completion for promise context

Fixes #31450
This PR added a new SymbolOriginInfo for Promise and create await on createCompletionEntry  if the node is in AwaitContext.
I'm not sure the current insertText behavior is totally correct, and as the result of completionOfAwaitPromise3.ts, everything seems ok, but I cannot do it in my local vscode
unsupported:

add async modifier to container function
top level await

Ok, so in our user tests (123,359 TS/JS/TSX/JSX files), I looked for the forms:

any await expression
const x = await something (AwaitExpression as VariableDeclaration initializer)
(await foo).bar (AwaitExpression as expression of ParenthesizedExpression as expression of PropertyAccessExpression)

The results were:

total await: 3,983 over 358 files
initializer: 1,391 occurrences in 271 files (35% of all awaits)
parenthesized then property access: 76 occurrences in 26 files (2% of all awaits)

This isn't a huge sample size (of files that actually contain await)—but 2% vs. 35% feels is a big enough gap that I’m skeptical that this is the refactor users expect when choosing a completion. /cc @DanielRosenwasser

That should be a quick fix and trigger by type mismatch.
The difference is property access is usual when you are writing some fresh code.
I‘m not sure but I think you cannot find too many property access is caused people always write the following code rather than parens and parens：
async function fetchThings(fetchOptions: RequestInfo): Thing[] {
  const resp = await fetch(fetchOptions)
  const rawJson = await resp.json();
  return deserializeThingsResponse(rawJson);
}

Sure, maybe my example wasn’t very good. But I think there will generally be cases like
declare function someAsyncThing(): Promise<{ foo: string }>;

async function whatever() {
  const x = someAsyncThing(); // meant to await
  x./*|*/
}

and if we complete foo there, it would be better to place the await on await someAsyncThing(). There are many other cases where that wouldn’t work, like if x was a function parameter, or if x was already used elsewhere, or if the property access was occurring on a non-identifier expression. In those cases, I think this completion behavior makes sense, but I want to consider and get feedback on whether it makes sense to try to offer the declaration site await where relevant.

It's also a bit weird that we request autocomplete here and the leading code has been modified.

if x was already used elsewhere

And I'm not sure that is acceptable what request find all reference in autocomplete?

I'm not sure that is acceptable what request find all reference in autocomplete?

I’m working on something similar for the codefix scenario:

Over the next couple days I’ll be testing this out and seeing how the performance is. We don’t need to do quite a full find-all-references, and the scope should be limited to the source file at largest.
I think we should get this merged, and if it seems reasonable to add the initializer await, I can make it pull in the same code I’m working on now.
Have you addressed Sheetal’s feedback?

completionOfAwaitPromise3.ts, everything seems ok, but I cannot do it in my local vscode

Yeah, it doesn

I still think it's hard to get an await-missing expression when you are coding. but it's not a big deal.

Looks like just a lint error now.

Hope I have not delay your release.


作者你好，请问这个怎么解决

Traceback (most recent call last):
File "D:\unet3\UNet3Plus-main\UNet3Plus-main\train.py", line 494, in
flag=fit_one_epoch(model_train, model, loss_history, eval_callback, optimizer, epoch,
File "D:\unet3\UNet3Plus-main\UNet3Plus-main\utils\utils_fit.py", line 89, in fit_one_epoch
main_dice = Dice_loss(outputs, pngs)
File "D:\unet3\UNet3Plus-main\UNet3Plus-main\nets\UNet3Plus_training.py", line 286, in Dice_loss
nt, ht, wt, ct = target.size()
ValueError: not enough values to unpack (expected 4, got 3)
Epoch 1/120:   0%|          | 0/15 [00:02<?, ?it/s<class 'dict'>]

我也有一样的问题


Integration with fay

Not really an issue but if you integrate support for fay it would be insanely cool to write websites with yesod-dsl.

Dropping Fay in favor of PureScript, see #31.


Closing tag missing in your site

I found your website doesn’t end with closing tag as </html> while I see your source code on Firefox. Is there anyway to fix that?

I belive that this is due to the build process stripping out superflous tags.


Fixed DateTime format for transcript

Closes #23 .
This fixes the format of the timestamp in the transcripts for each of the setup scripts.

LGTM


Docs - incorrect example path

Describe the bug
In the git repo subscription example, the instructions point to an incorrect path.
To Reproduce
Try walking through the git repo docs.
Expected behavior
Commands as listed work.
Environment ie: Kubernetes version:
KinD with Kubernetes 1.25
Additional context
N/A

/assign @lennysgarage
@lennysgarage could you please help with this one whenever you have some cycles? Not urgent. Thank you!


[Bug Report] Menu bar apps hidden by notch on MacBook Pro 16"

Describe the bug
When using Hidden macos application on MacBook Pro 16" with a notch, some menu bar apps are not visible or accessible. They seem to be hidden behind the notch. This is not the expected behaviour, as the menu bar apps should be displayed on either side of the notch. I thought Hidden Application solves this exact problem, am I missing something?
Steps to reproduce

Install Hidden macos application on MacBook Pro 16" with a notch.
Launch Hidden macos application and enable it.
Add some menu bar apps to the menu bar, such as Clock, Battery, WiFi, etc.
Notice that some menu bar apps are missing or partially visible.

Expected behaviour
The menu bar apps should be visible and accessible on the menu bar, regardless of the notch. The menu bar should adjust its width and position according to the notch. Or maybe scroll menu bar items or search menu bar items.
Screenshots
Here are some screenshots that illustrate the problem:

Environment
The bug occurs on the following environment:
Desktop:

OS: macOS Sonoma 14.2.1
Browser: Safari Version 17.2.1 (196<IP_ADDRESS>.12)
Version: Hidden macos application 1.8(12)

I concur this is an issue. It would be amazing to have something like the image below when we detect a notch.

Usually, when I am working from home, I have bigger screens and it works like a charm. On travel, when I take the laptop out, the notch just hides almost all my apps.

Same issue here. Bumping the issue.

Duplicate of #225


Cant specify the order of cucumber Before/After hooks if they exist in the common and step definition file

Current behavior
With nonGlobalStepDefinitions is set to true
Having Before/After hooks in the common file and another Before/After inside test it will be executed as following

Before/After Hooks inside the steps definitions file with same order they were defined
Before/After hooks inside  the common file with same order they were defined

Default order is test hooks then common hooks, Im trying to achieve some common hooks that prepare the data then inside the test Before/After hooks can continue were common hooks stopped per test need
Desired behavior
Ability to specify the order of cucumber hooks
As example
Before({ tags: "@prepareData", order: 1 }, () => {
Without specifying the order execution will remain as default
Test code to reproduce
cucumberHooksTest.feature
@commonPrepareData  @testPrepareData
Scenario: Test cucumber hooks order run
    Given Test Given

cucumberHooksTestSteps.ts
Before({ tags: "@testPrepareData" }, () => {     console.log("testHook"); }); Given("Test Given",() => {})
commonHooks.ts
Before({ tags: "@commonPrepareData" }, () => {     console.log("common hook"); });
Output of above is
testHook
commonHook
Note  we already implemented adding order for cucumber Before/After hooks if we agreed to use them will share PR for it
Versions

Cypress version: 6.0.0
Preprocessor version: 4.0.0
Node version: 12.4.0

Is this possible in cucumber-js?

Due to personal reasons, the previous maintainers of this package are stepping down and handing the reigns over to me, a long-time contributor to the project and a user of it myself. This is a responsibility I'm very excited about. Furthermore, I'd like to thank @lgandecki ++ for all the work that they've done so far.
Read more about the transfer of ownership here.
The repository has however moved and all outstanding issues are being closed. This is not a reflection of the perceived importance of your reported issue. However, if after upgrading to the new version, you still find there to be an issue, feel free to open up another ticket or comment below. Please make sure to read CONTRIBUTING.md before doing so.

Did this ever get picked up?

No. Given the existence in cucumber-jvm, I'd be open to adding it here as well. Contributions are welcome.

taking care of this, will submit PR before eoy or soon after

any update @nilgaar ?

@nabeel1121014 could you share your PR if it's still valid for you
Note we already implemented adding order for cucumber Before/After hooks if we agreed to use them will share PR for it

any updates on this? We really need order of hooks, as we may need to use different before/after hooks from multiple steps, and we want to be able to run it in our preferred order

Can I pick this up @badeball?

The above-mentioned PR has been merged and released with v19.2.0.


partial application

fun add(a: int, b: int) -> int {
    return a + b
}

fun main() {
    let plus1 = add(1,) # , in the end to imply partial application
    for i in 0..10 {
        print(plus1(i))
    }
}

fun add(a: int, b: int) -> int {
    return a + b
}

fun main() {
    let plus1 = add(1...) # ... in the end to imply partial application
    for i in 0..10 {
        print(plus1(i))
    }
}

... seems better

or let plus1 = 1 |> add


Add missing jiffy app in .app.src

relx use this for building releases for instance

Thank you, @jeanparpaillon :)


Feature/offline message retrieval

Adds access to sending a trust ping via the connectionsModule and allows passing of trust ping message arguments (to be able to set response requested, for instance).
Fixes mediation websocket reconnect exponential backoff incrementing behavior.
 ACA-Py as a mediator only will deliver messages from the undelivered queue if a message does not trigger a response, such as a trust ping with response requested: false.

Codecov Report

Merging #458 (48a7c90) into main (52c7897) will increase coverage by 0.02%.
The diff coverage is 52.94%.

@@            Coverage Diff             @@
##             main     #458      +/-   ##
==========================================
+ Coverage   85.65%   85.68%   +0.02%
==========================================
  Files         253      253
  Lines        5467     5477      +10
  Branches      878      881       +3
==========================================
+ Hits         4683     4693      +10
  Misses        783      783
  Partials        1        1

Impacted Files
Coverage Δ

packages/core/src/agent/MessageSender.ts
71.68% <ø> (ø)

.../core/src/modules/connections/ConnectionsModule.ts
66.27% <0.00%> (-4.10%)
:arrow_down:

...ckages/core/src/modules/routing/RecipientModule.ts
62.96% <50.00%> (-0.40%)
:arrow_down:

.../connections/handlers/ConnectionResponseHandler.ts
93.33% <100.00%> (ø)

.../modules/connections/services/ConnectionService.ts
97.23% <100.00%> (+0.06%)
:arrow_up:

packages/core/src/storage/BaseRecord.ts
75.00% <0.00%> (+10.00%)
:arrow_up:

...c/modules/connections/messages/TrustPingMessage.ts
93.75% <0.00%> (+25.00%)
:arrow_up:

Continue to review full report at Codecov.

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

@JamesKEbert bump :)

@JamesKEbert the required fix for mediation with ACA-Py has already been made in another pr recently. I'm going ahead with the 0.1.0 release for now and we can make a follow up release with these once merged
https://github.com/hyperledger/aries-framework-javascript/blob/4d7d3c1502d5eafa2b884a4a84934e072fe70ea6/packages/core/src/modules/routing/RecipientModule.ts#L95-L97

Closing as this is superseded by #631, as this PR is quite out of date with main & most changes were agreed to not be required.


dart null-safety migration crashes during suggestions generation

$ dart/migrate ...

Building tool...done.
...
Analyzing project...
[----------------------------------------------------------------------------------------------------------------------------------------|]Warning: package has unmigrated dependencies.

Continuing due to the presence of `--skip-import-check`.  To see a complete
list of the unmigrated dependencies, re-run without the `--skip-import-check`
flag.

No analysis issues found.

Generating migration suggestions...
[----------|                                                                                ]Aborting migration due to an exception.  This most likely is due to a
bug in the migration tool.  Please consider filing a bug report at:

https://github.com/dart-lang/sdk/issues/new
Please include the SDK version (2.18.442694077-edge+google3-v2) in your bug report.

To attempt to perform migration anyway, you may re-run with
--ignore-exceptions.

Exception details:

Bad state: Unrelated types: class ComponentFactory<T extends Object> and abstract class FutureOr<T> at offset 20448 in /google/src/cloud/aam/npm1/google3/ads/awapps2/infra/filters/lib/default_providers.dart (operators.nullCheckOperators.contains(op) ? NoopFilterValueEditorNgFactory : notNullableFilterComponent)

#0      DecoratedClassHierarchy.getDecoratedSupertype (package:nnbd_migration/src/decorated_class_hierarchy.dart:67:10)
#1      DecoratedClassHierarchy.asInstanceOf (package:nnbd_migration/src/decorated_class_hierarchy.dart:38:18)
#2      EdgeBuilder._decorateUpperOrLowerBound (package:nnbd_migration/src/edge_builder.dart:2239:18)
#3      EdgeBuilder.visitConditionalExpression (package:nnbd_migration/src/edge_builder.dart:784:23)
#4      ConditionalExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:2344:15)
#5      EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2341:24)
#6      EdgeBuilder._handleAssignment (package:nnbd_migration/src/edge_builder.dart:2470:20)
#7      EdgeBuilder._handleInvocationArguments (package:nnbd_migration/src/edge_builder.dart:3086:7)
#8      EdgeBuilder.visitMethodInvocation (package:nnbd_migration/src/edge_builder.dart:1417:24)
#9      MethodInvocationImpl.accept (package:analyzer/src/dart/ast/ast.dart:7712:50)
#10     EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2341:24)
#11     EdgeBuilder._handleAssignment (package:nnbd_migration/src/edge_builder.dart:2470:20)
#12     EdgeBuilder.visitMapLiteralEntry (package:nnbd_migration/src/edge_builder.dart:1349:5)
#13     MapLiteralEntryImpl.accept (package:analyzer/src/dart/ast/ast.dart:7383:50)
#14     EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2341:24)
#15     EdgeBuilder._handleCollectionElement (package:nnbd_migration/src/edge_builder.dart:2558:14)
#16     EdgeBuilder.visitForElement.<anonymous closure> (package:nnbd_migration/src/edge_builder.dart:943:19)
#17     EdgeBuilder._handleForLoopParts.<anonymous closure> (package:nnbd_migration/src/edge_builder.dart:2924:18)
#18     ScopedSet.doScoped (package:nnbd_migration/src/utilities/scoped_set.dart:48:13)
#19     EdgeBuilder._handleForLoopParts (package:nnbd_migration/src/edge_builder.dart:2923:26)
#20     EdgeBuilder.visitForElement (package:nnbd_migration/src/edge_builder.dart:942:5)
#21     ForElementImpl.accept (package:analyzer/src/dart/ast/ast.dart:4665:50)
#22     EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2341:24)
#23     EdgeBuilder._handleCollectionElement (package:nnbd_migration/src/edge_builder.dart:2558:14)
#24     ListMixin.forEach (dart:collection/list.dart:86:13)
#25     EdgeBuilder.visitSetOrMapLiteral (package:nnbd_migration/src/edge_builder.dart:1766:23)
#26     SetOrMapLiteralImpl.accept (package:analyzer/src/dart/ast/ast.dart:9327:50)
#27     EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2341:24)
#28     EdgeBuilder._handleAssignment (package:nnbd_migration/src/edge_builder.dart:2470:20)
#29     EdgeBuilder.visitReturnStatement (package:nnbd_migration/src/edge_builder.dart:1696:7)
#30     ReturnStatementImpl.accept (package:analyzer/src/dart/ast/ast.dart:9218:50)
#31     EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2341:24)
#32     EdgeBuilder.visitNode (package:nnbd_migration/src/edge_builder.dart:1537:9)
#33     GeneralizingAstVisitor.visitStatement (package:analyzer/dart/ast/visitor.dart:551:40)
#34     GeneralizingAstVisitor.visitBlock (package:analyzer/dart/ast/visitor.dart:163:32)
#35     BlockImpl.accept (package:analyzer/src/dart/ast/ast.dart:1091:50)
#36     EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2341:24)
#37     EdgeBuilder.visitNode (package:nnbd_migration/src/edge_builder.dart:1537:9)
#38     GeneralizingAstVisitor.visitFunctionBody (package:analyzer/dart/ast/visitor.dart:334:46)
#39     GeneralizingAstVisitor.visitBlockFunctionBody (package:analyzer/dart/ast/visitor.dart:166:56)
#40     BlockFunctionBodyImpl.accept (package:analyzer/src/dart/ast/ast.dart:1042:50)
#41     EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2341:24)
#42     EdgeBuilder.visitFunctionExpression.<anonymous closure> (package:nnbd_migration/src/edge_builder.dart:1035:25)
#43     ScopedSet.doScoped (package:nnbd_migration/src/utilities/scoped_set.dart:48:13)
#44     EdgeBuilder.visitFunctionExpression (package:nnbd_migration/src/edge_builder.dart:1033:28)
#45     FunctionExpressionImpl.accept (package:analyzer/src/dart/ast/ast.dart:5343:50)
#46     EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2341:24)
#47     EdgeBuilder.visitFunctionDeclaration (package:nnbd_migration/src/edge_builder.dart:982:9)
#48     FunctionDeclarationImpl.accept (package:analyzer/src/dart/ast/ast.dart:5215:50)
#49     EdgeBuilder._dispatch (package:nnbd_migration/src/edge_builder.dart:2341:24)
#50     EdgeBuilder.visitNode (package:nnbd_migration/src/edge_builder.dart:1537:9)
#51     GeneralizingAstVisitor.visitCompilationUnit (package:analyzer/dart/ast/visitor.dart:200:52)
#52     CompletenessTracker.visitCompilationUnit.<anonymous closure> (package:nnbd_migration/src/utilities/completeness_tracker.dart:52:24)
#53     PermissiveModeVisitor.reportExceptionsIfPermissive (package:nnbd_migration/src/utilities/permissive_mode.dart:26:24)
#54     CompletenessTracker.visitCompilationUnit (package:nnbd_migration/src/utilities/completeness_tracker.dart:43:5)
#55     CompilationUnitImpl.accept (package:analyzer/src/dart/ast/ast.dart:2220:50)
#56     NullabilityMigrationImpl.processInput (package:nnbd_migration/src/nullability_migration_impl.dart:223:12)
#57     NonNullableFix.processUnit (package:nnbd_migration/src/front_end/non_nullable_fix.dart:162:16)
#58     _FixCodeProcessor.runLaterPhases.<anonymous closure> (package:nnbd_migration/migration_cli.dart:1088:20)
#59     _FixCodeProcessor.runLaterPhases.<anonymous closure> (package:nnbd_migration/migration_cli.dart:1086:28)
#60     _FixCodeProcessor.processResources (package:nnbd_migration/migration_cli.dart:1020:26)
<asynchronous suspension>
#61     _FixCodeProcessor.runLaterPhases (package:nnbd_migration/migration_cli.dart:1086:5)
<asynchronous suspension>
#62     MigrationCliRunner.run (package:nnbd_migration/migration_cli.dart:695:24)
<asynchronous suspension>
#63     startMigrationTool (package:dart.null_safety.migration/src/migration_runner.dart:382:5)
<asynchronous suspension>
#64     main (package:dart.null_safety.migration/migration.dart:57:3)
<asynchronous suspension>
#65     main (google3:///dart/null_safety/migration/bin/migration.dart:7:5)
<asynchronous suspension>

Unhandled error: Instance of 'MigrationExit'
#0      MigrationCliRunner.onException (package:nnbd_migration/migration_cli.dart:583:9)
#1      NullabilityMigrationAdapter.reportException (package:nnbd_migration/src/front_end/non_nullable_fix.dart:549:21)
#2      PermissiveModeVisitor.reportExceptionsIfPermissive (package:nnbd_migration/src/utilities/permissive_mode.dart:28:19)
#3      CompletenessTracker.visitCompilationUnit (package:nnbd_migration/src/utilities/completeness_tracker.dart:43:5)
#4      CompilationUnitImpl.accept (package:analyzer/src/dart/ast/ast.dart:2220:50)
#5      NullabilityMigrationImpl.processInput (package:nnbd_migration/src/nullability_migration_impl.dart:223:12)
#6      NonNullableFix.processUnit (package:nnbd_migration/src/front_end/non_nullable_fix.dart:162:16)
#7      _FixCodeProcessor.runLaterPhases.<anonymous closure> (package:nnbd_migration/migration_cli.dart:1088:20)
#8      _FixCodeProcessor.runLaterPhases.<anonymous closure> (package:nnbd_migration/migration_cli.dart:1086:28)
#9      _FixCodeProcessor.processResources (package:nnbd_migration/migration_cli.dart:1020:26)
<asynchronous suspension>
#10     _FixCodeProcessor.runLaterPhases (package:nnbd_migration/migration_cli.dart:1086:5)
<asynchronous suspension>
#11     MigrationCliRunner.run (package:nnbd_migration/migration_cli.dart:695:24)
<asynchronous suspension>
#12     startMigrationTool (package:dart.null_safety.migration/src/migration_runner.dart:382:5)
<asynchronous suspension>
#13     main (package:dart.null_safety.migration/migration.dart:57:3)
<asynchronous suspension>
#14     main (google3:///dart/null_safety/migration/bin/migration.dart:7:5)
<asynchronous suspension>

cc @stereotype441

I think a duplicate of https://github.com/dart-lang/sdk/issues/45663

As of 1c7fe7196dd7a542f7f91cd6ea2ac81e1a13146c, the null safety migration tool has been removed from active development and retired. No further work on the tool is planned.
If you still need help, or you believe this issue has been closed in error, please feel free to reopen.


Proposed improvement/collaboration: removing the O(T^2) training cost

Hi there, just found this work thanks to @yk's recent video. Nice job! There are similarities with work I've been doing for a few months, and while I'm a little bummed you beat me to publish I wasn't going to be able to do a good job of evaluating the architectures anyway (this is a side-project that is currently thrashing my laptop and I'm not sure I could justify the cloud costs to train even a moderately sized model just out of curiosity), and I'm glad the idea is being investigated and released with a permissive license.
I'm not sure if you're looking for suggestions or collaborations, but thought I'd put my ideas out there and see what happens. I'm happy to provide more details/collaborate on a future work if there's interest, or feel free to point me towards someone else who might be interested or run with it yourself.
TL;DR
From my understanding of the paper/code (and I apologise if I've got any of this wrong), computing retention values is still O(T^2) in sequence length T and prone to underflow (hence the nan replacement). Neither of these is necessary. The computation you're performing is just an exponential moving average which can be computed in O(T) with a scan using an associative operator, meaning associative_scan implementations can do it very efficiently in parallel.
Details
Unfortunately we're still waiting on pytorch's associative_scan implementation, so I'll be using jax below, for which a primitive exists. Note I've got a pytorch version working which wraps the jax implementations with jax2torch, though I can't make it work nicely with torch's compile and I'm more comfortable with jax anyway.
The below is an implementation that takes an arbitrary decay factor at each step. To get the same performance as in your paper, I think you can just set it to factors = gamma * ones_like(values), but
import typing as tp
import jax
import jax.numpy as jnp

Pair = tp.Tuple[jnp.ndarray, jnp.ndarray]

def _cumulative_ema_op(a: Pair, b: Pair) -> Pair:
    xa, fa = a
    xb, fb = b
    return xa * fb + xb, fa * fb

def cumulative_ema(
    values: jnp.ndarray, factors: jnp.ndarray, reverse: bool = False, axis: int = 0
) -> jnp.ndarray:
    """
    Compute cumulative exponential moving average.

    If `reverse == False` and axis == 0,
        output[i+1] = output[i] * factors[i+1] + output[i+1]

    If `reverse == True`, then the result is the reverse of the non-reversed call on
    arguments reversed on the given axis.

    Args:
        values: N-D float values
        factors: same shape/dtype as values
        axis: the axis to compute exponential moving average along.
        reverse: if True, perform accumulation in reverse.

    Returns:
        cumulative ema values, same shape as values/factors.
    """
    if axis < 0:
        axis += len(values.shape)
    assert values.shape == factors.shape, (values.shape, factors.shape)
    f, t = jax.lax.associative_scan(
        _cumulative_ema_op, (values, factors), reverse=reverse, axis=axis
    )
    del t
    return f

Thus computing retention values from Q, K and V values would be:
def retention(Q, K, gamma, V, reverse=False):
    """
    Notation:
      T: time dimension
      A: attention dimension
      C: number of output channels

    Args:
        Q: [T, A] query
        K: [T, A] key
        gamma: [] decay constant
        V: [T, C] values

    Returns:
        [T, C]
    """
    rhs = jnp.einsum('ta,tc->tac', K, V)
    rhs = cumulative_ema(rhs, jnp.full_like(rhs, gamma), axis=0, reverse=reverse)
    return jnp.einsum('ta,tac->tc', Q, rhs)

I've left out the batch dimension for simplicity, but I'm sure you could make the appropriate modifications (or if you decide to use jax, just vmap it). I'll spare you the full theoretical derivation for why this computes (Q K.T * D) @ V, but the short version is we use property 1 from here (see last slide) and note that DX = cumulative_ema(X, jnp.full_like(X, gamma), axis=0). This is O(TAC) ins space/time rather than O(T^2(A + C) in time and O(T(T + C)) in space.
Creating a bidirectional encoder is thus trivial by combining two - one with reverse=False and the other with reverse=True.
Now with that implementation you might be tempted to play around with the architecture a little - I've played with creating only two transformed matrices, factors (sigmoid-activated to ensure decay) and values of the same shape (rather than Q, K, V) and using them in the cumulative_ema directly which reduces the O(TAC) memory/time requirement to O(TC). Conceptually this just means that each token embedding at each layer just decides how much of the past to forget, and what to add based on the previous layer's embedding. I don't see any barriers to implementing a complex version to allow for periodic behaviour, but haven't attempted that.
My implementation is keras_core-based (so you can use pytorch backend so long as you don't try and compile). It needs a lot of cleaning up before I'm prepared to make it public but happy to share privately. Very small-scale experiments where I've just replaced Bert's self-attention mechanism with the bidirectional O(TC) implementation discussed above and remove positional embeddings entirely have proved promising (faster training, better performance than bert). I have no way of validating if performance scales with model size - I was planning on looking for collaborators/sponsors for that, so if you're interested in that let me know :).

Hi!
Thanks for your interest in this implementation.
I'm not an original author, however. Please see the official implementation and contact the authors for more information (theres an open issue on this repo that links to their change log, opened by one of the original authors).
Unfortunately I don't personally have the resources to validate the scaling of your model so I can't help you there.
That said, your idea is very interesting and I'd be interested to take a look and potentially collaborate if you decide to share privately.

(Actually reads the README) Well... this is awkward. My apologies. In that case, thanks for the work :). I'll contact the original authors and get back to you if there's a broader collaborative effort.


Is withWidth HOC will support class component once useMediaQuery released

As per the meterial-ui document https://material-ui.com/layout/breakpoints/ under the section of JavaScript Media Queries,

withWidth higher-order component will be deprecated for the useMediaQuery hook when the React's hooks are released as stable.

if withWidth HOC deprecated, then how can we acheive the same feature in class component.

Hi folks,
I would like to have a useWidth that works like so (I already a same hook in #15067)
useMediaQuery is more general tool,  I just want to know width expressed as one of the theme breakpoints.
function SomeComponent() {
	const classes = useStyles();
	const theme = useTheme( theme ); // this nice utility function is missing
	const width = useWidth(theme); // should be  a string from the `theme.breakpoints.keys` aka 'xs',
        return ....
}

Ok, I'm proposing the following plan of action:

We don't deprecate withWidth(), at least, not yet. We remove the notice from https://next.material-ui.com/layout/breakpoints/#withwidth.
We expose useWidth() as a module instead of a demo.

@jacobbogers What do you think? Do you want to submit a pull request for it? 😄

Sure olivier, I will make PR, let me read your about process

Guys, I have this use case
In the past i had an issue where components that need to dynamic re-assemble (not only resizing) themselves dependend on size of the browser window.
So since the "width" of the window is a global property why not expose it via a Conext "ProvideWidth"
<ProvideWidth>
  <App />
</ProvideWidth>

What do you all think of this solution?

@jacobbogers What's the win? aside from the extra ceremony required?

@oliviertassinari , my reasoning was motivated by the fact that react itself doesnt use a seperate event handler when you register a function with the "onClick" attribute, there is one event loop.   so I was thinking along those same lines that one single event handler listening for media matches and pass it on to components who need it. This would only be an issue if you have many compents needing "width" awareness.   Maybe an edge usecase,  i had to build a website where a lot of components needed to be aware of the screensize, so  thats why i mentioned it.   ofc both can be done, have a hook AND a context provider

@jacobbogers I hope that React can batch the updates in an efficient way. But I have never tried it. I couldn't tell.

I will make a test, in any case I am working on the hook.

Ok, I have written a useWidth  Hook,  a WidthProvider  and corresponding useWidthContext
doing some benchmark tests  https://github.com/jacobbogers/benchmark-mobile

Yeah i better wrap this up, lol)

I understand why a useWidth hook is handy for symetry with withWidth. I don't understand why we need a provider for that in the core. Seems like this is better suited for app code.

@eps1lon,
On the "Provider",..., I was reasoning along the lines of react not having dedicated native event handlers (mouseclick) for every component.  So just measure (via mediaQueryList) the screensize in one place (the Provider) and pas it down to the many  components who need this knowledge.
So it was more of a performance enhancer,
for a single component who needs to know width just use the useWidth directly (no Provider needed), hence I thought it would be a good idea to provide both, and have the dev choose depending on use case.

@jacobbogers Did you benchmark the performance difference? Without information, I believe we can ignore it and focus on DX until it's proven to be slow.

Kindly create a breakpoint or useMediaQuery functionality for Class Components as well without using higher order component or render props.
React has committed that it will never remove class based components than why people take it that it will get depreciated soon. There are thousands off React apps based on class components.

React has committed that it will never remove class based components

@naman13924 Where have you seen this commitment? So far I have seen that they don't plan to touch it for many months. But does it mean forever?

@oliviertassinari from the React docs page on hooks: https://reactjs.org/docs/hooks-intro.html There are no plans to remove classes from React.

@Magneticmagnum Definitely, they won't kill it before years, especially if it doesn't cost them much to keep the class API and that a few features don't have equivalences. However, if at some point, 90%of the codebase are on hooks, I'm confident they will. But again, I doubt it will happen before years, if it ever happens.
As long as we can support custom breakpoints, we should be good.

I understand why a useWidth hook is handy for symetry with withWidth. I don't understand why we need a provider for that in the core. Seems like this is better suited for app code.

The reason for adding the hook would be the same reason Material-UI added the useWidth HOC.  What I'm having to do now is copy/paste the same useWidth demo hook into all of my new applications which to me indicates it should just be in the framework.


Import feature for Finding Templates

Is your feature request related to a problem? Please describe
Today we don't have an import feature for findings to be updated to Finding Template.
Describe the solution you'd like
Having import findings to DefectDojo in Finding Templates helps a lot while migrating or using the same template across various instances.
Describe alternatives you've considered
Copy the Database table from one instance to another.

HI @dayal18 a potential solution for you would be to leverage Django's dumpdata/loaddata. It allows for exporting and importing json documents to automatically create objects similar to how API calls would work. dumpdata and loaddata

I don't understand the feature request. Is it that you want to be able to export finding templates from one instance and import them in another instance?

Yup, that's what I want. Suppose if I have a JSON file or XML file for many findings (template findings with Description, remediation, Impact, etc..,), all I was looking is to import this file into DDJ.. Because the templates are going to be the same for many and this template can also be shared with others.
Example:
OWASP Finding Template
SANS Finding Template
etc..,

@dayal This what you're looking for exactly:
Export all finding templates to JSON
docker-compose exec uwsgi ./manage.py dumpdata --indent 2 dojo.finding_template > some_file.json
Import back into dojo
docker-compose exec uwsgi ./manage.py loaddata some_file.json

@dayal This what you're looking for exactly:
Export all finding templates to JSON
docker-compose exec uwsgi ./manage.py dumpdata --indent 2 dojo.finding_template > some_file.json
Import back into dojo
docker-compose exec uwsgi ./manage.py loaddata some_file.json

Thank you @Maffooch


Switch to using AWS SES email service

I also noticed that the Submodule ckanext-reminder has been updated (deliberately?).