Issue #1786 : Why Python

Description 📜
Added why python readme
Fixes # <1786>

Type of change 📝

-[x] Doc#umentation (Content Creation in the form of codes or tutorials)

Domain of Contribution 📊

[x] Python_#Domain

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented on my code, particularly in hard-to-understand areas.
[x] My changes generate no new warnings.
[x] I'm GWOC'21 contributor

Screenshots / Gif (Optional) 📸

Please add an issue number in your PR so that it is easier to track the issue you're working on. Also remove the spaces from your checkboxes as they're not in the proper markdown format currently. (you've used [x ] and after removing spaces it should look like [x])

Done please check now

It seems like #3010 is a pull request for the issue #206 which is already assigned and you got assigned to a pull request for the same through the bot, since @prathimacode-hub is the mentor of that issue, @prathimacode-hub can you have a look at this pull request and confirm.


pty.Start and pty.StartWithSize not working on ubuntu 20

When I try to run the command pty.StartWithSize with /bin/zsh as cmd arguement(tried with /bin/bash as well) I am getting the following error
rpc error: code = Internal desc = :fork/exec /bin/zsh: no such file or directory

Seeing the same error even if I use simple pty.Start
Can someone help me with this?

This kind of question would be better suited for StackOverflow.
It is not related to the library. rpc error indicates some kind of remote call, which is not part of the lib. fork/exec is an error coming from the standard library.
The error means you do not have the /bin/zsh or /bin/bash binaries where you try to execute them (or that some of the dynamic libraries required by the binary are missing).
I would suggest using /usr/bin/env zsh or /usr/bin/env bash which is more flexible and will work in more environments.
If that doesn't do the trick, then I recommend reducing complexity, first remove the lib and use the standard library directly, if that doesn't help, reduce complexity further and remove the rpc library in the middle. Once you find the solution, you can bring back the libs.
Closing for now as it is outside the scope of this project.


Updates to Projects API

Projects API updates from Matei
Call an internal tracking._create_run method instead of tracking.start_run() in projects.run, to avoid modifying the currently-active run in projects.run.
Explicitly disallow nested runs (i.e. with start_run() nested within with start_run()), rather than silently continuing the outer run.
Add support for launching runs synchronously/asynchronously via a  boolean block argument passed to projects.run.
Return a run ID from mlflow.projects.run
Adds a new tracking.get_run API that returns the run with a specific run UUID from the current tracking server
New unit tests in tests/projects/test_projects.py

Codecov Report

Merging #82 into master will increase coverage by 0.03%.
The diff coverage is 73.19%.

@@            Coverage Diff             @@
##           master      #82      +/-   ##
==========================================
+ Coverage   51.26%   51.29%   +0.03%
==========================================
  Files          87       88       +1
  Lines        4237     4289      +52
==========================================
+ Hits         2172     2200      +28
- Misses       2065     2089      +24

Impacted Files
Coverage Δ

mlflow/sklearn.py
78.68% <ø> (ø)
:arrow_up:

mlflow/cli.py
83.33% <100%> (ø)
:arrow_up:

mlflow/projects/__init__.py
63.77% <44.87%> (ø)

mlflow/tracking/__init__.py
83.42% <65.21%> (+1.2%)
:arrow_up:

mlflow/projects/_project_spec.py
98.9% <98.9%> (ø)

mlflow/utils/process.py
95.23% <0%> (+4.76%)
:arrow_up:

Continue to review full report at Codecov.

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

How does this change:

Explicitly disallow nested runs (i.e. with start_run() nested within with start_run()), rather than silently continuing the outer run.

interact with users calling start_run() inside of a program which is run via mlflow run? For example, mlflow run example/tutorial -P alpha=0.1

We definitely want mlflow run to still capture parameters. Long term, I think we should also allow nested runs in the same Python process and basically push/pop them onto a stack, but it's ok if we don't do that right now.

Thanks for the review / catch @aarondav, for some reason I can't seem to repro the issue you hit with the projects.run() API being broken - we also do have a test that should catch it (tried to beef it up a bit in this PR: https://github.com/databricks/mlflow/pull/82/files#diff-31eb027b957c940bd26249fe8c7f7703R73). Maybe we can debug together at some point - the run ID should be passed to the child process via an environment variable, & it should pick that run ID up instead of creating a new run when start_run is called. Open to other solutions too, thanks :)

Ah my apologies @aarondav I am able to reproduce the issue - when running with --no-conda (to ensure the MLflow code from this PR is used when running the project), we see the desired behavior (only one run created, params logged properly).
However without --no-conda, the MLflow logic from this PR is used to launch the run, but the conda environment used for the run contains mlflow 0.2.1, resulting in weird behavior (e.g. we change the name of the environment variable used to track run ID in this PR, so the subprocess launched for the run doesn't pick up the existing run ID --> two runs are created). In general this is hard to avoid, but I guess we should be mindful of backwards compatibility as you said in #100.

To clarify:
The environment variable naming change is backwards incompatible, and adding a test that runs the example project in a conda environment would help catch such changes. At this stage in the project though I don't know if it's something we should worry about.

Btw, I think we should always be conscious of backwards incompatibility,
but our willingness to break it is what changes over time. For example, we
should always document incompatible changes in the release notes at any
stage in the project.
Could you clarify for posterity why the example does work? Why is the run
resumed in this case
On Tue, Jul 3, 2018, 3:07 AM Siddharth Murching<EMAIL_ADDRESS>wrote:

To clarify:
The environment variable naming change is backwards incompatible, and
adding a test that runs the example project in a conda environment would
help catch such changes. At this stage in the project though I don't know
if it's something we should worry about.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/databricks/mlflow/pull/82#issuecomment-401887750, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABVdt68AES0LiUWtMzWnY7_dB5dCgWL7ks5uCmFrgaJpZM4U3KPc
.

That makes sense @aarondav. In this case, the run is resumed via the same mechanism as before - we set the rracking._RUN_ID_ENV_VAR environment variable in the subprocess that runs the entry point command (see here). The run ID is then picked up in start_run. Since we call _get_or_start_run for the user if they haven't already in each of our tracking.log_xyz methods (see here), we'll always hit this code path.

We're merging this, as I think all of @mateiz's comments were addressed. Can always fix up in post!


Packerina fixes

Purpose

Describe the problems, issues, or needs driving this feature/fix and include links to related issues.

Fixes #
Approach

Describe how you are implementing the solutions along with the design details.

Samples

Provide high-level details about the samples related to this feature.

Remarks

List any other known issues, related PRs, TODO items, or any other notes related to the PR.

Check List

[ ] Read the Contributing Guide
[ ] Required Balo version update
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Refer: https://github.com/ballerina-platform/ballerina-lang/pull/18535


NavigationView.PaneDisplayMode="Top" doesn't layout tabs correctly when selecting items in the overflow menu

Describe the bug
When NavigationView with PaneDisplayMode="Top", it doesn't update the layout correctly when an item is selected from the overflow menu.
Steps to reproduce the bug
Steps to reproduce the behavior:

with the following code
click on the NavigationViewItem inside the overflowed menu

XAML:
<winui:NavigationView PaneDisplayMode="Top" MenuItemsSource="{x:Bind SomeItems}"/>

C#:
// need a long list to make the tabs overflow
public string[] SomeItems { get; } = new string[] { "Tab 1", "Tab 2", "Tab 3", ... , "Tab 20" };

Screenshots
Yeah I know a picture worth a thousand words, but this time a thousand word is probably not enough, so I attached a video on Youtube...
https://www.youtube.com/watch?v=kjip7NWV5j0
however with XBox Game Bar, the overflow dropdown flyout is not captured...
As you can see in the video, PaneFooter is pushed outside the window...
Version Info

NuGet package version: v2.2.190430003-prerelease

Windows 10 version
Saw the problem?

Insider Build (xxxxx)

May 2019 Update (18362.145)
 yes

October 2018 Update (17763)

April 2018 Update (17134)

Fall Creators Update (16299)

Creators Update (15063)

Anniversary Update (14393)

Device form factor
Saw the problem?

Desktop
  yes

Mobile

Xbox

Surface Hub

IoT

however, with these:
XAML:
<winui:NavigationView PaneDisplayMode="Top" MenuItemsSource="{x:Bind SomeItems}" SelectionChanged="NavView_SelectionChanged"/>

C#:
// need a long list to make the tabs overflow
public string[] SomeItems { get; } = new string[] { "Tab 1", "Tab 2", "Tab 3", ... , "Tab 20" };
...
private void NavView_SelectionChanged(winui.NavigationView sender, winui.NavigationViewSelectionChangedEventArgs args) =>
  NavView.InvalidateMeasure();

Then the NavigationView will render it's children correctly.

Interesting bug, thanks for the detailed report!

Another report in #943.

Thanks!


Trigger NeoBoard Standalone CI checks

:heavy_check_mark: Checklist

[ ] A changeset describing the change and affected packages (more info).
[ ] Added or updated documentation.
[ ] Tests for new functionality and regression tests for bug fixes.
[ ] Screenshots or videos attached (for UI changes).
[ ] All your commits have a Signed-off-by line in the message (more info).

Doesn't work as planned, because the other repo is not public


Tests integer overflow on 32-bit

This line has an integer overflow on 32-bit machines, causing tests to fail.
cf https://github.com/JuliaLang/julia/issues/18741
Probably a good idea to switch on Appveyor, as that seems to be the most reliable way to test 32-bit builds

I am the author of that code.  It sets up a large "Sieve of Eratosthenes" using SortedSets and SortedDicts to exercise the code for adding and deleting entries in BalancedTree32.jl.  This code in BalancedTree23.jl has many branches because there are many cases; the leaf could be a 2-node; it could be a 3-node; there could be 3-nodes all the way to the top of the search tree, etc.  I wrote my own code coverage tool (https://github.com/StephenVavasis/microcoverage) that checks coverage of every branch (i.e., every operand of ? :, && and ||) of every expression of every statement, and I discovered that I need a fairly large sieve in order to hit all of the branches.  I never tested this code on a 32-bit machine.
So I propose as a fix: Line 345 of the indicated file should be replaced by:
N =   myplatform_is_32_bit? 500 : 5000
Line 562 may need a similar patch.
I don't know the correct way to code the predicate: "my_platform_is_32_bit".
On a related note, is there a "standard" way to test coverage of every branch of the ?:, && and || operands?

I don't know the correct way to code the predicate: "my_platform_is_32_bit".

Either  Sys.WORD_SIZE == 32 or Int == Int32 should work.


testing on Windows

opening an RDP session (via https://github.com/nelsonjchen/reverse-rdp-windows-github-actions) on a GitHub Actions runner

Sorry! Was trying to test https://github.com/microsoft/LightGBM/issues/3469#issuecomment-785538447 and meant to open this against my fork.


WIP: Non public type hints

Type-hint non-public methods as far as possible, to catch type errors earlier and give static analysers more things to get traction on.

Coverage decreased (-0.007%) to 97.531% when pulling 452bfff1fb384af8b3e96cf5c523e7fd3a34de1e on CyberiaResurrection:NonPublicTypeHints into 8c1d8440c7787140357e7c278a6b2f3816680e42 on Algo-Web:master.


Fuse.py may not work properly

When running inference on a finished lora using the created adapter, example:
python lora.py --model "mlx-community/Nous-Hermes-2-Mixtral-8x7B-DPO-4bit"
--adapter-file "mixtral.npz"
--max-tokens 50
--prompt "Question: ELI5 how to make great pizza./n Assistant:"
You seem to get the corrected finetuned answer, instead when running the inference on you lora fused model, you get the same exact answer as the original model

There was a bug in mlx-lm that caused the lora not to apply during fuse. Would you try installing the latest mlx-lm to see if it fixes the issue?
pip install -U mlx-lm

Ok let me update, fuse the model again and upload

Ok let me update, fuse the model again and upload

Sorry for the inconvenience, and I am thinking maybe we can find a better way to share the mlx model with adapters instead of using a fused model. because during the de-quantization process, there will be some performance impact caused by quantization rounding.

We could easily upload the adapters to HF as well. In fact that's really all we'd need to upload as long as we track the base model..
That said it is faster for inference to use a pre-fused model.. so one may want to do that anyway.

We could easily upload the adapters to HF as well. In fact that's really all we'd need to upload as long as we track the base model..
That said it is faster for inference to use a pre-fused model.. so one may want to do that anyway.

Yeah, we should be able to support both. And mlx doesn't have many legacy issues, so including the adapters with the base models, sounds very good to me.


Make sure service instance name has meaning

Keep service instance register based on UUID, but change name to a meaning string.

FYI @hanahmily meanwhile, please change the instance drop list in service page. Make sure it shows the name of each instance. Keep UI consistency.

Coverage decreased (-0.009%) to 12.303% when pulling 4d21027efa2cc64a43a9f27857363c13ef3a4ebe on bug-fix into 56fbb0d26e958ea473fdbac896414b502d704ebf on master.


#10100: Add support for paged update_cache and fill_cache

Ticket
#10100
I'm reopening this PR because it broke build and was reverted.
Problem description
Please see issue for detailed description.
To support paged attention, we need update_cache and fill_cache to take a page_table tensor for indirect indexing into the paged KV cache.
What's changed
This PR adds support in paged_update_cache and paged_fill_cache to take a page_table tensor such that these ops support paged KV caches.
Checklist

[x] Post commit CI passes https://github.com/tenstorrent/tt-metal/actions/runs/10082990085
[ ] Model regression CI testing passes (if applicable) (N/A)
[x] New/Existing tests provide coverage for changes

Gonna defer to you on this review lol @ayerofieiev-tt

@ayerofieiev-tt Can I get a re-review please?


Stretching over-scroll stretches without limits when used Multi-touch

Steps to Reproduce:

Use the Over-scroll behaviours on any scrollable widget.
scrollBehavior: MaterialScrollBehavior( androidOverscrollIndicator: AndroidOverscrollIndicator.stretch,),
Start scrolling normally, this works perfectly
Now, over scroll the view, hold the finger and use another finger to over scroll.

Expectation :
You will be able to over scroll infinitely and you UI will get stretched without limits.
Expected results:
My assumption is the stretch over-scroll should not be triggered if the stretch is already implemented.
Actual results:

This is an example of live app google Pay having this issue

Orignal UI
After multiple continued over-scroll action

Hopefully everyone can face this problem.. this can also be a behaviour of specific OEMs,
So adding my device for ref: Samsung s10+
Sample Code:
/* main.dart */
void main() async {
runApp(Test());
}

class TextScreen extends StatelessWidget {
  const TextScreen({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: SafeArea(
          child: ListView.builder(
            itemBuilder: (context, index) => ListTile(
              title: Row(
                mainAxisAlignment: MainAxisAlignment.spaceBetween,
                children: [
                  Text(
                    index.toString(),
                  ),
                  Container(
                    height: 30,
                    width: 30,
                    decoration: BoxDecoration(
                      border: Border.all(
                        color: Colors.black,
                        width: 2,
                      ),
                      borderRadius: BorderRadius.all(
                        Radius.circular(25),
                      ),
                    ),
                  )
                ],
              ),
            ),
          ),
        ),
      ),
      scrollBehavior: MaterialScrollBehavior(
        androidOverscrollIndicator: AndroidOverscrollIndicator.stretch,
      ),
    );
  }
}

Logs
[✓] Flutter (Channel stable, 2.10.2, on macOS 12.1 21C52 darwin-x64, locale en-IN)
  • Flutter version 2.10.2 at *****/development/flutter
  • Upstream repository https://github.com/flutter/flutter.git
  • Framework revision 097d3313d8 (9 days ago), 2022-02-18 19:33:08 -0600
  • Engine revision a83ed0e5e3
  • Dart version 2.16.1
  • DevTools version 2.9.2

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

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

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

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

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

[✓] Connected device (2 available)
  • **** (mobile) • O**NHQ****L9L • android-arm64  • Android 12 (API 31)
  • Chrome (web)     • chrome           • web-javascript • Google Chrome 98.0.4758.109

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

Hi @RitickSaha, Thanks for filing the issue. Please share a minimal and complete code sample along with the output of flutter doctor -v to investigate the issue further.

Hi, @maheshmnj, Thanks for reaching back, I have attached the needed thing to reproduce the issue.

Thanks for the code sample @RitickSaha, I am kind of not sure If I understood your 3rd reproducible step I tried to stretch the UI by holding a stretch with another finger and couldn't see any unusual behavior Could you please clarify your 3rd step.
https://user-images.githubusercontent.com/31410839/156113328-8db602d6-5848-4dc3-ad53-f0b17586c56d.mov

flutter doctor -v (mac)
[✓] Flutter (Channel stable, 2.10.2, on macOS 12.1 21C52 darwin-arm, locale en-GB)
    • Flutter version 2.10.2 at /Users/mahesh/Documents/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 097d3313d8 (2 days ago), 2022-02-18 19:33:08 -0600
    • Engine revision a83ed0e5e3
    • Dart version 2.16.1
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

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

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

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

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

[✓] Connected device (3 available)
    • Redmi K20 Pro (mobile) • <IP_ADDRESS>:5555 • android-arm64  • Android 11 (API 30)
    • macOS (desktop)        • macos            • darwin-arm64   • macOS 12.1 21C52 darwin-arm
    • Chrome (web)           • chrome           • web-javascript • Google Chrome 98.0.4758.102

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

• No issues found!

Thanks for the update @RitickSaha, I can reproduce the issue, Basically, we could stretch the overscroll as long as we want presuming the pointer never left the screen.
Keep an eye on the bottom of the list in the video to see the list being overstretched
https://user-images.githubusercontent.com/31410839/156174099-ffcd28a6-f230-4c2e-8171-8a1756782a6f.mov

flutter doctor -v (mac)
[✓] Flutter (Channel stable, 2.10.2, on macOS 12.1 21C52 darwin-arm, locale en-GB)
    • Flutter version 2.10.2 at /Users/mahesh/Documents/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 097d3313d8 (2 days ago), 2022-02-18 19:33:08 -0600
    • Engine revision a83ed0e5e3
    • Dart version 2.16.1
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

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

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

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

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

[✓] Connected device (3 available)
    • Redmi K20 Pro (mobile) • <IP_ADDRESS>:5555 • android-arm64  • Android 11 (API 30)
    • macOS (desktop)        • macos            • darwin-arm64   • macOS 12.1 21C52 darwin-arm
    • Chrome (web)           • chrome           • web-javascript • Google Chrome 98.0.4758.102

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

• No issues found!

[✓] Flutter (Channel master, 2.11.0-0.0.pre.715, on macOS 12.1 21C52 darwin-arm, locale en-GB)
    • Flutter version 2.11.0-0.0.pre.715 at /Users/mahesh/Documents/flutter_master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 8b95cd6f35 (7 hours ago), 2022-02-28 16:31:12 -0800
    • Engine revision 615a60512c
    • Dart version 2.17.0 (build 2.17.0-150.0.dev)
    • DevTools version 2.11.1

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! CocoaPods 1.10.2 out of date (1.11.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on
        the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

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

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

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

[✓] Connected device (4 available)
    • Redmi K20 Pro (mobile) • <IP_ADDRESS>:5555                     • android-arm64  • Android 11 (API 30)
    • iPhone 13 Pro (mobile) • CBEF6BFA-D3DC-4680-8900-E01C62A4B04C • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-15-2 (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 12.1 21C52 darwin-arm
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 98.0.4758.109

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

! Doctor found issues in 1 category.

I looked at material 3 docs I couldn't find much about the expected behavior, May be @Piinks might have more info on this, Labeling this issue for further investigation from the team.
There's an ongoing discussion about this https://github.com/flutter/flutter/issues/82906

This is probably caused by https://github.com/flutter/flutter/issues/11884
The stretch is informed by scrolling notifications. It does not know how many input devices may be contributing to them, so as more pointers drag on the scroll view, the indicator only knows how far the scroll view has been overscrolled, not how it got there.
IIRC there is not a hard-coded stretch limit in the native implementation, but I'll double-check to see that the Android version has not changed since then.
I think I can put in an upper bound limit that restricts the effect to the largest distance one pointer can traverse over the length of the screen, so even if you add more pointers it will reach a reasonable stopping point.
Looking into this now...

Also related to #38926

The [BouncingScrollPhysics] is also affected by this bug. You can use multiple fingers to increase the overscroll more and more.


In debug mode, hide password from selenium url

When using authenticated requests to selenium, password should not be logged

@minusnine thanks for your code review. kindly have a look at the changes.


spelling error in English gloss

I'm opening this issue because I've come across a spelling issue in the English gloss of a word. Perhaps I can re open this issue every time I find another error, as I imagine there's enough to fill up the issues tab entirely.
I also recognize that this is probably my error. Sorry!
ohtêw
It gboils

Obviously, this should be:
ohtêw
It boils

Fixed in crkeng.xml and Maskwacis.tsv. (Would prefer not to update manually engcrk.xml, but may yet have to). What is yet needed is importing this to itwêwina.

@atticusha In the case of MD, one should edit both the original source, Maskwacis.tsv, and the derivative, crkeng.xml (until we have an automated script creating the XML). Both are to be found in the ALTLab repo: .../altlab/crk/dicts/:
ls -l Maskwacis.tsv crkeng.xml
-rw-r--r--  1 arppe  staff  1774135 21 Jul 00:08 Maskwacis.tsv
-rw-r--r--  1 arppe  staff  5555255 21 Jul 00:08 crkeng.xml

After such edits and fixes, we still need to import crkeng.xml into itwêwina.

This seems to have gotten fixed, one way or another, cf.

But on the longer term, the two English definitions should be considered aggregated as one, with the double source coding for [MD CW].


wangkanai/Detection ArgumentNullException: Value cannot be null.  Parameter name: Context

@wangkanai Am trying to use wangkanai/Detection in .net core 2.0 and followed all steps mentioned on [https://github.com/wangkanai/Detection](this link). but am getting exception and unable to start my project. any help would be appreciated. here am attachinh browser screenshot.

Why is your Context null? this is by design to throw an exception.

@wangkanai  I resolved this issue long ago unfortunatly don't remember the solution.you can close this question.

Ok then, thank you.


How to run this boilerplate in c9.io?

Hello!
Help me find the reason why in the current configuration, I can not start the application. Gives an error message: http://s2.micp.ru/E0CD4.png
Thanks!

Seems like you are missing babel transpiling on some step, make sure you are using included webpack config


pin rspec to 3.1.x for now

rspec 3.2.0 release changed some private APIs in rspec that we were using for audit
mode and broke our master (kind of expected/understandable).

@chef/client-engineers @chef/client-core should fix audit mode failures on master.

:+1:

:+1: BTW the reasoning for changes in RSpec is here: http://rspec.info/blog/2015/02/rspec-3-2-has-been-released/ and https://github.com/rspec/rspec-core/pull/1808

:+1:


We didn't set values after calculation while there is a fnext branch.

The following program sample.go triggers a wrong result:
package main
type Fromage struct {
	Done bool
}

func main() {
	a := Fromage{
		true,
	}

	println( a.Done && true )
}

Expected result:
$ go run ./sample.go
true

Got:
$ yaegi ./sample.go
false

Function deref and getIndexSeq as well as getPtrIndexSeq are involved. I'm sure that there are lots of similar code blocks that need to be fixed which you can search by keyword if n.fnext != nil.
Thanks for your great project!

It seems that I misunderstand fnext.  Maybe we just need to change case landExpr part in cfg.go.

Yes, support of  landExpr in type analysis is missing, it has to be added first, i.e the following test has to pass:
a := true && true

Then the correction of the bug itself will be easy.

Look at nodeType() in type.go, this is where the case is missing.

Actually speaking, It's hard to understand these codes. Sorry for providing wrong solutions. Thanks for your help.

Are there any books for understanding those concepts such as tnext/fnext?

Look at nodeType() in type.go, this is where the case is missing.

This solved a := true && true. While sample.go still gives the wrong answer.

I'm afraid the particular concept of fnext tnext (true and false branch) is not described in any book. It's a process of mine, consisting of wiring the Control Flow Graph in the Abstract Syntax Tree, and it leads to important simplifications and optimizations at run (much less indirections and tests than usual byte code machines).


Support batch deletion of packages.

Feature Description
I have many software packages that have not been cleaned up. Recently, when I wanted to clean them up, I found that there were too many. I hope to be able to batch delete them.
Screenshots

As a workaround you could use a cleanup rule. Currently we don't have a such a multi select "framework" I think.

We can batch closing issues.

Would love this for containers as well.  Lots of containers have multiple tags, right now each tag for each image needs to be deleted before the image it fully purged -- takes a long time :)


Attribute access can break dependency analysis

Attribute access like (complicated + expression).attribute removes the cell's dependence on cells defining complicated and expression.

Expected behavior: with cell 9 highlighted, cells 1 and 2 (that define a and b) should have purple dots. If cells 1 or 2 are updated, cell 9 should be updated too due to reactivity.
Observed behavior: cells 1 and 2 don't have purple dots, cell 9 is treated as independent, but it isn't. When cells 1 or 2 change, cell 9 is not re-executed.

Simpler expressions like a.attribute work fine.
Full notebook: Untitled.ipynb.gz

Installed packages related to Jupyter:
> pip list | grep "ipy\|jupyter"
ipyflow                   0.0.198
ipyflow-core              0.0.198
ipykernel                 6.29.3
ipython                   8.22.2
ipython-genutils          0.2.0
ipywidgets                8.1.2
jupyter                   1.0.0
jupyter_client            8.6.1
jupyter-console           6.6.3
jupyter_core              5.7.2
jupyter-events            0.9.1
jupyter-lsp               2.2.4
jupyter_server            2.13.0
jupyter_server_terminals  0.5.3
jupyterlab                4.1.5
jupyterlab_pygments       0.3.0
jupyterlab_server         2.25.4
jupyterlab_widgets        3.0.10

Thanks for reporting the issue! I just pushed a fix + new release (0.0.199), you should be able to grab it with pip install --upgrade ipyflow


[TEST: Suggested formatting improvements]: for README.md for better readability

This PR suggests formatting improvements for the file.

Acrolinx Scorecards
We currently enforce a minimum score of 80.
Click the scorecard links for each article to review the Acrolinx feedback on grammar, spelling, punctuation, writing style, and terminology:

Article
Score
Issues
Scorecard
Processed

msteams-platform/tabs/what-are-tabs.md
87
5
link
:white_check_mark:

More info about Acrolinx
Use the Acrolinx extension, or sidebar, in Visual Studio Code to check spelling, grammar, style, tone, clarity, and key terminology when you're creating or updating content. For more information, see Use the Visual Studio Code extension to run Acrolinx locally.


Updated state azure cosmos db file

Fixed the class structure as earlier there were just namespaces and code without any names of class and methods.

Looks good.


Fixed #4679, #4753 dynamic resizing

Simplified resize logic
Always update next requested resolution.
Check for all requested properties for change and remember them

@akallabeth did you test that with a server 2012r2 ? I'm not against removing the timer, but I had introduced it because sending resizes too fast was crashing the whole server in that configuration...

@hardening did not remove the timer, just removed the hard coded handle positions with a position counter.
The rest is just centralizing the check for the should I send or wait.

@mfleisz @MartinHaimberger Thx for review, anyone want to merge?


Add types for persist-path v1.x.x

https://github.com/hobbyquaker/persist-path
https://www.npmjs.com/package/persist-path

Am I doing something wrong?

Try switching from flow_v0.22.x- to flow_v0.25.x-, that should make the specs pass.


Roll Flutter Engine from 3a49977f8b9d to 52ae046ec3f8 (1 revision)

https://github.com/flutter/engine/compare/3a49977f8b9d...52ae046ec3f8
2022-09-14<EMAIL_ADDRESS>Variable font support for the Flutter Web CanvasKit renderer (flutter/engine#35808)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


[DO NOT MERGE] Auto PR to update dependencies of pilot

This PR will be merged automatically once checks are successful.
none

@istio-testing: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/pilot-presubmit.sh
c5e43280a4095992736b3adc02e9877d6a1bb0f8
link
/test pilot-presubmit

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.


Show tip as part of the error message

Couldn't really find a better place to display them.

Didn't test with PHPStan Pro.

If you fix the merge conflict that occurred due to merging your other patch it's all good

Done!


🐛 BUG: "d1 execute" stop executing SQL after query with character ']' in value

What version of Wrangler are you using?
2.2.2
What operating system are you using?
Linux
Describe the Bug
"wrangler d1 execute" stop executing sql file after line including ']'.

wrangler d1 execute green --file test.sql

CREATE TABLE IF NOT EXISTS test(str);
DELETE FROM test;
INSERT INTO test VALUES('initial');
UPDATE test SET str = 'update]';
UPDATE test SET str = 'second update';

The value in table 'test' is 'update]'.
When I remove ']' from 'updated]', the value is 'second update'.
I confirmed this happen with UPDATE or INSERT statements.

@K2Da  coudl you please try again and confirm the issue is closed?

I tested with v2.6.2 and confirm fixed! Thank you!


:grin: track user scroll and phone number clicks

:rocket: deployed to http://connecting-to-services-pr-259.dev.c2s.nhschoices.net and using the latest release of nearby-services-api (0.2.0-beta)

Coverage remained the same at 98.897% when pulling 46c43bc6f37cf29e2a580eca344fb657842129bf on feature/custom-analytics into 50fe14ba93e43923b62b50a5f1f3a9efb5787477 on master.

 Apply custom analytics tracking

@ajthomascouk Is this change something that still wants to get integrated into the app?
If so can you rebase it please?

@ajthomascouk - is this still WIP? Is there anything which can be done to get it moved forward?

@neilbmclaughlin wrote:

is this still WIP?
Yeah

Is there anything which can be done to get it moved forward?
Not at this stage. I need to catch up with Nick Gallon.

I'm un-assigning myself from this - re-request when it need reviewing

@ajthomascouk Is this still valid or can it be closed? There has been no change on it for ~5 weeks now.

Will revisit this at somepoint.


Incorrect repo location in cabal file?

In move-monad.cabal I see
source-repository     head
  type:               git
  location:           https://github.com/lettier/gifcurry.git

is it intended?

Hello @qrilka.
My mistake. Updated. 👍


Snippet in "Multiple-p10k-configs" wiki page does not work (with solution)

Describe the bug
I tried the snippets in this page and found that it don't work. I think it was typo. But don't know what to contribute to the wiki so I decided to post the issue here.
To Reproduce
Paste the snipped into ~/.zshrc
# Load within zshrc – for the instant prompt
zinit atload'!source ~/.p10k.zsh' lucid nocd
zinit load romkatv/powerlevel10k

[redacted]

It prints the error on shell load
Error: No plugin or snippet ID given(the last recognized ice was: nocd'').
You can try to prepend `@' if the last ice is in fact a plugin.

Expected behavior
The line
zinit atload'!source ~/.p10k.zsh' lucid nocd

is missing the ice.
It should be
zinit ice atload'!source ~/.p10k.zsh' lucid nocd

Screenshots
Versions:

$ZSH_VERSION == 5.8
Operating system name and version (uname -a): 19.4.0 Darwin (macOS Catalina)

Additional context

It is fixed, thanks.


[Identity] Azure Arc and ManagedIdentityCredential refactoring

This PR does the following:

Simplifies the workflow of ManagedIdentityCredential, fixing #11653
Implements caching on the managed credential so that we only verify which MSI is available once per instance of this class. There's no issue for this, but this is necessary to align with .Net
Adds Azure Arc support, fixing #10235

Simplifies the workflow of ManagedIdentityCredential
This is now how we pick what MSI credential is available:
const MSIs = [appServiceMsi2019, appServiceMsi2017, arcMsi, cloudShellMsi, imdsMsi];

for (const msi of MSIs) {
  if (await msi.isAvailable(this.identityClient, resource, clientId, getTokenOptions)) {
    this.cachedMSI = msi;
    return msi;
  }
}

Shows the order of verification more clearly. Reduces the complexity of the credential.
Implements caching on the managed credential
The managed credential was verifying the availability of the MSIs on each request - except for the IMDS one, which had a very weird flow with a stateful boolean value that was passed through from method to method.
Instead of doing that, the first time we authenticate we define what MSI is available, and subsequent calls won't run any validation.
This aligns with .Net.
Adds Azure Arc support
This PR also showcases the refactoring by how simple it is to add a new MSI to the main ManagedIdentityCredential class.
The notes on how I was able to write and test the Arc MSI are here: https://gist.github.com/sadasant/888dc7e88543a21ee7061997984dd207
The change on the ManagedIdentityCredential consists of adding arcMsi to the array of MSIs used inside of the cachedAvailableMSI function.
There's an important note on how I'm currently validating this environment here: link.

I'll leave this PR as draft until we find the time to do an internal review, then I'll move it out of draft.

Thanks for taking the time to work on the refactor. The code felt readable and I was able to track where this new functionality was being added and could see where it was related to existing functionality.

This PR also fixes #11595. I'm not exactly clear why. I haven't had the time to dig through the previous code to see why. I tested as many times as I could think of with and without these changes and these changes definitely fix #11595.

This looks good. I commented that we're currently removing the 2019 MSI support because it seems to cause issues with some services (https://github.com/Azure/azure-sdk-for-js/issues/12058)
cc @schaabs for confirmation.
Other than that, I think this is ready from my perspective.


Add style guidelines using ESLint

Refactor code with ESLint

This is done. See .eslintrc.json to add rules. Use eslint --fix assets/app/js/ test/ main.js to fix files with error.


ECS EDNS Client Subnet in DNS Queries

Hello, DNS Client Subnet EDNS (ECS) makes DNS connections much faster, does our beloved Thorium enable by default EDNS Client Subnet?
I use the best secure dns in the earth, quad9 with ECS EDNS enabled which blocks 97% of malware according to a study and even quad9 blocks miners crypto hijacking....
but I was stupid thinking my dns connection will be faster but I find out today firefox disables DNS Client Subnet EDNS, so I set firefox's "network.trr.disable-ECS" value to false to enable DNS Client Subnet EDNS in Firefox , is there an equivalent option for Thorium Browser to enable by default DNS Client Subnet EDNS please ?

Hello @Alex313031 @gz83 , in the New Features of Waterfox, it says :
" Waterfox now uses Oblivious DNS by default, a privacy preserving method for DNS queries."
Can Thorium add this new feature please ?
I read that activating ECS makes it possible to circumvent geolocation and censorship of ip addresses based on geopgraphical location....apparently the old ECS is replaced by EDNS ....i think activating EDNS is one of the most great functions to bypass surveillance and censorship and we would no longer need vpn, the ISP and the state can no longer monitor us apparently
so what do you think about my discover ? is that really tre and it really works please ?
"Firefox – Blind your ISP & keep your data safe!
Today I will guide you How to Blind your ISP & keep your data safe!
Protect your privacy. Defend yourself against network surveillance
and traffic analysis and stop your isp from spying on you.
It’s simple and can be done via Firefox.
When you enable this, you don’t need a VPN to browse blocked websites,
It will unlock all domains worldwide.
about:config
esni.enabled
trr.mode
5) Search for “trr.mode”
Double click on it or right click and select Modify.
Set network.trr.mode to 2 to make DNS Over HTTPS.
It will secure your connection and unlock all blocked domain names.
Enter 2 and Click OK!
Note: Try 2 first, if you get error, set trr.mode to 1."
i make new researches and it seems that ESNI becomes ECH, wu hope that Thorium will add option to enable ECH please :
Encrypted Client Hello: the future of ESNI in Firefox
https://blog.mozilla.org/security/2021/01/07/encrypted-client-hello-the-future-of-esni-in-firefox/


Error: Could not parse game message

I downloaded the new realese ([v<IP_ADDRESS>]) and in the log i see this error:
2023-03-07 22:54:50.138	SocketHook	S2C_Raw: Error: Could not parse game message (sum(message.length for each message) > total message length)
[2023-03-07 22:54:48.682] Length=51 ConnType=0 Count=1 CompressionType=2
2023-03-07 22:54:50.194	SocketHook	S2C_Raw: Error: Could not parse game message (sum(message.length for each message) > total message length)
[2023-03-07 22:54:48.727] Length=50 ConnType=0 Count=1 CompressionType=2
2023-03-07 22:54:51.301	SocketHook	S2C_Raw: Error: Could not parse game message (sum(message.length for each message) > total message length)
[2023-03-07 22:54:49.840] Length=54 ConnType=0 Count=1 CompressionType=2
2023-03-07 22:54:51.523	SocketHook	C2S_Raw: Error: Could not parse game message (sum(message.length for each message) > total message length)
[2023-03-07 22:54:51.467] Length=53 ConnType=0 Count=1 CompressionType=2
2023-03-07 22:54:51.633	SocketHook	S2C_Raw: Error: Could not parse game message (sum(message.length for each message) > total message length)
[2023-03-07 22:54:50.196] Length=56 ConnType=0 Count=1 CompressionType=2
It's repeated for every line.
What i should do? I use the "Load Once" feature, and before 6.35 all was working fine.

Have XIVAlexander open alongside the game and re-log in to your character.

Have XIVAlexander open alongside the game and re-log in to your character. Same concept as what you have to do with ACT for now.

Thanks for your help, doing as you said worked out! I'm not an expert of FF plugin, alex is my first one, so even the basics are pretty obscure to me. A question before i close the issue, do i have to do this log-in/log-out stuff forever? Or at some point i will be able to just opne alex with the game and have it work? Thanks

You'll have to keep doing that until Alexanders change paradigm to inject (instead of only read) or they revert oodle tcp to udp.
The later is probably not happening ever.

You'll have to keep doing that until Alexanders change paradigm to inject (instead of only read) or they revert oodle tcp to udp. The later is probably not happening ever.

Got it, it's a bit tedious doing that every time, but it's better than having alexander not work at all. I'm gonna close the issue then, thanks all.


Allowed plans support

This replaces #26. Still WIP with @gwbischof.

Seems to be working now!

Thanks to @gwbischof who accompanied this journey :)


Filter by unread_count is not working

Filtering by unread_count is not working. It always return 0 conversations.

@AitorAlgorta could you tell me what the Lucene query was that you tried for testing?

@AitorAlgorta could you tell me what the Lucene query was that you tried for testing?

unread_count:0

unread_count:0


Takes long to load and doesn't seem to detect the dinosaur.

When I run node index, it takes a long time to load and it doesn't seem to detect the dinosaur. It also shows "Playing" status all the time. Using windows 10 and latest chrome.
I think it has to do with the offsets being different.
EDIT: Had to do robot.js mouse position was wrong in HD displays.
Current issue: robot.js seems much slower on windows than on other platforms. This messes up the learning ability.

Same issue :(


Meaning of "elimination of symbol c(or i, tf) is exercise" in  01-good-old-times

https://github.com/crista/exercises-in-programming-style/blob/d521abd5d7aac14af19aa7794aca9ee23c0f8cc5/01-good-old-times/tf-01.py#L60
Does this sentence mean that we try to remove symbol c by applying other programming style (e.g., by using lambda expression)?

It means you have to remove the symbol but sticking to the style. In this style, instead of symbols, you have pre-defined indexes into memory (in this case, the 'data' list)

Thanks for your reply!


Add Firefox versions for css.selectors.backdrop.dialog

17316

 Quality gate: NA
Details

 Quality gate: NA
Details

 Quality gate: NA
Details


Disable code syntax highlighting in IE8

Prism will throw syntax errors making it hard to test IE8 JavaScript.

code-wise it's all good.
Q: are we ok with IE8 users not getting code styling as prism doesn't support ie8?

IMO, for the review app, yes.


Release tracking

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
<EMAIL_ADDRESS>Minor Changes

#717 24fc6d02 Thanks @rezrah! - Change to xxlarge breakpoint and the addition of two new base scale size tokens.
Outcome of an upgrade to Primer Primitives v9 release.
+ --base-size-2: 0.125rem;

+ --base-size-6: 0.375rem;

- --brand-breakpoint-xxlarge: 90rem;
+ --brand-breakpoint-xxlarge: 87.5rem;

- @custom-media --brand-viewportRange-wide-viewport (min-width: 90rem);
+ @custom-media --brand-viewportRange-wide-viewport (min-width: 87.5rem);

<EMAIL_ADDRESS>Minor Changes

#717 24fc6d02 Thanks @rezrah! - Improved a11y labelling in various components.
Please note these changes could affect any behavioral tests, which rely on accessible matchers such as getByRole.

SubdomainNavBar search button aria-label changed from 'search' to 'Toggle search bar'
SubdomainNavBar removal of unnecessary aria-label 'global breadcrumb'
Checkbox addition of new label for checked state icon as 'Checkmark'
Checkbox addition of new label for indeterminate state icon as 'Dash icon'

#707 715dfbb3 Thanks @rezrah! - New Footnotes component generally available
import {Footnotes} from '@primer/react-brand'

<Footnotes>
  <Footnotes.Item>There are now 100 million developers around the world using GitHub.</Footnotes.Item>
</Footnotes>

:link: Read the documentation for usage guidelines and examples

Patch Changes

#711 1cde8ef2 Thanks @joshfarrant! - Updated SubNav links and submenus to use ul and li elements — instead of div elements — to communicate the hierarchy of the navigation to assistive technologies.

#700 47908f1e Thanks @rezrah! - ActionMenu button no longer truncates longer labels. Now follows WCAG criterion around text reflow.

#714 fb1980b1 Thanks @rezrah! - Hide paged items in Pagination component on narrow viewports to prevent horizontal scrolling and offer improved accessibility by default.
Use showPages to re-enable paged items if required:
<Pagination showPages />

<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>

Smoke test results

Footnotes component 🟢
Works as expected. Confirmed as suitable replacement for adaptation of FAQ for similar purposes.

Top is current. Below is replacement using Footnotes.

Aria label changes 🟢
Verified to appear correctly in the DOM, but many components like Checkbox aren't in frequent use in dotcom right now. Manual integration confirmed it works as expected.

Pagination default behaviour 🟢
Tested in dotcom on SEO category pages. Default behaviour works as expected. Paged items are now hidden by default

Release testing status: Ready to release 🟢


I dont need any auth in my local SMTP server

but mailthon keep trying to auth ,how can I prevent it

You can just create the Postman object without the Auth middleware- for example:
from mailthon.postman import Postman
from mailthon.middleware import TLS

postman = Postman(
    host="hostname",
    port=PORT_NUMBER,
    middlewares=[TLS(force=False)],
)

That could work ,thx .
I have another question ,I ll open another issue


Remote monitor mode not available for python >3.8 ?

Hi, I'm using python 3.10 in one of my projects and wanted to use the remote monitoring mode from guppy3. However, after adding
import guppy.heapy.RM I get an error saying AttributeError: module 'guppy.heapy.heapyc' has no attribute 'interpreter'.
After some digging, I found that the interpreter is not available for python version above 3.8 (found here)
Is there any specific reason for this ? In the Readme, it's specified that the package works with python 3.9, 3.10 and 3.11.
Any help here would be appreciated :)

Hi, this was initially disabled in commit 15fa02d393327f256d152e1390412891a892fdab. If I remember correctly it was related to the GIL being refactored, and in our architecture of starting an interpreter in a new thread, the new thread is unable to send a GIL drop request to the original interpreter, causing some deadlock to happen, as far as I remember.
I was also originally waiting on PEP 554 and see how I can potentially make use of it, but it's been delayed and delayed and delayed and delayed. The initial code of that PEP was in https://github.com/python/cpython/issues/76785 which was almost 5 years ago!
The reason subinterpreters are used here aren't just for isolating objects between interpreters, but also to make the stdout/stderr point to the remote connection. Otherwise if you do sys.stdout.write it'd write to the program's stderr. However, since Python is going for per-interpreter GILs, it's extremely unsafe to hold an object across interpreters, and since guppy literally allows one to grab a reference to any object in the system, I'm not even sure what to do at this point.


Hardware requirements for training?

Thanks a lot for your insightful work. Since I want to reproduce your method, I wonder how many computation resources you used and how long you spent training your network? Looking forward to your reply.

We used GeForce RTX 2080 Ti x 2 on UCF101 (~1 days), GeForce RTX 2080 Ti x 4 on ActivityNet (~3 days).

What about VGGSound?

GeForce RTX 2080 Ti x 4 (around 1 week)

Got it. Thanks a lot.


Assess possible upgrade path for wasmi 0.31.0+

We’re stuck to 0.13.2 (called “rock solid” release by Parity) and invested lot’s of resources into patching related parity crates that are left unmaintained otherwise. Newer versions (0.14.0) have completely different API, may have unexpected side effects, but it is about time we should assess upgradability of it.
Benefits: supports multiple widely used Wasm extensions out of the box, should be noticably faster (recently register based ISA is merged), doesn’t require gas injector anymore (has “fuel consumption” API). And most importantly it should be safer as it’s using a proper Bytecode Alliance’s maintained parser, rather their (buggy) inhouse one. Other benefits may include possible retiring our forks of all parity crates.
Outcome of this ticket should be a list of tasks to be done to allow for smooth transition to new Wasmi.

Decision to be made if this is 2.0.

@rafal-ch @mpapierski can target this for 1.6, as it is asses, if it is a smooth one we can include in 1.6 and if not then push it for a later release than 1.6

Ask @Ed

Closed as per the last meeting between Ed, Michal, Sai, Alex S and Mo.


Run app in docker

Christmas leave and I spend it doing almost work stuff?!
Actually this is the first pull request / collaboration in github for me so be gentle.  If you don't know me I'm a mate of Cory's working at MSD -- he thought this might be a step towards hosting on AWS (or similar)
Changes are to wrap the app into a Docker container.  No changes to the app itself, just added a docker folder with a few files.   Assuming you have docker and docker-compose you should be able to create and run a container by going into that folder and
docker-compose build     # gets rocker/shiny-verse:4.0, uses devtools to install app, and sets up a shiny server
APP_PORT=6789 docker-compose up -d    # starts it on localhost:6789

Looks good to me, so does it means that I don't need to host it on my shinyapp.io account anymore? i.e. https://kcha193.shinyapps.io/IncomeExplorer/

Thanks Kevin, it will be a while before there is a public host of that
container....
I liked your moving the scenarios in with the app.  I wasn't sure if, or
more to the point how, I should have merged in your branch to mine.
On Wed, Dec 22, 2021, 7:54 PM Kevin Chang, @.***> wrote:

Looks good to me, so does it means that I don't need to host it on my
shinyapp.io account anymore? i.e.
https://kcha193.shinyapps.io/IncomeExplorer/
—
Reply to this email directly, view it on GitHub
https://github.com/Treasury-Analytics-and-Insights/IncomeExplorer/pull/5#issuecomment-999330880,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABP455FMF3JLMNIBJ3VSXJTUSFY3RANCNFSM5KRTXWLQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you are subscribed to this thread.Message
ID: <Treasury-Analytics-and-Insights/IncomeExplorer/pull/5/c999330880@
github.com>

Hi Tony, be my guest to do whatever, although I would wait till my branch gets merged to master first via the other PR.
I have other plans in making the UI and plots look better, but I will do it in my own repo first.
Have a good one,
Kevin

Hi guys, sorry for the slow response on this, and thanks so much @gentleboil  and @kcha193 for your time on this.  Have added Luke Yvonne and I as reviewers; we'll aim to have a chat shortly.  This a great capability to add, and it is completely orthogonal to everything else, so I see no problem in merging it.  It has been a while since I used docker though so potentially a comment at the top of each file indicating its purpose would be handy.


android 6 tablet scroll issue after keyboard close

Ionic 2.0.0
Android 6.1.2
ionic-plugin-keyboard 2.2.1 "Keyboard"
When I open a model window on an Android (API 23) Tablet and click on an input field the following happens.
"keyboard-open" is added to the body tag and "keyboard-up" is added to the ion-modal ion-content tag.
When I click off the input the "keyboard-open"  is removed BUT the "keyboard-up" remains and prevents the modal from being able to scroll.

Expected result is the "keyboard-up" class to be removed and scrolling to be re enabled.
On a standard android device the "keyboard-up" class is not added.

Hello, thanks for using Ionic. Could you provide a repo we could use to reproduce this issue?

I think I've discovered the problem or issue. I was do a new build and trying to replicate the issue for a test repo and realised I was running a nightly build of ionic (1.2.4-nightly-1917).
I've updated the platform and lib files (1.3.3) and is working as expected.


Bug: Usage of mutable default arguments

Description
I was skimming through the code and came across a bug. In the generic template module, there's a GenericTemplate class that contains the add_template function. The function contains a kwarg, buttons, which defaults to an empty list. Using a mutable object as a default argument has unintended consequences and should be avoided.
Recommendation
This is from the official Python docs: Function definitions.
Refer to the definition of the whats_on_the_telly function under this section.
Context
The issue is described in further detail here: Avoid mutable default arguments.
I haven't gone through the entire code base so can't say if this is the only instance or not.
Cheers,
Aditya

Opened up a small PR for this issue!


Microsoft Edge Preview support

Microsoft is unveiling a new version of Edge that is based on Chromium.
https://www.microsoftedgeinsider.com/en-us/
https://blogs.windows.com/msedgedev/2019/04/08/microsoft-edge-preview-channel-details/
It looks like the expected user-agent string will be "Edg" to identify which may be confusing to a lot of users. I believe they may move forward with this and they say in the article the latest Dev Channel build has this as the UA string
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.48 Safari/537.36 Edg/<IP_ADDRESS>

I wanted to put this suggestion sooner rather than later so it was on the radar. I'm not sure of the expectation of the platform package for this case?

See #170

Ah didn't know the codename was Anaheim which is why it didn't come up in my search. Will close as dupe. Thanks for triaging :)


"nix-env -qas" fails due to samba

luis$ nix-env --show-trace -qas
error: while evaluating the attribute ‘configureFlags’ of the derivation ‘samba-4.2.0’ at "/Users/luis/code/nixpkgs/pkgs/servers/samba/4.x.nix":33:3:
while evaluating ‘optional’ at "/Users/luis/code/nixpkgs/lib/lists.nix":105:20, called from "/Users/luis/code/nixpkgs/pkgs/servers/samba/4.x.nix":104:8:
value is null while a set was expected, at "/Users/luis/code/nixpkgs/pkgs/servers/samba/4.x.nix":104:29

I'm using nixpkgs from GitHub on OSX Yosemite. I just did a fresh pull a few minutes ago.

Thanks! I'll wait some time for answer to 936fdc7b6.

Should be fixed in f72ae4da79e15c78cf22eb99a0af6d1816de5e7b.


error at windows startup

this issues ocurred everytime starting Windows 10, even restart.

Can you click "report the error" or "Open logs" to check what the real problem was?

I'm closing this since most likely it is the same as #964.


Modify affiliation

What type of PR is this?

What this PR does / why we need it:
Modify Affiliation
Which issue(s) this PR fixes:
Fixes #
NONE
Special notes for your reviewer:

/cc @RainbowMango  @Poor12

/lgtm

Thanks for reminding me.

/approve
@wuyingjun-lucky Just a reminder, you might need to update the affiliation info to CNCF too. I see that the Company is empty on CNCF Developer Activity Counts by Companies. Here is some guideline you can refer to: https://karmada.io/docs/next/contributor/count-contributions/

Thanks for reminding me.


[Quazip] Yet another patch...

Add a small patch for quazip, as gcc fails to compile it. Clang does though.
I'm sorry @juliencastelneau

I forgot to apply the patch in this PR, nice...


Issue with package names being converted from UpperCamel case to LowerCamel case.

If the package name is github.com/OrgName/RepoName, the import statement in the generated code will convert it to the lower camel case of github.com/orgname/reponame.
Command
kiota generate -l go -c PostsClient -n github.com/OrgName/RepoName -d . /path/to/swagger.yaml -o . /go/kiota

Result
Expect
"github.com/OrgName/RepoName/kiota/name"
Actual
"github.com/Orgname/reponame/kiota/name"

Hi @SakagamiKazuto
Thanks for reporting this and for using kiota.
The normalization happens here
The challenge being: kiota should still be normalizing the generated part, but leaving the user passed value intact. So that method needs to be amended to accept the client namespace name as a parameter, and only normalize after that length.
Is this something you'd be willing to submit a pull request for?


Ensure files end with newline character

Description
A few files didn't end with newlines so I search for all the files which didn't and added a trailing \n.
Tasks

[ ] Tested on Linux
[ ] Tested on Windows
[x] Tested on macOS
[ ] Tested on iOS
[ ] Tested on Android

SFMLBuildMaster: Build this please.


add parameter for changing accuracy metric

add the ability to change other metric than 'accuracy'
with this we have to also take in to account that there are various ways we use the val_acc and acc etc. values now so if the name change, then other things have to change as well

Done. Changes are in daily-dev.


SVGGenerator generates extra horizontal pixel - image dimensions becomes 24*25

The SVGGenerator generates images which are 25 pixels wide. You can see it for example in test-svg.svg - we have the following SVG path:
M0 1h25

This tells the SVG to draw 25 pixels - but the size of the canvas is only 24 pixels.
I believe the culprit is this line, which is executed on the last pixel of the line:
                    paths[current] = string(abi.encodePacked(paths[current], "h", ColorUtils.uint2str(width + 1)));

If we change it to draw only width instead of width + 1, the resulting canvas would be 24 pixels wide, as it should.
At the moment it is drawing the last pixel of each row twice.
To see why - let's say the last pixel has changed in color. In the current implementation, this is the code:
                if (prev == current) {
                    width++;
                } else {
                    paths[prev] = string(abi.encodePacked(paths[prev], "h", ColorUtils.uint2str(width)));
                    width = 1;

                    paths[current] = string(abi.encodePacked(paths[current], "M", ColorUtils.uint2str(x), " ", ColorUtils.uint2str(y)));
                }

                if (x == CANVAS_SIZE - 1) {
                    paths[current] = string(abi.encodePacked(paths[current], "h", ColorUtils.uint2str(width + 1)));
                }

So the "else" block would set the width to 1, and then the if (x == CANVAS_SIZE - 1) block would increment the width to 2 - but the real width should be only 1.
This is why the width should be only width and not width + 1.
It is now my bed time, tomorrow if I'll have time I'll try adding some tests for this 🙂

👍 Great mate, you're welcome 🙂 also for the pixels gas thing 👍 🥂


.wf-loading class is removed prematurely

When multiple fonts are loaded.
wf-loading class is removed and wf-active class is set after the first font becomes active, and while other fonts are still loading.
It is expected wf-loading class is present until all fonts are loaded.
Tested with fonts loaded from typekit and custom fonts loaded from webserver.

This is by design (though you can argue it is incorrect --- and I agree). Changing it now would change the expected behaviour for many of our users, so it isn't something we can do right now.


Can we get semver releases?

Re https://github.com/grpc-ecosystem/grpc-opentracing/issues/28

@peter-edge sorry for the delay, I'm doing a pass through open issues.
Semver releases SGTM in principle. You just want a git tag??

Hi @peter-edge, the OpenTracing community is taking this repo over, and we'll be splitting it out into separate language components, which will allow us to do semver in a more meaningful manner.

Closing this issue as repos have now been moved and are properly versioned.


Keycloak DevDay 2024 videos

@ahus1 and @srose please review.

The blog post will be live within some minutes as the main Keycloak site build is complete which takes a while due to the size of the main site which also include all the docs. You can track the progress here: https://github.com/keycloak/keycloak.github.io/actions
Feel free to announce the blog post once it is online on the keycloak user mailing list.


refactor: minor changes regarding documentation and dependencies

Description

bump the PyTorch upper bound version to 2.0
remove the anaconda virtual environment in tutorial

Motivation and Context
Why is this change required? What problem does it solve?
If it fixes an open issue, please link to the issue here.
You can use the syntax close #15213 if this solves the issue #15213

[ ] I have raised an issue to propose this change (required for new features and bug fixes)

Types of changes
What types of changes does your code introduce? Put an x in all the boxes that apply:

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

Checklist
Go over all the following points, and put an x in all the boxes that apply.
If you are unsure about any of these, don't hesitate to ask. We are here to help!

[x] I have read the CONTRIBUTION guide. (required)
[x] My change requires a change to the documentation.
[ ] I have updated the tests accordingly. (required for a bug fix or a new feature)
[ ] I have updated the documentation accordingly.
[ ] I have reformatted the code using make format. (required)
[ ] I have checked the code using make lint. (required)
[ ] I have ensured make test pass. (required)

Codecov Report

Merging #219 (7be8618) into dev (4dd6209) will decrease coverage by 0.10%.
The diff coverage is n/a.

:exclamation: Current head 7be8618 differs from pull request most recent head 63a286a. Consider uploading reports for the commit 63a286a to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
@@            Coverage Diff             @@
##              dev     #219      +/-   ##
==========================================
- Coverage   97.25%   97.15%   -0.10%
==========================================
  Files          98       98
  Lines        4293     4293
==========================================
- Hits         4175     4171       -4
- Misses        118      122       +4

see 2 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Failed to create a Non-Pooling DataSource from PostgreSQL JDBC Driver 42.1.1

Environment
HikariCP version: 2.6.1
JDK version     : 1.8.0_111
Database        : PostgreSQL
Driver version  : 42.1.1

Hello,
I have an issue that has completely stumped me when trying to use HikariCP with Postgresql 9.6 on Ubuntu 16 Linux.
Without using HikariCP and using the default Connection without Connection Pooling, it works as expected.
However, when using HikariCP and Ireuse the connection for the 5th time (e.g Refresh 5 times), I get the following error:
Failed to create a Non-Pooling DataSource from PostgreSQL JDBC Driver 42.1.1 for postgres at jdbc:postgresql://localhost/db_ke_elections?loginTimeout=30: org.postgresql.util.PSQLException: FATAL: sorry, too many clients already
Connection error:
org.postgresql.util.PSQLException: FATAL: sorry, too many clients already
at org.postgresql.Driver$ConnectThread.getResult(Driver.java:401)
at org.postgresql.Driver.connect(Driver.java:259)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at org.postgresql.ds.common.BaseDataSource.getConnection(BaseDataSource.java:94)
at org.postgresql.ds.common.BaseDataSource.getConnection(BaseDataSource.java:79)
at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:356)
at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:199)
at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:444)
at com.zaxxer.hikari.pool.HikariPool.access$200(HikariPool.java:71)
at com.zaxxer.hikari.pool.HikariPool$PoolEntryCreator.call(HikariPool.java:631)
at com.zaxxer.hikari.pool.HikariPool$PoolEntryCreator.call(HikariPool.java:617)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
The code that is executing this:
private static HikariDataSource getHikariDataSource(Application myApplication, final boolean useSimplePostgreDriver){

	Properties props = new Properties();

	if (useSimplePostgreDriver){
		props.setProperty("dataSourceClassName", "org.postgresql.ds.PGSimpleDataSource");
		props.setProperty("dataSource.user", "postgres");
		props.setProperty("dataSource.password", "password");
		props.setProperty("dataSource.databaseName", myApplication.getDatabaseName());

		props.put("dataSource.logWriter", new PrintWriter(System.out));

	} else{
		props.setProperty("dataSourceClassName", "com.impossibl.postgres.jdbc.PGDataSource");
		props.setProperty("dataSource.user", "postgres");
		props.setProperty("dataSource.password", "password");
		props.setProperty("dataSource.host", "localhost");
		props.setProperty("dataSource.database", myApplication.getDatabaseURL());
	}
	HikariConfig config = new HikariConfig(props);

	/*if (useSimplePostgreDriver){
		config.addDataSourceProperty("prepStmtCacheSize", "250");
		config.addDataSourceProperty("prepStmtCacheSqlLimit", "2048");
	}*/
	HikariDataSource ds = new HikariDataSource(config);
	ds.setMaximumPoolSize(10);
	ds.setConnectionTimeout(34000);
	ds.setIdleTimeout(28740000);
	ds.setMaxLifetime(28740000);
	ds.addDataSourceProperty("ssl.mode", "disable");

	return ds;
}

This is how I am closing all the resources in the Finally section. I have confirmed this is executing everytime
public static void closeQuietly(ResultSet rs, PreparedStatement ps, Connection conn){
   try { if (rs !=null); rs.close(); rs =null;} catch (Exception e) { /* ignored */ }
   try { if (ps!=null); ps.close(); ps=null;} catch (Exception e) { /* ignored */ }
   try { if(conn!=null); conn.close();conn=null;/*ds.close()*/;} catch (Exception e) { /* ignored */ }
}

What could be the problem?

@ngigiwaithaka I suspect that you are creating many pools, instead of one.  If you are calling getHikariDataSource() multiple times, you are creating a new pool instance each time.  The pool should be an application-wide singleton.

Hi Brett,
I get it now... Somehow it's not obvious from the documentation that the
Datasource should be a singleton.
That has fixed the problem.
Thanks a lot...
On 24 Jun 2017 7:36 p.m., "Brett Wooldridge"<EMAIL_ADDRESS>wrote:

@ngigiwaithaka https://github.com/ngigiwaithaka I suspect that you are
creating many pools, instead of one. If you are calling
getHikariDataSource() multiple times, you are creating a new pool
instance each time. The pool should be an application-wide singleton
https://en.wikipedia.org/wiki/Singleton_pattern#Lazy_initialization.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/brettwooldridge/HikariCP/issues/924#issuecomment-310849285,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ARqlNEhDeiqRE39m-j9buacxBXBTEfgDks5sHTsSgaJpZM4OEUHT
.


Creating Agg Table with M-Partition instead Legacy

Hello Sir, In this snippet below, it creates a Legacy-Partition for the AggTable by default. I was wondering if it is possible at all to create a M-Partition instead. If so, I would greatly appreciate if you could point me to some documentation to do that. Thanks in advance.
foreach(var p in Model.Tables[tableName].Partitions.ToList())         {             var aggPartitionName = p.Name.Replace(tableName,aggTableName);             var aggQuery = p.Query.Replace(tableName,aggTableName);             var pName = Model.Tables[aggTableName].AddPartition(aggPartitionName);                         // Update Data Source             pName.DataSource = Model.DataSources[dataSource];                         // Update Query             pName.Query = aggQuery;         }                 // Remove default partition         Model.Tables[aggTableName].Partitions[aggTableName].Delete();     }

@m-kovalsky Just to add little bit more context.
When I execute the agg table script by selecting a detail table with legacy partition, it works as expected.
When I execute the agg table script by selecting a detail table with m-partition, it creates a legacy partition for the agg table. And it hardcodes the m-query statement from the detail table inside legacy partition query (which understandably fails during partition refresh).

Thanks
Aswanth

This tool is really geared towards legacy partitions. However, i've updated the AutoAggs script to create M-partitions in the agg table for corresponding M-partitions in the detail table.


Can you get your progress back if you accidentally deleted the rom

I believe re-downloading the ROM with the same filename should still access the same save.


spi folder potentially contains classes/packages not directly involved in SPI loading

The directory/module "spi" should only contain interfaces (and the classes used to define these interfaces) that define the types of service provider interfaces (SPIs) which are loaded by java.util.ServiceLoader.
Currently these are:

MonitorExtension
ServiceExtension
VaultExtension

and their base interfaces.
The following packages contain interfaces which are not directly loaded by java.util.ServiceLoader, but by an extension/spi implementation of org.eclipse.dataspaceconnector.system.ServiceExtension:

policy (ServiceExtension)
transfer (ServiceExtension)
protocol (ServiceExtension)

Suggestion

separate plain SPI interfaces (that define functionality loaded by java.util.ServiceLoader) from service interfaces introduced and registered by implementations of org.eclipse.dataspaceconnector.spi.system.ServiceExtension.

 Helmut Pfister<EMAIL_ADDRESS>Daimler TSS GmbH, legal info/Impressum

Hi Helmut,
The original id of the SPI was to include all interfaces required to implement an extension, which would include a combination of a ServiceExtension and services provided to the runtime. In other words, both interfaces related to the JDK ServiceLoader mechanism (which is the basis of EDC extensibility) as well as interfaces for runtime services.
The benefit of having these in one module is that there is one place to look for extension points. Also, I'm not sure there is a major functional distinction between service loader interfaces and service interfaces that merits different modules as opposed to different packages.
I'm open to separating these into modules if there is a major functional difference. What do others think?

I like the idea to make it more obvious how SPI, extensions and services play together: we load extensions via SPI, those extension can register one or more services at the central registry, potentially based on interfaces defined in the SPI module. But extensions can also lookup other services and register things there (e.g. provisioners).
What about moving all interfaces that are looked up via  Java SPI into a package called spi and rename the whole module to something like "interfaces"/"api"/"core-api", ...
Maybe we also need to improve the documentation (README/onboarding/in Java Code) to clarify what should be used in which case.
 Moritz Keppler<EMAIL_ADDRESS>Daimler TSS GmbH, legal info/Impressum

I don't think the module is really an API since an API is an ingress into the system and could be confused with other modules that do this. I'm not keen on "interfaces" either since that is ambiguous.
I still think "SPI" captures the intent since it is an EDC "Service Provider Interface" - i.e. the interfaces providers need to implement to contribute a service to the runtime. Basically, it's an analog to the Java SPI (which it uses).
Could this be solved by better documentation? The system package already contains the interface types looked up by the ServiceLoader, which separates them from the other interfaces. Placing those in another module IMO would just increase the complexity for extenders since they would need to look into two separate modules.


Lack of unzip errors is not handled

On my system (openSUSE Leap 15.2) using UnZip 6.00 of 20 April 2009, by Info-ZIP (Maintained by C. Spieler.), there are no errors produced when unzipping "${firefox_dir}/browser/omni.ja" at line 53. The condition of an empty unzip_errors variable is not handled, and this causes the script to fail for a non-existent error condition.
I fixed that by modifying line 56 to:
if [[ -z "$unzip_errors" ]] || (echo "${unzip_errors}" | xargs | grep --extended-regexp --quiet "${expected_errors}"); then
I hope this helps.

Dang, I knew this was too unsafe…
Does the unzip command from the script have a non-zero status code? That could be an alternative check.
When I unzip the omni.ja after zipping it, I don’t get errors. However, does it never produce errors when unzipping the omni.ja for you, not even when first unzipping?

Actually, a much better check may be this: if after the unzip command, the unzipped files exist within the /tmp/omni directory, then proceed normally. If no error or the expected warning and error are seen, don’t report them. If an unexpected error is seen, report it. If the files are not found, abort.

Can you confirm if commit 3212e37 fixes this issue?

While trying to confirm, I got an error:
"Error: You need to start and close Firefox again to apply the changes before running this script." Apparently Firefox did not automatically remove the /usr/lib64/firefox/browser/.purgecaches file. I manually removed it.
Since omni.ja is the same size as it was 8 hours ago, I cannot confirm that the script actually did anything. However, it completed successfully with no errors.
Thank you for the work you have put in to this.

"Error: You need to start and close Firefox again to apply the changes before running this script." Apparently Firefox did not automatically remove the /usr/lib64/firefox/browser/.purgecaches file. I manually removed it.

This error tells you to open and close Firefox again. This is unrelated to the unzipping issue. A clean test would be to execute this script with the original omni.ja file from Firefox so that any such test is reproducible. If you already executed the script, then the omni.ja is already modified — the script shouldn’t be executed after that (the sed modifications silently fail, then). So either restore the backup or wait for the next Firefox upgrade to start out with an unmodified omni.ja.


Disable Traefik Content-Type auto-detection

Is there an existing issue for this?

[X] I have searched the existing issues

Is your feature request related to a problem?
I created a fresh Typo3 12 project and the install tool security check shows the following warnings:
Unexpected server response
https:// test.ddev.site/typo3temp/assets/29bd3687.tmp/c8059a1e.wrong: unexpected content-type text/html
Unexpected server response
https:// test.ddev.site/typo3temp/assets/29bd3687.tmp/c8059a1e.html.wrong: unexpected content-type text/html
As of the traefik documentation there is an auto-detection for the Content-Type which is enabled by default.
https://doc.traefik.io/traefik/middlewares/http/contenttype/
In this case traefik changes the Content-Type so the security checks fail as the response is not as expected. In my case this is not a problem for my local dev environment but could be a problem in other circumstances as you should not expect traefik to change the Content-Type. The traditional router before traefik did not change anything.
Describe your solution
As mentioned in the traefik documentation this behavior can be disabled via middleware.
I suggest changing the autogenerated project traefik config file in the following way:
Adding these lines at the top under http:
http:
    middlewares:
        autodetect:
            contentType:
                autoDetect: false

The middleware has than to be added to every router where this behavior should be disabled. I suggest disabling it in every router. This can be done this way:
test-web-80-http:
  rule: HostRegexp(`test.ddev.site`)
  middlewares:
    - autodetect
  service: "test-web-80-http"
  tls: false
  entrypoints:
    - http-80

This fixed the problem and all the security checks passed.
Describe alternatives
No response
Additional context
No response

@lucaslohne,
Please provide instructions on how to test this (what the wrong file should look like) because I couldn't reproduce it.
I opened a PR for this:

#5647

@stasadev
I could reproduce it when just created a fresh TYPO3 Install (Apache Webserver) and then in the Backend (Install Tool) under "Environment" and "Environment Status" I get the messages mentioned in my first post. After the changes I mentioned there there are no more unexpected server responses listed.
If you need any further information let me know, I'll respond when I'm back at home.

@lucaslohne thanks, I can reproduce it now.
Please check the artifacts from https://github.com/ddev/ddev/pull/5647#issuecomment-1860320112 when you get a chance.


Add coveralls back into development

With notifications in the chat maybe we'll be more motivated to write tests.

Changes Unknown when pulling fbf2120331617bf4ad047b1a9ba6da2b77c74625 on coveralls into ** on development**.


Fix cookie specs conflict

Fix problem of #111 related with cookies_spec.js. The solution may be not the best, please review this. I choose two arbitrary ports for the tests.

Cool. Can you cherry-pick the commit against the other branch? This is against master that doesn't have the changes in the cookie implementation merged, because of the revert.

Almost there guys <3


Check macros with custom messages

Added the missing complementary macros for all the current assert macros.
The new ones accept a user message that is printed if the assertion fails (like CHECK_TEXT or CHECK_TRUE_TEXT), and follow the same nomenclature (CHECK_xxx_TEXT).

I was wondering why some assert methods in UtestShell have a last parameter that accepts a terminator (with default value), while others don't.
I can't see its purpose, as these methods are called through macros and they never set this argument it in any case, so they could be removed altogether and let the terminator be chosen in the call to failWith. I think that would cleanup the interface a bit.
What do you think?

I think you are right.

Essentially, the macro above is one that should fail, but not terminate the test (as the test has already been destroyed at the point where this macro is executed).

The reasons for adding custom messages to failures are several:

When using CppUTest to perform integration or differential tests, many times multiple cycles of execution + verification are executed in a loop, so it's necessary to known in with iteration the verification failed.
To document the purpose of the check (which sometimes isn't evident to collaborators) and improve reviews of failures in continuous integration: a message saying "wrong calculation of XXX: expected 5 but was 7" is more meaningful to people not familiarized with that specific module than just "expected 5 but was 7" preceded by an obscure reference to a line of code, specially when changes in a module break something in another module maintained by someone else.

Regarding the first reason, I'll explain the use case for which I had to implement these additional macros:
A customer wanted us to integrate in a device an algorithm to calculate the state of charge of batteries, so they gave us an implementation in C. But that implementation used an interface with the system (get configuration parameters, read battery voltage from an ADC, store internal state, etc.) that wasn't compatible with our software architecture, so we had to adapt it.
To ensure that we didn't introduce any modifications to the calculations, we've written differential tests that check that both version give the same results under the same stimuli, effectively executing them in a loop that simulates a profile of input conditions. To do that, CppUMock is used to mock the interfaces of the algorithm with the rest of the system.
It has been then necessary when checks failed to know in what iteration of the loop that happened, to be able to go directly there and debug. That allowed us for example to catch a bug in the original implementation related to casting from int to char...

Regarding the second reason, in all the (well-managed) java projects in which I've been involved, it was mandatory that junit asserts had meaningful messages for failures, and issues were raised in CI if the version without text was used. I've always found this a good programming practice, specially regarding maintenance and collaboration in large teams, and I've always missed that in CppUTest.

Okay, that makes sense.
I suppose once it is there, we can find ways to use it ;-). One thing that comes to mind is some developers I work with who do calculations involving large arrays of floats (typically 64k). They check this by running DOUBLES_EQUAL() in a loop They could then use this feature to determine directly which one of the 64k floats (e.g. element result [7][0][134] failed the test.
CppU also includes a feature for running tests in a loop, which will print out which loop you are currently in and it can also be retrieved via getCurrentRepetition(). But I guess you know that already ;-).

Regarding the second reason, in all the (well-managed) java projects in which I've been involved, it was mandatory that junit asserts had meaningful messages for failures, and issues were raised in CI if the version without text was used.

Oh, I see. Kewl. We are still working on making them give meaningful names to the tests ;-)...

Oh and thanks for the nice use cases. That always helps me understand a new feature that I didn't happen to wish for myself :-)

@arstrube Thanks for you example macro, now I understand that the terminator parameters are useful to write custom checks that don't terminate the test.
So I suppose it would be a good idea to add this parameter to all assert methods.

Actually, I don't know. This happens very, very rarely. Only when you do checks from a plugin, I suppose.

I guess removing the terminator parameter like you did makes more sense at present (its presence didn't seem to help any in my case).

@arstrube In fact I didn't remove (I think...) any terminator parameter, I left the ones that were already there. I just noticed that some asserts didn't had that parameters, that's why I was asking why they are there, because maybe we can remove them of all the calls, or the other way, add the ones that are missing.
Maybe @basvodde has a bit more insight on this.

Hmm. Offhand, I would say there are special terminators for:

Calls to be used from C code
Mocks
Terminating without exceptions
But then, @basvodde probably has more insight into this, like you said.

@jgonzalezdr The terminators were introduced to allow to use assertions in C code without throwing an exception. This is because throwing an exception when you are executing C code has undetermined behavior and in some gcc version actually crashed the program. This relates to bug that I think @simshi ones reported, but I can't find it anymore.
The reason why some do have the Terminator and some don't is that the ones that do have C equivalents and the one who don't are probably not used in the C version of the macros.

The PR looks pretty good and I think I'd like to merge it. However, it does look like the added macros weren't ever used, not even in the tests.
Would you mind to try to test-drive your added code to CppUTest ;)
Before merging it, I'd like some tests (afterwards :( ) to the TestUtestMacros so that the macros are actually used within CppUTest itself (in the tests that is)

I'll add these tests soon so you can merge.

@basvodde I've just added the missing tests for the new macros, I expect them to be enough.

Thanks!


Support other types of sourcemaps

If I'm not mistaken RedBox supports only eval type of sourcemaps in webpack. But eval sourcemaps is very poor because

it doesn't display line numbers correctly since it gets mapped to transpiled code instead of the original code.

Is it possible to support at least eval-source-map?

Off the top of my head, I don't know how to make it support that, but if you want to send a pull request I'd be happy to check it out.

@frux You may want to check this pull request

Fixed by #94

I've made a PR to fix an issue I was having with having mixed stack traces: https://github.com/commissure/redbox-react/pull/97


Making language server tests work on Mac and Linux

Validated manually on WSL. This is in prep for setting up CI on all three platforms.

These changes successfully fix the following error on my Macbook (macOS 12.1):
Microsoft.Quantum.QsLanguageServer.Testing.BasicFunctionality.SetupServerConnectionAsync threw exception. System.PlatformNotSupportedException: Message transmission mode is not supported on this platform..


updateInterval not updating when passing different value when initializing

Describe the bug
When initializing with updateInterval: 30000 it doesn't update location every 30 seconds, instead get the location every 5 seconds or so.
To Reproduce
Initialize the plugin with different value other than 10000 and check in the console every new location.
Expected behavior
Time between location logs show match the updateInterval value.
Desktop (please complete the following information):

OS: [e.g. iOS]
Browser [e.g. chrome, safari]
Version [e.g. 22]

Smartphone (please complete the following information):

Device: Pixel 3
OS: Android API 30
Browser Android Simulator
Version [e.g. 22]

Additional context
Add any other context about the problem here.

HI, I checked the code and noticed a typo in typescript definitions: updateInteval => updateInteRval...
I'm correcting it but i have to make a precisation on this value:
It sets the updateInterval Android location request option and, for convention, it sets the fastestInterval at half of this value.
I could add another property to the configuration object but I wonder if it will make it too complicated, the two values are actually correlated.