Add Developer ISSUE_TEMPLATE

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?

[x] Does your manifest conform to the 1.4 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: codeflow:open?pullrequest=https://github.com/microsoft/winget-pkgs/pull/115303&drop=dogfoodAlpha

As discussed on Gitter / Element - I feel that having a template with such a similar name will only confuse users more, especially because it won't be clear who should use which template or when.

@wingetbot run

@Trenly
I've modified the description of these template to differentiate them.

If this template gathers all the info needed to build a manifest, then it should also kick off a GitHub Action to generate the template PR. Basically this would be a web-based intake method. But should be optional.

Since this has been sitting for over a month, marking it as stale;


Do bounds-checking on more windows

Description
This is a continuation of #4740.

Bounds checking can be done on any window now.
BaseWindows can opt in to bounds-checking when they're shown (old behavior). This will prefer the monitor the cursor is on.
ChannelFilterEditorDialog now has the settings window as its parent (causing it to open there instead of the main window).

The following windows are now bounds-checked:

AccountSwitchPopup
UpdateDialog
SelectChannelDialog
SettingsDialog
QuickSwitcherPopup
ReplyThreadPopup
SearchPopup
QualityPopup
ColorPickerDialog
Viewer list
Tutorial popup
License popup

The following windows are not bounds-checked:

FramelessEmbedWindow
AttachedWindow (does its own positioning)
NotificationPopup (never constructed)
WelcomeDialog (never constructed)
InputCompletionPopup (it's supposed to be in the middle above the split input)

Fixes #4790.

Viewer list can still get out of bound if the window is small
ColorPickerDialog can get out of bound if the settings window is close to the edge, and you click the change color option so the ColorPickerDialog has not enough space downwards, so it snaps out of bond at the top. (maybe you have to make the settings window smaller and higher, or use a smaller monitor)
InputCompletionPopup can get out of bounds if the emote name is long and the window too small, but it's fine, I guess
This PR Fixes #2660 as well

Don't refactor the BoundsChecker enum out of the class
Remove the moveWithinScreen function - leave that for another PR

Such a PR would be ugly if it needed BaseWindow::BoundsChecker even though such a function wouldn't need to know about BaseWindow. I could have it in some namespace like widgets (window::moveTo(window, globalPoint, widgets::BoundsChecking::CursorScreen)).

Don't refactor the offset option in moveTo out - leave that for another PR

#4798

Remove the showEvent logic - it's not a sound cross-platform plan and if explored, it should be explored with a smaller subset of widgets that can be easily tested on multiple platforms in a separate PR

Where does this behave badly? It works fine on Windows and seemed to have worked on other platforms before https://github.com/Chatterino/chatterino2/pull/4740 as I can't find an issue related to this.

Viewer list can still get out of bound if the window is small

Right, it seems like the viewer list was supposed to be shown beneath the split header. This never happened.

ColorPickerDialog can get out of bound if the settings window is close to the edge, and you click the change color option so the ColorPickerDialog has not enough space downwards, so it snaps out of bond at the top. (maybe you have to make the settings window smaller and higher, or use a smaller monitor)

I can't really replicate that. The only thing that I observe is that about 8px are on another screen or OOB (I don't think I can fix that here, though).

Testing on Arch Linux & i3:

popup
notes

AccountSwitchPopup
:white_check_mark: works better than before. When opening it inbetween a monitor, it's now always 100% within screen bounds.

UpdateDialog
Haven't tested yet

SelectChannelDialog
:x: Always opens in the top-left corner now

SettingsDialog
:x: Always opens in the top-left corner now

QuickSwitcherPopup
:warning: Inconsistent, I had it open in the center as expected, and I had it open stuck to one side of the monitor.

ReplyThreadPopup
:warning: Inconsistent, it now pops up in the middle of the screen before moving

SearchPopup
:x: Always opens in the top-left corner now

QualityPopup
Haven't tested yet

ColorPickerDialog
:x: Always opens in the top-left corner now

Viewer list
:warning: Change in behaviour, it used to just show up in the middle of the screen. Now it shows up in the middle of the screen, then it's moved to the split top-left corner

Tutorial popup
:x: Always opens in the top-left corner now

License popup
:x: Always opens in the top-left corner now

Testing on Arch Linux & i3:

Can't reproduce any of this on Windows.

[Viewer list] then it's moved to the split top-left corner

That's where it's supposed to be.

ReplyThreadPopup | ⚠ Inconsistent, it now pops up in the middle of the screen before moving

Shouldn't this behave the same as a user card? You can try and move the show() after the moveTo. At least on Windows, this breaks bounds-checking.

Yeah the issue on my system seems to come when we use show before moveTo
How come bounds checking isn't broken on Windows for something like the account switcher popup?

and the change in behaviour of the chatter list is fine, the :warning: was more for the "show up in middle then moved into position"

POST MY COMMIT
Testing on Arch Linux & i3:

popup
notes

AccountSwitchPopup
:white_check_mark: works better than before. When opening it inbetween a monitor, it's now always 100% within screen bounds.

UpdateDialog
Haven't tested yet

SelectChannelDialog
:white_check_mark: Opens in the center of the selected monitor as before

SettingsDialog
:white_check_mark: Opens in the center of the selected monitor as before

QuickSwitcherPopup
:white_check_mark: Opens in the center of the window as before

ReplyThreadPopup
:warning: Inconsistent, it now pops up in the middle of the screen before moving

SearchPopup
:white_check_mark: Opens in the center of the selected monitor as before

QualityPopup
Haven't tested yet

ColorPickerDialog
:white_check_mark: Opens in the center of the window as before

Viewer list
:warning: Change in behaviour, it used to just show up in the middle of the screen. Now it shows up in the middle of the screen, then it's moved to the split top-left corner

Tutorial popup
:white_check_mark: Opens in the center of the selected monitor as before

License popup
:white_check_mark: Opens in the center of the selected monitor as before

Testing on Arch Linux & i3:

popup
notes

AccountSwitchPopup
:white_check_mark: works better than before. When opening it inbetween a monitor, it's now always 100% within screen bounds.

UpdateDialog
Haven't tested yet

SelectChannelDialog
:white_check_mark: Opens in the center of the selected monitor as before

SettingsDialog
:white_check_mark: Opens in the center of the selected monitor as before

QuickSwitcherPopup
:white_check_mark: Opens in the center of the window as before

ReplyThreadPopup
:white_check_mark: Opens on the cursor as before - does not do any bounds checking, also as before

SearchPopup
:white_check_mark: Opens in the center of the selected monitor as before

QualityPopup
Haven't tested yet

ColorPickerDialog
:white_check_mark: Opens in the center of the window as before

Viewer list
:warning: Change in behaviour, it used to just show up in the middle of the screen. Now it shows up in the middle of the screen, then it's moved to the split top-left corner

Tutorial popup
:white_check_mark: Opens in the center of the selected monitor as before

License popup
:white_check_mark: Opens in the center of the selected monitor as before

Testing on Arch Linux & i3:

popup
notes

AccountSwitchPopup
:white_check_mark: works better than before. When opening it inbetween a monitor, it's now always 100% within screen bounds.

UpdateDialog
Haven't tested yet

SelectChannelDialog
:white_check_mark: Opens in the center of the selected monitor as before

SettingsDialog
:white_check_mark: Opens in the center of the selected monitor as before

QuickSwitcherPopup
:white_check_mark: Opens in the center of the window as before

ReplyThreadPopup
:white_check_mark: Opens on the cursor as before - does not do any bounds checking, also as before

SearchPopup
:white_check_mark: Opens in the center of the selected monitor as before

QualityPopup
Haven't tested yet

ColorPickerDialog
:white_check_mark: Opens in the center of the window as before

Viewer list
:white_check_mark: Change in behaviour, it used to just show up in the middle of the screen. Now it's moved to the split top-left corner

Tutorial popup
:white_check_mark: Opens in the center of the selected monitor as before

License popup
:white_check_mark: Opens in the center of the selected monitor as before

update dalog thing on macos seems to work as expected

Windows 10:

Popup
Status

AccountSwitchPopup
✅

UpdateDialog
✅

SelectChannelDialog
✅

SettingsDialog
✅

QuickSwitcherPopup
✅

ReplyThreadPopup
✅

SearchPopup
✅

QualityPopup
✅

ColorPickerDialog
✅

Chatter list
✅

Tutorial popup
✅

License popup
✅


Describing what an a tag does

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Thank you for your contribution.  At this time we have decided not to merge your pull request.  We welcome future pull requests from you.
Reason: There is no <a> tag in the example HTML, so it wasn't explained below.  You can submit a new PR to include an anchor tag in the example as well as the explanation below.
Happy Coding!


The live site has permission issue with Azure storage account.

409 (Public access is not permitted on this storage account.)

updated again ;)

@jamesmontemagno  Thanks cool!


functional tests: new test for capabilities

I am not sure whether to re-implement tools like captest, pscap etc. in
rkt-inspect.aci (fast to execute, no need to download extra containers
from Internet) or to re-use existing tools with docker://debian and
apt-get install (fast to implement new tests).
This patch contains a bit of both approaches.

I updated the branch with gocapability rather than using docker://debian.

LGTM beside those nits.

@krnowak thanks for the review, branch updated again.
Btw, when commenting on the commits directly rather than on the "Files changed" tab of the PR, the review disappears from the PR when the branch gets updated.

LGTM.

Branch updated.

LGTM even more, but I suppose it's @jonboulle call now.

Thanks for the reviews, @jonboulle and @krnowak.

posthumous lgtm!


Auto Submit while giving quizzes

Students' responses should be recorded periodically

Looked up on the internet about it. NOT POSSIBLE with the tech stack we are using, it would need Ajax or something similar.
I'm not closing the issue but it remains very unlikely to be resolved.


Updated Documentation

Description

Documentation updated
Related Issue

Motivation and Context

Improved the README.md
How Has This Been Tested?

Screenshots (if appropriate):
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] My code follows the code style of this project.
[x] My change requires a change to the documentation.
[x] I have updated the documentation accordingly.
[x] I have read the CONTRIBUTING document.
[x] I have added tests to cover my changes.
[x] All new and existing tests passed.

Should we add a CHANGELOG ?

CHANGELOG

Sounds good but It's not necessary.


Failed to run yarn run demo

It shows the logs:
    Finished release [optimized] target(s) in 0.07s
     Running `target/release/examples/demo`
[13:19:25] [INFO] [voxelize::server]: 🌎 World created: world1
[13:19:25] [INFO] [voxelize::server]: 🌎 World created: world2
[13:19:25] [INFO] [voxelize]: Server running at <IP_ADDRESS>:4000 by Ws
$ cross-env FORCE_COLOR=true SKIP_PREFLIGHT_CHECK=true craco start | cat
(node:15595) [DEP_WEBPACK_DEV_SERVER_ON_AFTER_SETUP_MIDDLEWARE] DeprecationWarning: 'onAfterSetupMiddleware' option is deprecated. Please use the 'setupMiddlewares' option.
(Use `node --trace-deprecation ...` to show where the warning was created)
(node:15595) [DEP_WEBPACK_DEV_SERVER_ON_BEFORE_SETUP_MIDDLEWARE] DeprecationWarning: 'onBeforeSetupMiddleware' option is deprecated. Please use the 'setupMiddlewares' option.
Starting the development server...

Failed to compile.

Module not found: Error: Can't resolve '@voxelize/client' in '/tmp/voxelize/examples/client/src/containers'
assets by path static/ 3.4 MiB
  asset static/js/bundle.js 2.75 MiB [emitted] (name: main) 1 related asset
  asset static/media/marble.a3701ce1db620dec8118.jpg 453 KiB [emitted] [immutable] [from: src/assets/marble.jpg] (auxiliary name: main)
  asset static/media/lol.27c9e470a9df0457b0e5.png 214 KiB [emitted] [immutable] [from: src/assets/lol.png] (auxiliary name: main)
asset index.html 1.73 KiB [emitted]
asset asset-manifest.json 344 bytes [emitted]
cached modules 2.6 MiB (javascript) 667 KiB (asset) 28.4 KiB (runtime) [cached] 138 modules

ERROR in ./src/containers/app.tsx 8:0-158
Module not found: Error: Can't resolve '@voxelize/client' in '/tmp/voxelize/examples/client/src/containers'
resolve '@voxelize/client' in '/tmp/voxelize/examples/client/src/containers'
  Parsed request is a module
  using description file: /tmp/voxelize/examples/client/package.json (relative path: ./src/containers)
    aliased with mapping '@voxelize/client': '/tmp/voxelize/dist' to '/tmp/voxelize/dist'
      using description file: /tmp/voxelize/examples/client/package.json (relative path: ./src/containers)
        Field 'browser' doesn't contain a valid alias configuration
        root path /tmp/voxelize/examples/client
          using description file: /tmp/voxelize/examples/client/package.json (relative path: ./tmp/voxelize/dist)
            no extension
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist doesn't exist
            .web.mjs
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.web.mjs doesn't exist
            .mjs
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.mjs doesn't exist
            .web.js
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.web.js doesn't exist
            .js
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.js doesn't exist
            .web.ts
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.web.ts doesn't exist
            .ts
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.ts doesn't exist
            .web.tsx
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.web.tsx doesn't exist
            .tsx
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.tsx doesn't exist
            .json
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.json doesn't exist
            .web.jsx
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.web.jsx doesn't exist
            .jsx
              Field 'browser' doesn't contain a valid alias configuration
              /tmp/voxelize/examples/client/tmp/voxelize/dist.jsx doesn't exist
            as directory
              /tmp/voxelize/examples/client/tmp/voxelize/dist doesn't exist
        using description file: /tmp/voxelize/package.json (relative path: ./dist)
          no extension
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist is not a file
          .web.mjs
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.web.mjs doesn't exist
          .mjs
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.mjs doesn't exist
          .web.js
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.web.js doesn't exist
          .js
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.js doesn't exist
          .web.ts
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.web.ts doesn't exist
          .ts
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.ts doesn't exist
          .web.tsx
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.web.tsx doesn't exist
          .tsx
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.tsx doesn't exist
          .json
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.json doesn't exist
          .web.jsx
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.web.jsx doesn't exist
          .jsx
            Field 'browser' doesn't contain a valid alias configuration
            /tmp/voxelize/dist.jsx doesn't exist
          as directory
            existing directory /tmp/voxelize/dist
              using description file: /tmp/voxelize/package.json (relative path: ./dist)
                using path: /tmp/voxelize/dist/index
                  using description file: /tmp/voxelize/package.json (relative path: ./dist/index)
                    no extension
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index doesn't exist
                    .web.mjs
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.web.mjs doesn't exist
                    .mjs
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.mjs doesn't exist
                    .web.js
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.web.js doesn't exist
                    .js
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.js doesn't exist
                    .web.ts
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.web.ts doesn't exist
                    .ts
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.ts doesn't exist
                    .web.tsx
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.web.tsx doesn't exist
                    .tsx
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.tsx doesn't exist
                    .json
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.json doesn't exist
                    .web.jsx
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.web.jsx doesn't exist
                    .jsx
                      Field 'browser' doesn't contain a valid alias configuration
                      /tmp/voxelize/dist/index.jsx doesn't exist
 @ ./src/index.tsx 6:0-39 10:33-36

webpack 5.72.0 compiled with 1 error in 605 ms
Files successfully emitted, waiting for typecheck results...
Issues checking in progress...
No issues found.

My environment
node: 18.1.0
yarn: 1.22.18
rustc:
rustc 1.60.0 (7737e0b5c 2022-04-04)
binary: rustc
commit-hash: 7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c
commit-date: 2022-04-04
host: x86_64-unknown-linux-gnu
release: 1.60.0
LLVM version: 14.0.0

Thanks for checking my project out!
Did you run yarn run dev first to build the TS/RS outputs?
Do this:

Remember to run yarn run proto to generate protocol buffers
Then, Open a terminal, run yarn run dev
Finally, Open another terminal window, run yarn run demo

Let me know if there are any more issues!

Thanks! After yarn run proto, it finally works. However, I am not sure if this command is necessary. If it is, maybe it should be added to the README

Right, good point! I'll add it right away.

By the way, is Voxelize running smoothly on your computer? I sure hope so hahaha

It runs very smoothly, just keeping 60 fps all the time.


Update Composer dependencies (2019-04-14-00-05)

Loading composer repositories with package information
Updating dependencies
Writing lock file
Generating optimized autoload files
> DrupalProject\composer\ScriptHandler::createRequiredFiles

Visual regression test passed!
View the visual regression test report


TwelveHour clock still being shown after disabling

I have the initialization as:
$('#startDatetime').pickatime({
          autoclose: true,
          twelvehour: false
        });

However, the clock still comes up as this:

Am I missing something here?

That is the 24hour clock!?

Yes. The only way to get the 24 hour clock is by adding twelvehour: false in the options right?
If so, that is what I did and I get the 24 hour clock with the 12 hour also showing in the inner circle like in the image.

The 24 hour clock is composed of both rings. There are 24 numbers, from 1 to 00. Putting them all in one ring would squeeze the numbers too tight, especially on mobile.
If you choose the 12 hour clock, you only get the inner ring, with numbers from 1 to 12.
This is the correct behavior.

Ahh right! My bad.. I completely missed the fact that the outer ring did not have 1-12. Makes sense. Thanks for the package!


Tree focus/selection is not preserved in the tree UI across refresh

Open settings editor
Search something
Click a category to filter to that category
Edit the search query
The focused category no longer in bold, because the list UI hasn't rendered it as focused
But internally the list considers it focused (it fires onDidChangeFocus with the same previously focused element while the list is refreshing)

Why does this work correctly for the search tree? I have no idea but can debug more.
If you try to repro this it is partly confused by the fact that the settings gui stops filtering the list based on category when searching, but it should not be doing that and that is not related to the actual issue.

Actually, I am changing the settings editor to clear the TOC focus when searching, so this isn't an issue for me anymore, I can debug the underlying tree issue some more if you think it could be a tree issue.


Is there an existing issue for this?

[X] I have searched the existing issues.

Which plugins are affected?
Analytics, Crashlytics
Which platforms are affected?
Android
Description
Android app not working after build.gradle update.
It gives the error firebase_analytics: missing google_id.
Firebase_analytics and crashlytics records are not shown on the firebase console screen.
Reproducing the issue
Actually there was no problem before the build.gradle update. It stopped working after the update.
Firebase Core version
2.31.0
Flutter Version
3.19.4
Relevant Log Output
No response
Flutter dependencies

Expand Flutter dependencies
name: app
description: app
publish_to: 'none'
version: 3.75.0+75
environment:
sdk: '>=3.0.5 <4.0.0'
dependencies:
flutter_localizations:
sdk: flutter
#google
cloud_firestore: ^4.17.3
firebase_analytics: ^10.10.5
firebase_app_check: ^0.2.2+5
firebase_core: ^2.31.0
firebase_crashlytics: ^3.5.5
firebase_storage: ^11.7.5
firebase_analytics_web: ^0.5.7+5
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^4.0.0
flutter:
uses-material-design: true
 snippet

Replace this line with the contents of your `flutter pub deps -- --style=compact`.
- badges 3.1.2 [flutter]
- cached_network_image 3.3.1 [cached_network_image_platform_interface cached_network_image_web flutter flutter_cache_manager octo_i
mage]
- cloud_firestore 4.17.3 [cloud_firestore_platform_interface cloud_firestore_web collection firebase_core firebase_core_platform_in
terface flutter meta]
- cupertino_icons 1.0.8
- d_chart 2.6.9 [flutter community_charts_flutter community_charts_common]
- delta_to_html 0.2.2
- device_info_plus 10.1.0 [device_info_plus_platform_interface ffi file flutter flutter_web_plugins meta web win32 win32_registry]
- dropdown_button2 2.3.9 [flutter meta]
- easy_refresh 3.3.5+1 [flutter path_drawing]
- excel 4.0.3 [archive xml collection equatable]
- expand_widget 3.1.1 [flutter]
- file_picker 8.0.3 [flutter flutter_web_plugins flutter_plugin_android_lifecycle plugin_platform_interface ffi path win32 cross_fi
le web]
- firebase_analytics 10.10.5 [firebase_analytics_platform_interface firebase_analytics_web firebase_core firebase_core_platform_int
erface flutter]
- firebase_analytics_web 0.5.7+5 [_flutterfire_internals firebase_analytics_platform_interface firebase_core firebase_core_web flut
ter flutter_web_plugins]
- firebase_app_check 0.2.2+5 [firebase_app_check_platform_interface firebase_app_check_web firebase_core firebase_core_platform_int
erface flutter]
- firebase_core 2.31.0 [firebase_core_platform_interface firebase_core_web flutter meta]
- firebase_crashlytics 3.5.5 [firebase_core firebase_core_platform_interface firebase_crashlytics_platform_interface flutter stack_
trace]
- firebase_storage 11.7.5 [firebase_core firebase_core_platform_interface firebase_storage_platform_interface firebase_storage_web
flutter]
- flex_color_scheme 7.3.1 [flex_seed_scheme flutter meta]
- flutter_local_notifications 17.1.2 [clock flutter flutter_local_notifications_linux flutter_local_notifications_platform_interfac
e timezone]
- flutter_localizations 0.0.0 [flutter intl characters clock collection material_color_utilities meta path vector_math]
- flutter_native_splash 2.4.0 [args flutter flutter_web_plugins html image meta path universal_io xml yaml ansicolor]
- flutter_quill 9.3.11 [flutter flutter_localizations intl dart_quill_delta collection quiver equatable meta html flutter_colorpick
er markdown html2md charcode url_launcher flutter_keyboard_visibility device_info_plus super_clipboard]
- flutter_widget_from_html 0.15.0 [flutter flutter_widget_from_html_core fwfh_cached_network_image fwfh_chewie fwfh_just_audio fwfh
_svg fwfh_url_launcher fwfh_webview html]
- fluttertoast 8.2.5 [flutter flutter_web_plugins]
- get 4.6.6 [flutter]
- getwidget 4.0.0 [flutter]
- group_button 5.3.4 [flutter]
- html_to_pdf_plus 1.0.5 [flutter]
- http 1.2.1 [async http_parser meta web]
- image_picker 1.1.1 [flutter image_picker_android image_picker_for_web image_picker_ios image_picker_linux image_picker_macos imag
e_picker_platform_interface image_picker_windows]
- loader_overlay 4.0.0 [flutter back_button_interceptor]
- omni_datetime_picker 1.1.0 [flutter]
- onesignal_flutter 5.1.6 [flutter]
- open_app_file 4.0.2 [flutter ffi]
- path_provider 2.1.3 [flutter path_provider_android path_provider_foundation path_provider_linux path_provider_platform_interface
path_provider_windows]
- permission_handler 11.3.1 [flutter meta permission_handler_android permission_handler_apple permission_handler_html permission_ha
ndler_windows permission_handler_platform_interface]
- persistent_bottom_nav_bar 5.0.2 [flutter]
- scrollable_positioned_list 0.3.8 [flutter collection]
- selectable_autolink_text 2.6.0 [flutter]
- shared_preferences 2.2.3 [flutter shared_preferences_android shared_preferences_foundation shared_preferences_linux shared_prefer
ences_platform_interface shared_preferences_web shared_preferences_windows]
- simple_ripple_animation 0.0.9 [flutter hyper_lint]
- timelines 0.1.0 [flutter]
- url_launcher 6.2.6 [flutter url_launcher_android url_launcher_ios url_launcher_linux url_launcher_macos url_launcher_platform_int
erface url_launcher_web url_launcher_windows]

dev dependencies:
- flutter_lints 4.0.0 [lints]
- flutter_test 0.0.0 [flutter test_api matcher path fake_async clock stack_trace vector_math leak_tracker_flutter_testing async boo
lean_selector characters collection leak_tracker leak_tracker_testing material_color_utilities meta source_span stream_channel stri
ng_scanner term_glyph vm_service]

transitive dependencies:
- _flutterfire_internals 1.3.33 [collection firebase_core firebase_core_platform_interface flutter meta]
- ansicolor 2.0.2
- archive 3.4.9 [crypto path pointycastle]
- args 2.4.2
- async 2.11.0 [collection meta]
- audio_session 0.1.18 [flutter flutter_web_plugins rxdart meta]
- back_button_interceptor 7.0.2 [collection flutter]
- boolean_selector 2.1.1 [source_span string_scanner]
- cached_network_image_platform_interface 4.0.0 [flutter flutter_cache_manager]
- cached_network_image_web 1.1.1 [cached_network_image_platform_interface flutter flutter_cache_manager]
- characters 1.3.0
- charcode 1.3.1
- chewie 1.7.5 [cupertino_icons flutter provider video_player wakelock_plus]
- clock 1.1.1
- cloud_firestore_platform_interface 6.2.3 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interface]
- cloud_firestore_web 3.12.3 [_flutterfire_internals cloud_firestore_platform_interface collection firebase_core firebase_core_web
flutter flutter_web_plugins]
- collection 1.18.0
- community_charts_common 1.0.2 [intl collection meta vector_math]
- community_charts_flutter 1.0.2 [collection meta community_charts_common flutter]
- convert 3.1.1 [typed_data]
- cross_file 0.3.4+1 [meta web]
- crypto 3.0.3 [typed_data]
- csslib 1.0.0 [source_span]
- dart_quill_delta 9.3.5 [collection diff_match_patch quiver]
- dbus 0.7.10 [args ffi meta xml]
- device_info_plus_platform_interface 7.0.0 [flutter meta plugin_platform_interface]
- diff_match_patch 0.4.1
- equatable 2.0.5 [collection meta]
- fake_async 1.3.1 [clock collection]
- ffi 2.1.2
- file 7.0.0 [meta path]
- file_selector_linux 0.9.2+1 [cross_file file_selector_platform_interface flutter]
- file_selector_macos 0.9.3+3 [cross_file file_selector_platform_interface flutter]
- file_selector_platform_interface 2.6.2 [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.10.6 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_app_check_platform_interface 0.1.0+27 [_flutterfire_internals firebase_core flutter meta plugin_platform_interface]
- firebase_app_check_web 0.1.2+5 [_flutterfire_internals firebase_app_check_platform_interface firebase_core firebase_core_web flut
ter flutter_web_plugins web]
- firebase_core_platform_interface 5.0.0 [collection flutter flutter_test meta plugin_platform_interface]
- firebase_core_web 2.17.0 [firebase_core_platform_interface flutter flutter_web_plugins meta web]
- firebase_crashlytics_platform_interface 3.6.33 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_inte
rface]
- firebase_storage_platform_interface 5.1.20 [_flutterfire_internals collection firebase_core flutter meta plugin_platform_interfac
e]
- firebase_storage_web 3.9.5 [_flutterfire_internals async firebase_core firebase_core_web firebase_storage_platform_interface flut
ter flutter_web_plugins http meta web]
- fixnum 1.1.0
- flex_seed_scheme 1.4.0 [collection flutter meta]
- flutter 0.0.0 [characters collection material_color_utilities meta vector_math sky_engine]
- flutter_cache_manager 3.3.1 [clock collection file flutter http path path_provider rxdart sqflite uuid]
- flutter_colorpicker 1.0.3 [flutter]
- flutter_keyboard_visibility 6.0.0 [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_local_notifications_linux 4.0.0+1 [dbus ffi flutter flutter_local_notifications_platform_interface path xdg_directories]
- flutter_local_notifications_platform_interface 7.1.0 [flutter plugin_platform_interface]
- flutter_plugin_android_lifecycle 2.0.17 [flutter]
- flutter_svg 2.0.10+1 [flutter http vector_graphics vector_graphics_codec vector_graphics_compiler]
- flutter_web_plugins 0.0.0 [flutter characters collection material_color_utilities meta vector_math]
- flutter_widget_from_html_core 0.14.12 [csslib flutter html logging]
- fwfh_cached_network_image 0.14.2 [cached_network_image flutter flutter_cache_manager flutter_widget_from_html_core]
- fwfh_chewie 0.14.7 [chewie flutter flutter_widget_from_html_core video_player]
- fwfh_just_audio 0.14.3 [flutter flutter_widget_from_html_core just_audio]
- fwfh_svg 0.8.1 [flutter flutter_svg flutter_widget_from_html_core]
- fwfh_url_launcher 0.9.0+4 [flutter flutter_widget_from_html_core url_launcher]
- fwfh_webview 0.15.0 [flutter flutter_widget_from_html_core logging web webview_flutter webview_flutter_android webview_flutter_wk
webview]
- html 0.15.4 [csslib source_span]
- html2md 1.3.1 [html collection]
- http_parser 4.0.2 [collection source_span string_scanner typed_data]
- hyper_lint 0.0.2 [flutter]
- image 4.1.7 [archive meta xml]
- image_picker_android 0.8.9+3 [flutter flutter_plugin_android_lifecycle image_picker_platform_interface]
- image_picker_for_web 3.0.2 [flutter flutter_web_plugins image_picker_platform_interface mime]
- image_picker_ios 0.8.9+1 [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.10.0 [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]
- intl 0.18.1 [clock meta path]
- irondash_engine_context 0.5.2 [flutter plugin_platform_interface]
- irondash_message_channel 0.6.0 [flutter ffi]
- js 0.6.7 [meta]
- just_audio 0.9.36 [just_audio_platform_interface just_audio_web audio_session rxdart path path_provider async uuid crypto meta fl
utter]
- just_audio_platform_interface 4.2.2 [flutter plugin_platform_interface]
- just_audio_web 0.4.9 [just_audio_platform_interface flutter flutter_web_plugins]
- leak_tracker 10.0.0 [clock collection meta path vm_service]
- leak_tracker_flutter_testing 2.0.1 [flutter leak_tracker leak_tracker_testing matcher meta]
- leak_tracker_testing 2.0.1 [leak_tracker matcher meta]
- lints 4.0.0
- logging 1.2.0
- markdown 7.2.2 [args meta]
- matcher 0.12.16+1 [async meta stack_trace term_glyph test_api]
- material_color_utilities 0.8.0 [collection]
- meta 1.11.0
- mime 1.0.5
- nested 1.0.0 [flutter]
- octo_image 2.0.0 [flutter]
- package_info_plus 4.2.0 [ffi flutter flutter_web_plugins http meta path package_info_plus_platform_interface win32]
- package_info_plus_platform_interface 2.0.1 [flutter meta plugin_platform_interface]
- path 1.9.0
- path_drawing 1.0.1 [vector_math meta path_parsing flutter]
- path_parsing 1.0.1 [vector_math meta]
- path_provider_android 2.2.2 [flutter path_provider_platform_interface]
- path_provider_foundation 2.3.2 [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.2 [flutter platform plugin_platform_interface]
- path_provider_windows 2.2.1 [ffi flutter path path_provider_platform_interface win32]
- permission_handler_android 12.0.5 [flutter permission_handler_platform_interface]
- permission_handler_apple 9.4.4 [flutter permission_handler_platform_interface]
- permission_handler_html 0.1.1 [flutter flutter_web_plugins permission_handler_platform_interface]
- permission_handler_platform_interface 4.2.0 [flutter meta plugin_platform_interface]
- permission_handler_windows 0.2.1 [flutter permission_handler_platform_interface]
- petitparser 6.0.2 [meta]
- pixel_snap 0.1.5 [flutter]
- platform 3.1.4
- plugin_platform_interface 2.1.8 [meta]
- pointycastle 3.7.4 [collection convert js]
- provider 6.1.2 [collection flutter nested]
- quiver 3.2.1 [matcher]
- rxdart 0.27.7
- shared_preferences_android 2.2.1 [flutter shared_preferences_platform_interface]
- shared_preferences_foundation 2.3.5 [flutter shared_preferences_platform_interface]
- shared_preferences_linux 2.3.2 [file flutter path path_provider_linux path_provider_platform_interface shared_preferences_platfor
m_interface]
- shared_preferences_platform_interface 2.3.2 [flutter plugin_platform_interface]
- shared_preferences_web 2.3.0 [flutter flutter_web_plugins shared_preferences_platform_interface web]
- shared_preferences_windows 2.3.2 [file flutter path path_provider_platform_interface path_provider_windows shared_preferences_pla
tform_interface]
- sky_engine 0.0.99
- source_span 1.10.0 [collection path term_glyph]
- sprintf 7.0.0
- sqflite 2.3.2 [flutter sqflite_common path]
- sqflite_common 2.5.3 [synchronized path meta]
- stack_trace 1.11.1 [path]
- stream_channel 2.1.2 [async]
- string_scanner 1.2.0 [source_span]
- super_clipboard 0.8.10 [flutter collection meta super_native_extensions]
- super_native_extensions 0.8.10 [flutter flutter_web_plugins meta ffi collection path uuid irondash_engine_context irondash_messag
e_channel device_info_plus pixel_snap web]
- synchronized 3.1.0+1
- term_glyph 1.2.1
- test_api 0.6.1 [async boolean_selector collection meta source_span stack_trace stream_channel string_scanner term_glyph]
- timezone 0.9.2 [path]
- typed_data 1.3.2 [collection]
- universal_io 2.2.2 [collection meta typed_data]
- url_launcher_android 6.3.0 [flutter url_launcher_platform_interface]
- url_launcher_ios 6.2.5 [flutter url_launcher_platform_interface]
- url_launcher_linux 3.1.1 [flutter url_launcher_platform_interface]
- url_launcher_macos 3.1.0 [flutter url_launcher_platform_interface]
- url_launcher_platform_interface 2.3.2 [flutter plugin_platform_interface]
- url_launcher_web 2.3.0 [flutter flutter_web_plugins url_launcher_platform_interface web]
- url_launcher_windows 3.1.1 [flutter url_launcher_platform_interface]
- uuid 4.3.3 [crypto sprintf meta fixnum]
- vector_graphics 1.1.11+1 [flutter http vector_graphics_codec]
- vector_graphics_codec 1.1.11+1
- vector_graphics_compiler 1.1.11+1 [args meta path_parsing xml vector_graphics_codec path]
- vector_math 2.1.4
- video_player 2.8.3 [flutter html video_player_android video_player_avfoundation video_player_platform_interface video_player_web]
- video_player_android 2.4.12 [flutter video_player_platform_interface]
- video_player_avfoundation 2.5.6 [flutter video_player_platform_interface]
- video_player_platform_interface 6.2.2 [flutter plugin_platform_interface]
- video_player_web 2.2.0 [flutter flutter_web_plugins video_player_platform_interface]
- vm_service 13.0.0
- wakelock_plus 1.1.4 [flutter flutter_web_plugins meta wakelock_plus_platform_interface win32 dbus package_info_plus js]
- wakelock_plus_platform_interface 1.1.0 [flutter plugin_platform_interface meta]
- web 0.5.1
- webview_flutter 4.7.0 [flutter webview_flutter_android webview_flutter_platform_interface webview_flutter_wkwebview]
- webview_flutter_android 3.15.0 [flutter webview_flutter_platform_interface]
- webview_flutter_platform_interface 2.10.0 [flutter meta plugin_platform_interface]
- webview_flutter_wkwebview 3.12.0 [flutter path webview_flutter_platform_interface]
- win32 5.3.0 [ffi]
- win32_registry 1.1.2 [ffi win32]
- xdg_directories 1.0.4 [meta path]
- xml 6.5.0 [collection meta petitparser]
- yaml 3.1.2 [collection source_span string_scanner]

Additional context and comments
settings.gradle
pluginManagement {
    def flutterSdkPath = {
        def properties = new Properties()
        file("local.properties").withInputStream { properties.load(it) }
        def flutterSdkPath = properties.getProperty("flutter.sdk")
        assert flutterSdkPath != null, "flutter.sdk not set in local.properties"
        return flutterSdkPath
    }
    settings.ext.flutterSdkPath = flutterSdkPath()

    includeBuild("${settings.ext.flutterSdkPath}/packages/flutter_tools/gradle")

    repositories {
        google()
        mavenCentral()
        gradlePluginPortal()
    }
}

plugins {
    id "dev.flutter.flutter-plugin-loader" version "1.0.0"
    id "com.android.application" version "7.3.0" apply false
    id "org.jetbrains.kotlin.android" version "1.9.22" apply false
    id "com.google.gms.google-services" version "4.4.1" apply false
    id("com.google.firebase.crashlytics") version "2.9.9" apply false
}

include ":app"

build.gradle
allprojects {
    repositories {
        google()
        mavenCentral()
    }
}

rootProject.buildDir = '../build'
subprojects {
    project.buildDir = "${rootProject.buildDir}/${project.name}"
}
subprojects {
    project.evaluationDependsOn(':app')
}

tasks.register("clean", Delete) {
    delete rootProject.buildDir
}

app/build.gradle
plugins {
    id "com.android.application"
    id "kotlin-android"
    id "dev.flutter.flutter-gradle-plugin"
    id "com.google.gms.google-services"
    id "com.google.firebase.crashlytics"
}

def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
    keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}

def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
    localPropertiesFile.withReader('UTF-8') { reader ->
        localProperties.load(reader)
    }
}

def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
    flutterVersionCode = '1'
}

def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
    flutterVersionName = '1.0'
}

android {
    namespace "..."
    compileSdkVersion 34
    ndkVersion flutter.ndkVersion

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    kotlinOptions {
        jvmTarget = '1.8'
    }

    sourceSets {
        main.java.srcDirs += 'src/main/kotlin'
    }

    defaultConfig {
        applicationId "..."
        minSdkVersion 23
        targetSdkVersion 34
        versionCode flutterVersionCode.toInteger()
        versionName flutterVersionName
    }

    signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
            storePassword keystoreProperties['storePassword']
        }
    }
    buildTypes {

        release {
            multiDexKeepProguard file('multidex-config.pro')
            signingConfig signingConfigs.release
        }
    }
}

flutter {
    source '../..'
}

dependencies {
    implementation(platform("com.google.firebase:firebase-bom:33.0.0"))
    implementation("com.onesignal:OneSignal:5.1.10")
    implementation 'com.google.firebase:firebase-crashlytics-ktx'
    implementation 'com.google.firebase:firebase-analytics-ktx'
    implementation("com.google.firebase:firebase-crashlytics")
    implementation("com.google.firebase:firebase-analytics")
    implementation("com.google.firebase:firebase-appcheck-playintegrity")
}

Hi @tekink - Do you mind downgrading your google-services and letting me know if this solves your problem? It was reported here that downgrading to v4.3.X seemed to fix the issue. It might be an issue to be escalated to the firebase-android-sdk.

it worked. I reverted to version 4.3.15.


[PAG-2505] Update generatePreviewTypes to add translate function

Checklist

Contains unit tests ✅
Contains breaking changes ❌
Compatible with: MX 9⃣
Did you update version and changelog? ✅ ❌
PR title properly formatted ([XX-000]: description)? ✅

This PR contains

[ x ] Bug fix
[ x ] Feature
[ ] Refactor
[ ] Documentation
[ ] Other (describe)

What is the purpose of this PR?
PAG added the translate function to the preview props, this adds the appropriate typing. We also noticed that the type for the mode (design, structure, x-ray) was made nullable on accident.
Relevant changes
Generated types for the preview props.
What should be covered while testing?
The updated unit tests should be sufficient.

Hi @MendixBart, you mention that the optionality of renderMode was a mistake. Do I understand correctly that it was always passed to the widget preview component? If not, as of what version of Studio Pro does this happen?
We just merged a feature that conflicts with your change in the Changelog. Can you rebase your branch?

Hey @weirdwater, I've resolved the conflict in the readme. But let me know if this way around isn't ideal.
And you're correct, since the introduction of the renderMode, we always passed a valid string value (not null, undefined or an empty string.)

Hi,
The changelog change looks good to me 👍🏻
Do I understand correctly that the renderMode prop was passed to preview widgets prior to 10.11? This commit states that making it optional makes the widget backwards compatible.

Ah, no the prop wasn't passed before that, so you're correct. Although the same will be true for the translate function that we're introducing in 10.18. Would it make sense to make sure both of them are optional?

We discussed it in the team and came to the consensus that if you are using the pluggable-widgets-tools at version 10.18 the expectation should be that resulting widgets are compatible with SP 10.18+
So we approve the properties being non-optional.


Include SPDX license headers

Every file should have this at the top: https://github.com/etesync/ios/blob/master/src/AboutScreen.tsx#L1
(using the correct license identifier, which is BSD-3-Clause here I believe).
I know I've been a bit sloppy with doing it in other repos, but I'll add it all soon.

Also add an AUTHORS file and put yourself there, so that "Etebase Authors" actually refers to something meaningful. :P

that means:
// SPDX-FileCopyrightText: © 2019 EteSync Authors
// SPDX-License-Identifier: BSD-3-Clause

?
does this include wait-for-it.sh ?

Etebase Authors, not EteSync, but looks great otherwise.
Doesn't include wait-for-it as we don't own the copyright for that, I commented on the PR with an eaxmple for that script.


Ntv2 grid support

A start point for discussing how to support NTv2 grids in Geodesy and possibly multi grid support?.
This implementation is by no means complete, notably it misses tests and feature gating. It has also been hacked into the grid operator for testing purposes which is obviously not how it should be done.
My goal is to figure out:

Is the grid implementation good enough?
Figure out what other work is required to elegantly support NTv2 grids along side the existing grid implementation.

Closing because I can't seem to change the base to the multi-grid pr.


Implement authentication/authorization for API endpoints

@beraldoleal Is this supposed to be implemented on the NApps? Or it should be implemented on the https://github.com/kytos/kytos project?


amazon-cloudwatch-agent: let users specify configuration file paths

Let users specify configuration file paths.
This is to allow dynamic configuration at runtime (mostly during boot since the systemd unit won't restart unless something runs nixos-rebuild switch/test).
Without this feature, users creating NixOS VM images need to create 1 image per agent configuration permutation if they want immutable images (i.e. don't run nixos-rebuild switch on boot).
This can result in a lot of near-identical images whose only difference is a few options in their CloudWatch Agent configuration (e.g. region option for multi-region AWS deployments). Since VM images are usually on the order of GBs, we end up with a lot of wasted space in Nix stores.
With this feature, users can write their own systemd units that dynamically create configurations (e.g. using information from IMDS, AWS SSM Parameter Store, or AWS Secrets Manager) and write them to a static path.
The tradeoff, however, is that mutable configuration files can cause drift if a change isn't followed by a systemctl restart amazon-cloudwatch-agent.service. nixos-rebuild won't work because we can't access files outside the Nix store in restricted evaluation mode (e.g. can't hash the file and feed it into restartTriggers).
Also doing some small cleanup.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.
Maintainer Pings
@philipmw

This makes sense to me, but I am concerned about someone specifying both a file and an inline config and having the inline config silently ignored. (I do see you document that the file takes precedence.) Do you think we should error out if both are specified?

Sounds good to me; thanks for the thoughtful reply. I approve, though (for some reason) my approval isn't requested.

you can use codeowners instead for modules. it's indeed not supported


[WIP] Sql server rendering

I've got SQL server rendering most of the way there (select works*, insert/update/delete  should be easy enough from here) + a bit of housekeeping on the build config.
1c037cf was able to render the selects from Examples in a way that were able to be executed unmodified (apart from removing "arbitrary" functions which don't exist in TSQL) against a sql server instance with the test data.
Unfortunately, deleting Renderable (which was no longer used) has caused an error "The outer reference in this type test cannot be checked at run time" (line 186 of SqlServerModule). I think this may relate to https://github.com/scalameta/scalameta/issues/900 but I'm not sure. I don't really understand what the suggested workaround is trying to fix. This has got me stumped, any help on this would be appreciated! "solved" with the help of @kitlangton
Still to do

render constants/variables properly including sql injection protection
insert/update/delete
figure out which bits can be reused across dialects & extract to SQL module
fix #38 which actually needs to be fixed now because sql server doesn't support Arbitrary

cc @jdegoes / @jczuchnowski

This is awesome work.
For (4), please just use MIN wherever you see ARBITRARY. Also, I'd ignore (3). Once we have a lot of duplication across different SQL Dialects, we can then worry about how to factor it out. Right now we don't really know what that's going to look like.

Thanks @jdegoes
for escaping/proper rendering of values I'll also need to solve the typeTypeTagOf issue for it to actually work but I think that's the only real blocker at this point.
Do you have any idea why Table needs to extend Insanity (or more specifically any trait with some def) in order to be able to pattern match against it? That's a bit of ugliness I'd ideally like to get rid of.

@robmwalsh I know that @jczuchnowski has implemented typeTagOf, so maybe he can donate that here. 😄
No idea, but I suspect bug in Scalac.

@jczuchnowski any chance of a copy of your typeTagOf implementation please?

@robmwalsh I don't have a full implementation yet, but I'll post what I have and maybe @jdegoes will help us move forward ;)
I would also leave out 2. from this PR. This PR is already very useful. I'm working on integrating Testcontainers with some basic integration test and I could use what we have here already.

@jdegoes @jczuchnowski shall we just merge this now and I can continue rendering work separately?

Yeah, I'd merge it.


My work deleted

Type: Bug
I was working on jupyter notebook opened in vs code
then the c drive got filled completely and vs code told me to save the notebook and then i removed unwanted files from c drive
then i pressed retry in vs code to save again but it doesn't save and showed me the msg again then i pressed discard i thought it will remove the msg and i will save later then it suddenly crashed and the notebook has no cells
this costs me around 100$ of work and i won't be able to do it again after this frustration
VS Code version: Code 1.79.2 (695af097c7bd098fbf017ce3ac85e09bbc5dda06, 2023-06-14T08:57:04.379Z)
OS version: Windows_NT x64 10.0.22621
Modes:

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-9300H CPU @ 2.40GHz (8 x 2400)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: disabled_offdirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
7.83GB (0.30GB free)

Process Argv
--crash-reporter-id 9ad15440-a2a1-43a5-a0bb-432cbdcfe152

Screen Reader
no

VM
0%

Extensions (29)

Extension
Author (truncated)
Version

vscode-django
bat
1.10.0

vscode-tailwindcss
bra
0.9.11

vue-snippets
hol
1.0.4

djlint
mon
2023.6.1

azure-dev
ms-
0.6.0

vscode-azureappservice
ms-
0.24.9

vscode-azurecontainerapps
ms-
0.5.1

vscode-azurefunctions
ms-
1.11.0

vscode-azureresourcegroups
ms-
0.7.5

vscode-azurestaticwebapps
ms-
0.12.1

vscode-azurestorage
ms-
0.15.3

vscode-azurevirtualmachines
ms-
0.6.5

vscode-cosmosdb
ms-
0.19.4

black-formatter
ms-
2023.2.0

python
ms-
2023.10.1

vscode-pylance
ms-
2023.6.30

jupyter
ms-
2023.5.1101742258

jupyter-keymap
ms-
1.1.2

jupyter-renderers
ms-
1.0.15

vscode-jupyter-cell-tags
ms-
0.1.8

vscode-jupyter-slideshow
ms-
0.1.5

azure-account
ms-
0.11.5

vscode-node-azure-pack
ms-
1.2.0

material-icon-theme
PKi
4.28.0

LiveServer
rit
5.7.9

vue-vscode-snippets
sdr
3.1.1

volar
Vue
1.8.1

console-ninja
Wal
0.0.157

vscode-sqlite3-editor
yy0
1.0.77

A/B Experiments
vsliv368:30146709
vsreu685:30147344
python383cf:30185419
vspor879:30202332
vspor708:30202333
vspor363:30204092
vslsvsres303:30308271
vserr242:30382549
pythontb:30283811
vsjup518:30340749
pythonptprofiler:30281270
vshan820:30294714
vstes263:30335439
vscorecescf:30445987
vscod805cf:30301675
binariesv615:30325510
bridge0708:30335490
bridge0723:30353136
vsaa593:30376534
pythonvs932:30410667
py29gd2263:30773603
vsclangdc:30486549
c4g48928:30535728
dsvsc012:30540252
pynewext54:30695312
azure-dev_surveyone:30548225
2e4cg342:30602488
pyind779:30671433
89544117:30613380
pythonsymbol12:30671437
showlangstatbar:30737416
vsctsb:30748421
pythonms35:30701012
03d35959:30757346
pythonfmttext:30731395
pythoncmvfstrcf:30756944
fixshowwlkth:30771522
hideindicator:30766889
pythongtdpath:30769146
gsof2:30774497
dh2dc718:30770000
pythonidxptcf:30772540
pythondjangots:30772535
e537b577:30772215

@AbdallhOmarr if you open the same notebook in the workspace, can you visit the Timeline view in the explorer? You might see backups from the Timeline View.

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


feat: add perfStats to json reporter

Add the missing field perfStats to JSON TestResult compared to Jest test result type.
{
  ...
  perfStats: {
    end?: Milliseconds
    runtime?: Milliseconds
    start?: Milliseconds
  },
  ...
}

What about slow? Also can we make a snapshot of JSON instead of a string here? 👀

slow would require additional project config, like jest's slowTestThreshold [number].

Any reason we're not using performance.now()? My test fixtures are too fast and Date.now() is giving me "0" in the duration of my tasks.

@JessicaSachs duration is recorded somewhere else, which is not related to this PR

That's fine, I meant in general. @sheremet-va and I spoke on Discord and he asked me to make an issue to swap the recording of stats throughout Vitest from Date.now => performance.now, citing incompatibility with previous Node versions. Vitest couldn't import from node:performance at the time, as that would've broken browser support. #6377 for future discussion.


Hotfix: Curavture correction without config

When initiating CurvatureCorrection with an image and without a config, obviously config is not accessible. The current code breaks as it tries to access self.config, which is not set. A fix has been added in this PR.

Very good, did not think of this.

For completeness, can you approve @EStorvik


Tidied up code based on codacy comments

Codecov Report

Merging #52 into master will not change coverage.
The diff coverage is 80%.

@@           Coverage Diff           @@
##           master      #52   +/-   ##
=======================================
  Coverage   91.11%   91.11%
=======================================
  Files           5        5
  Lines         225      225
=======================================
  Hits          205      205
  Misses         20       20

Impacted Files
Coverage Δ

server.py
72.58% <0%> (ø)
:arrow_up:

decrypter.py
97.95% <100%> (ø)
:arrow_up:

tests/test_service.py
98.73% <100%> (ø)
: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 939ffbd...369cfef. Read the comment docs.

Not sure we should have changed debug @necrophonic - this gives valuable logging and code reload in our dev environment and is never run in prod. Can we revert?


Push Token is never sent to JS on Android.

I have been trying this since past 2 days. I have also tried debugging in library source code. But in the file GcmToken.java, sendTokenToJS() method is getting called. But "reactContext" is coming null. Following is my code.
` mReactRootView = new ReactRootView(this.getApplicationContext());
mReactInstanceManager = ReactInstanceManager.builder()
.setApplication(getApplication())
.setBundleAssetName("index.android.bundle")
.setJSMainModuleName("index.android")
.addPackage(new MainReactPackage())
.addPackage(new ReactAppCallbackModules())
.addPackage(new WebViewBridgePackage())
.addPackage(new ReactNativeContacts())
.addPackage(new AndroidKeyboardAdjustPackage(this))
.addPackage(new RNNotificationsPackage(getApplication()))
.setUseDeveloperSupport(BuildConfig.DEBUG)
.setInitialLifecycleState(LifecycleState.RESUMED)
.build();
mReactRootView.startReactApplication(mReactInstanceManager, "ReactApp", null);
**My Application Class has code**
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
@Override
protected boolean getUseDeveloperSupport() {
return BuildConfig.DEBUG;
}
    @Override
    protected List<ReactPackage> getPackages() {
        return Arrays.<ReactPackage>asList(
                new MainReactPackage(),
                new RNNotificationsPackage(CoreApplication.this)
        );
    }
};

@Override
public ReactNativeHost getReactNativeHost() {
    return mReactNativeHost;
}

`
The only change in this is I am starting a React Application on specific Activity, that is my HomeActivity. Rest other activities such as Login, etc are written in Native Android.
Can someone please help?

I am not sure, but possibly this is caused by the fact that the token received event triggers in Java while the JS engine is not running yet, causing the event to get lost. You might want to give an explicit NotificationsAndroid.refreshToken() token a try as it should re-trigger sending the token to JS.

@pennersr : Thank you for the reply. I was on vacation. I tried your suggestion today but it is not affecting anything. I have debugged the source code of React native pushnotification and the point where it sends the token to JS has React context null.
Filename: GcmToken.java
Method : sendTokenToJS()
Line :  final ReactContext reactContext = instanceManager.getCurrentReactContext();
Here the reactContext is always coming null. :(

@sachin-sable please try to check whether this log appears when the app is loaded / device is run:
GCM is refreshing token... instanceId=<instance-id>

@d4vidi Yes. I have checked both the points. And I am getting the log which you mentioned with instanceId and a Token.
Now I have even tried running Example app given. It's same case with Example app too. onPushRegistered() is never called.

I see. In that case, have you tried calling NotificationsAndroid.refreshToken() explicitly when your react native activity (app) is ready? Please try to do so, and try to look up a log that says: Manual token refresh => ....
Also, can you copy&paste the log that says "App initialized => ..." (token excluded)

@d4vidi : Thank you for your attention on this.
I have tried following:
Implemented the ReactInstanceManager.ReactInstanceEventListener and overridden the following method,
@Override
public void onReactContextInitialized(ReactContext context) {

        if(context!=null) {
            context.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
                    .emit("refreshtoken", null);
        }
}

I had the even listener in my js code for above event. There I called the refreshToken method:
    DeviceEventEmitter.addListener("refreshtoken", () => {
         NotificationsAndroid.refreshToken();

    });

Following are the logs:
-ReactNativeNotifs:Running application "ReactApp" with appParams: {"initialProps":{"APP_NAME”:”ReactApp”,”USER_ID”:1},”rootTag":1}. __DEV__ === false, development-level warning are OFF, performance optimizations are ON

-ReactNativeNotifs:App initialized => asking for new token
-ReactNativeNotifs:GCM is refreshing token... instanceId=cRmglHPl_u0
-GCM has a new token: instanceId=cRmglHPl_u0, token=cRmglHPl_u0:AP…

…..

-ReactNativeNotifs: Native method invocation: refreshToken()
-ReactNativeNotifs: Manual token refresh => publishing existing token (cRmglHPl_u0:AP…)

In that case, I would double check that you're properly setting up the main react activity and the app, either as described by react native's android bootstrap guide, or by inheriting ReactActivity and implementing ReactApplicationin your react activity and application, respectively.
I'm saying this because it appears as though your react instance manager is properly aware of the current react context...
Another question: are you using Wix' react-native-navigation?

Nopes. I am not using Wix' react-native-navigation.
Please see my code in activity and application classes.
private void initReactView(){
        mReactRootView = new ReactRootView(this.getApplicationContext());
        mReactInstanceManager = ReactInstanceManager.builder()
                .setApplication(getApplication())
                .setBundleAssetName("index.android.bundle")
                .setJSMainModuleName("index.android")
                .addPackage(new MainReactPackage())
                .addPackage(new RNNotificationsPackage(getApplication()))
                .addPackage(new ReactAppCallbackModules())
                .addPackage(new WebViewBridgePackage())
                .addPackage(new ReactNativeContacts())
                .addPackage(new AndroidKeyboardAdjustPackage(this))
                .setUseDeveloperSupport(BuildConfig.DEBUG)
                .setInitialLifecycleState(LifecycleState.RESUMED)
                .build();
        mReactInstanceManager.addReactInstanceEventListener(this);
 }

private void startReactApplication() {
        Bundle launchOptions = new Bundle();
        launchOptions.putString("APP_NAME", getString(R.string.app_name).replace("\n", " "));
        launchOptions.putLong("USER_ID", AppUser.loadFromContext(this).ID);
        mReactRootView.startReactApplication(mReactInstanceManager, "ReactApp", launchOptions);
}

and my onCreate() has :
if (SDK_INT >= Build.VERSION_CODES.M && !Settings.canDrawOverlays(this)) {
            Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION, Uri.parse("package:" + getPackageName()));
            startActivityForResult(intent, OVERLAY_PERMISSION_REQ_CODE);
        } else {
            startReactApplication();
}

I have also added the package inclusion in Application class:
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
        @Override
        protected boolean getUseDeveloperSupport() {
            return BuildConfig.DEBUG;
        }

        @Override
        protected List<ReactPackage> getPackages() {
            return Arrays.<ReactPackage>asList(
                    new MainReactPackage(),
                    new RNNotificationsPackage(CoreApplication.this)
            );
        }
    };

    @Override
    public ReactNativeHost getReactNativeHost() {
        return mReactNativeHost;
    }

    @Override
    public IPushNotification getPushNotification(Context context, Bundle bundle, AppLifecycleFacade facade, AppLaunchHelper defaultAppLaunchHelper) {
        return new MyPushNotification(context,bundle,facade,defaultAppLaunchHelper);
    }

If I don't add package inclusion in Activity, it gives me following exception:
com.facebook.react.common.JavascriptException: undefined is not an object (evaluating 'RNNotifications.refreshToken')

@d4vidi Thank you for your time. I have implemented my own GcmToken class by implementing IGMToken interface but without sending token to js. I send token to JS when my react context is initialised in ** onReactContextInitialized**.
Thanks.

Sorry to hear we couldn't work it out.

I am facing the same problem too. Everything gives the correct response.

App initialized => publishing existing token (eL9jaDEM...
Manual token refresh => publishing existing token (eL9jaDEMJxU:APA91bF ..
However, it always responses null reactContext in sendTokenToJS.
( ReactNativeNotifs: send token reactContext: null )
react-native-navigation : 1.1.193
react-native-notifications : 1.1.14

for me adding android.enableAapt2=false in gradle.properties fixed the problem


Fixes #220 - Duplicate graph in Dashboard when Analysis.Strategy = Test

Prior to this fix, the following code results in an extra chart due to a bug which considers 3 levels when AnalysisStrategy == [Test, Class].
using AventStack.ExtentReports;
using AventStack.ExtentReports.Reporter;

var extent = new ExtentReports();
extent.AttachReporter(new ExtentSparkReporter("index.html"));
extent.CreateTest("Test").CreateNode("Node").CreateNode("Node").Pass();
extent.Flush();

This should not be the case, unless the analysis occurs for BDD/Specflow type instances where there are indeed 3 levels of tests:
- Feature
  - Scenario
    - Step
      - Log (optional) (reported under log events instead of test)

Before:

After:

@jrod567 - fyi,  this should fix the bug with the extra chart showing.  Merging.


Retry go builds

A go cache miss may break the build
Error: ../../../../go/pkg/mod/github.com/hashicorp/go-plugin@v1.6.0/internal/plugin/grpc_broker_grpc.pb.go:14:2<EMAIL_ADDRESS>read<EMAIL_ADDRESS>stream error: stream ID 101; INTERNAL_ERROR; received from peer
Error: ../../../../go/pkg/mod/github.com/hashicorp/go-plugin@v1.6.0/internal/plugin/grpc_broker_grpc.pb.go:15:2<EMAIL_ADDRESS>read<EMAIL_ADDRESS>stream error: stream ID 101; INTERNAL_ERROR; received from peer
Error: ../../../../go/pkg/mod/github.com/hashicorp/go-plugin@v1.6.0/internal/plugin/grpc_broker_grpc.pb.go:16:2<EMAIL_ADDRESS>read<EMAIL_ADDRESS>stream error: stream ID 101; INTERNAL_ERROR; received from peer

FAILED https://github.com/pulumi/pulumi-akamai/pull/423
A rare condition, but retrying Go builds with backoff can make these builds more reliable.

Another one https://github.com/pulumi/pulumi-mongodbatlas/issues/385