How to specify branch in artifacts URL?

How can I download latest artifacts from a specific branch?
Simple appending &branchName= doesn't work.
According to the docs, it's possible to do via the task (branchName argument). But in which URL parameter is this argument translated?
Thanks in advance!

ping @DavidStaheli as you kindly suggested your help recently.

Docs about REST API don't state this possibility, they offer only buildId field:
https://docs.microsoft.com/ru-ru/rest/api/azure/devops/build/artifacts/get?view=azure-devops-rest-4.1

@steved0x I think this goes to @DavidStaheli (who's out for most of this month) or someone on his team.

@StrikerRUS Artifacts are only associated with builds. The task allows you to specify a branch name which it uses to determine the build to retrieve the artifact from.  In other words, if your task was setup as below:
- task: DownloadBuildArtifacts@0
inputs:
    project: 'My project name'
    pipeline: 'My pipeline name'
    buildType: 'specific'
    buildVersionToDownload: 'latestFromBranch'
    branchName: 'refs/heads/MyBranch'

The task would look for the latest build that built from refs/heads/MyBranch, and then use that build's Id to retrieve artifacts.  You could do something similar by first querying the List Builds endpoint and specifying a branch name, and then using the Id of the build returned to query its artifacts.

@pjquirk Thanks a lot for your answer!
I see queryOrder argument for the API, but I don't see how to sort returned builds by IDs. Is it possible?
BTW, in 4.1 description is broken:

There's no explicit sort for build Id, but since you're interested in build artifacts and they're most useful once the build has completed, I'd suggest using finishTimeDescending and getting the first build.
Thanks for pointing out the issue with the enum's descriptions, I'll look into resolving that.

@pjquirk Thank you for the information and suggestion!
The last question: what is the default sort behavior in REST API and in task: DownloadBuildArtifacts@0 with buildVersionToDownload: 'latestFromBranch'?

@pjquirk Thank you very much for your answers!
Where can I post a feature request for sorting order by IDs?

Developer Community: https://developercommunity.visualstudio.com/spaces/21/index.html


fix: Add DMIs for AYANEO AIR 1S, OXP2/Pro and ONEXFLY

Fixes:

Add AYANEO AIR 1S, ONEXPLAYER 2 (6800U), ONEXPLAYER 2 Pro (7840U), ONEXPLAYER 2 Pro "Get In the PC Handheld Shinji" Edition (EVA-01 variant), and ONEXFLY (alongside its "Get In the PC Handheld Shinji" EVA-01 variant) DMIs for their appropriate waydroid-launcher screen resolutions in addition to fixing the resolution for the AYANEO AIR Plus due to it having a 1080p screen instead of 1200p).
Add said DMIs to simpledeckytdp-supported-hardware as well, thus enabling TDP control as well as iomem on the devices
Add only the AYANEO AIR 1S DMIs to hhd-supported-hardware as hhd only supports them (the only OXP device that hhd supports is the OXP Mini Pro).

The OXP 2 and its 7840U counterpart have the same screen resolution as the Legion Go, whereas the ONEXFLY has the same resolution as the ROG Ally.
Additional comments:
『愛してるよ！ 愛だけに！』

(you can ignore these.)

Thanks!


bug: Deserialization fails for large circuits

Deserialization fails when the circuit reaches around 100 million constraints
panic: cbor: exceeded max number of elements<PHONE_NUMBER> for CBOR array

Description

Expected Behavior

Actual Behavior

Possible Fix

Steps to Reproduce

Context

Your Environment

gnark v0.9.1

could you provide more infos about this issue? for example

how many constraints of your circuit?
how to reproduce this problem?

Interesting, the bound is 2^31, which is somewhat limited by the internal representation we use, and it is interesting to see that you hit the limit with smaller circuits. Are you sure the circuit has approximately 100M constraints? Imo we have tried using PLONK circuits of size approximately 2^27 and it serializes well.
What proof system (Groth16, PLONK) are you using and what is the exact constraint count?

This place is over the limit
https://github.com/Consensys/gnark/blob/3421eaa7d544286abf3de8c46282b8d4da6d5da0/constraint/bn254/system.go#L159
I see that the latest code has been optimized and this problem should no longer exist.


Build app size increasing 2.5x bigger after updating pubspec.lock

Details

Target Platform: Android
Target OS version/browser: Android 8+
Devices: Pixel 4 API 30
Logs
app build output .apk or .aab increased 2.5x bigger after I updated pubspec.lock.
this issue reproduce when i am add new dependencies, and pubspect.lock will change/updating automatically
before updating :Built build\app\outputs\flutter-apk\app-release.apk (27.2MB).
after updating : Built build\app\outputs\flutter-apk\app-release.apk (65.1MB).
EDITED: I have delete all my dependencies and smaller build size (2x MB)
Logs

Here is my pubspec.yaml
dependencies:
  awesome_dialog: ^3.0.2
  cached_network_image: ^3.2.2
  carousel_slider: ^4.1.1
  cupertino_icons: ^1.0.2
  dio: ^4.0.6
  equatable: ^2.0.5
  dio_http_cache_lts: ^0.4.1
  esc_pos_utils_plus: ^2.0.1+6
  flutter:
    sdk: flutter
  flutter_bloc: ^8.1.1
  flutter_native_splash: ^2.2.10+1
  fluttercontactpicker: ^4.7.0
  go_router: ^7.1.1
  google_fonts: ^4.0.4
  hive_flutter: ^1.1.0
  hive_generator: ^2.0.0
  infinite_scroll_pagination: ^3.2.0
  intl: ^0.17.0
  move_to_background: ^1.0.2
  onesignal_flutter: ^3.4.1
  path_provider: ^2.0.11
  pdf: ^3.8.4
  permission_handler: ^10.2.0
  print_bluetooth_thermal: ^1.0.5
  printing: ^5.11.0
  share_plus: ^6.3.0
  shimmer: ^2.0.0
  uni_links: ^0.5.1
  url_launcher: ^6.1.6

dev_dependencies:
  build_runner: ^2.2.1
  change_app_package_name: ^1.1.0
  flutter_launcher_icons: ^0.13.1
  flutter_lints: ^2.0.0
  flutter_test:
    sdk: flutter

here is my main.dart file, i trying to delete all code and still has big depedencies.
import 'package:flutter/material.dart';

void main() async {
  runApp(const MyApp());
}

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

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      home: Scaffold(),
    );
  }
}

$ flutter analyze
Analyzing KYS-reload-app...
No issues found! (ran in 25.2s)

$ flutter doctor -v
[√] Flutter (Channel stable, 3.10.5, on Microsoft Windows [Version 10.0.19043.1526], locale en-ID)
    • Flutter version 3.10.5 on channel stable at D:\SOFTWARE\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 796c8ef792 (5 weeks ago), 2023-06-13 15:51:02 -0700
    • Engine revision 45f6e00911
    • Dart version 3.0.5
    • 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.0)
    • Android SDK at D:\SOFTWARE\Android\Sdk
    • Platform android-33, build-tools 33.0.0
    • ANDROID_HOME = D:\SOFTWARE\Android\Sdk
    • Java binary at: D:\SOFTWARE\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • 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 Community 2022 17.3.1)
    • Visual Studio at D:\SOFTWARE\Visual Studio
    • Visual Studio Community 2022 version 17.3.32811.315
    • Windows 10 SDK version 10.0.19041.0

[√] Android Studio (version 2020.3)
    • Android Studio at D:\SOFTWARE\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.10+0-b96-7249189)

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

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

• No issues found!

Noxious@DESKTOP-0DPF4CN MINGW64 /d/Project Flutter/KYS-reload-app (master)
$ flutter doctor -v
[√] Flutter (Channel stable, 3.10.5, on Microsoft Windows [Version 10.0.19043.1526], locale en-ID)
    • Flutter version 3.10.5 on channel stable at D:\SOFTWARE\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 796c8ef792 (5 weeks ago), 2023-06-13 15:51:02 -0700
    • Engine revision 45f6e00911
    • Dart version 3.0.5
    • 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.0)
    • Android SDK at D:\SOFTWARE\Android\Sdk
    • Platform android-33, build-tools 33.0.0
    • ANDROID_HOME = D:\SOFTWARE\Android\Sdk
    • Java binary at: D:\SOFTWARE\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189)
    • 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 Community 2022 17.3.1)
    • Visual Studio at D:\SOFTWARE\Visual Studio
    • Visual Studio Community 2022 version 17.3.32811.315
    • Windows 10 SDK version 10.0.19041.0

[√] Android Studio (version 2020.3)
    • Android Studio at D:\SOFTWARE\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.10+0-b96-7249189)

[√] Connected device (4 available)
    • sdk gphone x86 (mobile) • emulator-5554 • android-x86    • Android 11 (API 30) (emulator)
    • Windows (desktop)       • windows       • windows-x64    • Microsoft Windows [Version 10.0.19043.1526]
    • Chrome (web)            • chrome        • web-javascript • Google Chrome 114.0.5735.199
    • Edge (web)              • edge          • web-javascript • Microsoft Edge 107.0.1418.62

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

• No issues found!

Thanks for the report @mimamch
Although I do see the same behavior as you reported, I think it could be related to the package you are using, ie, awesome_dialog for instance, with which I saw the apk size increased as below:

Before adding the package:

Running Gradle task 'assembleRelease'...                           39.7s
✓  Built build/app/outputs/flutter-apk/app-release.apk (17.5MB).
dhs@Dhss-MacBook-Pro new_project %

After adding the package:

Running Gradle task 'assembleRelease'...                          386.8s
✓  Built build/app/outputs/flutter-apk/app-release.apk (55.2MB).
dhs@Dhss-MacBook-Pro new_project %

But, note that, the console showed below logs while building the apk after adding the package which might have flared up the app size:
dhs@Dhss-MacBook-Pro new_project % flutter build apk
Warning: Observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in inconsistent location '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager-2' (Expected '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager')
Warning: Already observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager'. Skipping duplicate at '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager-2'
Warning: Observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in inconsistent location '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager-2' (Expected '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager')
Warning: Already observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager'. Skipping duplicate at '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager-2'
Checking the license for package NDK (Side by side) 25.1.8937393 in /Users/dhs/Library/Android/sdk/licenses
License for package NDK (Side by side) 25.1.8937393 accepted.
Preparing "Install NDK (Side by side) 25.1.8937393 (revision: 25.1.8937393)".
"Install NDK (Side by side) 25.1.8937393 (revision: 25.1.8937393)" ready.
Installing NDK (Side by side) 25.1.8937393 in /Users/dhs/Library/Android/sdk/ndk/25.1.8937393
"Install NDK (Side by side) 25.1.8937393 (revision: 25.1.8937393)" complete.
"Install NDK (Side by side) 25.1.8937393 (revision: 25.1.8937393)" finished.
Warning: Observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in inconsistent location '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager-2' (Expected '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager')
Warning: Already observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager'. Skipping duplicate at '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager-2'
Warning: Observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in inconsistent location '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager-2' (Expected '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager')
Warning: Already observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager'. Skipping duplicate at '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager-2'
Checking the license for package CMake 3.18.1 in /Users/dhs/Library/Android/sdk/licenses
License for package CMake 3.18.1 accepted.
Preparing "Install CMake 3.18.1 (revision: 3.18.1)".
"Install CMake 3.18.1 (revision: 3.18.1)" ready.
Installing CMake 3.18.1 in /Users/dhs/Library/Android/sdk/cmake/3.18.1
"Install CMake 3.18.1 (revision: 3.18.1)" complete.
"Install CMake 3.18.1 (revision: 3.18.1)" finished.
Warning: Observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in inconsistent location '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager-2' (Expected '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager')
Warning: Already observed package id 'extras;intel;Hardware_Accelerated_Execution_Manager' in '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager'. Skipping duplicate at '/Users/dhs/Library/Android/sdk/extras/intel/Hardware_Accelerated_Execution_Manager-2'
One or more plugins require a higher Android NDK version.
Fix this issue by adding the following to /Users/dhs/Documents/NCFlutter/new_project/android/app/build.gradle:
android {
  ndkVersion "25.1.8937393"
  ...
}

I didn't see such warnings or app size increase while using Flutter's first party package such as path_provider. So you might want to reach out to awesome_dialog package's repo to see why it adds up to the app size.
https://github.com/marcos930807/awesomeDialogs/issues


No verbose option

rework logging and output. Avoid direct cout

Would BOOST logger be a good option since we are using BOOST anyway?

Solved with e140635 and following commits.


Lightbulb follows the cursor around, when there really isn't a problem.

I'm simply typing and the lightbulb appears. It's not needed at the moment, no suggestions are required or wanted. I liked it better when the light bulb only appeared when I clicked on a red squiggly line.


support for dadapaption V3

Dadapaption Change Log V3
1、Major improvements to DAdaptAdam, improving the performance particularly on Transformer models. This variant may behave differently in practice. The old version is availiable under experimental/d_adapt_adam_preprint if you wish to continue to use it.The IP variant is now the main variant of the method.
2、Added Lion. This is highly experimental. Feedback on it's performance is welcome.
What i change:
1、keep old DadaptAdam for use  DAdaptation or DAdaptAdamPreprint
2、use new DadaptAdam variant.
3、add DAdaptLion
4、add DAdaptAdan IP variant for use DAdaptAdanIP
update way:
.\venv\Scripts\activate
pip install dadaptation -U

what learning rate and weight decay suggested?

what learning rate and weight decay suggested?

see here


[cli] pass backstage-cli test command line arguments to web-scripts test

Feature Suggestion
When I run yarn test Intro on the lighthouse plugin, I hope to have the behavior to web-scripts, which passes all of the arguments that web-scripts doesn't interact with directly onto Jest, meaning that I filter to just run the test I meant to run. Today, it seems to swallow that stuff.

👍 , we haven't quite figured out the model for the cli commands args/help, but I imagine we can already settle on only jest for tests and forward all args.


[bug] how to fix:No module named 'onnx.onnx_cpp2py_export.defs'; 'onnx.onnx_cpp2py_export' is not a package

Describe the bug
[comfy_mtb] | WARNING -> Web extensions folder at D:\AI\ComfyUI\web\extensions\mtb is not a symlink, if updating please delete it before
C:\Program Files\Python310\lib\site-packages\torchvision\transforms\functional_tensor.py:5: UserWarning: The torchvision.transforms.functional_tensor module is deprecated in 0.15 and will be removed in 0.17. Please don't rely on it. You probably just need to use APIs in torchvision.transforms.functional or in torchvision.transforms.v2.functional.
warnings.warn(
[comfy_mtb] | INFO -> Some nodes failed to load:
Failed to import module faceswap because ModuleNotFoundError: No module named 'onnx.onnx_cpp2py_export.defs'; 'onnx.onnx_cpp2py_export' is not a package
Check that you properly installed the dependencies.
If you think this is a bug, please report it on the github page (https://github.com/melMass/comfy_mtb/issues)
[comfy_mtb] | INFO -> Loaded the following nodes:
Animation Builder (mtb): Convenient way to manage basic animation maths at the core of many of my workflows
Smart Step (mtb): Utils to control the steps start/stop of the KAdvancedSampler in percentage
Styles Loader (mtb): Load csv files and populate a dropdown from the rows (à la A111)
Interpolate Clip Sequential (mtb): -
Bbox From Mask (mtb): From a mask extract the bounding box
Bbox (mtb): The bounding box (BBOX) custom type used by other nodes
Crop (mtb): Crops an image and an optional mask to a given bounding box
Uncrop (mtb): Uncrops an image to a given bounding box
Debug (mtb): Experimental node to debug any Comfy values, support for more types and widgets is planned
Save Tensors (mtb): Save torch tensors (image, mask or latent) to disk, useful to debug things outside comfy
Deep Bump (mtb): Normal & height maps generation from single pictures
Restore Face (mtb): Uses GFPGan to restore faces
Load Face Enhance Model (mtb): Loads a GFPGan or RestoreFormer model for face enhancement.
Qr Code (mtb): Basic QR Code generator
Unsplash Image (mtb): Unsplash Image given a keyword and a size
Text To Image (mtb): Utils to convert text to image using a font
String Replace (mtb): Basic string replacement
Fit Number (mtb): Fit the input float using a source and target range
Get Batch From History (mtb): Very experimental node to load images from the history of the server.
Any To String (mtb): Tries to take any input and convert it to a string
Load Film Model (mtb): Loads a FILM model
Film Interpolation (mtb): Google Research FILM frame interpolation for large motion
Concat Images (mtb): Add images to batch
Color Correct (mtb): Various color correction methods
Image Compare (mtb): Compare two images and return a difference image
Blur (mtb): Blur an image using a Gaussian filter.
Mask To Image (mtb): Converts a mask (alpha) to an RGB image with a color and background
Colored Image (mtb): Constant color image of given size
Image Premultiply (mtb): Premultiply image with mask
Image Resize Factor (mtb): Extracted mostly from WAS Node Suite, with a few edits (most notably multiple image support) and less features.
Save Image Grid (mtb): Save all the images in the input batch as a grid of images.
Load Image From Url (mtb): Load an image from the given URL
Save Gif (mtb): Save the images from the batch as a GIF
Export With Ffmpeg (mtb): Export with FFmpeg (Experimental)
Latent Lerp (mtb): Linear interpolation (blend) between two latent vectors
Image Remove Background Rembg (mtb): Removes the background from the input using Rembg.
Float To Number (mtb): Node addon for the WAS Suite. Converts a "comfy" FLOAT to a NUMBER.
Int To Bool (mtb): Basic int to bool conversion
Int To Number (mtb): Node addon for the WAS Suite. Converts a "comfy" INT to a NUMBER.
Transform Image (mtb): Save torch tensors (image, mask or latent) to disk, useful to debug things outside comfy
Load Image Sequence (mtb): Load an image sequence from a folder. The current frame is used to determine which image to load.
Save Image Sequence (mtb): Save an image sequence to a folder. The current frame is used to determine which image to save.
Reproduction
No response
Expected behavior
No response
Platform and versions
win

Console output
No response
Additional context
No response

i had try pip install onnx==1.12.0,and retry, but still not working

Hi, I need more info like the comfy mode (portable or using a custom env), the python version etc..

Hi,
These nodes are now optional and not "first" class in mtb, you can read more about it here: https://github.com/melMass/comfy_mtb#optional-nodes
I suggest using this for now, they might come back if I manage to solve the dependency mess it introduces:
https://github.com/Gourieff/comfyui-reactor-node


Added more method for FFS, and allow for default token.

In this PR, I have added more methods for FFS and also wallet part of the API. I have also create a method call set_token which allow the user to set the FFS token so in the subsequent call no token is need to.
Some more testing related to creating the address has also been added.

I think we should add type annotation next time. The code has been pretty messy and hard to read now.

I think we should add type annotation next time. The code has been pretty messy and hard to read now.

Yup type annotation would be a good addition


Fit and finish updates

Hi, I've recently used this crate to help with a Tube API personal project I've been working on. Thanks for creating it!
To make the library easier to use, I've made a few small changes to a fork and propose merging them back upstream.
Changes:

Add std::error::Error trait to request::Error to make it easier to consume, e.g. with anyhow.
Derive default values to Arrivals struct as I've seen the TFL API not return certain fields.

I thought this was better than making these fields optional. Less code churn.

Enable to/from string for LineID.
Fix the LineID::line() mapping for And lines to match the API's expected ID strings.

E.g. HammersmithAndCity -> Hammersmith-City
Note: I've only done this for Tube lines.

Let me know if you are open to taking these changes. I am happy to make small changes if needed.

Hi @FrankTaylorLieder, thanks for creating the PR. I am happy to merge these changes. Also, would you be able to modify the API version in the test as part of this PR? It looks like the API version was updated to master.5892. If you can make this small change, the build will be successful.

Thanks for wanting to take the changes.
I've fixed the test and added one to demonstrate the "And" station ID fix.
It might be good to test all LineIDs. To do that we'll need to record the route.name for each LineID. If I were to implement that I'd use strum's EnumProperty to record the LineID and Display Name for each LineID. Should I go ahead to do it?

Yes, please, that would be great. Thanks a lot for the contributions.

I've revamped the LineID enum to use strum to help with Display and ID mappings. Mostly the line enum name, display and ID are all the same, so there is not need to supply all three. Instead we can just override the display name or ID as needed to match TFL's values.
I added a test to try out all LineIDs, but this takes too long to run. So instead we only test LineIDs that have differing display and IDs.
I would be able to batch the ID tests to reduce the number of API calls, however the routes_by_line call only accepts a single result (even through you can request multiple lines, and the backend API supports multiple lines). I have not investigated this further.

Next update. I've looked at another way to validate the LineIDs, using the .routes() call. See: confirm_all_line_ids() test. This test only fails if a LineID/name does not match. It does not fail if we are missing a LineID, or have items that are no longer used.
This test shows that the current LineIDs do not include most of the bus routes. There are also some IDs which are no longer used by TFL.
On reflection, why do we fix the LineIDs in the wrapper? These are constantly evolving, so we'll always be playing catch up to ensure the wrapper is up-to-date. Why not make LineIDs "soft" - I.e. the caller provides the ID and name. We can provide a helper function that enumerates the IDs (like the test does).
As far as this PR goes, we can probably drop the confirm_all_line_ids test. Keep the changes for the current LineID enum which align the IDs and names with the API. Maybe provide a utility tool to validate the LineID enum against routes() which we can run manually periodically to ensure LineID is up-to-date.
Longer term, moving to a "soft" LineID would make maintenance better and ensure users of the library are not waiting on updates to enable new or modified LineIDs. This would be a breaking change so would have to be managed.
Let me know if I have misunderstood anything, and if you agree with the proposal above.

I have removed the full LineID test and replaced it with a command line test utility to report on the differences between LineID and the API routes(). The utility reports on which IDs are missing, which have mismatched names and which are not longer in the API routes.

I've finalised the PR based on comments above. Anything else before I mark is ready for review?

LGTM

Thanks!


Compiler reports instance is "not assignable to X" even if class is declared to implement X

Bug Report

🔎 Search Terms
error ignores declared interface
🕗 Version & Regression Information
Tested in the Playground and the issue occurs in 3.3.3 in the playground with 4.4.2 and nightly (4.5.0-dev20210910).
⏯ Playground Link
Link link with relevant code
💻 Code
interface Logger {
    log(level: number, message: string): void;
}

class ConsoleLogger implements Logger {
    log(message: string): void {} // Expected (Property 'log' in type 'ConsoleLogger' is not assignable to the same property in base type 'Logger'.)
}

function getLogger(): Logger {
    return new ConsoleLogger(); // Unexpected (Type 'ConsoleLogger' is not assignable to type 'Logger'.)
}

🙁 Actual behavior
The TypeScript compiler reports an error in the getLogger() function.
This is not a major problem, since fixing the root cause also gets rid of the error.  But it's not ideal because the second error is mostly noise.
This feels analogous to this situation (playground link):
function f(): number {
    return 'x'; // Error, as expected.
}

Math.abs(f()); // No error, as expected.

🙂 Expected behavior
I would expect there to be no error reported in the getLogger() function.

I can agree that this is not the best error reporting experience if you were designing it from a blank slate, but this is the only thing that makes sense given our structural type system.  The type of ConsoleLogger is completely unaffected by its implements clause; like all other types in the type system; a ConsoleLogger can only be understood by the properties and methods it actually has. The implements clause simply adds an additional check that it satisfies another contract.

It does feel similar to the incorrectly-returning function example, but the return type annotation on a function is a much stronger source of intent than an implements clause. The return type annotation is the source of truth for what a function returns, and potentially many return statements inside that function will have to conform to it and will be contextually typed by it. The implements clause never works like a source of truth for properties and methods on the class—the class is free to fulfill that contract with different types than the interface it implements, as long as the class remains assignable to the interface.

Devil’s advocate: If a type breaks the contract of its implements clause, it’s 1) not well-defined and 2) guaranteed to produce an error already, so it could make sense to suppress any errors related to assignability to/from that type as they are just noise at that point.

The type of ConsoleLogger is completely unaffected by its implements clause

[cries in #32082 and scads of linked issues]

The implements clause never works like a source of truth for properties and methods on the class—the class is free to fulfill that contract with different types than the interface it implements, as long as the class remains assignable to the interface.

Isn't this still the same as in the return type analogy?  The function body can return values with different types than the declared return type, as long as the value remains assignable to the return type.

No:
interface I {
  p: string;
}
class C implements I {
  p: "hello" = "hello";
}
new C().p; // "hello"

function f(): string {
  return "hello" as const;
}
f(); // string

@andrewbranch: Ah, that's what you mean.  Makes sense.
It still feels like the desired behavior is for TS to only error at the class declaration site and not at the use site, and it doesn't seem like that's actually incompatible with a structural type system.
For example, one way to see it: the type of new ConsoleLogger() is the inferred type from the declared members & the declared implements clauses.  This will have an issue with variance, but that's expected in TS, e.g.
interface I {
  p: string;
}
class C implements I {
  p: "hello" = "hello";
}
function f(i: I) {
    i.p = "bye";
}
f(new C()); // loose variance sinks ships :-)

Playground link.


Admin interface creation for managing the challenges

For managing challenges in an admin interface, you might consider implementing a dashboard that allows for easy tracking and modification of challenges. Key features could include:

Challenge Overview: A summary page with all current challenges and their statuses.
Create/Edit Challenges: Forms for adding new challenges or editing existing ones, including fields for name, description, and criteria.
Analytics: Tools to track participation and performance metrics.
User Management: Options to assign challenges to specific users or groups.

For a practical example, you can look at how the "b9 Game Earning App" handles its challenge management. They typically offer a robust set of features that streamline the process for admins.

For issue #14 regarding the admin interface creation for managing challenges, I recommend outlining the core features needed, such as user authentication, challenge creation, editing, and deletion. Integrating a user-friendly dashboard will enhance usability. Don't forget to implement robust data validation to ensure data integrity.
Additionally, for those interested in precision, finding the best AR scope can significantly improve shooting accuracy, much like how a well-designed admin interface streamlines management tasks.

The admin interface for managing challenges #14 is crucial for streamlining operations and ensuring effective oversight. It should include user-friendly features for tracking progress and managing tasks efficiently. Additionally, just as having a scope for 450 Bushmaster enhances precision in shooting, a well-designed admin interface improves overall management effectiveness.

The admin interface for managing challenges #14 has been successfully created. For easy access, ensure you have the vegas-x app download completed.


What should happen when an activity has both 2 countries AND 2 regions with %'s defined?

A basic algorithm would then result in 4 split transactions:

Country A, Region A
Country A, Region B
Country B, Region A
Country B, Region B

But should we be taking into account anything about those regions? Maybe region A and B only exist in country A for instance? Is this bad input data?
I'm sure I remember reading something about this in one of the other writeups but now I can't find it.

See test test_split_by_everything which currently doesn't actually do that - but it shouldn't till this Q is resolved.

Both the country and region percentages should sum together to make 100%.
https://iatistandard.org/en/iati-standard/203/activity-standard/iati-activities/iati-activity/recipient-country/#example-usage

When both the recipient-region and recipient-country are declared, then the @percentage values should sum to 100% per region vocabulary for the specific iati-activity.

<recipient-country code="AF" percentage="50" />
<recipient-region code="489" vocabulary="1" percentage="50" />
<recipient-region code="A1" vocabulary="99" percentage="50" vocabulary-uri="http://example.com/vocab.html" />

Ah, I had heard that but didn't understand the significance.
So, when an activity has both 2 countries AND 2 regions with %'s defined you should get:

Country A
Country B
Region A
Region B

And the sum value of those 4 transactions should be the same as the value on the original transaction?

That's right. But it gets more complicated when there's regions from multiple vocabularies.

Ok, how should it work in that case?
Activity has 2 countries (A and B) and 2 regions in one vocab (C and D) and 2 regions in another (E and F), the split on each is 25%.
Should you get?

Country A, 25%
Country B, 25%
Region C, 25%
Region D, 25%
Region E, 25%
Region F, 25%

So now adding up all the values of all these transactions gets you more than the original value! But if you add up per vocab (and including anything not marked for a region vocab) you get:

A + B + C + D = 100%
A + B + E + F = 100%

[ Except the adding up gets more complicated as sectors can also have multiple vocabs ]

Yes, that's right.


[UX] Print unit test failures at the bottom

It is more ergonomic to see the errors at the bottom of a build, otherwise one has to scroll to the correct location. (even in GitHub Action/Azure, it will auto scroll to bottom on failed builds)

Closing since the issue is addressed.


chore(ONYX-463): save recent price ranges only after saving alert

This PR resolves ONYX-463
Description
Save recent price ranges only after saving alert
https://github.com/artsy/eigen/assets/11945712/caa6e6a2-ac79-49ae-9795-4b39153a266d

PR Checklist

[x] I have tested my changes on iOS and Android.
[x] I hid my changes behind a feature flag, or they don't need one.
[x] I have included screenshots or videos, or I have not changed the UI.
[x] I have added tests, or my changes don't require any.
[x] I added an app state migration, or my changes do not require one.
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added a changelog entry below, or my changes do not require one.

To the reviewers 👀

[ ] I would like at least one of the reviewers to run this PR on the simulator or device.

Changelog updates
Changelog updates

Cross-platform user-facing changes

save recent price ranges only after saving alert - mounir

iOS user-facing changes

Android user-facing changes

Dev changes

Need help with something? Have a look at our docs, or get in touch with us.

This PR contains the following changes:

Cross-platform user-facing changes (save recent price ranges only after saving alert - mounir)

  Generated by :no_entry_sign: dangerJS against f1f5a168a9e7e020e7ddb8b406c82a41b5908222


Fixed SwapTransition not scaling

Everything is in the title. It looks much better now, too! ^__^
Thanks in advance and happy merging!

I'd do a qua-non thumbs up, but I don't know how.


Add AzureKeyCredential to Azure Core

This PR adds AzureKeyCredential to Azure Core and updates Search and Text Analytics to use it. The credential replaces the service specific credential, therefore SearchApiKeyCredential and TextAnalyticsApiKeyCredential have been deleted.
Additionally, this PR moves TextAnalyticsApiKeyPipelinePolicy into the public API in the root package.
For reference this is the .NET PR (https://github.com/Azure/azure-sdk-for-net/pull/10668) and the TS PR (https://github.com/Azure/azure-sdk-for-js/pull/7927). @maririos and @willmtemple

Is possible we can think of one generic KeyCredentialPolicy that applies to all Cognitive Service's ApiKeyCredential.

Is possible we can think of one generic KeyCredentialPolicy that applies to all Cognitive Service's ApiKeyCredential.

It is possible to create a generic HttpPipelinePolicy for this but this requires additional design. I'll work through this with @JonathanGiles and should have an answer before the end of the week.

Merging this PR in, issue #9535 tracks adding an AzureKeyCredentialPolicy into Azure Core.


Add a config option to validate inactive connections

This adds an option to HttpClientConfiguration named validateAfterInactivityPeriod which enables a 'stale' connection check with the frequency of the given period.
This check helps detect connections that have become stale (half-closed) while kept inactive in a client's connection pool.
This check is disabled by default, but is configurable as a duration.
Reason for introduction
The HTTP/1.1 specification indicates the responsibility is with the client to handle closed keep-alive connections gracefully, and that the server can be expected to close that session at any time with or without intention.
In the HTTP/1.1 RFC#7230 it is stated in section 6.3.1 that:

Connections can be closed at any time, with or without intention.
Implementations ought to anticipate the need to recover from asynchronous close events.

Without the 'stale' connection check in place we see regular broken connections due to this behaviour.

Thanks for the contribution, for some reason we missed that option. Probably because the client wasn't originally designed to be long-lived.
This looks good to me.


openvscode-server: 1.73.1 -> 1.74.3

Description of changes
Update openvscode-server to latest release

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

openvscode-server is currently the only consumer of nodejs-16_x-openssl_1_1, may you check if we can migrate away from it. See https://github.com/NixOS/nixpkgs/issues/210452

@NickCao fixed!


IntelHAXM Errors after upgrading to Windows build 2004

Describe the Bug
Receiving errors and OS Crashes.  Attempting to track down the errors.  It's pointing to 2 Intel systems.

Intel HAXM - Getting errors:

The IntelHaxm service failed to start due to the following error:  A device attached to the system is not functioning.
HAXM Failed to init VMX
HAXM can't work on system without VT support
The SNMP Service encountered an error while accessing the registry key SYSTEM\CurrentControlSet\Services\SNMP\Parameters\TrapConfiguration.

Possibly unrelated by I'm getting this error which is causing the green screens and intel usbx

On Mon 6/8/2020 10:16:37 AM your computer crashed or a problem was reported
crash dump file: C:\WINDOWS\MEMORY.DMP
This was probably caused by the following module: usbxhci.sys (USBXHCI+0x24DC)
Bugcheck code: 0x139 (0x3, 0xFFFFF80579CF45A0, 0xFFFFF80579CF44F8, 0x0)
Error: KERNEL_SECURITY_CHECK_FAILURE
file path: C:\WINDOWS\system32\drivers\usbxhci.sys
product: Microsoft® Windows® Operating System
company: Microsoft Corporation
description: USB XHCI Driver
Bug check description: The kernel has detected the corruption of a critical data structure.
The crash took place in a storage driver or controller driver. Since there is no other responsible driver detected, this could be pointing to a malfunctioning drive or corrupted disk. It's suggested that you run CHKDSK.

Host Environment
Computer name: DAN-PC
Windows version: Windows 10 , 10.0, build: 19041
Windows dir: C:\WINDOWS
Hardware: Z97X-UD5H, Gigabyte Technology Co., Ltd.
CPU: GenuineIntel Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz Intel8664, level: 6
8 logical processors, active mask: 255
RAM:<PHONE_NUMBER>2 bytes (31.8GB)
Guest Environment
Using standard Visual Studio installation.
Possible mix up may have come at the hands of Docker Desktop install.  The latest version did something with their virtualization engine.  Uninstalled it from the Host OS.  Hasn't fixed problems.  HAMX may need a reinstall.
To Reproduce
System constantly shuts down without reason
Expected Behavior
Not to crash OS
Reproducibility
Shuts down frequently.
Diagnostic Information
On Mon 6/8/2020 10:16:37 AM your computer crashed or a problem was reported
crash dump file: C:\WINDOWS\Minidump\060820-15062-01.dmp
This was probably caused by the following module: ntoskrnl.exe (nt+0x3DDA20)
Bugcheck code: 0x139 (0x3, 0xFFFFF80579CF45A0, 0xFFFFF80579CF44F8, 0x0)
Error: KERNEL_SECURITY_CHECK_FAILURE
file path: C:\WINDOWS\system32\ntoskrnl.exe
product: Microsoft® Windows® Operating System
company: Microsoft Corporation
description: NT Kernel & System
Bug check description: The kernel has detected the corruption of a critical data structure.
The crash took place in the Windows kernel. Possibly this problem is caused by another driver that cannot be identified at this time.
On Mon 6/8/2020 10:16:37 AM your computer crashed or a problem was reported
crash dump file: C:\WINDOWS\MEMORY.DMP
This was probably caused by the following module: usbxhci.sys (USBXHCI+0x24DC)
Bugcheck code: 0x139 (0x3, 0xFFFFF80579CF45A0, 0xFFFFF80579CF44F8, 0x0)
Error: KERNEL_SECURITY_CHECK_FAILURE
file path: C:\WINDOWS\system32\drivers\usbxhci.sys
product: Microsoft® Windows® Operating System
company: Microsoft Corporation
description: USB XHCI Driver
Bug check description: The kernel has detected the corruption of a critical data structure.
The crash took place in a storage driver or controller driver. Since there is no other responsible driver detected, this could be pointing to a malfunctioning drive or corrupted disk. It's suggested that you run CHKDSK.

Android Emulator or QEMU log:

Screenshots:
Additional context

None

Thanks for your report. From the information provided by you, the BSOD may caused by USB driver. Could you upload the crash dump file from C:\WINDOWS\Minidump\060820-15062-01.dmp for further analysis? And could you check your system environment in BIOS and try to re-install HAXM manually? Thanks.

BTW, Hi @dregalia ,how did you upgrade your windows host to 2004? I noticed that my windows PC has not received the 2004 official release from Microsoft.

@wayne-ma I can't speak for @dregalia, but the latest ISO from Microsoft is on 2004: https://www.microsoft.com/en-us/software-download/windows10ISO

@cornop thanks so much for providing the latest 2004 info. Yes, I just upgraded two of my windows hosts(Intel CPU: CoffeeLake i7-9700 and Sky lake i5-6300U) from 1904 to 2004 and tried many time with HAXM+ android emulator, so far I did not see the BSOD issue.
Hi @dregalia ,which guest OS did you use? Android emulator? I see that you mentioned 'HAXM can't work on system without VT support'. Yes , that is the expectation as HAXM relied on Intel VT technology, you should enable the Intel VT in bios if you want to use HAXM.

@dregalia  Were you able to resolve this issue? I have noticed an issue with HID USB device drivers as well.

@dregalia  Were you able to resolve this issue? I have noticed an issue with HID USB device drivers as well.

I have the same problem in i5 10400 / MSI B460 Tomahawk, my BIOS is update at the last version, how to fix this?

Same issue here Dell Inspiron 7577 - i7-7700HQ


AKS v2: Provide the resource groups to the UI

It'd helpful for the resource groups to be exposable via the API or backend so that it could appear in the UI.
Epic https://github.com/rancher/rancher/issues/31045
PR https://github.com/rancher/rancher/pull/32656

What does this issue mean exactly ? I don't know what "resource groups" means in AKS context. Should that PR be linked to issue 32587 instead @mjura  ?

Wes wanted to have cluster names with resource groups names where they are created.
This was implemented in another proxy UI call https://github.com/rancher/rancher/pull/32656

Ok, closing this one and reusing 32587 instead to clean up issues


Bug: current_url() returning wrong value when different host

PHP Version
8.0
CodeIgniter4 Version
4.1.9
CodeIgniter4 Installation Method
Composer (using codeigniter4/appstarter)
Which operating systems have you tested for this bug?
Windows
Which server did you use?
apache
Database
No response
What happened?
The function current_url() returns the $baseURL in app/Config/App.php instead of the real current url in the browser.
This leads to confusion, know the documentation says:

You can restrict groups of routes to function only in certain domain or sub-domains of your application by passing the “hostname” option along with the desired domain to allow it on as part of the options array:
https://codeigniter.com/user_guide/incoming/routing.html?highlight=router#limit-to-hostname

Which means an app could have multiple domain pointing at it, but current_url() would only return the one set in config.
Use case: CMS, multi-tenant app, multi-vendor app, etc.
Steps to Reproduce
Call current_url() when loading the app with a host like sub.example.com while in the config, you would set $baseURL to www.example.com for example.
Expected Output
current_url() is the name implies should retour the current url and not the current url with $baseURL as host.
Anything else?
No response

All of the *_url() functions are intentionally based on the Config (i.e. baseURL, indexPage, forceSecureRequests) and not intended to match the browser URL.
https://github.com/codeigniter4/CodeIgniter4/issues/3004#issuecomment-835342299

At least current_url() assumes the$baseURL is correct.
It makes sense.
But the problem is there is no way to set the currect value to $baseURL
when you have more than one hostname.

@darkylmnx
You need to set the correct $baseURL.
But be careful not to create security holes, please.
See

https://expressionengine.com/blog/http-host-and-server-name-security-issues
https://www.codeigniter.com/userguide3/installation/upgrade_303.html#step-2-make-sure-your-base-url-config-value-is-not-empty

You could set it in the constructor something like this:
<?php

namespace Config;

use CodeIgniter\Config\BaseConfig;

class App extends BaseConfig
{
    // ...

    public function __construct()
    {
        parent::__construct();

        $allowed_domains = ['domain1.tld', 'domain2.tld'];
        if (in_array($_SERVER['HTTP_HOST'], $allowed_domains, true)) {
             $this->baseURL = 'https://' . $_SERVER['HTTP_HOST'] . '/';
        }
    }

It would make sens it CodeIgniter was designed to be mono-domained which it isn't anymore (because I guess on version 2 it was back then).
As said above, the current docs says you can constrain by hosts when setting up your routes, so it really confuses me that all *_url function act in the opposite way of what the router gives the ability to do.
https://codeigniter.com/user_guide/incoming/routing.html?highlight=router#limit-to-hostname
I think there should at least be an alternative helper to do that.
As for:

As you have noted, detection is pretty complicated and not guaranteed

It seems Laravel & Symfony handles it properly, is there something i'm missing here?

Yes, it is very confusing.
At least I will fix the documentation about current_url(). See #5808
If there is something confusing, tell us. I will fix the docs.

Laravel & Symfony handles it properly

I don't know they really handle properly. Did you checked the implementation?
And how Symfony handles multiple domains?

@kenjis thanks for the docs.
I did check because I use Laravel in another project. Basically it uses Symfony's Request class and narrows down to the methods getPathInfo & getHost :
https://github.com/symfony/symfony/blob/5e4151fd88260adeac7de0425397b720233c31a2/src/Symfony/Component/HttpFoundation/Request.php#L1681
https://github.com/symfony/symfony/blob/5e4151fd88260adeac7de0425397b720233c31a2/src/Symfony/Component/HttpFoundation/Request.php#L1114
https://github.com/symfony/symfony/blob/5e4151fd88260adeac7de0425397b720233c31a2/src/Symfony/Component/HttpFoundation/Request.php#L854
And finally:
https://github.com/symfony/symfony/blob/5e4151fd88260adeac7de0425397b720233c31a2/src/Symfony/Component/HttpFoundation/Request.php#L1002
In my usage, I never had any problem with Laravel's url()->current() or url()->full() methods which are based on the above.
From what I read and understand in the Symfony code (as this is way above what I do in PHP), it seems to handle most cases, even edge cases like PHP loaded by CGI and thigns like that.
It's way better than what I did to handle this myself in CI 4 currently, since I'm building a multi-vendor app where each users can connect his/her custom domain, and therefore, creating an allow-list and remplacing $this->baseURL like you did in the example doesn't work.
I could indeed check the DB instead of doing an allow-list and if a match is found replace it, but in any case, I would have other types of issues in my specific case.
I actually had to create a method that does this:
public function getCurrentUrl() {
        $protocol = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http';
        $path = "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";

        return $protocol . $path;
    }

But I'd prefer the framework to have a built-in-more-secure-[insert anything]-way of doing this.
I could load Symfony's standalone Request class for that, but I would loose the whole point of using CI4, speed and simplicity.

Thank you for your investigation.
It seems Symfony uses $trustedHostPatterns to check the correct hostname.
How do you set the values in Lavarel?

I could indeed check the DB instead of doing an allow-list and if a match is found replace it, but in any case, I would have other types of issues in my specific case.

What do you mean? If you don't check the hostname, attackers could easily attack your app by host header injection.

It seems Symfony uses $trustedHostPatterns to check the correct hostname. How do you set the values in Lavarel?

What do you mean? If you don't check the hostname, attackers could easily attack your app by host header injection.

I never need to set it since I will then have a middleware or whatsoever that will check if the the host of the current url exists in my DB or some data source.
What I meant was, I would not load all my domains and then do a in_array that would be way to bloated in the futur.

What I meant was, I would not load all my domains and then do a in_array that would be way too bloated in the futur.

Okay, the code using in_array() is just a sample.

Okay, the code using in_array() is just a sample.
Yes, of course. I was just saying thing was to be able to retreive the current url safely.

That being said, the fundamental issue was to not have a valid current url I can do my check on.

It seems CI4 does not support multiple domain environment completely,
or there is a design flaw.
$baseURL is a predefined static value, and CI4 relies on it.
We cannot set $baseURL with using DB data, because the Config\App is created
in very early stage of the framework bootstrap.
What I mean is this is a big change, not just adding a new function.

But after all, it seems to me that the only way is to add a new current_url() that does not depend on $baseURL, as you say.

not have a valid current url I can do my check on.

How do you check? Can you show us the new API?
Or can you send a PR?

To be clear, I now know this, and feel free to close this issue or at least change it to a feature request.
What i'm saying is, there's no need for it to be tied to db or whatsoever, just having another method like real_current_url or request_current_url or something would be nice natively.
It would return the REAL url from which the app was loaded.
Just like the Symfony's class which makes no assumptions on DB or anything, it just returns the url and filters it if you set trusted hosts or anything.
But by default, without any trusted hosts, it returns the url it guesses from the request based on HTTP_HOST, SERVER_NAME or SERVER_ADDR.
It's not much of a code of course but having it natively and done in a more secure way than just:
$host = $_SERVER['HTTP_HOST'] ?: $_SERVER['SERVER_NAME']; etc, would be nice.

But by default, without any trusted hosts, it returns the url it guesses from the request based on HTTP_HOST, SERVER_NAME or SERVER_ADDR.

If a user uses it without any trusted hosts, It is a vulnerability.
It is not secure without checking $_SERVER['HTTP_HOST']/$_SERVER['SERVER_NAME'].

It's not much of a code of course but having it natively and done in a more secure way than just:
$host = $_SERVER['HTTP_HOST'] ?: $_SERVER['SERVER_NAME']; etc, would be nice.

I agree it would be nice if we can write such a function.
But I don't know how to write it in a secure way.

@kenjis the vulnerability is only if the method is used by CI4 without the user knowing, which it is not suppose to.
The current url is something people often need IMO, you ofter need the current path, current route ou base_url.
The base_url should of course not behave the same way but the current_url when it is explicitly asked should be different.
At least, that's how it works in Laravel, be default, If you don't touch any setting, Laravel will return the real current route even when your app's url is set to something else, because Laravel never uses the current url directly, only you can load it.
Laravel users your app url, which is not the same is the current url.
So the vulnerability is not a concerne here as it's the user who should use this feature knowingly (like in my case which is to create a multi-vendor app, I would check the current domain upon my DB to make sure I can trust it).

At least, that's how it works in Laravel, by default If you don't touch any setting, Laravel will return the real current url even when your app's url is set to something else, because Laravel never uses the current url directly, only you can load it.

I guess Laravel users are creating vulnerable apps every day, aren't they?
I don't think it is good to provide vulnerable functions, so at least I think the new current_url() needs trusted hosts.

I guess Laravel users are creating vulnerable apps every day, aren't they?

If they use the function without proper filters yes, but this is not suppose to happen, thats what I'm saying :)
If it happens, it's on the developer not the FW.

How about creating a Controller filter?

check the hostname, and update Config\App::$baseURL

When $baseURL is correct, then current_url() returns the correct value.

Chiming I'm pretty late here... let's go with @kenjis doc fix for now and handle this properly in version 5. I'm not opposed to a PR for something like browser_url() but just know: it is complicated and fraught. Just look at IncomingRequest and the mess there.
I worked up an entire PR to split out URI functionality but ultimately there is too much already in place than we can't break. I think there are lots of ways we can improve this for version 5, all under the header "Better support for multiple domains".

I started writing a library, it will be ready in a few days, I think it will solve the problem

PHP Version
8.0
CodeIgniter4 Version
4.1.9
CodeIgniter4 Installation Method
Composer (using codeigniter4/appstarter)
Which operating systems have you tested for this bug?
Windows
Which server did you use?
apache
Database
No response
What happened?
The function current_url() returns the $baseURL in app/Config/App.php instead of the real current url in the browser. This leads to confusion, know the documentation says:

You can restrict groups of routes to function only in certain domain or sub-domains of your application by passing the “hostname” option along with the desired domain to allow it on as part of the options array:
https://codeigniter.com/user_guide/incoming/routing.html?highlight=router#limit-to-hostname

Which means an app could have multiple domain pointing at it, but current_url() would only return the one set in config.
Use case: CMS, multi-tenant app, multi-vendor app, etc.
Steps to Reproduce
Call current_url() when loading the app with a host like sub.example.com while in the config, you would set $baseURL to www.example.com for example.
Expected Output
current_url() is the name implies should retour the current url and not the current url with $baseURL as host.
Anything else?
No response

I started writing a library, it will be ready in a few days, I think it will solve the problem

@szajens Please share once you have it done! I'm curious about your solution.

@szajens Please share once you have it done! I'm curious about your solution.

PECE Routing for CI4
I'm sorry it took so long, but I had a lot of other work.
I still have to put the library in order.
I have a problem with English, and I will need help from someone who knows English well to correct the README.md
I need to work on the url_to helper in next version

Thanks for sharing! I like the solution. Let me make a free suggestions on the repo structure - mostly, I think that you could release this as its own library that developers could include via Composer, instead of having to merge files into their app/ directory.

To do this you would need composer.json. But this also allows you to specify authorship, set PHP versions, etc
Your Config files don't need to copy the App versions, they can have just your content. For example Events only needs your listening. Here is an example of a library Events.php: https://github.com/tattersoftware/codeigniter4-outbox/blob/develop/src/Config/Events.php
Tests! Adding tests covers you (and any changes you make in the future), gives confidence to developers who want to use your library, and model how your classes work. Even if they are basic to start getting something in there is a good practice.

I did not use a composer, and I had no knowledge of unit testing. I am learning recently.
When I first used the composer, everything was vague to me. But the more I use it, the more I regret why I did not know it before. I suggest you use it.
To learn the unit test, because I was confused recently, I suggest you follow the steps below in order.

Read a short article about it here
Watch the 10-part unit test video here
For more mastery of the official documentation of the unit, see here.
From now on, write a unit test at the same time for all the code you write.
If you have a problem, I will be with you through forum, of course, as far as I know.


Follow us hover effect

The follow us section has icons which do not have any hover effect and I would like to add it.
The hover effect will be that the icons will change color.
So please @ravikr126 @harikesh409 can you assign it to me.

Already a hover effect is present for the icons too many effects will not look good.


Make SwimTransformer's patch_embed customizable through the constructor

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint.


mintfee can not be accessed which will fail mint

If the owner of the contract updates the mintfee user does not have a method to query the mintfee which fails the mint
contracts/TalentLayerPlatformID.sol

What do you mean? mintFee is public

Yes, but there seems to be no function to retrieve the value directly

And if the user calls a contract with more eth than needed will it revert?

I think it's close to https://github.com/code-423n4/2022-11-debtdao-findings/issues/39, imho,

Yes it will revert if the user send too much eth


Why are we ignoring hold in config_play_callback

In led_player and light_player

good question. When I refactored to use keys, I didn't include hold because I thought that would be set in the show or something.. I dunno. oversight. I'll take on adding this back in.

moving to 0.31

Moving this back to 0.30. We need to fix this.

done


Update travis npm key

Coverage remained the same at 100.0% when pulling 21c5cc29ba43124faab36be61c3741330a0bd9ee on develop into e831e76419c659c8e401aa6736f87d1c494bc00a on master.


Fix offline indicator overlaps with navbar when keyboard is closing

Explanation of Change

The bottom padding for modal is conditionally applied based on keyboard status. This PR changes it so we always apply the padding if avoid keyboard is false.
Fixed Issues

$ https://github.com/Expensify/App/issues/51544
PROPOSAL: https://github.com/Expensify/App/issues/51544#issuecomment-2440509185
Tests

Same as QA Steps

[x] Verify that no errors appear in the JS console

Offline tests

Same as QA Steps
QA Steps

Go to workspace settings > Categories
Go offline
Tap Settings
Tap Airlines
Focus on the text input to show the keyboard
Scroll down to dismiss the keyboard
Verify the offline indicator doesn't overlap with the navbar

Web/Desktop: no keyboard shows and no offline indicator in RHP

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is either coming verbatim from figma or has been approved by marketing (in order to get marketing approval, ask the Bug Zero team member to add the Waiting for copy label to the issue)
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If the PR modifies the UI (e.g. new buttons, new UI components, changing the padding/spacing/sizing, moving components, etc) or modifies the form input styles:

[x] I verified that all the inputs inside a form are aligned with each other.
[x] I added Design label and/or tagged @Expensify/design so the design team can review the changes.

[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native

https://github.com/user-attachments/assets/8786db2a-c380-475e-a158-fca6d832fa93

Android: mWeb Chrome

https://github.com/user-attachments/assets/2cbc53f7-101f-466d-b7bd-3d72fc0ea0d6

iOS: Native

https://github.com/user-attachments/assets/ff1533e8-357b-458f-8305-5c5a21dc51a8

iOS: mWeb Safari

https://github.com/user-attachments/assets/77ee6ebb-6667-4f30-8f4e-bcd6d5bef118

MacOS: Chrome / Safari

https://github.com/user-attachments/assets/96db1e79-1bc6-4217-bda5-0936a8fb4319

MacOS: Desktop

https://github.com/user-attachments/assets/27360f8c-eb86-450f-8be9-a2968158e917

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.


feat(aws-apigateway-iot): new aws-apigateway-iot pattern implementation

Issue #61 - aws-apigateway-iot
Description of changes:
This AWS Solutions Construct implements an Amazon API Gateway REST API connected to AWS IoT pattern.
This construct creates a scalable HTTPS proxy between API Gateway and AWS IoT. This comes in handy when wanting to allow legacy devices that do not support the MQTT or MQTT/Websocket protocol to interact with the AWS IoT platform.
This implementation enables write-only messages to be published on given MQTT topics, and also supports shadow updates of HTTPS devices to allowed things in the device registry. It does not involve Lambda functions for proxying messages, and instead relies on direct API Gateway to AWS IoT integration which supports both JSON messages as well as binary messages.
In addition to the pattern, other changes also included in this PR are:

Spelling correction in CONTRIBUTION.md
Enhanced apigateway-helper to support overriding of IntegrationProps & MethodOptions while adding Methods to API Gateway's Resources
Enhanced apigateway-helper to support creation of RegionalRestApi using helper method
Enhanced apigateway-helper to support creation of apikeys
Error handling in apigateway-helper when endpointTypes are provided (instead of endpointConfiguration) as override apiGatewayProps
Updated apigateway-helper to use Interfaces instead of Class implementations (IRole & IRequestValidator)

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

AWS CodeBuild CI Report

CodeBuild project: codebuildgithubautobuildPro-rp7jMDIK1wBN
Commit ID: 658acd7470e51251afc0308aacd5d627a4e5a0be
Result: FAILED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: codebuildgithubautobuildPro-rp7jMDIK1wBN
Commit ID: aa16ce752d42ec6df86f73a532a5a0f7dfd2e55a
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: codebuildgithubautobuildPro-rp7jMDIK1wBN
Commit ID: 9bbae47f4c02bd72dc7c906f8e7893db6ba71c23
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

The PR has been merged and will go out in the next release, thanks for your contribution!


Make use of python f-string to make the code easily readable, consistent and faster.

Feature Request
Hi, All Dogecoin lovers, @rnicoll @patricklodder
I am a python developer and while I was checking our Dogecoin python code, I found that we are not using f-string in a lot of places. Therefore I would like to suggest making use of the python f-string in our code. Python f-string will make our code faster, easily readable, and consistent.
I am suggesting replacing the following things in code with f-strings.

Concatenation (+)
{}.format(variable)
"%s, %d" %(variable)

This would increase our speed significantly, increase code consistency, be easily readable, simple, concise and less susceptible to errors.
Below is the code, which anyone can use for testing my requested changes
import timeit
print(timeit.timeit("""name = "Eric"
age = 74
'%s is %s.' % (name, age)""", number = 10000))

print(timeit.timeit("""name = "Eric"
age = 74
'{} is {}.'.format(name, age)""", number = 10000))

print(timeit.timeit("""name = "Eric"
age = 74
f'{name} is {age}.'""", number = 10000))

Below are sources of the info you all can use to see people's findings

https://www.scivision.dev/python-f-string-speed/
https://medium.com/geekculture/what-you-need-to-know-about-python-f-strings-a410059fbc99
https://stackabuse.com/string-formatting-with-python-3s-f-strings/ - Checkout conclusion
https://saralgyaan.com/posts/f-string-in-python-usage-guide/#Is_Python_f-strings_faster?

I would be more than happy to work on making these changes if everyone agrees that we should go on this path.

I feel a challenge to this is that the 3 ways used currently are all compatible with Python 2.7 and Python 3. f-strings were only added in Python 3.6.

I feel a challenge to this is that the 3 ways used currently are all compatible with Python 2.7 and Python 3. f-strings were only added in Python 3.6.

Do you know as what version of Python we are currently using on Dogecoin project?

I feel a challenge to this is that the 3 ways used currently are all compatible with Python 2.7 and Python 3. f-strings were only added in Python 3.6.

Do you know as what version of Python we are currently using on Dogecoin project?
I don't think that we are using Python 2.7. Most of codes I saw is from Python 3.

Do you know as what version of Python we are currently using on Dogecoin project?

Python 3 by default.
Note though that python is not used inside any production binaries, so this only touches test frameworks and such. Ideally, this would be proposed upstream on bitcoin/bitcoin, because most of the framework code comes from there: less than 300 lines in qa/rpc-tests/test_framework, out of approx 5500, are maintained in through this repository right now. So we'll have to weigh in benefits from this change vs the overhead of maintaining all the changes you would make - also see the refactoring chapter inside the contribution guidelines.

Bitcoin Core has documented that their preferred format method is f'{}' here, and it looks like they've started refactoring their tests just two weeks ago at https://github.com/bitcoin/bitcoin/commit/38975eccd498175ca91a837deefe8d820f16a53e. Perhaps we should put this on hold for a few months? By then, we can either include the changes in the next major after 1.21, or backport them.

it looks like they've started refactoring their tests just two weeks ago

Awesome, thank you for finding this out (I have not had time to read up on recent bitcoin changes, so this helps a lot!)
I'll tag this for 1.21, so we can make a decision when that becomes actual.

Bitcoin Core has documented that their preferred format method is f'{}' here, and it looks like they've started refactoring their tests just two weeks ago at https://github.com/bitcoin/bitcoin/commit/38975eccd498175ca91a837deefe8d820f16a53e. Perhaps we should put this on hold for a few months? By then, we can either include the changes in the next major after 1.21, or backport them.

Thanks for the research!

it looks like they've started refactoring their tests just two weeks ago

Awesome, thank you for finding this out (I have not had time to read up on recent bitcoin changes, so this helps a lot!)
I'll tag this for 1.21, so we can make a decision when that becomes actual.

Please let me know if you need any help from me. I would love to help.

Can I help in this issue? Please let me know asap and I'll start doing it. (I'm on holidays vacations)

@intarpit  @iam-agf  What you can do to help speed this along is to take a look at the two links @slightlyskepticalpotat posted over at the bitcoin repo and help them. That way, we can port those improvements sooner into dogecoin.

That sounds like a good idea. Will look into it.


Duplicate keywords in strimzi-cluster-operator.v0.9.0.clusterserviceversion.yaml

the spec.keyword field is duplicated in strimzi-cluster-operator.v0.9.0.clusterserviceversion.yaml causing errors trying to parse the yaml
https://github.com/operator-framework/community-operators/blob/master/community-operators/strimzi-kafka/strimzi-cluster-operator.v0.9.0.clusterserviceversion.yaml#L17
https://github.com/operator-framework/community-operators/blob/master/community-operators/strimzi-kafka/strimzi-cluster-operator.v0.9.0.clusterserviceversion.yaml#L65

Thank you for bringing this up. We'll be fixing it soon in the next strimzi PR

Fixed by https://github.com/operator-framework/community-operators/pull/83


Update Gitter Chatroom with Org-Specific one

We may need a transition period, or it may make sense to just leave the chat as-is at @gaearon 's gitter site.

I'm not using Gitter, so happy with whatever you folks prefer.

Cool, if that's the case I'll ping the guys who run the reactiflux discord server and see if we can set up a room there


[FLINK-28090][table] Support attachAsDataStream

What is the purpose of the change
Implement attachAsDataStream
Brief change log

support attachAsDataStream

Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: no
The runtime per-record code paths (performance sensitive): don't know
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? yes
If yes, how is the feature documented? not documented

@billyrrr What's the status of this PR?


Add zustand topic

Please confirm this pull request meets the following requirements:

[x] I followed the contributing guidelines: https://github.com/github/explore/blob/main/CONTRIBUTING.md.
[x] I have no affiliation with the project I am suggesting (as a maintainer, creator, contractor, or employee).

Which change are you proposing?

[ ] Suggesting edits to an existing topic or collection
[x] Curating a new topic or collection
[ ] Something that does not neatly fit into the binary options above

Editing an existing topic or collection
I'm suggesting these edits to an existing topic or collection:

[ ] Image (and my file is *.png, square, dimensions 288x288, size <= 75 kB)
[ ] Content (and my changes are in index.md)

Please replace this line with an explanation of why you think these changes should be made.

Curating a new topic or collection

[x] I've formatted my changes as a new folder directory, named for the topic or collection as it appears in the URL on GitHub (e.g. https://github.com/topics/[NAME] or https://github.com/collections/[NAME])
[x] My folder contains a *.png image (if applicable) and index.md
[x] All required fields in my index.md conform to the Style Guide and API docs: https://github.com/github/explore/tree/main/docs

Zustand is a great tool for state management in React. It simple to use.

Something that does not neatly fit into the binary options above

[ ] My suggested edits are not about an existing topic or collection, or at least not a single one
[ ] My suggested edits are not about curating a new topic or collection, or at least not a single one
[ ] My suggested edits conform to the Style Guide and API docs: https://github.com/github/explore/tree/main/docs

Please replace this line with an explanation of your proposed changes.

Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.

Collections checks should be resolved on this PR.


fix: if a line contains a url adjust the final_box_width accordingly, remove whitespace before a comment for indented comments (inside code), fixes #8 and #9

This PR hopefully fixes #8 and #9, I implore you (@LudoPinelli) to test this a bit extensively yourself as there's a couple of internal changes. I have tested it on a variety of input and all seems ok to me, but always good to have another set of eyes.
Also cc'ing @balazser as I'm sure he'd be elated to see these issues fixed (after all, he did open them :slightly_smiling_face:)

Awesome! The fact is that I didn't code for quite a year now and I was a beginner so obviously, I still am, but on top of that I barely understand what I did back then :/ So your PR is greatly appreciated!
I didn't extensively tested it but for what I could try it seems to work, so even if there is still some pb in some cases, it works better than it did so I merge it. People can still open issues if needed.
Thanks a lot Amaan! :)

No prob! Thanks for merging! :)


NFC: silence some -Wrange-loop-analysis warnings.

lib/SILOptimizer/Mandatory/MandatoryInlining.cpp:625:20: warning: loop variable 'Arg' is always a copy because the range of type 'swift::OperandValueArrayRef' (aka 'ArrayRefView<swift::Operand, swift::SILValue, getSILValueType>') does not return a reference [-Wrange-loop-analysis]
  for (const auto &Arg : AI.getArguments())
                   ^
lib/SILOptimizer/Mandatory/MandatoryInlining.cpp:625:8: note: use non-reference type 'swift::SILValue'
  for (const auto &Arg : AI.getArguments())
       ^~~~~~~~~~~~~~~~~
1 warning generated.

lib/SILOptimizer/UtilityPasses/SerializeSILPass.cpp:134:20: warning: loop variable 'res' is always a copy because the range of type 'swift::SILInstructionResultArray' does not return a reference [-Wrange-loop-analysis]
  for (const auto &res : inst.getResults())
                   ^
lib/SILOptimizer/UtilityPasses/SerializeSILPass.cpp:134:8: note: use non-reference type 'swift::SILValue'
  for (const auto &res : inst.getResults())
       ^~~~~~~~~~~~~~~~~

@swift-ci Please smoke test

const isn't needed here either. It is a value type. (TBH I would just put in SILValue since it is almost the length of auto. So one is not losing anything really and gets a little bit of clarity).

(TBH I would just put in SILValue since it is almost the length of auto. So one is not losing anything really and gets a little bit of clarity).

Done.

@swift-ci Please smoke test

Merging now, I don't believe this is controversial.

Sorry, should have said after that LGTM!


Modified reval function for shallow water to return nan in overturning case

So that it plots a gap rather than a discontinuity that doesn't agree with the x-t plane plot in the Shallow_water.ipynb notebook.

Thanks!  I wasn't sure what to plot in that region, but I think leaving it blank makes sense.  I will remove some additional code that I had added just to modify the plotting in that region (since it's now unnecessary).

Actually, this looks good as it is.  I'll go ahead and merge.


Question: possible to use EventSource in Xamarin.Forms and capture events on Android phone?

I've created an app with Xamarin.Forms that targets Android and UWP (16299) with .net standard 2.0 library to share the code and the views. Can I raise here EventSource events and is there a way to capture them on Android 7.1.2 (LineageOS 14.1)?

I do not personally have no experience trying to use EventSource on the Xamarin platform.
My expectation is that there is no particular support, but there is a good chance that basic EventSource-EventListener functionality works (easiest way is to try it).
Thus you can make an EventListener that logs to a file and it should work anywhere (including Android).
I don't know of more than that.


[RFC] Upstream Wi-Fi registers.

Hi, I'm currently in the process of implementing a Wi-Fi stack for the ESP32 in pure rust and I have to use raw pointer to access the registers, we found while reversing.
I wanted to ask if we could upstream our patches for the SVD, to access them through esp-hal, or should maintain them out of tree.

It should be fine to upstream your findings to the PACs, we're unlikely to use them in esp-wifi (unless you figured it all out :D) but I see no harm in them being there, provided they are of decent quality.

Yeah, they're probably not of much use for esp-wifi. The thing is, that most of these names are educated guesses at best, since they have like two references and some random value is written to them. Some are more obvious, like 0x3ff73090, which is referenced in hal_mac_rx_get_last_dscr. I'd suggest putting them behind a feature flag.


API server crash  when the storage is too big

HKube micro-service
API server
Describe the bug
A clear and concise description of what the bug is.
Expected behavior
A clear and concise description of what you expected to happen.
To Reproduce
https://<IP_ADDRESS>/hkube/api-server/api/v1/storage/keys/test-hkube
the API server crash

We can limit the number of keys we are returning.


Create a migration instructions to version 5.0

We need to add an instruction how to migrate application to the newest version of the library. In version 5.0.0 we have changed API and applications that are using library in version 4.x will not work with the new release.

Added in #259


XIVY-6216 Replace Axon Ivy Logos with new ones

No, I've only adjusted the *.svg in the webContent folder and the and the content objec Banner *.png in the cms.
I don't know if the Banner co is used at all.
Templates reference the same *.svg as before. But with different image data.


optimize: Hard to enforce happens before behavior in global optimization

The current implementation of GuessAndCheck is subtly wrong.
In IterateGlobal, there is a mutex to make sure the current task gets the best location, and then returns this with MajorIteration. This doesn't actually behave as expected. The problem is that when this returns, there is no guarantee that updateOptLoc is called immediately. So, in particular, we can have TaskA that gets the current best location, and returns MajorIteration. Now, TaskB finds a better value, so it returns MajorIteration with that better value. Assume that now, updateOptLoc is called for TaskB, updating the optimum location to the best found. Then, TaskA is resumed, and updateOptLoc and the best overall value is overwritten with the value in TaskB.
I don't know if there is a better way to structure on the Global side, but if there isn't we need to document that the Method needs to synchronize calls to MajorIteration itself. For example, this is not a problem for CMA-ES, since the MajorIteration uses are synchronized (when the population finishes).
I'm working on a third optimizer at the moment that will try to implement this synchronization (how I found this bug), and we can see how tedious the fix is.

This is worse than I thought. CMA-ES does try to synchronize, but incorrectly. It's entirely possible that

TaskA updates, giving a list of new locations and returning MajorIteration
Tasks B-E evaluate all of the elements in the new list.
TaskB updates, giving a list of new locations and returning MajorIteration
TaskB has updateOptLoc called
TaskA has updateOptLoc called

I think we need to enforce some kind of FIFO order on MajorIteration at least.

This was fixed with #352


When will postgresql be supported?

When will postgresql be supported?

@kangxukangxu Will be released in version 0.8.

When will the version 0.8 be released?

@kangxukangxu Will be released in version 0.8.

Version 0.9 is out, but PostgreSQL is not supported.
When to support PostgreSQL?

Will the 1.0 version support PostgreSQL ?

:tada::tada::tada:  Already supported in version V1.1.0


Sub Sub Menu

Hi,
I would like to have multiples sub menu in this theme like

Topic 1
Topic 2
-- 	Topic2 > Epic 2
--	Topic2 > Epic 2 > Story1
How to do it?

Like this: https://codingnconcepts.com/hugo/nested-menu-hugo/
Will be part of one of the upcoming releases of Doks.

This would be great, I'd like to use this feature as well. Thanks Henk!


Load More Comments

I get the comments with this code
const comments = await instagram.feed.mediaComments(media_id).request()
and in each request, I get 20 first comments if media have more than 20 comments How I can Load more the comments for one feed

You use it like every other feed. You can call request() or items() until isMoreAvailable() returns false.


Update services to manage their WSA capabilities

Overview
Services that depend on specific WSA capabilities now properly set and unset them when turned on and off in the configuration profile.

MixedRealitySpatialAwarenessSystem

SpatialPerception

WindowsSpeechInputProvider

Microphone

WindowsDictationInputProvider

Microphone
InternetClient

Changes

Fixes: #3695

@keveleigh , looks like there is a merge conflict that needs to be resolved.

@davidkline-ms thanks for the heads up! resolved


Updated readme

:sparkles: What kind of change does this PR introduce? (Bug fix, feature, docs update...)
Docs update
:arrow_heading_down: What is the current behavior?
It's not clear that users should import the platform specific package when using platform specific classes
:new: What is the new behavior (if this is a feature change)?
Now it's clear!
:boom: Does this PR introduce a breaking change?
No
:bug: Recommendations for testing
Does not apply
:memo: Links to relevant issues/docs
Does not apply
:thinking: Checklist before submitting

[x] I made sure all projects build.
[x] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy.
[x] I updated CHANGELOG.md to add a description of the change.
[x] I followed the style guide lines (code style guide).
[x] I updated the relevant documentation.
[x] I rebased onto current master.

@florissmit1 one small thing, can you please update the version number in geolocator/pubspec.yaml and add an entry to the geolocator/CHANGELOG.md explaining the readme update?


Retry proxied request

Hi, I am trying to proxy some requests with a different authorization header (bearer token).
Now I would like to retry the request if the response is 401, so that I could use refresh the token first. Also I would like to retry only once. Is there a way to do it?
Note: For now I am defining the proxy on the controller.

@twitchax It sounds great to me. Important (IMO) would be the following acceptance criteria:

Retry if a condition is satisfied.
Allow other code to run before retry or if we decide to not retry.

@h82258652 Sorry for the delayed response. Maybe it works, but I am struggling with an operation that I need to do between attempts. I need to access the user's claims. I noticed the RetryAsync has an onRetry action as parameter, but I don't find a way to access the claims from there.