[flutter_adaptive_scaffold] RTL layout Material3 position of hover highlight

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce

create a new Flutter app flutter create -e sample_app
add localization flutter pub add flutter_localizations --sdk=flutter
add package flutter pub add flutter_adaptive_scaffold
replace the lib/main.dart file content with provided sample code

Expected results
the hover highlight effect should be on the right side over the icon of the menu item
Actual results
the hover highlight effect is shown on the left side at an empty section in front of the menu title
Code sample
Code sample main.dart
import 'package:flutter/material.dart';
import 'package:flutter_adaptive_scaffold/flutter_adaptive_scaffold.dart';
import 'package:flutter_localizations/flutter_localizations.dart';

void main() => runApp(const MyApp());

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData.light(useMaterial3: true),
      localizationsDelegates: const [
        GlobalMaterialLocalizations.delegate,
        GlobalWidgetsLocalizations.delegate,
        GlobalCupertinoLocalizations.delegate,
      ],
      supportedLocales: const [Locale('ar'), Locale('en')],
      locale: const Locale('ar'), // Arabic RTL layout
      home: AdaptiveScaffold(
        smallBreakpoint: const WidthPlatformBreakpoint(end: 50),
        mediumBreakpoint: const WidthPlatformBreakpoint(begin: 50, end: 100),
        largeBreakpoint: const WidthPlatformBreakpoint(begin: 100),
        body: (context) => const Center(child: Text('RTL Layout')),
        destinations: const [
          NavigationDestination(
            icon: Icon(Icons.inbox_outlined),
            selectedIcon: Icon(Icons.inbox),
            label: 'Inbox',
          ),
          NavigationDestination(
            icon: Icon(Icons.article_outlined),
            selectedIcon: Icon(Icons.article),
            label: 'Articles',
          ),
        ],
      ),
    );
  }
}

Screenshots or Video

Screenshot demonstration

Logs
No response
Flutter Doctor output
Doctor output
[√] Flutter (Channel stable, 3.10.6, on Microsoft Windows [Version 10.0.22621.1702], locale en-US)
    • Flutter version 3.10.6 on channel stable at C:\src\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision f468f3366c (5 days ago), 2023-07-12 15:19:05 -0700
    • Engine revision cdbeda788a
    • Dart version 3.0.6
    • DevTools version 2.23.1

[√] Windows Version (Installed version of Windows is version 10 or higher)

[√] Android toolchain - develop for Android devices (Android SDK version 33.0.1)
    • Android SDK at C:\Users\User\AppData\Local\Android\sdk
    • Platform android-33, build-tools 33.0.1
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Enterprise 2022 17.5.5)
    • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Enterprise
    • Visual Studio Enterprise 2022 version 17.5.33627.172
    • Windows 10 SDK version 10.0.22000.0

[√] Android Studio (version 2021.3)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)

[√] VS Code (version 1.80.1)
    • VS Code at C:\Users\User\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.68.0

[√] Connected device (3 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22621.1702]
    • Chrome (web)      • chrome  • web-javascript • Google Chrome 114.0.5735.199
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 114.0.1823.82

[√] Network resources
    • All expected network resources are available.

• No issues found!

Thanks for the detailed report. I was able to replicate the behavior.
https://github.com/flutter/flutter/assets/67046386/ce41c196-2702-413e-915d-0b663fbd22f8
Although this isn't specific to M3, as it occurs using without it too, so updated title to reflect the same.
With ltr, the hovering is focused on the icons as expected.

 stable, master flutter doctor -v
[!] Flutter (Channel stable, 3.10.5, on macOS 12.2.1 21D62 darwin-x64, locale
    en-GB)
    • Flutter version 3.10.5 on channel stable at
      /Users/dhs/documents/fluttersdk/flutter
    ! Warning: `flutter` on your path resolves to
      /Users/dhs/Documents/Fluttersdk/flutter/bin/flutter, which is not inside
      your current Flutter SDK checkout at
      /Users/dhs/documents/fluttersdk/flutter. Consider adding
      /Users/dhs/documents/fluttersdk/flutter/bin to the front of your path.
    ! Warning: `dart` on your path resolves to
      /Users/dhs/Documents/Fluttersdk/flutter/bin/dart, which is not inside your
      current Flutter SDK checkout at /Users/dhs/documents/fluttersdk/flutter.
      Consider adding /Users/dhs/documents/fluttersdk/flutter/bin to the front
      of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 796c8ef792 (2 days ago), 2023-06-13 15:51:02 -0700
    • Engine revision 45f6e00911
    • Dart version 3.0.5
    • DevTools version 2.23.1
    • If those were intentional, you can disregard the above warnings; however
      it is recommended to use "git" directly to perform update checks and
      upgrades.

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

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

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

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

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

! Doctor found issues in 1 category.

[!] Flutter (Channel master, 3.13.0-5.0.pre.36, on macOS 12.2.1 21D62
    darwin-x64, locale en-GB)
    • Flutter version 3.13.0-5.0.pre.36 on channel master at
      /Users/dhs/documents/fluttersdk/flutter
    ! Warning: `flutter` on your path resolves to
      /Users/dhs/Documents/Fluttersdk/flutter/bin/flutter, which is not inside
      your current Flutter SDK checkout at
      /Users/dhs/documents/fluttersdk/flutter. Consider adding
      /Users/dhs/documents/fluttersdk/flutter/bin to the front of your path.
    ! Warning: `dart` on your path resolves to
      /Users/dhs/Documents/Fluttersdk/flutter/bin/dart, which is not inside your
      current Flutter SDK checkout at /Users/dhs/documents/fluttersdk/flutter.
      Consider adding /Users/dhs/documents/fluttersdk/flutter/bin to the front
      of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision e12d31ad75 (88 minutes ago), 2023-07-17 20:36:18 -0700
    • Engine revision 77ec923718
    • Dart version 3.1.0 (build 3.1.0-320.0.dev)
    • DevTools version 2.25.0
    • If those were intentional, you can disregard the above warnings; however
      it is recommended to use "git" directly to perform update checks and
      upgrades.

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/dhs/Library/Android/sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for
      more details.

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

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

[✓] IntelliJ IDEA Ultimate Edition (version 2021.3.2)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 65.1.4
    • Dart plugin version 213.7228

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

[✓] Connected device (3 available)
    • Darshan's iphone (mobile) • 21150b119064aecc249dfcfe05e259197461ce23 • ios
      • iOS 15.3.1 19D52
    • macOS (desktop)           • macos                                    •
      darwin-x64     • macOS 12.2.1 21D62 darwin-x64
    • Chrome (web)              • chrome                                   •
      web-javascript • Google Chrome 109.0.5414.119

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

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

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

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

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

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

! Doctor found issues in 1 category.


Logging details

After making a change of the value Global privacy contact I was expecting to see such action  being saved in the Azure AD audit logs (https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/Audit). However, after waiting more than 30 minutes I still don't see any log for that update.
Can you please confirm why that action is not being recorded in the audit logs or where can I see that log?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 8d74d8a8-30f0-662e-1081-7a471fb2da67
Version Independent ID: 506d1806-cccf-15c6-52ee-ef7785334808
Content: Add your organization's privacy info - Azure Active Directory
Content Source: articles/active-directory/fundamentals/active-directory-properties-area.md
Service: active-directory
Sub-service: fundamentals
GitHub Login: @msaburnley
Microsoft Alias: ajburnle

@MarileeTurscak-MSFT Thanks for your feedback! We will investigate and update as appropriate.

Hi @aleazofeifam,
I was able to reproduce this issue in my tenant. I changed the global privacy contact and it did not show up in my audit logs, even though I have a Premium license on my tenant and can see all of my other audit activity from today.
I am not sure whether this is a bug or a missing feature, but I've reached out to the product team to ask them to fix this.

I have reported this to the product team and created a work item to get this fixed. Will update when there is more news on it!


Setting up with Vuetify

Hi all,
Vuetify is a material design component library for vue. I am trying to use it for my project but I am not sure how to use it in conjunction with vue-play to develop my components. What would be the way to do so?
Thanks alot

Hmm, I think nothing special? It's just a framework:
import Vue from 'vue'
import Vuetify from 'vuetify'

Vue.use(Vuetify)

Ah.
How do I include the CSS/Stylus files?

Same as other vue/webpack project.

I am using nuxt.js with vuetify. So, how would you suggest adding all the appropriate css files? I am not entirely sure about the best way of doing in in vue-play


UI - Not able to list more than 10 assistants in "My Assistants" view.

gptscript version v0.0.0-dev+b77cd130
Steps to reproduce the problem:

Launch Electron UI.
Make sure you have more than 10 assistants that you own.
Home page("My Assistants") view shows only 10 assistants.

Expected Behavior:
There needs to be pagination for this assistant list view similar to Explore view.

With latest builds ,  we are able to see all the assistants being listed in "My assistant" view.But there is no "load more" option .
Keeping this issue open to get a "load more" option available in this page.

I dont understand - if it is showing all assistants, why do you need "load more"?

moving this to testing to get an answer. once you answer, kick it back to triage and ill decide what to do. i will probably deprioritize it

I thought we should ideally be showing first 10 assistants and have pagination to show the rest.

Ok. Then ill just bump this down to medium. i dont expect folks to author a lot of assistants


feat(logger): pretty printing logs in local and non-prod environment

Description of your changes

Changes increase JSON.stringify indentation to 4 if the POWERTOOLS_DEV env variable has a truthy value.

Feature described and discussed in #751

How to verify this change

Related issues, RFCs
RFC https://github.com/awslabs/aws-lambda-powertools/issues/86

Issue number:  #751
PR status
Is this ready for review?: YES
Is it a breaking change?: NO
Checklist

[x] My changes meet the tenets criteria
[x] I have performed a self-review of my own code
[x] I have commented my code where necessary, particularly in areas that should be flagged with a TODO, or hard-to-understand areas
[x] I have made corresponding changes to the documentation
[ ] I have made corresponding changes to the examples
[x] My changes generate no new warnings
[x] The code coverage hasn't decreased
[x] I have added tests that prove my change is effective and works
[x] New and existing unit tests pass locally and in Github Actions
[ ] Any dependent changes have been merged and published in downstream module
[x] The PR title follows the conventional commit semantics

Breaking change checklist

[ ] I have documented the migration process
[ ] I have added, implemented necessary warnings (if it can live side by side)

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

packages/logger/src/config vs packages/commons/src/config

I would stick to the RFC since there is a decision made that POWERTOOLS_DEV will influence multiple utilities, so I think the best place for it is in packages/commons/src/config. I don't see it as premature optimization since it is a shared setting, but the trade-off is the timeframe of adding support of POWERTOOLS_DEV into other packages.
When I wrote the plan in the issue I mentioned that I didn't find a "common" place. My fault that I didn't sync and see the recent change #1123 that you moved the config to commons. So I would have reconsidered the decision.

Hi @shdq thank you for the changes, I'll wait for your confirmation before reviewing again.

@dreamorosi hello! If we stick to packages/logger/src/config it is ready to review.

Okay, let's keep it as it is now and if we add similar features to other utilities we'll move this logic in commons then.
I've already done a first pass of review and I see that the tests are passing. Before marking it as approved I'd like to test it locally to see how it would look from an user perspective. I'll try to do that by Monday end of morning (CEST).
In the meantime I'll also ask for a second review from other maintainers.
Thank you!

I have built the package from this branch & tested the following dummy lambda code:
import { Logger, injectLambdaContext } from "@aws-lambda-powertools/logger";
import middy from "@middy/core";

const logger = new Logger({ serviceName: "someName" });

export const handler = middy(async () => {
  logger.info("test", { details: "foo" });

  try {
    throw new Error("error");
  } catch (err) {
    logger.error("some error", err as Error);
  }
}).use(injectLambdaContext(logger));

Then run the file with export POWERTOOLS_DEV=true && node lib/test.mjs, below the indented output:

{
    "cold_start": true,
    "function_memory_size": null,
    "level": "INFO",
    "message": "test",
    "service": "someName",
    "timestamp": "2022-11-07T11:03:23.627Z",
    "details": "foo"
}
{
    "cold_start": true,
    "function_memory_size": null,
    "level": "ERROR",
    "message": "some error",
    "service": "someName",
    "timestamp": "2022-11-07T11:03:23.629Z",
    "error": {
        "name": "Error",
        "location": "file:///Users/aamorosi/Codes/powertools-playground/node_modules/@middy/core/index.js:85",
        "message": "error",
        "stack": "Error: error\n    at file:///Users/aamorosi/Codes/powertools-playground/lib/test.mjs:10:11\n    at runRequest (file:///Users/aamorosi/Codes/powertools-playground/node_modules/@middy/core/index.js:85:17)"
    }
}

Hey @dreamorosi! Thank you for the fast feedback loop and help with this PR. I enjoyed working on it. If you need help with other issues or maybe have a particular one in mind – let me know.

Hey @dreamorosi! Thank you for the fast feedback loop and help with this PR. I enjoyed working on it. If you need help with other issues or maybe have a particular one in mind – let me know.

Glad to hear, I also had a very pleasant experience :smile:
In case you're interested, I have two in mind:

I would appreciate your review on this PR I made #1144 (context is in the linked issue)
And then, after your PR is merged, there's this other issue that is somewhat related: #1030 (context is in this message / discussion)

As usual feel free to decline and/or choose different issues if the above don't interest you 😊
PS: not sure if you're interested, but we have also a chat-based channel on Discord (join here), in case you want to discuss and you think it's easier feel free to post in the #typescript channel

e2e are failing :/ https://github.com/awslabs/aws-lambda-powertools-typescript/actions/runs/3418100576/jobs/5690304692

e2e are failing :/ https://github.com/awslabs/aws-lambda-powertools-typescript/actions/runs/3418100576/jobs/5690304692

We need to take a look at them, they're failing in Metrics which were not changed in this PR

We have a PR open #1146 that should fix the issue highlighted by the e2e tests.

Hi @shdq, after discussing this with the other maintainers I think we should tweak the function that resolves the value of the POWERTOOLS_DEV function so that it's closer to the implementation that the Python's version of the library has:
value = value.lower()
if value in ("1", "y", "yes", "t", "true", "on"):
    return True
if value in ("0", "n", "no", "f", "false", "off"):
    return False

Basically we should accept more values for true & check other values for false.
Also, we should update the value in the docs to say false, I have opened a PR in the Python's repo so that it's also changed to false.
Thanks for your understanding!

@shdq  Sorry about this last minute after you have addressed everything.
I was the one who raised this discrepancy to Python team. It sounds wrong to me that POWERTOOLS_DEV use 0 instead of false. This could lead to configuration error for some users who aren't familiar with truthy evaluation.  So we decided to change this.
I am happy to make an adjustment + add test cases myself if you don't have time for this. Just let me know.

Hello, @ijemmy I'll make the changes!
I'm actually looking at the python implementation of the function that resolves the value and in the situation, when the env var value is "somethingsilly" it returns None.
Here we have a test for this
@dreamorosi @ijemmy what do you think is I implement it as a switch statement with default: false ?

Another question:
There is the same check for the POWERTOOLS_LOGGER_LOG_EVENT variable. Should it also be truthy? In the docs, it says Whether to log or not the incoming event when using the decorator or middleware. Supported values are: true, or false, disabled by default. But it also checks for 1.
And there was a function isValueTrue, that was removed after this refactoring. What do you think, maybe it makes sense to make a common function for checking for true and use it for both variables? Or across all packages. How it is checking in Tracer and Metrics?

There is the same check for the POWERTOOLS_LOGGER_LOG_EVENT variable. Should it also be truthy? In the docs, it says Whether to log or not the incoming event when using the decorator or middleware. Supported values are: true, or false, disabled by default. But it also checks for 1.

Possibly yes, since this new function is going to be implemented (at least for now) in packages/logger/src/config/EnvironmentVariablesService.ts it makes sense to do the same check there.

And there was a function isValueTrue, that was removed after this refactoring.

I opted to remove that function because at the time that was the only usage.

What do you think, maybe it makes sense to make a common function for checking for true and use it for both variables? Or across all packages. How it is checking in Tracer and Metrics?

At the moment they're not really checking for truth values but exactly and only true, however I agree that there's room for improvement and extend the same checks to these other utilities.
For now I would keep the change scoped to this PR. Later if you want, in a separate PR after this one, we could move up the logic in the packages/commons as well as potentially address #165
Let's discuss this again once this is merged.

@dreamorosi sorry for being dense, but I want to make sure that I got it right. I need to implement a function isValueTrue in packages/logger/src/config/EnvironmentVariablesService.ts and apply it to both POWERTOOLS_DEV and POWERTOOLS_LOGGER_LOG_EVENT checks. Correct?
Am I right, that we treat any other than "1", "y", "yes", "t", "true", "on" values as false? So it is not needed to explicitly check for falsy values.
Speaking of implementation details, I have two options:
switch (value) {
  case '1':
  case 'y':
  case 'yes':
  case 't':
  case 'true':
  case 'on':
    return true;
  default:
    return false;
}

Another option is to put it in an array of truthy values:
const truthyValues: string[] = ["1", "y", "yes", "t", "true", "on"];
return truthyValues.includes(value); // possible to use indexOf(), but it doesn't matter since it is going to be transpilled.

I like it, it is short and concise, but it uses an array. What do you think?
Thank you for your time and help!

I hope I didn't mess up with the previous push. And I can't find the commit to the docs with the default false value.
Should we add tests for isValueTrue?
If any other changes are needed I'm happy to make them!

I hope I didn't mess up with the previous push. And I can't find the commit to the docs with the default false value.

Don't worry, it happens! As far as I can see the diff looks okay and anyway we'll squash before merging so the single commits don't matter as much.

Should we add tests for isValueTrue?

Yes please, would be great to have them so we can detect regressions in the future. Maybe you could reduce the ones for getDevMode and convert some of them to test isValueTrue instead.
For getDevMode I would test only true, false, not set, and somethingsilly. The others would go to isValueTrue. For the latter I don't think there's no need to test every single combination: i.e. it's okay to test TRUE and false without the need of having to write tests for TRUE, true, FALSE, and False - we can assume that the String.toLowerCase() from the standard lib works.
Just make sure each string (case-insensitive) is represented once to test we support it.

If any other changes are needed I'm happy to make them!

As far as I can see, and from my side, that would be all 🙂

E2E tests are passing: https://github.com/awslabs/aws-lambda-powertools-typescript/actions/runs/3437044442


CMake and code improvements/fixes

Fixes the build on Linux, as much as I could right now (I didn't get the sphinx stuff building, but I should not have broken it), and make the CMake look modern, idiomatic, and clean.
Yes, this will probably require revisions to the sphinx in places, but it's much more idiomatic and simpler. The other stuff had a lot of feeling of "copy-pasted because this is what has worked in the past". Since people will copy and paste this as well, better if this is at least modern feeling and concise/non-duplicative.
Please consider reviewing and merging this. Rebasing it was a huge pain, and I really don't want to have to answer the github issues we'll get any time anyting in the OpenXR build changes that might affect the old build system.

OK, I rebased this and did a lot more clean up. It does actually build on linux and windows now on machines that don't have whatever special stuff the vendor has.
I also started on cleaning up how the shaders are compiled for chapter 5 but ran out of energy/time to copy it back to earlier chapters that need it. I did not update the sphinx docs that referred to the shader compilation/copying because they probably should have never even mentioned the details there to begin with, aside from "we added code to compile the shaders and copy them to the same directory as the binary". (Which, now that I think of it, has this been tested with the visual studio generator? because it's a multi-config generator so the .exe file is not in CMAKE_CURRENT_BINARY_DIR but a subdir)


Update modifiers to throw and update corresponding tests

In order to bring the codebase inline with the project guideline: G2 - Code that Fails Early, this PR makes modifiers fail "loudly" by throwing instead of silently no-oping. This leaves no ambiguity to the contract caller whether or not their action had succeeded.
The corresponding tests were also updated.

This is amazing, I wanted to this for a long time.
Thanks for taking care of it :D

Glad I could help @maraoz!


Upgrade to Symfony 5.3

For now, it's Symfony 5.3 RC1, but we'll keep updating this branch until 5.3 stable.

Things that I found while upgrading:
Missing UPGRADE guide entry?
In the UPGRADE guide (https://github.com/symfony/symfony/blob/5.3/UPGRADE-5.3.md) we don't even mention enable_csrf, but this change is needed in config/packages/security.yaml:
Replace this:
form_login:
    csrf_token_generator: security.csrf.token_manager

by this:
form_login:
    enable_csrf: true

Unexpected failures
The upgrade guide mentions this:
PropertyInfo:

Deprecated the Type::getCollectionKeyType() and Type::getCollectionValueType() methods,
use Type::getCollectionKeyTypes() and Type::getCollectionValueTypes() instead

But we have these test failures:

App\Tests\Controller\Admin\BlogControllerTest::testAdminNewPost
Error: Call to undefined method Symfony\Component\PropertyInfo\Type::getCollectionValueTypes()

demo/vendor/symfony/validator/Mapping/Loader/PropertyInfoLoader.php:122
demo/vendor/symfony/validator/Mapping/Loader/LoaderChain.php:54
demo/vendor/symfony/validator/Mapping/Factory/LazyLoadingMetadataFactory.php:101
demo/vendor/symfony/validator/Validator/RecursiveValidator.php:76
demo/vendor/symfony/validator/Validator/TraceableValidator.php:50
demo/vendor/symfony/form/Extension/Validator/ValidatorTypeGuesser.php:265
demo/vendor/symfony/form/Extension/Validator/ValidatorTypeGuesser.php:38
demo/vendor/symfony/form/FormTypeGuesserChain.php:47
demo/vendor/symfony/form/FormTypeGuesserChain.php:93
demo/vendor/symfony/form/FormTypeGuesserChain.php:48
demo/vendor/symfony/form/FormFactory.php:84
demo/vendor/symfony/form/FormBuilder.php:97
demo/vendor/symfony/form/FormBuilder.php:244
demo/vendor/symfony/form/FormBuilder.php:195
demo/vendor/symfony/form/FormFactory.php:28
demo/vendor/symfony/framework-bundle/Controller/AbstractController.php:359
demo/src/Controller/Admin/BlogController.php:78
demo/vendor/symfony/http-kernel/HttpKernel.php:157
demo/vendor/symfony/http-kernel/HttpKernel.php:79
demo/vendor/symfony/http-kernel/Kernel.php:196
demo/vendor/symfony/http-kernel/HttpKernelBrowser.php:63
demo/vendor/symfony/framework-bundle/KernelBrowser.php:159
demo/vendor/symfony/browser-kit/AbstractBrowser.php:402
demo/tests/Controller/Admin/BlogControllerTest.php:89

Unexpected direct deprecations
I see the following "direct deprecation" notices, but I don't know how they can be "direct deprecations". We don't use any of these in our code:
Remaining direct deprecation notices (7)

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\SodiumPasswordEncoder" class is deprecated, use "Symfony\Component\PasswordHasher\Hasher\SodiumPasswordHasher" instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\PasswordEncoderInterface" class is deprecated, use "Symfony\Component\PasswordHasher\PasswordHasherInterface" instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\SelfSaltingEncoderInterface" interface is deprecated, use "Symfony\Component\PasswordHasher\LegacyPasswordHasherInterface" on hasher implementations that deal with salts instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\Pbkdf2PasswordEncoder" class is deprecated, use "Symfony\Component\PasswordHasher\Hasher\Pbkdf2PasswordHasher" instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\BasePasswordEncoder" class is deprecated, use "Symfony\Component\PasswordHasher\Hasher\CheckPasswordLengthTrait" instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\MessageDigestPasswordEncoder" class is deprecated, use "Symfony\Component\PasswordHasher\Hasher\MessageDigestPasswordHasher" instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\MigratingPasswordEncoder" class is deprecated, use "Symfony\Component\PasswordHasher\Hasher\MigratingPasswordHasher" instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

Indirect deprecations to fix?
There are still these "indirect deprecations". Are we missing some dependency updates ... or are these really deprecations pending to be fixed?
Remaining indirect deprecation notices (24)

  19x: Since symfony/security-core 5.3: Not implementing method "loadUserByIdentifier()" in user provider "Symfony\Bridge\Doctrine\Security\User\EntityUserProvider" is deprecated. This method will replace "loadUserByUsername()" in Symfony 6.0.
    4x in BlogControllerTest::testAccessDeniedForRegularUsers from App\Tests\Controller\Admin
    4x in BlogControllerTest::testNewComment from App\Tests\Controller
    2x in BlogControllerTest::testAdminDeletePost from App\Tests\Controller\Admin
    2x in UserControllerTest::testEditUser from App\Tests\Controller
    2x in UserControllerTest::testChangePassword from App\Tests\Controller
    1x in BlogControllerTest::testAdminBackendHomePage from App\Tests\Controller\Admin
    1x in BlogControllerTest::testAdminNewPost from App\Tests\Controller\Admin
    1x in BlogControllerTest::testAdminNewDuplicatedPost from App\Tests\Controller\Admin
    1x in BlogControllerTest::testAdminShowPost from App\Tests\Controller\Admin
    1x in BlogControllerTest::testAdminEditPost from App\Tests\Controller\Admin

  4x: Since symfony/http-foundation 5.3: "Symfony\Component\HttpFoundation\RequestStack::getMasterRequest()" is deprecated, use "getMainRequest()" instead.
    4x in BlogControllerTest::testAccessDeniedForRegularUsers from App\Tests\Controller\Admin

  1x: The "DAMA\DoctrineTestBundle\Doctrine\DBAL\AbstractStaticDriverV2" class implements "Doctrine\DBAL\Driver\ExceptionConverterDriver" that is deprecated.
    1x in PHPUnitExtension::executeBeforeFirstTest from DAMA\DoctrineTestBundle\PHPUnit

Other deprecation notices (18)

  7x: Since symfony/security-bundle 5.3: The "security.password_encoder" service is deprecated, use "security.user_password_hasher" instead.
    2x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command
    2x in AddUserCommandTest::testCreateUserInteractive from App\Tests\Command
    2x in UserControllerTest::testChangePassword from App\Tests\Controller
    1x in UserControllerTest::testAccessDeniedForAnonymousUsers from App\Tests\Controller

  7x: Since symfony/security-bundle 5.3: The "security.encoder_factory.generic" service is deprecated, use "security.password_hasher_factory" instead.
    2x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command
    2x in AddUserCommandTest::testCreateUserInteractive from App\Tests\Command
    2x in UserControllerTest::testChangePassword from App\Tests\Controller
    1x in UserControllerTest::testAccessDeniedForAnonymousUsers from App\Tests\Controller

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\UserPasswordEncoder" class is deprecated, use "Symfony\Component\PasswordHasher\Hasher\UserPasswordHasher" instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface" interface is deprecated, use "Symfony\Component\PasswordHasher\Hasher\UserPasswordHasherInterface" instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\EncoderFactory" class is deprecated, use "Symfony\Component\PasswordHasher\Hasher\PasswordHasherFactory" instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

  1x: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Encoder\EncoderFactoryInterface" class is deprecated, use "Symfony\Component\PasswordHasher\Hasher\PasswordHasherFactoryInterface" instead.
    1x in AddUserCommandTest::testCreateUserNonInteractive from App\Tests\Command

I just force-pushed on your fork @javiereguiluz. This is now rebased and has more fixes for 5.3.
I didn't touch the assets, but it would be good to align them with Symfony UX also.

The ErrorException in the CI output might be a bug in symfony/validator rather than in the demo

Yes, unmet peer dependencies are usually fine (either the package is present but in a different version that still works and that's okay, or it's not present but it's optional for the usage of the application). That's how peerDeps are mostly used in JS (not a fan either).

PR is green, ready for merge!

Fantastic work 👏  Thanks Nicolas and all reviewers! 🚀


Do not trigger the toggle action at initialization

The component triggers the toggle action at initialization.
I think that isn't a good idea because at this time the position isn't defined by user.
If I want to persist my model directly when the toggle action is triggered, I should test if value is different with previous to know if it's well the user who has triggered it.

+1
Maybe a good solution consist in using one-way binding for the state and use actions only to toggle the state. Data down, actions up!

@gzurbach yeah that is totally the plan. I'd probably have to release 1.0.

In case it helps someone, this simple workaround seems enough:
// Template
{{x-toggle toggled=defaultFooState toggle='toggleFoo'}}

// Controller
defaultFooState: Ember.computed.readOnly('model.foo')

// Route
toggleFoo(isEnabled) {
  var model = this.get('controller.model');
  if (isEnabled !== model.get('foo')) {
    model.set('foo', isEnabled);
    model.save();
  }
}

@knownasilya Perfect. Your addon is awesome btw!

Thanks, but it's mainly thanks to the original author of that codepen :+1:

@gzurbach I've started the work on this branch: https://github.com/knownasilya/ember-cli-toggle/tree/ddau
Feel free to leave comments. I'm felling like the labels are overkill, I wonder how many people use them..

This looks promising! I agree for the label, and it's mostly a styling issue: users will want to use their own css classes and layout in most cases so they won't use that feature anyways. That said, I think it is important that users can pass an id that will be set on the checkbox so clicking on the label will toggle the button.

I think it is important that users can pass an id that will be set on the checkbox so clicking on the label will toggle the button.

Totally on board.

Looks like I already support that, just set forId.

I didn't even notice ha! Well :ship: it then!

This is resolved in master, with the new API.

Thank you !

@pierrickrouxel I haven't released to npm yet, so please be my guinea pig :wink:

Hi @knownasilya.
I try the component from master.
{{x-toggle size="small" toggled=model.enabled toggle="toggleDisabled"}}

toggleDisabled is never triggered.

@pierrickrouxel it was changed to 'on-toggle'

Why? It's not a common syntax.

Should it be ontoggle, which is more common, since it's used in the DOM events API.

In my opinion toggleˋ was more compliant with ember. By example the default action is ˋaction, not ˋonaction` no?

Yeah, but that is changing as <input type="text" onchange=(action 'updateName')> becomes possible with 2.0 (1.13?).

Okay! I read the RFC ˋon-toggle` seems to be good :). Sorry.

Hello, how exactly do i use this feature to disable action trigger on init?

@izukingz see the comment above: https://github.com/knownasilya/ember-cli-toggle/issues/24#issuecomment-110948784


unsquashfs: error while loading shared libraries: libz.so.1

Solution to issue cannot be found in the documentation.

[X] I checked the documentation.

Issue
Hi,
when trying to run singularity I got an error regarding unsquashfs not being able to load shared library:
/home/ubuntu/.conda/envs/singularity/bin/unsquashfs: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory
: exit status 127

I believe that shared library is in correct place:
:~$ find /home/ubuntu/.conda/envs/singularity -name libz.so.1
/home/ubuntu/.conda/envs/singularity/lib/libz.so.1

Is it possible that there is some misconfiguration in build that causes this? Or am I doing something wrong.
fyi my steps were run on clean installation:
bash Miniconda3-py39_4.11.0-Linux-x86_64.sh
...
conda create -n singularity -c conda-forge singularity
conda activate singularity
singularity run ...

Installed packages
# packages in environment at /home/ubuntu/.conda/envs/singularity:
#
# Name                    Version                   Build  Channel
_libgcc_mutex             0.1                 conda_forge    conda-forge
_openmp_mutex             4.5                       2_gnu    conda-forge
bzip2                     1.0.8                h7f98852_4    conda-forge
ca-certificates           2021.10.8            ha878542_0    conda-forge
cni                       1.0.1                ha975731_1    conda-forge
cni-plugins               1.0.1                ha8f183a_0    conda-forge
icu                       70.1                 h27087fc_0    conda-forge
jq                        1.6               h36c2ea0_1000    conda-forge
libarchive                3.5.2                hed592e5_1    conda-forge
libgcc-ng                 11.2.0              h1d223b6_16    conda-forge
libgomp                   11.2.0              h1d223b6_16    conda-forge
libiconv                  1.16                 h516909a_0    conda-forge
libseccomp                2.4.4                h7f98852_1    conda-forge
libstdcxx-ng              11.2.0              he4da1e4_16    conda-forge
libuuid                   2.32.1            h7f98852_1000    conda-forge
libxml2                   2.9.13               h22db469_0    conda-forge
libzlib                   1.2.11            h166bdaf_1014    conda-forge
lz4-c                     1.9.3                h9c3ff4c_1    conda-forge
lzo                       2.10              h516909a_1000    conda-forge
oniguruma                 <IP_ADDRESS>              h7f98852_0    conda-forge
openssl                   3.0.2                h166bdaf_1    conda-forge
singularity               3.8.7                h8e8409e_0    conda-forge
squashfs-tools            4.4                  h6b73730_2    conda-forge
xz                        5.2.5                h516909a_1    conda-forge
zlib                      1.2.11            h166bdaf_1014    conda-forge
zstd                      1.5.2                ha95c52a_0    conda-forge

Environment info
active environment : singularity
    active env location : /home/ubuntu/.conda/envs/singularity
            shell level : 2
       user config file : /home/ubuntu/.condarc
 populated config files : /home/ubuntu/.condarc
          conda version : 4.12.0
    conda-build version : not installed
         python version : 3.9.12.final.0
       virtual packages : __linux=5.4.0=0
                          __glibc=2.31=0
                          __unix=0=0
                          __archspec=1=x86_64
       base environment : /home/ubuntu/.conda  (writable)
      conda av data dir : /home/ubuntu/.conda/etc/conda
  conda av metadata url : None
           channel URLs : https://repo.anaconda.com/pkgs/main/linux-64
                          https://repo.anaconda.com/pkgs/main/noarch
                          https://repo.anaconda.com/pkgs/r/linux-64
                          https://repo.anaconda.com/pkgs/r/noarch
          package cache : /home/ubuntu/.conda/pkgs
       envs directories : /home/ubuntu/.conda/envs
               platform : linux-64
             user-agent : conda/4.12.0 requests/2.27.1 CPython/3.9.12 Linux/5.4.0-107-generic ubuntu/20.04.4 glibc/2.31
                UID:GID : 1000:1000
             netrc file : None
           offline mode : False

can you try an older version and/or singularityce?


[ci skip] Fix broken link in README

Hey,
Nothing major here. I was just reading through the README for this project and noticed that this link was broken.
Thanks for making this project. Some coworkers and I recently spent a few hours tracking down a memory leak. We cobbled together a script just like this one based on Sam Saffron's post. I was planning to try to formalize it into a gem, but now I'm quite happy to see that you beat me to it.
Thanks so much!

Thanks! Let me know how things go with the heap digging.

Also I recommend this blog post that I wrote https://blog.codeship.com/the-definitive-guide-to-ruby-heap-dumps-part-i/ we should probably link to that in the README

Thanks for sharing! Will definitely give that post a read.
On Sun, Dec 4, 2016 at 19:54 Richard Schneeman<EMAIL_ADDRESS>wrote:

Also I recommend this blog post that I wrote
https://blog.codeship.com/the-definitive-guide-to-ruby-heap-dumps-part-i/
we should probably link to that in the README
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/schneems/heapy/pull/8#issuecomment-264746007, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAY4ImlQBuD3ZiaPoA_sXCcVJj6j1VdHks5rE2C_gaJpZM4LDtZk
.


Quick open entry is highlighted on "hover" even when the cursor has not moved

Position the cursor near the top of the screen where quickopen will appear
Open quickopen
The row under the cursor has the hover highlight color, but it should not be highlighted. It should only be "hovered" if the cursor has moved

In 1.29, the row is not highlighted until I move the cursor.
Tell me if you don't know what I'm talking about and I can attach a gif or something.

@roblourens yeah gif please. the first entry is always selected automatically.

This is just in Insiders so it might be Electron.
See how the row under the cursor is highlighted immediately when quickopen appears. That doesn't happen in 1.30.

Seems normal to me, looks like this in default light theme:

@roblourens I see what you mean, there is definitely a change, probably due to Electron 3. However I think the behaviour now is the correct one, no? The mouse is over an item and that one shows the hover feedback?

If the cursor is invisible, I think I'm not capable of "hovering". I have a hard time calling it "wrong" for the case when the cursor is still visible (first iteration in my gif).
I keep seeing it in the suggest list too. Partly it's annoying just because Monokai's "focus" color is very close to the "hover" color.
When I type and the cursor hides, that's something the browser does and we don't control, right? It's interesting that it doesn't hide the first time I invoke quickopen, but it does hide when I press esc to hide it...
This does seem to be due to the :hover pseudoclass. I guess the only way around would be to watch for mouse movement events which I'm not sure we want to do.
Like one fix could be

Add a mousemove listener to each list
When the list becomes visible, the first time the listener is invoked, add a class hover to the list
Write the css rules like .list.hover item:hover ...

I will unfortunately not have time to work on this, but leaving it open as electron 3 issue.


Validation loss calculation

Hi @yjh0410 @HIT-k544
I would like to know why the validation loss calculation is not done. Is it on purpose or you missed it? As per my understanding for model to learn the validation loss is important.
Thanks
Keerti

@kulkarnikeerti
Sorry, I did not implement the function of calculating validation loss, because in my understanding, AP is the most important and most intuitive evaluation indicator.
I think it should be easy to deploy the functionality to calculate validation loss into this project.

Okay, understood. Thanks @yjh0410


Add token events

What
Resolves https://github.com/stellar/rs-soroban-env/issues/455
Why
[TODO: Why this change is being made. Include any context required to understand the why.]
Known limitations
Need to add some test after https://github.com/stellar/rs-soroban-env/pull/487 is merged.

I see that this doesn't implement the events specified in https://github.com/stellar/rs-soroban-env/issues/455#issuecomment-1252743689. Are you thinking they should be added in a separate PR?

I see that this doesn't implement the events specified in https://github.com/stellar/rs-soroban-env/issues/455#issuecomment-1252743689. Are you thinking they should be added in a separate PR?

I can add them in this one. Wasn't sure if they were needed.

@sisuresh I added all the events mentioned in the issue. Just one question regarding how to handle the Identifier -> Object conversion.

The events look good to me. @jayz22 is going to remove the topic restrictions to allow UDTs in topics, and then remove the conversion added in this PR. Should be good to merge after than.

I've fixed the above issue by removing Map, Vec restrictions to event topic. Also did a minor clean up to split out the event topic validation from conversion, which is the right thing to do which reduces many duplicate logic.
Also created https://github.com/stellar/rs-soroban-env/issues/534 to follow up on the above issue.

@jayz22 Should we remove the TOPIC_BYTES_LENGTH_LIMIT (32 bytes) restriction? It doesn't make much sense without the others since you could just bypass this by using a vector or map.

@jayz22 Should we remove the TOPIC_BYTES_LENGTH_LIMIT (32 bytes) restriction? It doesn't make much sense without the others since you could just bypass this by using a vector or map.

I think keeping it is no harm since we eventually need to add it back. Sure it's possible to work around it by using Vec but this does introduce some impediment for someone trying to DOS with a large binary.


chore: changed test file name for quickstart sample

Thank you for opening a Pull Request! Before submitting your PR, there are a few things you can do to make sure it goes smoothly:

[ ] Make sure to open an issue as a bug/issue before writing your code!  That way we can discuss the change, evaluate designs, and agree on the general idea
[ ] Ensure the tests and linter pass
[ ] Code coverage does not decrease (if any source code was changed)
[ ] Appropriate docs were updated (if necessary)

Fixes #<issue_number_goes_here> 🦕

I think there will need to be more adjustments made to configure kokoro testing in this repository before the Samples tests will pass


Other languages

Do you plan to create the same rettiwt-api library but for Python?

I have thought about creating a similar library for python, but I fear I can't find the time to do it right now (final year of Uni).
It's not impossible though, and I'll be happy if someone is able to share the labour :)

Yeah, I fully understand that. Anyway, it's a great project, I hope you find more collaborators!

@gingerjx This might be something that you are looking for.

Indeed it is what I am looking for, thanks for the help!!


Bootstrap test-proxy service

Relates to #1874 but does not complete it.

@RickWinter @analogrelay I'm still working on the transport but nearly done. I figured enough was here already I should push the bootstrapping portion (minus automatic acquisition, tracked in #1955 so I can get an MVP out by EOW) to alleviate some of the review burden. I'll rebase --onto whatever gets merged here.


Where is the documentation for Overlay,Tabs,Modal,Drawer,Stack,Lightbox ???

I see there is a API doc for Scene, Router & Actions, but what about the other components mentioned above?
I am trying to implement a simple app with a login, a side menu and some menu points to navigate through, but the Example lacks of documentation. I also face the problem that I can swipe back to the login. How can it be so hard to implement simple navigation???
It took me hours to understand what is going on and even now I just understand just a little piece of everything. Here's my attempt for making this approach work:
import { StyleSheet } from 'react-native'
import { connect } from 'react-redux'
import {
  Router,
  Reducer,
  Scene,
  Actions,
  Stack } from 'react-native-router-flux'
import { Constants } from '../common'
import Pages from '../pages'
import SlideMenu  from '../../theme/Drawer/SideMenu'

const getCurrentName = (obj) => {
  const { index, children, name } = obj
  if (typeof index !== 'undefined') {
    if (children) {
      return getCurrentName(children[index])
    }
  }
  return name
}

var currentSceneName = null
export function getCurrentSceneName () {
  return currentSceneName
}

const createReducer = params => {
  const defaultReducer = new Reducer(params)

  return (state, action) => {
    let next = defaultReducer(state, action)
    currentSceneName = getCurrentName(next)
    return next
  }
}

const getSceneStyle = () => ({
  backgroundColor: Constants.APP_COLOR,
  shadowOpacity: 1,
  shadowRadius: 3
})

const RouterWithRedux = connect()(Router)

export class AppRouter extends React.Component {
  backAndroidHandler () {
    // don't do anything here, we handle navigation through the BaseScreen base class
    return false
  }

  render () {
    return (
      <RouterWithRedux createReducer={createReducer} getSceneStyle={getSceneStyle}>
        <Scene key='root'>
          <Stack key='tutorial'>
            <Scene key='tour' component={Pages.Tour} hideNavBar />
          </Stack>
          <Stack key='tutorial'>
            <Scene key='landingScreen' component={Pages.LandingScreen} hideNavBar />
          </Stack>
          <Scene key='drawer' drawer contentComponent={SlideMenu} hideNavBar>
            <Stack key='main' hideNavBar gestureEnabled={false} initial>
              <Scene key='toAmount'
                     component={Pages.Amount}
                     onLeft={() => this.openSideMenu()}
                     leftButtonImage={require('../images/ic_menu.png')}
                     initial
              />
              <Scene key='toSubject'
                     title='Test title'
                     component={Pages.Subject}
              />
              <Scene key='toFinishTest' component={Pages.FinishTest} hideNavBar />
            </Stack>
            <Stack key='tests'>
              <Scene key='myTests' component={Pages.MyTests} />
            </Stack>
            <Scene key='webViewWithNavBar' component={Pages.WebViewWithNavBar} />
          </Scene>
        </Scene>
      </RouterWithRedux>
    )
  }

  openSideMenu () {

  }

  popNavigation () {
    Actions.pop()
  }
}

const styles = StyleSheet.create({
  navigationBarStyle: {
    backgroundColor: Constants.APP_COLOR
  },
  titleStyle: {
    color: 'white',
    fontFamily: 'SourceSansPro-Regular',
    fontSize: 20
  }

})

Is there any code about the router containing a login screen, a side menu and some navigation stacks that someone could share with me?
I am used to iOS development and RN navigation seems to be such a pain 😡. It would be great if someone could help me out 👍 😃

Check Example project. <Overlay> and others are syntax 'sugar' for <Scene overlay/tags etc...>, you could use any tags instead of Scene - it is just placeholder. Docs could be missed, PRs are welcome - it is open source, check sources and improve the software.

@mkayswork haha i understand your pain. @aksonov Once i get free from my production app i can help you with documentation.

I have a PR for documentation for these components here


Failed Authenticated Client on Sandbox URL

I tried creating an authenticated client like so:
var authedClient = new CoinbaseExchange.AuthenticatedClient(Env.ACCESS_KEY, Env.SECRET_KEY, Env.PASSPHRASE_KEY, Env.REST_URL);
Where Env.REST_URL is the url to the sandbox API:
https://api-public.sandbox.exchange.coinbase.com
When I try to get the accounts it fails with the timestamp error:
authedClient.getAccounts(function(error, response, data){
...
});
{"statusCode":400,"body":"{"message":"request timestamp expired...
Do any other options need to be set to use this with the sandbox?

Just the URL should have to change. Make sure that your computer's time is close to https://api-public.sandbox.exchange.coinbase.com/time.

Seems that the sandbox machines may have been launched without time syncing enabled. I will double check this to make sure the sandboxes are running on proper time. This is likely the cause of the above error you see.

Yeah, looks like the issue is fixed now... thanks!


Test suite returns errors about missing files

After installing I attempted to develop/ run the test suite using the instructions in the main readme.
I tried to run the suite from ClimaAtmos.jl with
julia --project=test test/runtests.jl
I received 2 errors
Test unique aliases: Error During Test at /projects/tepr6090/software/ClimaAtmos.jl/test/parameter_tests.jl:28   Got exception outside of a @test   "parameter_tests.toml": No such file
and
Test all parameter tomls in toml/: Error During Test at /projects/tepr6090/software/ClimaAtmos.jl/test/parameter_tests.jl:37   Got exception outside of a @test   IOError: readdir("../toml"): no such file or directory (ENOENT)
The files/directory appears to be there when I look myself.

@nefrathenrici, can you please fix this? I've generally followed the slow but bullet-proof pattern for file inclusion of:
import ClimaAtmos as CA
include(joinpath(pkgdir(CA), "path_to_file", "file.jl"))

This:

Does not matter what pwd is (i.e., does not matter where Jjulia is launched from
Does not rely on what directory a file is in (e.g., using @__DIR__/@__FILE__), so it can easily be copy-pasted into the REPL

The main downside is that: ClimaAtmos has to be precompiled before the file can be included, which is a bit painful.


consider, for configmap, binaryData direct support

It may be a bit of an issue for both the displaying of the current value (in web ui for instance) and the inability to put said data in a flag on the commandline (unless command line would use base64 for instance)

[x] test that a confimap binaryData really ends up as binary once mounted
[x] add binary type with base64 for cli and no base64 for cmap (well... optionally... people might still prefer not having binary)

verified cmap binaryData is indeed converted to binary
apiVersion: v1
kind: ConfigMap
metadata:
  name: cmap
data:
  normalKey: "normal value"
binaryData:
  # $ echo -e -n '\00\01\02\03Binary\nData!' | base64
  binaryKey: "AAECA0JpbmFyeQpEYXRhIQ=="
---
apiVersion: v1
kind: Pod
metadata:
  name: debug-pod
spec:
  containers:
  - name: debug-container
    image: busybox
    command: ["sh", "-c", "sleep 3600"]
    volumeMounts:
    - name: config-volume
      mountPath: /tmp/cmap
  volumes:
  - name: config-volume
    configMap:
      name: cmap
# kubectl exec -ti debug-pod -- sh
# cd /tmp/cmap and confirm binaryKey is indeed there in binary (starts with<EMAIL_ADDRESS>

implemented in 1.17.0


cannot copy to non-directory DOCKER MACOS

What version of Turborepo are you using?
1.4.7
What package manager are you using / does the bug impact?
pnpm
What operating system are you using?
Mac
Describe the Bug
On Mac, I tested on windows and this run perfectly, with this repo: https://github.com/yovanoc/turbo-test
if we run pnpm build:docker this give:

Expected Behavior
Should work on Mac too
To Reproduce
Just clone the repo and build with docker

@nathanhammond really sorry just push it again was just some tests :/

@yovanoc Looking now.

Wondering if it’s related to symlinks; what if you add node_modules to the .dockerignore file to avoid its including it as part of the build context?

Adding node_modules to .dockerignore doesn't solve this issue but yeah I think about symlinks related problem too

Yeah, not sure, if it also needs to include the Pnpm store directory or nested node_modules. You can also try if it works without Buildkit (DOCKER_BUILDKIT=0)

Yeah I also tested that the other time, and I don't know for others but me I have that:

I am having this issue as well. Also on a Mac (M1). Was not yet able to test on a Windows machine but will do.
This is my (very similar) Dockerfile:
FROM node:alpine AS base
RUN apk update

# Globally install `turbo`
RUN yarn global add turbo

# Prune the workspace for the `tester` app
FROM base as pruner
WORKDIR /app
COPY . .
RUN turbo prune --scope=@wecoma-lite-tester/tester --docker

FROM base AS builder
WORKDIR /app
COPY .gitignore .gitignore
COPY --from=pruner /app/out/json/ .
COPY --from=pruner /app/out/pnpm-lock.yaml ./pnpm-lock.yaml
COPY --from=pruner /app/out/pnpm-workspace.yaml ./pnpm-workspace.yaml
COPY .npmrc .

# Install the deps needed to build the target
RUN corepack enable
RUN pnpm install

# Copy source code of pruned subworkspace and build
COPY --from=pruner /app/out/full/ .
COPY turbo.json turbo.json
RUN pnpm turbo run build<EMAIL_ADDRESS>
And the error I get:

I already tested all mentioned fix ideas but nothing worked for me.

erroring out on same step as well:

im on linux.

I got the same issue:
turbo: 1.5.5
docker desktop: v4.12.0

Same here on Windows 11 > WSL2 (Ubuntu 22.10)

Try add **/node_modules to .dockerignore

I had this issue too with just node_modules, but **/node_modules will ignore all node_modules.

Had the same issue. It was fixed by adding **/node_modules to .dockerignore, like @John-Hejzlar said.

The solution of copy 'out' dir during build for M1 users:
Add to docker environment:
DOCKER_DEFAULT_PLATFORM=linux/amd64

Try add **/node_modules to .dockerignore

Works great. Just watch out, in my case Prettier was changing ** to \*\* and I was not sure if it would be a thing... it is ;) (use .prettierignore and list **/.dockerignore)

Just reproduced this on the with-docker example when using pnpm. It works great when using yarn. Adding the details if it helps to debug.
What version of Turborepo are you using?
1.6.3
What package manager are you using / does the bug impact?
pnpm
What operating system are you using?
Mac M1
To Reproduce
npx degit vercel/turbo/examples/with-docker with-docker\ncd with-docker
Update Dockerfile to use pnpm instead of yarn:
# This Dockerfile is copy-pasted into our main docs at /docs/handbook/deploying-with-docker.
# Make sure you update both files!

FROM node:alpine AS builder
# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed.
RUN apk add --no-cache libc6-compat
RUN apk update
# Set working directory
WORKDIR /app
RUN yarn global add turbo pnpm
COPY . .
RUN turbo prune --scope=web --docker

# Add lockfile and package.json's of isolated subworkspace
FROM node:alpine AS installer
RUN apk add --no-cache libc6-compat
RUN apk update
WORKDIR /app

# First install the dependencies (as they change less often)
RUN yarn global add pnpm
COPY .gitignore .gitignore
COPY --from=builder /app/out/json/ .
COPY --from=builder /app/out/pnpm-lock.yaml ./pnpm-lock.yaml
RUN pnpm install

# Build the project
COPY --from=builder /app/out/full/ .
COPY turbo.json turbo.json
RUN pnpm turbo run build --filter=web...

FROM node:alpine AS runner
WORKDIR /app

# Don't run production as root
RUN addgroup --system --gid 1001 nodejs
RUN adduser --system --uid 1001 nextjs
USER nextjs

COPY --from=installer /app/apps/web/next.config.js .
COPY --from=installer /app/apps/web/package.json .

# Automatically leverage output traces to reduce image size
# https://nextjs.org/docs/advanced-features/output-file-tracing
COPY --from=installer --chown=nextjs:nodejs /app/apps/web/.next/standalone ./
COPY --from=installer --chown=nextjs:nodejs /app/apps/web/.next/static ./apps/web/.next/static

CMD node apps/web/server.js

Build image
rm yarn.lock
pnpm install
docker build  -f apps/web/Dockerfile .

same problem linux

I had this issue too with just node_modules, but **/node_modules will ignore all node_modules.

same issue on M1 and this work

encountered the same with WSL2 Ubuntu. **/node_modules fixed it for me

solved by update node_modules to **/node_modules in .dockerignore 😄
but, go the next lined up error: failed to compute cache key: "/app/apps/web/.next/standalone" not found: not found

Try add **/node_modules to .dockerignore

Lifesaver!

@xencodes I ran into the same thing, I think the example build assumes you're using standalone output https://nextjs.org/docs/advanced-features/output-file-tracing#automatically-copying-traced-files

Yeah, not sure, if it also needs to include the Pnpm store directory or nested node_modules. You can also try if it works without Buildkit (DOCKER_BUILDKIT=0)

It works with DOCKER_BUILDKIT=0, but slow

https://github.com/vercel/turbo/discussions/3346#discussioncomment-5703415
Yeah it's the symlinks

Looks like we have some answers above that solve these Docker configuration issues. Will close!


Feature: add NatsMessage ack_sync method #1906

Description
Added the ack_sync method to NatsMessage to support synchronous acknowledgment functionality.
Fixes #1906
Type of Change
New feature (a non-breaking change that adds functionality)
Checklist
My code adheres to the style guidelines of this project (scripts/lint.sh shows no errors)
I have conducted a self-review of my own code
I have ensured that static analysis tests are passing by running scripts/static-analysis.sh

@wpn10 thank you a lot! Great job, you will see your changes in a next release 😄


Digital Bookshelf V2

Since I was annoyed at not being able to use jekyll-archives to create an archive for the books, I decided to implement myself the jekyll-archives-v2 that doesn't have this limitation.
Closes #923.

@subhodeeps can you help me here? It's just missing the fix on the layout of the page when on mobile.


update README instructions

The PR updates examples/utils to use function with caikit version. Adds instructions to README for development

@gkumbhat I think most of the information is captured some way in the contributing file that you linked. I had missed looking at that. so we can close this PR I think and if needed we can link CONTRIBUTING.md from README .


Should ComposablePerforming plan emitter support named plans?

Moved to https://github.com/material-motion/material-motion-starmap/issues/65


nixos/emacs: set VISUAL along with EDITOR

Motivation for this change
Fix #34467
Things done

[x] Tested module in NixOS VM
[x] Fits CONTRIBUTING.md.

cc @DamienCassou @rvl

Hi @rnhmjoj . Thanks, but this is unlikely to fix #34467 because it's using the same method to set VISUAL as is used to set EDITOR. And the reporter notes that his EDITOR variable is not set.

Yeah I know, this addresses the VISUAL not being set at all part.
I don't think the emacs module has anything to do with the environment not being properly set.

Thanks for trying, but I don't support this change. One environment variable is sufficient. The bug reporter has fixed his zsh config now.


API Keys - Determinist API Keys + Security changes

🤖  API Diff
📄 Rendered

Summary
This update to the Keys API makes several changes:

It is possible to create a deterministic key value by specifying a uid field at creation.
Adds a name field to give a human-readable name to ease API key retrieval in a list at the convenience of the user.
The master key is only dedicated to API keys management, it can't be used for other endpoints. Making Meilisearch more secure by design and thus preventing users from introducing a security vulnerability.
Updating a key only allows the name and description fields.
Introduce new actions to manage API Keys (keys.get, keys.create, keys.update, keys.delete).
apiKeyPrefix tenant token claim is renamed apiKeyUid.

Changes
uid Field Addition
The generation of a randomized prefix of 8 characters is removed by the existence of the uid field. This field accepts a string representing a UUID v4.
It is possible to specify this uid field when creating a key, if not specified it is generated by Meilisearch.
As the value of key is a hash of the uid and the master key, it is possible to have deterministic key values between instances sharing the same configuration thus keeping some interesting security features as:

If the master key changes, all key values are automatically changed.
The API key resources are propagated into the dumps and snapshot without displaying the key field in clear.

A key is retrieved from its uid rather than its key value. e.g. GET /keys/:uid_or_key instead of GET /keys/:key.
Specifying a uid that already exists returns a 409 Conflict.
name Field Addition
A name field is added to allow a human-readable name to better read the information within a list of keys. The description field is kept to add additional information if needed.
For example, the description field is useful to give important information about the keys generated by default that would not necessarily have its place in the name. This makes it easier to parse in a dashboard when building a UI or in the GET /keys response.
The default generated API keys are updated to reflect this change.
{
    ...,
    "name": "Default Admin API Key",
    "description": "Use it for all other than search operations. Caution! Do not expose it on a public frontend",
    ...
}

Note that the description is updated. ( / ) are removed.

Master key
The master key can only be used to manage API keys.
Several times, it has been found that users use the master key to make client-side requests, which is problematic for their security. In order to ensure that they do not inadvertently put themselves in danger, the master key can no longer access routes other than /keys.
keys.* actions
The specification adds new rights dedicated to the management of API keys.
These actions are keys.get, keys.create, keys.update, keys.delete.
The default Admin key also has these rights. actions is equal to * at its creation.
The goal is to give the possibility to users to create dedicated keys for that purpose and to reduce the use of the master key for this endpoint.
API Key Update
It is no longer possible to update the sensitive information of an API key which could introduce security problems as side effects.
However, it is possible to update the name and description fields.
Out Of Scope
Adding a unique human-readable field as an alias to retrieve an API Key other than its uid is not considered in this iteration. It should be easy to add it later without breaking changes.

📡 Attention To Reviewers 📡
@meilisearch/cloud-team We basically need your attention on all these changes.
The big question mark could be the update of the permissions of an API key on your side, which users could request. This could be done within a transaction on your side to allow the update if it is a vital need.
The workaround would be to delete the key that needs to be updated and recreate one with the new permissions by giving it the uid of the previous one. This way, the key value used by clients to authorize requests is unchanged.
The regeneration of a key would be done in the same way by creating a key copying the permissions but giving it a new uid.
Also, do you have any particular constraints concerning the master key, which is now restricted to endpoint /keys access only?
@nicolasvienot The addition of the name field should allow you to have more fluidity in the construction of the UI and thus avoid having to parse the description field to display the default keys properly.

Misc

[x] Update OpenAPI specification file
[x] Reorganize the specification

@meilisearch/integration-team There remains a design question regarding the JWT payload for tenant token.
Currently, the JWT requires an apiKeyPrefix. It should be renamed since the prefix won't exist anymore. Here is 2 possibility:

apiKey: Fill in the signing API key's full key field.
apiKeyUid: Fill in the uid for the signing API key.

What will be the best choice according to you?

@ManyTheFish will explore two additional if the time permits it. Otherwise it will be considered in the future.
GET an API Key helper
See if it's possible to have GET /keys/:uid_or_key to transparently get the details of an API Key given the field given (uid or key). If added in the future, it's not a breaking change.
Add keys management rights
Since the master-key will only be used to manage /keys. We will explore if we can easily add new rights to manage keys. This way, the master-key will be less shared and specific keys could be create to manage the keys.

📡
@meilisearch/cloud-team The change about the master key has been discarded. See https://github.com/meilisearch/product/discussions/443#discussioncomment-2862683
@meilisearch/core-team @meilisearch/docs-team @meilisearch/integration-team

The specification is up-to-date to mention the last successful exploration point made last week.

New actions are introduced to the management of the API Keys resource. keys.get, keys.create, keys.update, keys.delete.
GET - /keys/:key is now /keys/:uid_or_key. An API Key can now be fetched by its uid or its key field value.
The tenant token claim apiKeyPrefix is renamed apiKeyUid and must be given the signing API Key uid field value.


Change code structure

The current state of forklift is not so developer-friendly since the code is scattered across various repos in the konveyor organization so developers might need to make code changes in various repos for a single feature, and to get code from several places to set up an environment for automated end-to-end tests (CI).
Currently, this PR proposes two changes:
(1) To vendor the dependencies of the controller
(2) To use bazel for building the controller binary
The idea though is broader - to have a single repo that includes all (or most of) the components of forklift, much like kubevirt/kubevirt.
That way we can, for example, introduce forklift-api pod if we want to more easily (no need to create a separate repo)
The code within the repo can be owned by different people using OWNERS files for each component/package

@ahadas Please be careful here, new build systems are designed to track and build changes per component in individual SCM repos, micro services projects around k8s tend to be setup this way as it is extremely flexible (among various other reasons). Going for a monolithic approach will limit your options in this sense and perhaps force you to use/develop your own tooling. In other words, it makes sense to weight the developer friendliness weight of the decision vs the cost. My 2 cents.

@ahadas Please be careful here, new build systems are designed to track and build changes per component in individual SCM repos, micro services projects around k8s tend to be setup this way as it is extremely flexible (among various other reasons). Going for a monolithic approach will limit your options in this sense and could potentially force you to use/develop your own tooling (this is seen in some very large scale projects). In other words, it makes sense to measure the developer friendliness weight of the decision vs the true cost. My 2 cents.

oh sorry @fbladilo , I missed your comment for some reason (I didn't expect someone to review this draft PR yet :) )
ack, yeah - the main motivation for this is twofold:

to be able to post patches that cover both validations and logic within the controller in a single PR
more importantly, to be able to clone a single repo and deploy all relevant things from it for end-to-end tests

you're right that it needs to take productization aspect into account (looking forward to your session on that ;) ), I believe there should be good tooling for that because kubevirt/kubevirt is structured in a similar way, but yeah - productization would definitely need to be considered before getting this in


New semester functionality

Here is the new pull request

Please make sure the resolved conflicts are corrected and work.


⚠ Bofrost.fr has degraded performance

In 7b5ea1c, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1135 ms

Resolved: Bofrost.fr performance has improved in b61ee39 after 19 minutes.


drivers: soc_flash_mcux check before reading

LPC55xxx SoCs don't allow reading erased areas, the flash memory
controller (FMC) will trigger an ECC error for that area. To prevent
reading unwritten areas the low level FMC command of margin checking is
used, this will fail if the area to be read is not correctly written.
Signed-off-by: Andrei Gansari<EMAIL_ADDRESS>Fixes #24429

I see both advantages and disadvantages of doing it this way.

advantage: The read is verified using device parameters to better determine if it was written fully. This improves handling of situations where an untimely powerdown caused written data to be read back correctly at some temperatures, and fail in different conditions.
disadvantage: This probably makes reading a lot slower.

There is also a controller-based read command, but we were only able to get that to work with ECC off, which kind of defeats the purpose of having the ECC.
I'll give this code a test a little later today.

Also, I suspect that read margin check can fail when the data would otherwise be readable. I think ideal would be a read command that reads, with the ecc check, and fails if the ecc fails. Basically what regular read does, but without the bus fault. I'm not sure if the controller actually supports this.

I'd say the only thing is that we should document somewhere the new error codes we are returning. The API is just documented as returning a negative error, but it might be nice to document this behavior, for when the next device comes up that does ecc checks on read.

In addition, this doesn't make MCUboot work with this device. It is likely possible to make it work, but I need to track down all of the places in mcuboot that assume a read error is a failure.

I'm now wondering if it might be better behavior in this driver, to detect the all-erased state, and fill the user's buffer with all 0xFF, and return success. This would at least make this device behave the same as every other flash device.

I'd say the only thing is that we should document somewhere the new error codes we are returning. The API is just documented as returning a negative error, but it might be nice to document this behavior, for when the next device comes up that does ecc checks on read.

I've added another commit that adds these explanations in flash api, not sure that's okay.

I'm now wondering if it might be better behavior in this driver, to detect the all-erased state, and fill the user's buffer with all 0xFF, and return success. This would at least make this device behave the same as every other flash device.

This can be done, but I'm not sure it's a good ideea, would take some time to do the check and flash at boot time, and having such a feature the cleared memory would get lost whenever there's a full erase.
This sounds more like a workaround, checking before reading is prevention.

I'm now wondering if it might be better behavior in this driver, to detect the all-erased state, and fill the user's buffer with all 0xFF, and return success. This would at least make this device behave the same as every other flash device.

Another workaround would be to fill the data pointer with 0xFF in the read function when the area is empty.

This can be done, but I'm not sure it's a good ideea, would take some time to do the check and flash at boot time, and having such a feature the cleared memory would get lost whenever there's a full erase. This sounds more like a workaround, checking before reading is prevention.

The thing is, this driver now has behavior that is completely different from every other flash device supported on Zephyr. I suspect it isn't just MCUboot that isn't going to easily work with this. In order to be able to use this in MCUboot, I would need to make a wrapper around the flash operations. There is already an API in mcuboot that distinguishes between erased an other data (part of the flash_area api borrowed from MyNewt). Perhaps something like this could be done there as well, which would make this a little more useful.
Ideally, we would be able to distinguish, but I think we're just too divergent from what applications using the flashes in MCUs are typically expecting, including as far as I can tell, every other device built with ECC.

@d3zd3z i've made another change to return 0xFF when reading an erased area in order to make it behave like most flash devices.
I prefer this alternative to writing 0xFF when board is initialized and then hide an erase and write actual data.
Would this change make it integrate with MCUboot better?

I prefer this alternative to writing 0xFF when board is initialized and then hide an erase and write actual data.

In general, it is best to try to make the driver match as closely to how the device works. I realize we're not quite doing that by faking out reads. But hiding erases seems even more distant from the device's behavior. Also, we don't necessarily know that this driver is the only thing operating on the flash. For example, in a factory, the initial programming may be done over SWD, and that system probably wouldn't write 0xFF.
I'll try to get around to testing this with MCUboot soon.

I've done a little bit of testing, and at least the scanning part seems to work. It still won't actually execute the images, which I still need to investigate.


Add option to use pointers instead of sql.Null* types

This adds support to use pointers instead of sql.Null* types. I'd like to get general comments before having a go at adding a few tests.

There's already a way to configure the use of different types than the standard ones for fields, right? Could we expand that to support pointers vs. adding a dedicated config option just for pointers?

Hi! What is the status of this issue?
Is there any way to generate pointers instead of sql.Null* types yet?

Different version of this was implemented it's a bit annoying as you have to change the config and add the types you want to have pointers to...
This is my PostgreSQL list for now.
overrides:
  - db_type: "pg_catalog.timestamp"
    go_type:
      import: "time"
      type: "Time"
      pointer: true
    nullable: true
  - db_type: "pg_catalog.timestamptz"
    go_type:
      import: "time"
      type: "Time"
      pointer: true
    nullable: true
  - db_type: "text"
    go_type:
      type: "string"
      pointer: true
    nullable: true
  - db_type: "ltree"
    go_type:
      type: "string"
      pointer: true
    nullable: true
  - db_type: "jsonb"
    go_type:
      import: "encoding/json"
      type: "RawMessage"
      pointer: true
    nullable: true
  - db_type: "pg_catalog.int2"
    go_type:
      type: "int16"
      pointer: true
    nullable: true
  - db_type: "pg_catalog.int4"
    go_type:
      type: "int"
      pointer: true
    nullable: true
  - db_type: "pg_catalog.int8"
    go_type:
      type: "int64"
      pointer: true
    nullable: true
  - db_type: "pg_catalog.bool"
    go_type:
      type: "bool"
      pointer: true
    nullable: true
  - db_type: "pg_catalog.float4"
    go_type:
      type: "float32"
      pointer: true
    nullable: true
  - db_type: "pg_catalog.float8"
    go_type:
      type: "float64"
      pointer: true
    nullable: true


[SRP] 2022-05-01 Swagger Api

ARM API Information (Control Plane)
MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Azure 1st Party Service can try out the Shift Left experience to initiate API design review from ADO code repo.  If you are interested, may request engineering support by filling in with the form https://aka.ms/ShiftLeftSupportForm.
Changelog
Add a changelog entry for this PR by answering the following questions:

What's the purpose of the update?

[ ] new service onboarding
[x] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month.
"directoryServiceOptions": "AADKERB" is already deployed (see public preview instructions)

When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month.
ASAP.

By default, Azure SDKs of all languages (.NET/Python/Java/JavaScript for both management-plane SDK and data-plane SDK, Go for management-plane SDK only ) MUST be refreshed with/after swagger of new version is published. If you prefer NOT to refresh any specific SDK language upon swagger updates in the current PR, please leave details with justification here.

Contribution checklist (MS Employees Only):

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

Applicability: :warning:
If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

Change to data plane APIs
Adding new properties
All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

[x] Check this box if any of the following apply to the PR so that the label "ARMReview" and "WaitForARMFeedback" will be added by bot to kick off ARM API Review.  Missing to check this box in the following scenario may result in delays to the ARM manifest review and deployment.

Adding a new service
Adding new API(s)
Adding a new API version
-[ ] To review changes efficiently, ensure you copy the existing version into the new directory structure for first commit and then push new changes, including version updates, in separate commits. You can use OpenAPIHub to initialize the PR for adding a new version. For more details refer to the wiki.

[x] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If you have any breaking changes as defined in the Breaking Change Policy, request approval from the Breaking Change Review Board.
Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Additional details on the process and office hours are on the Breaking Change Wiki.
NOTE: To update API(s) in public preview for over 1 year (refer to Retirement of Previews)
Please follow the link to find more details on PR review process.

Thanks @jianyexi, I've reviewed and checked the box.
Do you perhaps know what I can do to make the checks run? They've been queued for 20 hours, and haven't run yet on my latest commit.

Thanks @ArcturusZhang. Fixed the XmsEnumValidation lint errors.
@HimanshuChhabra I marked them all with "modelAsString": true. That seems to be the more common thing to do, and it gives us flexibility to add values to the enum later on, without having to make a breaking change. But let me know if you would prefer some of them to be "modelAsString": false.
@ArcturusZhang I see there are other failures, notably:
cmderr	[generator automation-v2] [ERROR] fatal   | Error: Enum types of "array" and format "undefined" are not supported. Correct your input (AllowedMethods).

Is this also something that needs to be fixed? If so, do you know what might be causing this error?

It looks server still not ready for the new API version.
We should not merge the PR before the new api version is generally avaialbe in all regions.
I have tested stage, canary, westus, and all failed with error like following:
DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.azure.com/subscriptions/***/resourceGroups/***/providers/Microsoft.Storage/storageAccounts/***?api-version=2022-05-01

Headers:
x-ms-client-request-id        : 1af59fad-7da0-4724-ad7c-9cfff8831360
accept-language               : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
BadRequest

Headers:
Pragma                        : no-cache
x-ms-failure-cause            : gateway
x-ms-request-id               : da8afbeb-6961-4c5c-9021-e4c406bf690a
x-ms-correlation-request-id   : da8afbeb-6961-4c5c-9021-e4c406bf690a
x-ms-routing-request-id       : SOUTHEASTASIA:20220613T133946Z:da8afbeb-6961-4c5c-9021-e4c406bf690a
Strict-Transport-Security     : max-age=31536000; includeSubDomains
X-Content-Type-Options        : nosniff
Cache-Control                 : no-cache
Date                          : Mon, 13 Jun 2022 13:39:46 GMT

Body:
{
  "error": {
    "code": "NoRegisteredProviderFound",
    "message": "No registered resource provider found for location 'eastus2stage' and API version '2022-05-01' for type 'storageAccounts'. The supported api-versions are '2021-09-01, 2021-08-01, 2021-06-01, 2021-05-01, 2021-04-01, 2021-02-01, 202
1-01-01, 2020-08-01-preview, 2019-06-01, 2019-04-01, 2018-11-01, 2018-07-01, 2018-03-01-preview, 2018-02-01, 2017-10-01, 2017-06-01, 2016-12-01, 2016-05-01, 2016-01-01, 2015-06-15, 2015-05-01-preview'. The supported locations are 'eastus, eastus2
, westus, westeurope, eastasia, southeastasia, japaneast, japanwest, northcentralus, southcentralus, centralus, northeurope, brazilsouth, australiaeast, australiasoutheast, southindia, centralindia, westindia, canadaeast, canadacentral, westus2,
westcentralus, uksouth, ukwest, koreacentral, koreasouth, francecentral, australiacentral, southafricanorth, uaenorth, switzerlandnorth, germanywestcentral, norwayeast, westus3, jioindiawest, swedencentral, eastus2stage, eastus2euap, centraluseua
p'."
  }
}

@ArcturusZhang  @qiaozha  could you help evaluate if we need involve breaking change review board to review , as there are SDK breaking change?

I do see that the tooling is reporting breaking changes, but that is not the intention. The changes in this version are intended to be:

Adding an enum value to directoryServiceOptions
Making some fields of activeDirectoryProperties optional
Making the keySource field optional

I'll look into what the build is highlighting as a breaking change

I see the breaking changes are reported in previous versions, e.g. 2021-04-01 or 2019-06-01. Other build failures also seem to be related to breaking changes that have been made in past versions.
Did I perhaps misconfigure the build in a way that causes the CI to check for breaking changes in the full history of the module, instead of just in the most recent version? Or is this the expected behavior of the CI?
This PR is only about making a few non-breaking changes compared to the previous version, so I was expecting it to clear the CI

@msyyc @ArcturusZhang  @qiaozha could you confirm the SDK breaking change ?

@MaximeKjaer  @jianyexi  we are working on upgrading autorest.python version to fix the ci failure. It may take some time so please ignore the python failure for this PR.

@ArcturusZhang I addressed your change request for the missing x-ms-enum, but I believe we need you to approve that it's been addressed appropriately before we can merge.


Fix URLs for openlayers.org resources

Currently the copy/paste and JSFiddle urls for ol.js and ol.css on http://openlayers/org/en/v3.8.0/examples/ are broken. This pull request fixes them.

When merged, we should create a 3.8.2 release to fix this.

Good catch, looks good to me. Please merge, Andreas.

@tschaub Do you have time to create a v3.8.2 release, or should I?

Bummer.  Thanks for catching this @ahocevar.  I'll cut 3.8.2 now.


added beach and sandkey but i have concerns

the maps dont align well and the beach data set has small tears in it. please let me know about what to do

If you processed it with the defaults, then the answer on what to do is: nothing! This is a benchmark, so if there are issues with the software they should be fixed first, then new benchmarks should be run for the newer version that has improved results.

thanks a lot, it was all processed according to your instructions


Get cache entry failed error

We have started to get this error:

I am not sure what the source of it, but perhaps you can help us to troubleshoot.

This error surfaced here as well - https://github.com/actions/cache/issues/444

Fixed!


add dirtyPayload() and hide others

This PR is for supporting https://github.com/wechaty/wechaty-puppet-hostie/issues/43
And we have another discussion related to this PR at https://github.com/Chatie/grpc/pull/79

@windmemory Please help me to review this PR and let me know what you think.
Thank you very much!

Thank you very much!

Link to https://github.com/wechaty/wechaty-puppet-hostie/issues/43


Verbs access entities way too freely

It would be nice to implement some data encapsulation. This way, when we make a change in an entity, we won't have to make changes all over the project.

These are the general guidelines for access and modification of entities:

You may freely access any public property of an entity.
To modify an entity, it is advised to do it trough the corresponding method of that entity. Doing so will implicitly save the entity change to database.
If you know what you are doing, you can directly modify an entity property. Keep in mind that changes won't be saved to database until you use the .save() method of the entity.


Navigator.NavigationBar does not call the ref callback

As mentioned here, it's not possible to get a reference to the NavigationBar, as the callback is never called.
I adapted the NavBar Example in the UIExplorer here. I added a ref callback to the Navigator and the NavigationBar. The one for the Navigator is called, the one for the NavigationBar isn't.
I'm trying to hide and show the navigation bar on demand, but that is impossible without a ref to it.

If you change https://github.com/facebook/react-native/blob/master/Libraries/CustomComponents/Navigator/Navigator.js#L1075 to use something like https://github.com/ide/react-native-clone-referenced-element it will honor the ref you pass in.

Already made a PR. Hope the way I did it is also ok.

@facebook-github-bot answered


PowerShell does not pick up that proxy has been started or stopped

When using Dev Proxy with PowerShell the current session does not pick up that proxy has been started or stopped.

Open PowerShell session (1) and issue a request to API, it will succeed
Open a new PowerShell session (2) and start Dev Proxy, then send another request, Dev Proxy will intercept the request
Stop Dev Proxy, switch to PowerShell session (1) and issue another request to API, it will fail although proxy is not running
Close PowerShell session (1), and create a new PowerShell session, issue a request to API, it will succeed

To use Dev Proxy you must start a new PowerShell session after starting it and a new PowerShell session after it's been stopped.

To add to this, it occurs only in PowerShell on Windows. PowerShell on macOS handles changed proxy settings just fine.


Fix styling

This PR contains css written by @oluwatobim

todo:

[ ] rename css classes to ensure they adhere to BEM.

todo:
* [ ]  rename css classes to ensure they adhere to **BEM**; more on this is detailed here point_right #139

@cKellyDesign, This may not be achieved in this PR, but there's an issue for it.


[iOS] ImageColorsModule.swift: fix build with RN 0.73

Fixes https://github.com/osamaqarem/react-native-image-colors/issues/81

hey, thanks again! I left similar feedback on the Android PR #83

https://github.com/expo/expo/commit/cf9f89b639d3e9dc1ab335458a246c7b4ddceb56

Likely will need to also bump our dependencies to match those: https://github.com/expo/expo/blob/71bd9ff6daee08bd5551c31860cd2c801fee69da/packages/expo-module-template/%24package.json#L34-L35

Lemme know if it seems too much work - I can also take care of this 🙂

Closing in favor of https://github.com/osamaqarem/react-native-image-colors/pull/85


datePicker Type

Hi!
DatePicker is nicely integrated into AppGini. More info on the software: http://www.bigprof.com/appgini
I'm not a programmer so heres a question. How can I change the type of date picker?
The type is currently set to be like in the Demo #4. I would like to change it to be like in Demo #1.
I asked about this in the AppGini Forum and got pointed to this site.
Can anyone help a noob? :)
Thank you

BUMP Anyone?


Types with const generics produce invalid IDL

Problem
The result IDL file will contain duplicate type and hence fail compilation of a project.
Steps

cargo sails new-program test-generic
add the following type wrapping fixed size byte array:

#[derive(Clone, Debug, Decode, Encode, TypeInfo)]
#[codec(crate = sails_rs::scale_codec)]
#[scale_info(crate = sails_rs::scale_info)]
pub struct BytesFixed<const N: usize>(pub [u8; N]);

add the following methods to the service:

    pub fn generic_10(&self, _bytes: BytesFixed<10>) -> String {
        "Test BytesFixed<10>".into()
    }

    pub fn generic_20(&self, _bytes: BytesFixed<20>) -> String {
        "Test BytesFixed<20>".into()
    }

cargo test

Possible Solution
There is no issue with usual generics so adjust the generator to take const generics into account.
Notes
No response
Relevant Log Output
cargo test outputsummary>

$ cargo test
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on package cache
    Blocking waiting for file lock on build directory
   Compiling frame-system v22.0.0
   Compiling test-generic-app v0.1.0 (/home/user/devel/gear-tech/sails/test-generic/app)
   Compiling test-generic-client v0.1.0 (/home/user/devel/gear-tech/sails/test-generic/client)
   Compiling test-generic v0.1.0 (/home/user/devel/gear-tech/sails/test-generic)
   Compiling gear-common v1.5.0
error: failed to run custom build command for `test-generic-client v0.1.0 (/home/user/devel/gear-tech/sails/test-generic/client)`

Caused by:
  process didn't exit successfully: `/home/user/devel/gear-tech/sails/test-generic/target/debug/build/test-generic-client-49d1fa67ee5c4eb6/build-script-build` (exit status: 101)
  --- stderr
  thread 'main' panicked at client/build.rs:15:10:
  called `Result::unwrap()` on an `Err` value: failed to generate client

  Caused by:
      0: failed to generate client
      1: Failed to parse IDL
      2: duplicate type `TestGenericAppBytesFixed`
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...

I reckon the type name in IDL should be like BytesFixedFor10, BytesFixedFor20, i.e. we should use the same rule as we use for generics now, but instead of type name we should use const value