Getting null issue in placemarkFromCoordinates method

Please check the following before submitting a new issue.

[X] I have searched the existing issues.
[X] I have carefully read the documentation.

Please select for which platform(s) you need help

[X] Android
[ ] iOS

Your question
Center(
child: ElevatedButton(
child: Text('Look up address'),
onPressed: () {
print("entered");
final latitude = double.parse(_latitudeController.text);
final longitude = double.parse(_longitudeController.text);
                placemarkFromCoordinates(latitude, longitude)
                    .then((placemarks) {
                  var output = 'No results found.';
                  if (placemarks.isNotEmpty) {
                    output = placemarks[0].toString();
                    print("output $output");
                  }

                  setState(() {
                    _output = output;
                  });
                });
              }),
        ),

        entered

js_primitives.dart:28 ══╡ EXCEPTION CAUGHT BY GESTURE ╞═══════════════════════════════════════════════════════════════════
js_primitives.dart:28 The following TypeErrorImpl was thrown while handling a gesture:
js_primitives.dart:28 Unexpected null value.
js_primitives.dart:28
js_primitives.dart:28 When the exception was thrown, this was the stack:
js_primitives.dart:28 dart-sdk/lib/internal/js_dev_runtime/private/ddc_runtime/errors.dart 296:3       throw
js_primitives.dart:28 dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/operations.dart 586:18  nullCheck
js_primitives.dart:28 packages/geocoding/geocoding.dart 31:33                                           placemarkFromCoordinates
Version
geocoding: ^3.0.0

i same be this error

https://www.youtube.com/watch?v=yLtpMqvMgdY&t=420s&pp=ygUPZmx1dHRlciB3ZWF0aGVy
i coding as video run on web chorme be this error
@TimHoogstrate

flutter-geocoding does not return some objects or returns incorrect datageocoding
latitude: 35.126413, longitude: 33.429859
I receive (Android):
Name: 4CGH+HW9,
Street: 4CGH+HW9,
ISO Country Code: ,
Country: ,
Postal code: 2201,
Administrative area: ,
Subadministrative area: ,
Locality: Aglantzia,
Sublocality: ,
Thoroughfare: ,
Subthoroughfare:

IOS:
Name: 2201,
Street: ,
ISO Country Code: CY,
Country: Cyprus,
Postal code: 2201,
Administrative area: Nicosia,
Subadministrative area:
Locality: Geri,
Sublocality: ,
Thoroughfare: ,
Subthoroughfare:

Dear @RiMac902,
Your issue has nothing to do with the original post. Please file is a separate issue. However, the data that you see comes from the iOS or Android API's. We can/do not modify the data.
Kind regards,


Add missing build name helper

This helper function exists in 2 copies (sic!) and is heavily used across apiserver, controller manager and cli.
/assign @deads2k @mfojtik

/retest

Discussed on slack, we don't want that.


Obligation that unfoldings are exposed

This feels like something inspection-testing should be able to do.
fmap2 :: (Functor f, Functor g) => (a -> b) -> f (g a) -> f (g b)
fmap2 = fmap . fmap

Then in a test-suite, I'd like to verify that fmap2's (optimised) unfoldings are exposed.
There are cases where {-# INLINE #-} would case code size blowup (causing slow compilation, because exported unfolding is not optimised), but we still want unfoldings to be exposed (to get good optimised code which uses the symbol: there are no pragma to guarantee that optmised unfoldings are exposed, -fexpose-all-unfoldings is a blunt hammer).
Real world example is described in http://mpickering.github.io/posts/2017-05-17-inlining-case-study.html

Sounds like a need for a GHC pragma that has that effect…
Have you already thought about how this would be checked in a core plugin?

@nomeata yes, Matthew end his post with

It would be good to add a new pragma which instructs GHC to inline an optimised unfolding across modules rather than the unoptimised version so that the second scenario can be reliably achieved.

I haven't thought how, I'm not sure what's possible in core plugin. If a name in defined outside current module, one probably could ask if its unfolding is available; but can it be done in typechecker, or is the ship sailed at that point? Or can TemplateHaskell already do that?


Added firmware version to local UI #35

There might be a better way to organize these changes, let me know any suggestions!

I also updated the README.md based on my experience setting up.

It appears to me that to get to flashing mode, I have to specifically release the reset button before the boot button, not at the same time or the other way around. Can others confirm this is true?
I specified that lights turn off when in flashing mode. Combined with the problem from 1, a few times I thought I was in flashing mode when really I wasn't.
I specified that the device name is variable and how to find it. I was confused because I didn't see "/dev/ttyACM0" in my output.


add c4 instance series

First off, thanks for taking the time to contribute!
Please Complete the Following

[x] I read CONTRIBUTING.md
[x] I used tabs to indent
[x] I have tested my change

Notes
Feel free to put whatever you want here.

Thank you 👍


cancel() not bubbling up to recursive promises?

The following code yields no response.  Shouldn't it trigger the cancel() method in the inner promise?  Is this a bug or a feature?
$promise = new Promise();
$promise->resolve(true);
$promise
	->then(function() {
		return (new Promise())
			->then(function() {
				echo "inner-promise fulfilled!";
			})
			->otherwise(function() {
				echo "inner-promise rejected!";
			});
	})
	->then(function() {
		echo "promise fulfilled!";
	})
	->otherwise(function() {
		echo "promise rejected!";
	})
	->cancel();

\GuzzleHttp\Promise\queue()->run();

cancellation of A+ promises has never been formally spec'd out, so there's no standard to compare against.
I just took a look at ReactPHP's promise library, and they have the same behavior as Guzzle:
<?php
require 'vendor/autoload.php';

$d = new React\Promise\Deferred();
$d->resolve('test');

$d->promise()
    ->then(function() {
        $d2 = new React\Promise\Deferred();
        return $d2->promise()
            ->then(function() {
                echo "inner-promise fulfilled!";
            })
            ->otherwise(function() {
                echo "inner-promise rejected!";
            });
    })
    ->then(function() {
        echo "promise fulfilled!";
    })
    ->otherwise(function() {
        echo "promise rejected!";
    })
    ->cancel();

Cancelling a promise will cancel an incomplete promise -- it does not cancel promises that are in the queue of promises that are already completed. It also does not chain cancellation functions together of resolved promises because a resolved promise's cancellation method is no longer valid.
I'm not really sure how else this could work. I'll close this, but I'd be happy to take a look at a pull request as a proposal for changes.


Check that premium repository credentials are wrong or absent

In case of wrong or missing credentials, stop build and notify user about it

Original issue: https://youtrack.haulmont.com/issue/PL-9343

Cannot be done on Gradle script initialization


Log speed-related stuff in M2

It is worth logging: how often isActive() gets triggered and how many haplotypes get assembled.

For the haplotype details, the -debug argument from AssemblyBasedCallerArgumentCollection will be very helpful.  The docs says it should have active region info too, but I mostly used it for haplotypes.

@takutosato @LeeTL1220
I wrote a script to mine the debug output for some basic stats.  Here are results from 10Mb of DREAM 4.  We assemble 11000 active regions in order to get just 60 that pass the LoD threshold.  It seems that making isActive() smarter is by far a higher priority than reducing the number of haplotypes assembled.
Summary of active region determination and haplotype assembly for running Mutect 2
tumor: /dsde/working/davidben/dream/synthetic/original_bams_symlinks/tumor_4.bam
normal: / /working/davidben/dream/synthetic/original_bams_symlinks/normal_4.bam
interval: 20:10000000-20000000
Number of true variants: 73
Number of calls before filters applied: 63
Number of calls after filters applied: 53
Active regions: 10940
Average number of haplotypes per active region: 3.6649
Times more than 3 haplotypes assembled: 4149
Times more than 5 haplotypes assembled: 1396
Times more than 10 haplotypes assembled: 355
```java

The writing of the aforementioned script and the conclusion that we should focus on reducing the number of active regions fulfills this ticket.


Missed configuration variables

Hi:
We are using dc/os and we have seen there are some non editable config variables.
In scheduler.yml there are several hardcoded config variables.
For example, I want to config cassandra node to enable UDF and i havent found how to config it.
Is there any other reason to not allow this?
Cheers

@mohitsoni any news about this??

@ealonsodb Currently, the framework doesn't have a provision to configure URLs to UDF JARs. Although, the framework itself doesn't limit it in any way.
One way to solve this can be introduce an env-var: UDF_JARS_URIS, which would contain a comma separated list of URLs from which can serve the JARs containing UDF.
The Cassandra framework can then detect the presence of this env-var (best-effort), download these JARs into the lib directory, before starting up the Cassandra node.
How does that sound to you ?

You may be able to do something like what verma7 suggested in #326: Build/upload a custom executor package containing the jars, then configure EXECUTOR_CASSANDRA_LOCATION to the URL of that package.

Hi @mohitsoni and @nickbp.
Cassandra udfs in 'java' and 'javascript' are included by default in cassandra and there is no need to upload any jar.
The only limitation to use casssandra UDF (at least in java and javascript) is that user (guy launching a cassandra cluster in dcos web) cannot set 'enable_user_defined_functions' cassandra.yaml variable in json.
Cheers


support event subscription

what

add support for event_subscription block

why

improve module

references

Terraform documentation: inspector_assessment_template

@jamengual I see the CI got stuck... Anything I can do to improve this state?

/test all

@jamengual I see the required jobs are still stuck :slightly_frowning_face:

/test all

/test all

/test all

Thanks @czerasz for your contribution


Add note about differences between online and offline marketplace

A note should be added explaining there is a different in content between the connected and disconnected marketplaces. For example, a connected Azure Stack has over 20 variants of F5 BIG-IP load balancers, but the marketplace syndication tool shows only 3 of the 20 are available. Several other items from the marketplace are missing as well.
It would be useful to explain why there is a difference and if its a matter of timing or if some items are not authorized for disconnected Azure Stack versus connected.

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

ID: da2c689d-3537-c125-3f00-d769c9b5aa0c
Version Independent ID: 81e5de2b-da67-e875-405d-65628be05adc
Content: Download marketplace items from Azure
Content Source: articles/azure-stack/azure-stack-download-azure-marketplace-item.md
Service: azure-stack
GitHub Login: @sethmanheim
Microsoft Alias: sethm

@jgallucci32 Sorry for leaving this open so long. We have made modifications to this article, so if you still feel the information is missing, can you please open a new issue and @ mention me? Many thanks for your feedback! #please-close


SemanticsService.announce gets interrupted by VoiceOver

On iOS, SemanticsService.announce easily gets interrupted by VoiceOver when calling SemanticsService.announce('This is an announcement', TextDirection.ltr); in a button (any widget that has its own or child semantic hints for the VoiceOver to read).
This affects widgets that need to announce their states such as ExpansionTile.
Take this simple button that makes an announcement when pressing the button. On Android, the  Semantic announcement is read when pressing the button but on iOS, VoiceOver reads the "'Announce now!'" button text, which interrupts the Semantic announcement.
            FilledButton(
              onPressed: () async {
                SemanticsService.announce('This is an announcement', TextDirection.ltr);
              },
              child: const Text('Announce now!'),
            ),

On iOS, you can add delay to the announcement so it can be played after VoiceOver is done reading "'Announce now!'" button text.
            FilledButton(
              onPressed: () async {
                await Future<void>.delayed(const Duration(seconds: 2), () {
                  SemanticsService.announce(
                      'This is an announcement', TextDirection.ltr);
                });
              },
              child: const Text('Announce 2sec later!'),
            ),

code sample
import 'package:flutter/material.dart';
import 'package:flutter/rendering.dart';

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

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

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      debugShowCheckedModeBanner: false,
      theme: ThemeData(useMaterial3: true),
      home: const Example(),
    );
  }
}

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

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('Sample'),
      ),
      body: Align(
        alignment: Alignment.bottomCenter,
        child: Column(
          mainAxisSize: MainAxisSize.min,
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            FilledButton(
              onPressed: () async {
                SemanticsService.announce('This is an announcement', TextDirection.ltr);
              },
              child: const Text('Announce now!'),
            ),
            FilledButton(
              onPressed: () async {
                await Future<void>.delayed(const Duration(seconds: 2), () {
                  SemanticsService.announce(
                      'This is an announcement', TextDirection.ltr);
                });
              },
              child: const Text('Announce 2sec later!'),
            ),
           const SizedBox(height: 150)
          ],
        ),
      ),
    );
  }
}

iOS
https://user-images.githubusercontent.com/48603081/223467691-c677b6b3-2e4c-4726-a100-69b9696f4607.MP4
Android
https://user-images.githubusercontent.com/48603081/223467714-42e11f96-d6f3-4a25-80f1-3443e1787312.mp4

cc: @chunhtai

I am having the same issue. It also looks like the async function to announce the message does not resolve
 await SemanticsService.announce(msg, TextDirection.ltr);

This is still a pretty limiting issue which makes SemanticsService.announce very unreliable on iOS. :(


FR: Plugin instructions on the config page

I propose a section at the very top of the plugins list in your config page, which explains what the user should be doing while on the config page. Currently there is just a list of plugins with toggle buttons and a box with numbers in them. A user who just installed the plugin will remember what to do after having read the instructions, but months from now may not remember what to do, what the numbers mean, etc.
Perhaps remind the user that the number box is how many seconds they want the plugin to be loaded after Obsidian loads, and the toggle box is for enable/disabling the lazy-load.
And perhaps leave a link to your github there too, so that power users can visit to read more, see changelogs, etc.

agreed. It took me a while to find out that the setting represents seconds, not milliseconds.


Migrate our usage of internal API get_current_component to other alternative

What package has an issue
@svelteuidev/core
A clear and concise description of what the bug is
Type definitions for svelte/internal were removed for svelte 4: https://svelte.dev/docs/v4-migration-guide#other-breaking-changes, https://github.com/sveltejs/svelte/issues/9189
We are using get_current_component, which is an internal method. We should find another solution for this.
In which browser(s) did the problem occur?
Firefox
Steps To Reproduce

Install codebase using svelte>=4
Check TS errors when importing get_current_component in the codebase

Do you know how to fix the issue
Yes
Are you willing to participate in fixing this issue and create a pull request with the fix
Yes
Relevant Assets
No response

Does it mean that SvelteUI is not usable with Svelte 4 + TypeScript?

Does it mean that SvelteUI is not usable with Svelte 4 + TypeScript?

It's usable, the internal methods just don't have types, so it gives out TS errors inside the svelteui codebase.

Does it mean it willl throw TS errors when I run the type checker on my project?

Does it mean it willl throw TS errors when I run the type checker on my project?

No, I don't think so

There's also another change in svelte/internal - beforeUpdate was moved to svelte, should also fix for that:
- import { beforeUpdate } from 'svelte/internal';
+ import { beforeUpdate } from 'svelte';


Add signed cookies lambda

https://github.com/nationalarchives/tdr-terraform-modules/pull/187 will need to be merged so the has can be updated in this PR

@TomJKing Can you recheck this one when you get a sec, I had to update the hash for terraform modules.


Portrait segmentation

https://www.tensorflow.org/lite/models/segmentation/overview
https://github.com/tensorflow/examples/tree/master/lite/examples/image_segmentation/ios
https://github.com/tantara/JejuNet

https://www.slideshare.net/deview/112-portrait-segmentation-119058596

https://github.com/jsharp83/MetalCamera/pull/10

https://github.com/jsharp83/MetalCamera/pull/11


Error in the .gitmodules URL

Hello,
When trying to clone the repo, I come across an error:
fatal: repository 'https://github.com/grst/immundeconv.git/' not found
This might be due to an error in the URL as the correct one should be:
https://github.com/grst/immunedeconv.git/

Hi @NicolasSompairac,
thanks for the catch! Fixed now.
Let me know if you have any further issues running the pipeline.

Hello @grst,
Sure thing. Thank you for your prompt correction!


Added link to localization sample

Docs Build status updates of commit ad2ceeb:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/concepts/build-and-test/apps-localization.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


[$1000] Web - Blank Pages Displayed After Splitting Bill and Returning from Concierge Page

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Click on the plus sign, select "Split Bill", add the desired number, click "Next", choose email, and click "Split Bill".
The split money appears in the composer. Click on the money.
Click on the three dots in the top left corner, then select "Delete" The app redirects you to the Concierge page.
Go back, and observe that a blank page is displayed.

Expected Result:
The app should not show blank pages after returning from the Concierge page following a split bill.
Actual Result:
After returning from Concierge following a split bill, the app displays blank pages.
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android / native
[ ] Android / Chrome
[ ] iOS / native
[ ] iOS / Safari
[x] MacOS / Chrome / Safari
[ ] MacOS / Desktop

Version Number: 1.3.47-3
Reproducible in staging?: y
Reproducible in production?: y
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://github.com/Expensify/App/assets/93399543/579295f0-23ef-4a90-8a18-e226adcf5a3d
https://github.com/Expensify/App/assets/93399543/ca75e456-f3f5-4a67-ac49-2d4c25b28ab5
Expensify/Expensify Issue URL:
Issue reported by: @tewodrosGirmaA
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1690622954068189
View all open jobs on GitHub
Upwork Automation - Do Not Edit

Upwork Job URL: https://www.upwork.com/jobs/~01c5608dd0a0136fdb
Upwork Job ID:<PHONE_NUMBER>459588608
Last Price Increase: 2023-08-08

Proposal
Please re-state the problem that we are trying to solve in this issue.
Blank page displayed when splitting bill, deleting the money request, and going back
What is the root cause of that problem?
When deleting a money request, we call DeleteMoneyRequest API call and navigate to the iou or chat report here
https://github.com/Expensify/App/blob/024d210bc0b5a0454b62a72de60057af67cdd045/src/libs/actions/IOU.js#L965-L977
In the case shouldDeleteIOUReport is true, we only go back once and navigate to chat report.
But if we create split bill and go to the transaction report, the navigation looks like
    chat report -> iou report -> money request report

Now that we go back and navigate to chat report, the current navigation stack would look like
    chat report -> iou report -> chat report

If we go back, navigation would go to iou report, but this was already deleted and empty page appears
This is the root cause
What changes do you think we should make in order to solve the problem?
In the case shouldDeleteIOUReport is true, we have to go back to the chat report and navigate
In order to do this, create an utility function getReportIdInStack(depth = 0) in Navigation.js
const getReportIdInStack = (depth = 0) => {
    const state = navigationRef.getState();
    console.log(state.routes);
    let reportCount = 0;
    for (let i = state.routes.length - 1; i >= 0; i --) {
        const route = state.routes[i];
        if (route.name === 'CentralPaneNavigator') {
            if (depth === reportCount) {
                return route.params.params.reportID;
            }
            reportCount ++;
        } else {
            return '';
        }
    }

    return '';
}

And go back twice if we need to go back once more in deleteMoneyRequest function
    if (shouldDeleteIOUReport) {
        // Pop the deleted report screen before navigating. This prevents navigating to the Concierge chat due to the missing report.
        const previousReportId = Navigation.getReportIdInStack(1);
        Navigation.goBack();
        if (previousReportId === reportAction.originalMessage.IOUReportID.toString()) {
            Navigation.goBack();
        }
        Navigation.navigate(ROUTES.getReportRoute(iouReport.chatReportID));
    }

This works perfect

Result

What alternative solutions did you explore? (Optional)

I'll test soon

@allroundexperts - can I get your feedback here? https://github.com/Expensify/App/issues/22964 is about when you click into the IOU. Will the fix for that one address the Delete button which also appears to be taking you to the Concierge chat? Thanks for checking if the upcoming fix address this one too.

Got it, thank you for confirming this isn't a duplicate! I'll test to confirm if I get the blank page then.

Still on my test list

I was able to replicate it, and I marked it as External. I did notice a JS snippet in the process.

@mananjadhav - when you get a chance, can you please review the recent proposal? Thanks!

Thanks for the bump @alexpensify. @tienifr's proposal looks good to me.
I think setting optimistic data is a better design, but I will let internal engineer confirm if we want to take Navigation approach.
🎀 👀 🎀 C+ reviewed.

If that's what we are already doing with reportAction, let's go ahead and do the same with IOUs. @tienifr's solution looks good to me too.

Sorry, @tienifr I agreed with you yesterday — in my head — where it does you absolutely no good. 😅 I'll put a hold on this one till #21518 is merged.

Weekly Update: Still on hold for https://github.com/Expensify/App/issues/21518

Weekly Update: On Hold

Weekly Update: On Hold

Also, moving this to a weekly.

Weekly Update: On Hold

Weekly update: Should be in production soon.

Weekly Update: some conflicts are being reviewed

Weekly Update: still waiting for a conflict update

Weekly Update: By next week, we should be clear to move forward here!

@tienifr and @mananjadhav - can one of y'all test to identify if this is still an issue? The other PR was just moved to payment stages, so all clear here.

Ok with this news, I'm going to close it out.

Thank you!

Agreed with @tienifr here. Bump @alexpensify @deetergp.

There have been a few updates to the partial payment process. I need to ask a few questions and would like your opinions - @tienifr and @mananjadhav :

What compensation do you think is the percent due here for the work input here - 0, 25, 50, OR 100%?
Reasoning why has been shared https://github.com/Expensify/App/issues/23895#issuecomment-1751144412

Thanks!

@mananjadhav we need your feedback here, please reply with the percent. Thanks!

Thanks for the tag @tienifr. I missed this because the issue was closed. Based on the linked discussions I also feel it should be 100%.

Thanks, I will work on the process this week.

Here is the payment summary:

External issue reporter @tewodrosGirmaA $250
Contributor that fixed the issue @tienifr $1000
Contributor+ that helped on the issue and/or PR @mananjadhav $1000

Upwork Job: https://www.upwork.com/jobs/~01c5608dd0a0136fdb
*If applicable, the bonuses will be applied on the final payment
Extra Notes regarding payment: There is no urgency bonus. Payments have been sent out to those who receive payments there.

$1,000 payment approved for @mananjadhav based on comment above.


Apple Pencil Peek & Pop

Peek & Pop for Apple Pencil
depends on
https://github.com/flutter/flutter/issues/38135

Does the Apple Pencil return any pressure data to Flutter?

Currently not but the hardware is doing that much more precisely than force touch.
That's why I opened this because soon we won't have this anymore and pencil will be our only way to work with pressure.
Bug are triaged by like count ! so if you can share the word and like it a lot
So we won't have to wait a year to get it to work ;)

Sure! I will also see if I can develop a plugin for this purpose. However, I will need your assistance with testing as I don't have an Apple Pencil 😃

Did you make any progress on this issue? I am thinking about switching to flutter, but since my app is on iPad and apple pencil support is a must for me, I am not sure if I can...

As I don't have an Apple Pencil, this is slightly difficult for me to develop at this moment.


Support any sequence lens

Hi @lucidrains, Thanks for the implementation!
I just want to point out that in the official implementation to support variable sequence length, they just slice the projection matrix

@systemdevart ah yea i see, that makes sense
have you tried it and does it work well?

@systemdevart ok, i added it to this unofficial repo as well


Issues with running Ghidra tests in CI

I setup mirror for the Ghidra, and currently able build Ghidra on Linux and Mac, on public CI.
But when I add unit tests and even worse integration tests, I have an problem with running tests in CI environment. I completely understand that this may be not your concern, but maybe you have some advice based on your existing experience with running CI for Ghidra.
Let's start with running gradlew unitTestReport
Here the error messages which generated on Linux
java.lang.IllegalArgumentException: java.net.MalformedURLException: unknown protocol: ghidra
java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11.XToolkit
java.lang.NoClassDefFoundError: Could not initialize class docking.widgets.table.constrainteditor.EnumConstraintEditor
java.lang.NoClassDefFoundError: Could not initialize class docking.widgets.table.constrainteditor.UnsignedLongRangeConstraintEditor
java.lang.NoClassDefFoundError: Could not initialize class docking.widgets.table.constrainteditor.DoubleValueConstraintEditor
java.lang.NoClassDefFoundError: Could not initialize class docking.widgets.table.constrainteditor.DateRangeConstraintEditor
java.lang.NoClassDefFoundError: Could not initialize class docking.widgets.table.constrainteditor.IntegerRangeConstraintEditor
java.lang.NoClassDefFoundError: Could not initialize class docking.widgets.EmptyBorderButton
java.lang.NoClassDefFoundError: Could not initialize class javax.swing.RepaintManager
java.lang.NoClassDefFoundError: Could not initialize class docking.DockingUtils
java.lang.NoClassDefFoundError: Could not initialize class java.awt.GraphicsEnvironment$LocalGE
java.awt.AWTError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.

java.lang.AssertionError: Failed to parse expected composite (see log)

All except latest one clearly from inability to see X11 server in CI environment. Last one not clear for me since I have to debug that, or at least take a look (not have time yet).
What I want to have right now is ability to run tests which does not involved in the UI part. So here my quuestions:

How can I run unit tests without running test which involved in UI. I attempt to run gradew unitTestReport -Djava.awt.headless=true and try to play with many other different combinations without luck. But funny things I found that you have that: https://github.com/NationalSecurityAgency/ghidra/blob/master/gradle/javaTestProject.gradle#L150 ,
Is it possible to make java.awt.headless=false switch configurable somehow? Preferable in a way which easy to change in CI environment?
If I annotate tests which are require to use X11 with some category will this change be accepted by Ghidra? There ~450 tests failing due X11 dependency now. I promise to update documentation to reflect that this is possible, or do any similar activity if this is required to make that happens.
How can I run unit tests just for single project in Ghidra? I assume gradlew unitTestReport -PDB  but I it runs tests for Base and other projects, which PDB depends on. This is defeats purpose running tests for single project. This allow me to run less tests in one build. Public build has a limit of 1 hour, but I want to run integration tests as well and they do not fit in that time limit when I simply run gradlew integrationTestReport

These build errors prevent me from at least partial validation of the status of my fork.
Link to build with errors, in case sombody interested: https://codevision.visualstudio.com/Ghidra/_build/results?buildId=10106&view=ms.vss-test-web.build-test-results-tab
In case if somebody super-interested here link to build definition: https://github.com/kant2002/ghidra-official/blob/dev/.azure/build.yaml

Have you tried using a virtual framebuffer such as Xvfb?
You would do something like this:
Xvfb :99 &
export DISPLAY=:99

Yes, Xvfb is what we use.

This is an example of how you can run a single test using gradle (running from the repo root directory):
gradle  :Docking:test --tests TaskDialogTest  -x sleighCompile -x buildHelp
'TaskDialogTest' is the test name to be run in this example
'Docking' is the module name.
'test' signals a unit test; 'integrationTest' would signal an integration test.  Unit tests live under '/src/test'; integration tests live under '/src/test.slow'
The '-x' options are to tell our current build system to ignore those items that are known to be slow and are not necessarily needed for any given particular test.

We do have other scripts we use to run our full test suite.   For reasons that are unclear to me at the moment, these are not included in this repository.

Regarding the X11 annotation comment, this should not be needed.   Ultimately, our test harness is designed such that the developer only needs to extend the correct type of abstract test.   After that, the test harness understands how to configure the environment and run the tests.   For this to work correctly, we rely on the aforementioned test setup scripts.

Thanks to all of you guys. It really helps me move forward. I still have issues with Xvfb, but for now I suspect that this is more related to Azure Dev Ops.
@devnoname120  when I run Xvfb :99 &
I strangely have following error during build.
> Failed to create MD5 hash for file '/home/vsts/work/1/ghidra.bin/Ghidra/Features/GhidraServer/yajsw-stable-12.12.zip' as it does not exist.

Not sure why ghidra.bin appears in the path. If something is ticking for any of you, I would appreciate help.
@dragonmacher Command line for running tasks for separate projects would be enough for me to play with for now.

Now I have 7 failed tests:
2 tests
testFullyZoomedOutOption
testFullyZoomedOutOption

failed at the
at ghidra.app.plugin.core.functiongraph.AbstractFunctionGraphTest.assertZoomedIn(AbstractFunctionGraphTest.java:2170)

Which corresponding to the following code
	Rectangle cursorBounds = v.getCursorBounds();
	Window graphWindow = windowForComponent(getPrimaryGraphViewer());
	Rectangle windowBounds = graphWindow.getBounds();
->>	assertTrue(windowBounds.contains(cursorBounds));

This is somehow UI related I suppose.
Another 5 tests
testSimpleUnion
testComplexStructureWithBitFields
testSimpleStructureWithBitFields
testComplexStructureWithBitFields2
testMoreComplicatedStructure

failed with message Failed to parse expected composite (see log) and in the logs there indication that somehow structures different.
For example
14:08:52 ERROR Expected and result differ: expected line 5, column 20   (CompositeTestUtils.java:69)
14:08:52 ERROR Expected composite:
   /union
    Aligned
    Union union {
        0   uchar   1   a   ""
        0   union_s_1   1   _s_1   ""
        0   union_s_2   1   _s_2   ""
        0   ushort   2   f   ""
     }
     Size = 2   Actual Alignment = 2
     /union/union_s_1
     Aligned
     Structure union_s_1 {
        0   uchar:4(0)   1   b   ""
        0   uchar:4(4)   1   c   ""
     }
     Size = 1   Actual Alignment = 1
     /union/union_s_2
     Aligned
     Structure union_s_2 {
        0   uchar:4(0)   1   d   ""
        0   uchar:4(4)   1   e   ""
     }
     Size = 1   Actual Alignment = 1   (CompositeTestUtils.java:79)
     14:08:52 ERROR Result composite:
     /union
     Aligned
     Union union {
        0   uchar   1   a   ""
        0   union_s_1   2   _s_1   ""
        0   union_s_2   2   _s_2   ""
        0   ushort   2   f   ""
     }
     Size = 2   Actual Alignment = 2
     /union/union_s_1
     Unaligned
     Structure union_s_1 {
        0   uchar:4(0)   1   c   ""
        1   uchar:4(0)   1   b   ""
     }
     Size = 2   Actual Alignment = 1
     /union/union_s_2
     Unaligned
     Structure union_s_2 {
        0   uchar:4(0)   1   e   ""
        1   uchar:4(0)   1   d   ""
     }
     Size = 2   Actual Alignment = 1   (CompositeTestUtils.java:80)
14:08:52 DEBUG 	âœ– FAILED Test: CompositeMemberTest - testSimpleUnion âœ–	   (AbstractGenericTest.java:113)

CompositeMemberTest tests are currently passing in master.  Are you using the latest?

I update yesterday, and now 10 commits behind master, but I see these tests failing and earlier. I assume that this maybe something missing in my CI setup.

Now, I would say that only testFullyZoomedOutOption does not working. Other tests are working fine.

Some of our tests aren't written quite correctly, and are susceptible to time-related failures.  We fix these as we find them.   testFullyZoomedOutOption is probably one of these.

thanks for information. I will keep an eye on it. but for now, I think this issue can be closed. At least I have better understanding. @ryanmkurtz if you can take a look at #832 where I made attempt to capture small tips which you give to me in the docs.

K I'll take a look, thanks.


bug: Links followed by a period break.

If a cast includes a URL immediately followed by a period, the period gets interpreted as part of the URL and the URL then no longer works.
While technically a URL can end in a period, I think it is uncommon enough that it should not be included if it is the last character.  Same for other punctuation like ?, ), ;, :, etc.
It is worth noting that Warpcast correctly leaves the period off of the link.

Example cast: https://opencast.stephancill.co.za/tweet/e01912408f200c30f9309bc2a40b01ddb42c4dd1


Integrate Thunderbolt 3 Patch from pierpaolodimarzo

I want to ask whether the Thunderbolt 3 Patch from here: https://github.com/pierpaolodimarzo/ThinkPad-T480
can be integrated into the EFI. On my system this patch works on Sequoia and I can provide my EFI if there is an interest in that.

I just bought one and wondering if I can get this working. I'm using MacOS Ventura if that makes any difference. Are you using the Thuderbolt 3 patch with a T480?

yes sir, I can provide the EFI. The crucial thing is, that the Thunderbolt-Firmware is updated to the most recent version. That's also due to the fact, that else the Thunderbolt-Port will eventually break. That's a design flaw by Lenovo. Once you have done that, I can upload my EFI and then it will work in principle, just that it may needs to be optimized (I have no deeper knowledge to understand what makes it actually work or not). The Thunderbolt-Port is the one facing you btw., the other one won't work

Great please upload and thank you!

Here you go: https://anonymfile.com/Y1kAR/efi.zip
Hope it works for you and if you happen to be able to improve on it, would love to hear from you!

@Pete466 Do you have a stable build? Im running macos ventura and having loads of issues. My external monitor will not boot or wake from sleep without being switched on or off and on while the laptop is open. The whole system will crash out of nowhere and the computer just shut off like someone pulled the plug. Also the track pad will not respond when waking the laptop. It seems super unstable and unpredictable.

I haven't been running Ventura on it, but Sonoma and Sequoia. It's semi-stable, as in no crashes, trackpad works fine as long as you don't put it into sleep. I never put the laptop into sleep because that causes - as you are saying - lots of issues. For example the laptop will randomly wake up from sleep and the Thunderbolt will stop working. Thunderbolt in my implementation works, if you start the laptop with the monitor being on. As soon as you disconnect it however, it fails to reconnect etc. For me it's a "better than no Thunderbolt at all" kind of solution and I don't have the knowledge to do it better. Maybe @valnoxy can help us out on this one

+1 for pierpaolodimarzo's thunderbolt patch, but iirc hotplug isn't working, i might prolly trying thunderbolt patches from https://github.com/tylernguyen/x1c6-hackintosh (for proper hotplug and 3.1 support) later when i have time

yea, if you remain on Ventura that makes the most sense. I wanted to use recent versions, thus the attempt to update it. @lolipuru if you have success, please share it with us, that'd be awesome

I want to ask whether the Thunderbolt 3 Patch from here: https://github.com/pierpaolodimarzo/ThinkPad-T480 can be integrated into the EFI. On my system this patch works on Sequoia and I can provide my EFI if there is an interest in that.

are you using this EFI? is this working without heliport?

I made my own, see the link, by trying to mix them with limited understanding. The Thinkpad was running on Sequoia and now on Sonoma, because I couldn't get Heliport to work at all (app refused to start, currently I use airportwltm). Thunderbolt worked, with the limitation of sleep / disconnect and reconnect then it would stop to work till reboot and cause temporary boot issues

I made my own, see the link, by trying to mix them with limited understanding. The Thinkpad was running on Sequoia and now on Sonoma, because I couldn't get Heliport to work at all (app refused to start, currently I use airportwltm). Thunderbolt worked, with the limitation of sleep / disconnect and reconnect then it would stop to work till reboot and cause temporary boot issues

technically, you can get airportltwm running on sequoia by spoofing intel wifi card to boardcom, then run oclp patch

UPDATE: I switched to the non-touch EFI-i5.8250u.zip build from https://github.com/pierpaolodimarzo/ThinkPad-T480
I have a T480 i7 8650U with 64GB RAM
So far everything seems to be working and Thunderbolt is operating. I don't have any thunderbolt peripherals to test but my usb-c external hard drive mounts when connecting to the thunderbolt port.
My only issue now is external HDMI monitor will not wake from sleep and you cannot boot in clamshell mode as external monitor will not be activated without turning it on or plugging it in with the laptop lid open.

unfortunately, my hdmi monitor is dead. so i don't have any changes to try fix it properly yet.

I could assist with the testing bit, as the laptop is currently running macOS still. Regarding Airport you're right, I saw that earlier, but haven't found the time to try implementing it...


[FEAT] UNDO button integration

Draw-it-Out Undo Button Missing
Describe the feature
Currently, there is no undo button functionality implemented in the Draw-it-Out project. This means users cannot undo a drawing they've made, which can be frustrating if they make a mistake or want to backtrack on their actions.
To Reproduce
Steps to reproduce the behavior:

Go to the Draw-it-Out website.
Start drawing something.
Make a mistake or decide to undo a part of the drawing.
Look for an undo button or option, which is currently missing.

Expected behavior
The expected behavior is that users should have the ability to undo their drawing actions, through a dedicated undo button.
Additional context
The absence of an undo button can significantly affect the user experience, especially for those who frequently use the drawing tool. Implementing this feature would enhance usability and make the tool more intuitive.

hey @singodiyashubham87
kindly assign me the issue.

@Atanu789 Duplicate of #32


[Docs] Create a "Contributing to Meshery.io site" page

Current State
In Meshery Docs, the contributing and set-up guides can be found at : in https://docs.meshery.io/project/contributing page.
Currently, there's no "Contributing to Meshery.io site" page
Desired State

Create and list a Contributing to Meshery.io Site page at https://docs.meshery.io/project/contributing that includes a setup (covering prerequisites, required dependencies, and steps to run the site locally) as well as a contributing guide.
Inspiration - https://docs.meshery.io/project/contributing/contributing-docs
Next, include a link to the page in meshery/meshery.io/CONTRIBUTING.md

Contributor Guides and Handbook

📚 Instructions for contributing to documentation

Meshery documentation site and source

🛠 Meshery Build & Release Strategy
🎨 Wireframes and designs for Meshery UI in Figma (open invite)
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

@shashank-kavli is there anything further that you would like to add to this description?

@leecalcote
I included a description of the ask.

Thanks for the description @vishalvivekm , sorry i was away so couldnt respond earlier.
Btw ive make a guide and would love your opinion should i tag you on slack?

can i work on this ?

Hello, I would like to work on this. I tried to set up Meshery on my local machine but I couldn't set up Meshery Documentation on my local machine can you guide me?
I can set up this one

But not this one

Thanks for the description @vishalvivekm , sorry i was away so couldnt respond earlier. Btw ive made a guide and would love your opinion should i tag you on slack?

@shashank-kavli
will you join today's websites meeting ( starting in 6 minutes) to get feedback on your progress so far?
meeting link: https://meet.layer5.io/websites

Thanks for the description @vishalvivekm , sorry i was away so couldnt respond earlier. Btw ive made a guide and would love your opinion should i tag you on slack?

@shashank-kavli will you join today's websites meeting ( starting in 6 minutes) to get feedback on your progress so far? meeting link: https://meet.layer5.io/websites

sorry @vishalvivekm i was inactive for the last couple of weeks as i was not at home. is it okay if i join the meet next monday


Windows UTF-8 woes

Windows 8.1
Python 3.4.3
mkdocs 0.11.1
UTF-8 characters are not recognized, because system code-page character-mapping is being used: cp1252.py
Using this mkdocs.yml
site_name: “My Docs”

I get the following error:

File "C:\Python34\lib\encodings\cp1252.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x9d in position 19: character maps to <undefined>

Obviously, similar errors are returned if any of the .md files contain UTF-8 characters.
I have hacked a personal fix (I am not a Python dev) by changing https://github.com/tomchristie/mkdocs/blob/455c1a66dbc77960893ad371d76dae0fa59bfa96/mkdocs/build.py#L206
input_content = open(input_path, 'r', encoding='utf8').read()

and https://github.com/tomchristie/mkdocs/blob/455c1a66dbc77960893ad371d76dae0fa59bfa96/mkdocs/config.py#L80
with open(filename, 'r', encoding='utf8') as fp:

Big BUT
Now we get an error after using the new command to create the default files, because index.md contains a UTF-8 character (c2 a0 NO-BREAK SPACE) that the parser doesn't like :

File "C:\Python34\lib\codecs.py", line 319, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xa0 in position 348: invalid start byte

It is here: https://github.com/tomchristie/mkdocs/blob/455c1a66dbc77960893ad371d76dae0fa59bfa96/mkdocs/new.py#L19
## Project layout

    mkdocs.yml # The configuration file.
                ^

I encountered similar issues running mkdocs locally with UTF-8 characters in my .md documents.
Surprisingly, ReadTheDocs doesn't have this issue, even when using mkdocs as the backend.

I also encounter this problem recently when I try to build docs on the server. It works fine on Ubuntu 14.04 but not on Windows 8. I paste the error log here:
C:\Users\hr-admin\.hudson\jobs\Maven Build\workspace\updater-docs\current>python C:\Python34\Scripts\mkdocs-script.py build --clean
Cleaning site directory
Building documentation to directory: site
Traceback (most recent call last):
  File "C:\Python34\Scripts\mkdocs-script.py", line 9, in <module>
    load_entry_point('mkdocs==0.11.1', 'console_scripts', 'mkdocs')()
  File "C:\Python34\lib\site-packages\mkdocs\main.py", line 60, in run_main
    main(cmd, args=sys.argv[2:], options=dict(opts))
  File "C:\Python34\lib\site-packages\mkdocs\main.py", line 36, in main
    build(config, clean_site_dir=clean_site_dir)
  File "C:\Python34\lib\site-packages\mkdocs\build.py", line 266, in build
    build_pages(config)
  File "C:\Python34\lib\site-packages\mkdocs\build.py", line 206, in build_pages

    input_content = open(input_path, 'r').read()
  File "C:\Python34\lib\encodings\cp1252.py", line 23, in decode
    return codecs.charmap_decode(input,self.errors,decoding_table)[0]
UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 4634: character maps to <undefined>

I'm not really able to support windows at the moment.
However, this appears to be a duplicate of #239.

I was able to fix the same issue but it's not a problem with mkdocs rather with livereload lib.
I've described it here https://github.com/lepture/python-livereload/issues/111


[BUG]: Details list clickableimage cell type icon color not functional

Describe the bug
In the details list Image & Clickable Image documentation (link) the example shows a Clickable image column where each icon has its own color. That color seems to come from the ImageColor column in the rows data.
After testing that sample in the same conditions, the icon color stays indefinitely black and can't be changed.
Is there a ColImageColorColumn property to set the column that holds the color for the icon?
How do you set the color for an icon in a clickableimage cell type column?
To Reproduce
Steps to reproduce the behavior:

Go to https://learn.microsoft.com/en-us/power-platform/guidance/creator-kit/detailslist#image--clickable-image
Reproduce the sample
The icons don't have any color in the list

Expected behavior
I suppose there should be a ColImageColorColumn property to set the column that holds the color for the icons in the data.
AB#961

I stumbled across the same documentation error. It also works for image columns if the color is set via ColTagColorColumn as with tag columns.


Limited business' branch locations

1. Severity:  Low
2. Reported by: Mira
3. Description: Business' branch locations are limited to 6 locations in cairo only
4. Steps to reproduce the issue:

Signup as a business and wait for your account to be approved
On following the confirmation link that will be sent to your email you will be asked to enter your business' branch location

5. Expected result:
The business should be able to enter a location other than the provided 6(either include all location or leave it open)

This is the intended behaviour, the locations that we operate in are to be decided by the owner not the business the current list is for demonstration only.

Design decision


Presence Detection (Request)

I was wondering if it's possible to add presence detection to this platform. A python interface to the eightsleep API has this (kind of) working: https://github.com/mezz64/pyEight/blob/9c0cb8728277215a7c50584b7e4e3f5f55e7df07/pyeight/user.py#L33
Please let me know if I can help at all!

I definitely wanted to! But I couldn’t figure it out looking at the api request from the app. I working on some other homebridge stuff right now: better dyson fans and nanit integration. But happy to take PRs and maybe someday Ill get to it myself. If you need a quick hack checkout NFC automations via the shortcuts app (for example: set phone on nightstand nfc and trigger bed time scene).
TJ
On Jun 14, 2021, 12:54 PM -0700, Fernando Torales Acosta @.***>, wrote:

I was wondering if it's possible to add presence detection to this platform. A python interface to the eightsleep API has this (kind of) working: https://github.com/mezz64/pyEight/blob/9c0cb8728277215a7c50584b7e4e3f5f55e7df07/pyeight/user.py#L33
Please let me know if I can help at all!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Ah, I see. Haha no worries.
Cool, I'll try to mess around with it and let you know via a PR if I make any progress :)
Best of luck with your other homebridge stuff, and thanks a bunch for this plug in, it's really awesome.
Thanks,
— Fernando TA

On Jun 14, 2021, at 8:43 PM, Tejesh Mehta @.***> wrote:

I definitely wanted to! But I couldn’t figure it out looking at the api request from the app. I working on some other homebridge stuff right now: better dyson fans and nanit integration. But happy to take PRs and maybe someday Ill get to it myself. If you need a quick hack checkout NFC automations via the shortcuts app (for example: set phone on nightstand nfc and trigger bed time scene).
TJ
On Jun 14, 2021, 12:54 PM -0700, Fernando Torales Acosta @.***>, wrote:

I was wondering if it's possible to add presence detection to this platform. A python interface to the eightsleep API has this (kind of) working: https://github.com/mezz64/pyEight/blob/9c0cb8728277215a7c50584b7e4e3f5f55e7df07/pyeight/user.py#L33
Please let me know if I can help at all!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.


☂  Prettier Divergence collection from the Prettier challenge

This Issue will function as a hub for collecting divergence from Prettier. When you want to comment, please use the following template:
## Divergence

<! -- Add a diff and the name of the file from `report.md` -->

## Reason

<! -- Reason why we should diverge -->

Divergence
Input
// Multiple accessibility modifiers
class Foo {
  private public a  = 1;
}

// Declare function with body
declare function foo ( ) {  }

// Invalid use of abstract
class Bar {
  abstract  foo  ;
}

// Duplicate Readonly
class Read {
  readonly readonly   x: number;
}

Diff
// Multiple accessibility modifiers
class Foo {
-  private a = 1;
+  private public a  = 1;
}

// Declare function with body
-declare function foo() {};
+declare function foo ( ) {  }

// Invalid use of abstract
class Bar {
-  abstract foo;
+  abstract  foo  ;
}

// Duplicate Readonly
class Read {
-  readonly x: number;
+  readonly readonly   x: number;
}

Related Prettier Tests

typescript/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractProperties.ts
typescript/declare/declare_function_with_body.ts
typescript/conformance/classes/constructorDeclarations/constructorParameters/readonlyReadonly.ts
typescript/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractInstantiations2.ts
typescript/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractMixedWithModifiers.ts
typescript/custom/abstract/abstractProperties.ts

Reason
Prettier's Babel-based parsing for JS/TS is very loose and allows multiple errors to be ignored. Biome's parser intentionally has stricter rules than Prettier and correctly asserts that the statements in these tests are invalid. Duplicate modifiers for functions are not semantically valid, function declarations are not allowed to have bodies, non-abstract classes cannot have abstract properties, etc.
In Prettier, these errors aren't considered parse errors, and the AST is still built "correctly" with the appropriate nodes. When formatting, Prettier then just treats these nodes as normal and formats them accordingly.
In Biome, the parsing errors result in Bogus nodes, which may contain any number of valid nodes, invalid nodes, and/or raw tokens. When formatting, Biome treats bogus nodes as effectively plain text, printing them out verbatim into the resulting code without any formatting, since attempting to format could be incorrect and cause semantic changes.
For class properties, Prettier's current parsing strategy also uses boolean fields for modifiers, meaning only one of each kind of modifier can ever be present (accessibility modifiers are stored as a single string). When printing, Prettier just looks at the list of booleans and decides which modifiers to print out again. Biome instead keeps a list of modifiers, meaning duplicates are kept around and able to be analyzed (hence the parsing error messages about duplicate modifiers and ordering). When printing out the bogus nodes, this list is still kept intact, and printing out the unformatted text results in those modifiers continuing to exist.
There are ways that Biome can address this. One possibility is to try to interpret the Bogus nodes when formatting and construct valid nodes out of them. If a valid node can be built, then it would just format that node like normal, otherwise it prints the bogus text verbatim as it does currently. However, this is messy and introduces a form of parsing logic into the formatter that is really not meaningful.
Another option instead is to introduce some form of "syntactically-valid bogus node" into the parser, which accepts these kinds of errors that are purely semantic (duplicate modifiers, abstract properties in non-abstract classes). It would continue to build the nodes like normal (effectively matching the behavior in Prettier), but store them inside of a the new kind of bogus node, including the diagnostics along with it. When formatting, these special bogus nodes would just attempt to format the inner node, and then fallback if there's an error (the existing format_or_verbatim utility would do this already). This keeps the parsing and formatting logic separate from each other, but introduce more complexity to the parser, allowing invalid states to be considered semi-valid.
After a little bit of discussion in Discord, the decision for now is to not worry about this divergence unless it's needed to reach 95% compatibility with Prettier.
Playground link
https://biomejs.dev/playground/?indentStyle=space&quoteStyle=single&trailingComma=none&code=LwAvACAATQB1AGwAdABpAHAAbABlACAAYQBjAGMAZQBzAHMAaQBiAGkAbABpAHQAeQAgAG0AbwBkAGkAZgBpAGUAcgBzAAoAYwBsAGEAcwBzACAARgBvAG8AIAB7AAoAIAAgAHAAcgBpAHYAYQB0AGUAIABwAHUAYgBsAGkAYwAgAGEAIAAgAD0AIAAxADsACgB9AAoACgAvAC8AIABEAGUAYwBsAGEAcgBlACAAZgB1AG4AYwB0AGkAbwBuACAAdwBpAHQAaAAgAGIAbwBkAHkACgBkAGUAYwBsAGEAcgBlACAAZgB1AG4AYwB0AGkAbwBuACAAZgBvAG8AIAAoACAAKQAgAHsAIAAgAH0ACgAKAC8ALwAgAEkAbgB2AGEAbABpAGQAIAB1AHMAZQAgAG8AZgAgAGEAYgBzAHQAcgBhAGMAdAAKAGMAbABhAHMAcwAgAEIAYQByACAAewAKACAAIABhAGIAcwB0AHIAYQBjAHQAIAAgAGYAbwBvACAAIAA7AAoAfQAKAAoALwAvACAARAB1AHAAbABpAGMAYQB0AGUAIABSAGUAYQBkAG8AbgBsAHkACgBjAGwAYQBzAHMAIABSAGUAYQBkACAAewAKACAAIAByAGUAYQBkAG8AbgBsAHkAIAByAGUAYQBkAG8AbgBsAHkAIAAgACAAeAA6ACAAbgB1AG0AYgBlAHIAOwAKAH0A

Divergence
Prettier doesn't unquote some object properties that are valid JavaScript identifiers.
Input
const obj = {
 'a': true,
 b: true,
 "𐊧": true,
}

Diff
 const obj = {
   a: true,
   b: true,
-  "𐊧": true,
+  𐊧: true,
 };

Playground link
Prettier test

js/quotes/objects.js

Reason
Prettier and Biome unquote object and class properties that are valid JavaScript identifiers.
Prettier unquotes only valid ES5 identifiers.
In an ecosystem where ES2015 is now widespread, this seems to be a legacy restriction.
Thus, we decided to diverge here by unquoting all valid JavaScript identifiers in ES2015+.
A possible workaround would be to introduce a configuration to set the ECMAScript version a project uses.
We could then adjust the unquoting behaviour based on that version.
Setting the ECMAScript version to ES5 could match the behaviour of Prettier.

Divergence
Input
a = {
  [this.resource = resource]: 1,
}

Diff
 a = {
-  [(this.resource = resource)]: 1,
+  [this.resource = resource]: 1,
 };

Playground link
Prettier Test

js/objects/assignment-expression/object-property.js

Reason
Prettier and Biome enclose some assignment expressions between parentheses, in particular in conditionals.
This allows to identify potentially an expression that should be a comparison.
Prettier has an inconsistent behavior, because it adds parentheses for an assignment in a computed key of an object property and doesn't for a computed key of a class property, as demonstrated by the following example:
Input
a = {
  [x = 0]: 1,
}

class C {
  [x = 0] = 1
}

Output
a = {
  [(x = 0)]: 1,
};

class C {
  [x = 0] = 1;
}

Playground link
To be consistent, we decide to diverge and omit the parentheses.
Alternatively, we could enclose any assignment in a computed key of an object or of a class.

Divergence
Input
interface L<in const T> {}

Diff
-interface L<const in T> {}
+interface L<in const T> {}

Playground link
Prettier Test

typescript/typeparams/const.ts

Reason
As mentioned in a previous divergence, Prettier's Babel-based parsing for JS/TS is very loose and allows multiple errors to be ignored. Biome's parser intentionally has stricter rules than Prettier and correctly asserts that the const modifier is not allowed for type parameters of interfaces.
In Prettier, this error isn't considered a parse error, and the AST is still built "correctly" with the appropriate nodes. When formatting, Prettier then just treats these nodes as normal and formats them accordingly.
In Biome, the parsing errors result in a Bogus node, which may contain any number of valid nodes, invalid nodes, and/or raw tokens. When formatting, Biome treats bogus nodes as effectively plain text, printing them out verbatim into the resulting code without any formatting, since attempting to format could be incorrect and cause semantic changes.
We could adopt the same strategy that discussed in a previous comment to fix the divergence.

Divergence
Prettier encloses optional chains between parentheses.
Input
(a?.b).c;
(a?.()).b;

(a?.b)();
(a?.())();

new (a?.b)();
new (a?.())();

Diff
-(a?.b).c;
-(a?.()).b;
+a?.b.c;
+a?.().b;

-(a?.b)();
-(a?.())();
+a?.b();
+a?.()();

 new (a?.b)();
 new (a?.())();

Playground link
PrettierTests

js/chain-expression/test.js
js/optional-chaining-assignment/valid-parenthesized.js
typescript/chain-expression/test.ts

Reason
Prettier encloses every optional chain between parentheses.
As discussed on Discord, we think this reduces readability.
For the time being, we decide not to fix this divergence.

Divergence
Prettier adds a trailing comma to type parameters of arrow functions.
Input
<const T>() => {};

Diff
-<const T,>() => {};
+<const T>() => {};

Playground link
Prettier Tests

typescript/arrows/type_params.ts
typescript/compiler/contextualSignatureInstantiation2.ts
typescript/typeparams/const.ts

Reason
Prettier outputs an inconsistent behavior, because it adds a trailing comma to type parameter lists of arrow functions, and removes any trailing comma to type parameter lists of classes and interfaces.
To be consistent we decided to diverge and to not add this trailing comma.

Prettier encloses optional chains between parentheses

Removing the parentheses here changes the meaning of the code. The call or member expression becomes part of the optional chain.

Prettier does this only in TSX to disambiguate generics from JSX elements.

That has been updated, changelog

Prettier does this only in TSX to disambiguate generics from JSX elements.

That has been updated, changelog

You are right. In fact, Biome already keeps the trailing comma. However, Biome seems not able to parse the const modifier for the first type parameter of an arrow function. This is an issue on our side. Thanks for bringing it to light :)

Removing the parentheses here changes the meaning of the code. The call or member expression becomes part of the optional chain.

Thanks for highlighting this. We have to think about that.

Divergence
Prettier adds a trailing comma to type parameters of arrow functions even when it is not required.
Input (tsx)
<T = unknown>() => {};

Diff
- <T = unknown,>() => {};
+ <T = unknown>() => {};

Reason
In some specific cases, a type parameter list of an arrow function requires a trailing comma to distinguish it from a JSX element.
When a default type is provided, this trailing comma is not required.
Here, we diverge from Prettier, because we think it better respects the original intent of Prettier, which was to add a trailing comma only when required.

Divergence
Input (ts)
const A = {
  x: "x",
  y: "y",
  z: "z",
};

const {
  x,
  y,
  z,
} = A;

Diff
const A = {
  x: "x",
  y: "y",
  z: "z",
};

- const {x, y, z} = A;
+ const {
+  x,
+  y,
+  z,
+ };

Reason
There was never any good reason given by Prettier why these should be treated differently.

Pretty sure the last case depends on the line length of the destructuring statement, past certain length it newlines all the keys. IMO Prettier is in the right there because newlining in all cases feels not so much different from doing const keyName = A.keyName for each key, for which destructuring was supposed to be a sugar in the first place. But long single-line desructuring statement can become obnoxious to read (especially when paired with nested destructuring).

@thorn0 Thanks, I didn't start a discussion. I left a Divergence and then someone responded to that, which I had no control over. Perhaps your message was meant for @GabenGar ?

This thread is specifically to list out cases where Biome has already intentionally decided to deviate from Prettier's behavior and explain the rationale for that as an easily accessible source of truth for any differences that people might encounter. It's not really intended as a place to point out discrepancies between Biome or Prettier or seek clarification about them.
If you'd like to ask why Biome is different than Prettier in a specific case, then opening an issue about it would be the best place to start (or asking in Discord, or a Discussion). If it is then decided to not be remedied by changing Biome, then a solidified, well-established answer will be added to this thread.
If you'd like to ask why Prettier decides to format things in a certain way (i.e., Biome does this because Prettier does, but why does Prettier do it), then the Prettier repository would be the appropriate place to ask.
In this situation, Biome is just matching Prettier's behavior, so the question should be asked to the Prettier team, or asked in a new issue for Biome to consider deviating.

This thread is specifically to list out cases where Biome has already intentionally decided to deviate from Prettier's behavior...

Ahhh, thanks @faultyserver that was not clear.


elementToClick implemented + handle error

Hello team,
This PR brings 1 new feature and 1 improvement

targetToClick property that permits to select a specific element to click and another one to spotlight
errors shut down the guided tour

Paul

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Disable Endpoint Suspension in default API

Description:
In default API we are calling its own version API. We can disabled the suspension in default api endpoint as it not going out side.

Fixed in https://github.com/wso2/product-apim/pull/2857


support contents option with WorkspaceEdit#createFile

Fixes https://github.com/microsoft/vscode/issues/148667

@mjbvz I also made the corresponding changes in vscode-dts. Please review again.


NTR: P450-containing electron transport chain

(Following on from https://github.com/geneontology/go-ontology/issues/21334)

Suggested term label:
P450-containing electron transport chain

Definition (free text)
A process in which one or more electron carriers operate to transfer electrons from donors to a cytochrome P450 protein or domain. Electron carriers operating in this chain include FAD-containing flavoproteins or domains, FMN domains, ferredoxins and cytochrome b5. The reduced cytochrome P450 functions as the terminal oxidase and participates in a wide range of biochemical pathways.

Reference, in format PMID:#######
PMID:16042601
https://en.wikipedia.org/wiki/P450-containing_systems

Parent term(s)
electron transport chain (GO:0022900)

Synonyms (please specify, EXACT, BROAD, NARROW or RELATED)
P450-containing system (EXACT?)

Any other information
To make the proposed parentage work, we'd have to change the def of electron transport chain (GO:0022900) from:
A process in which a series of electron carriers operate together to transfer electrons from donors to any of several different terminal electron acceptors to generate a transmembrane electrochemical gradient.
to
A process in which a series of electron carriers operate together to transfer electrons from donors to any of several different terminal electron acceptors.

That seems OK to me as the only existing child terms of electron transport chain ('respiratory electron transport chain' & 'photosynthetic electron transport chain') specify the "to generate a transmembrane electrochemical gradient" in their defs. But you may well see other difficulties with this.....
@ValWood @pgaudet

changed def GO:0022900 electron transport chain
created new term:
+id: GO:0140647
+name: P450-containing electron transport chain
+namespace: biological_process
+def: "A electron transport chain in which one or more electron carriers operate to transfer electrons from donors to a cytochrome P450 protein or domain. Electron carriers operating in this chain include FAD-containing flavoproteins or domains, FMN domains, ferredoxins and cytochrome b5. The reduced cytochrome P450 functions as the terminal oxidase and participates in a wide range of biochemical pathways." [PMID:16042601]
+synonym: "P450-containing system" RELATED []
+xref: Wikipedia:P450-containing_systems
+is_a: GO:0022900 ! electron transport chain
+property_value: term_tracker_item https://github.com/geneontology/go-ontology/issues/21455 xsd:anyURI
+created_by: pg
+creation_date: 2021-05-21T08:34:01Z

I'd like to establish which genes should be annotated to this process. I'm not sure what it is.
Pombase has a single annotations from a mapping to
https://www.pombase.org/gene/SPAC22E12.10c
mitochondrial [2Fe-2S] cluster assembly ferredoxin Etp1
Isn't this just a group of activities with electron transfer activity rather than an electron transport chain.
What  else would be annotated to it and would they act in the same pathway?

It seems to be more like a family grouping?


New DAG for annotations

This new DAG will create a new versioning for a previous uuid running just azimuth annotations. It copies over files from the previous run into this new dataset to be processed with the downstream pipelines for annotations.

@gesinaphillips, @jswelling. I didn't find an elegant way to get the correct pipeline it was run on the previous version and the new Azimuth pipeline requires a new parameter that is directly dependent on that, so it gets into this multiple if - else function to map it.


wal-lang: init at rev 06498c3f5341ce687a37ad52647f300b72dff52a

Description of changes

This PR adds three new packages wal-lang, lark-parser and pylibfst. lark-parser and pylibfst are required by wal-lang, but not presented in python-modules. And we need to use the HEAD revision because the latest release of the wal-lang repository is missing features and has some of the dependencies with security issues.
Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[x] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

 Thanks for your review.

Seems like that I can only change the base branch. Is it ok to merge this PR? Or should I open a new one?

A member with the right privileges needs to approve the checks and only a member with merge privileges (not me) can merge this PR. Besides I think other more experienced members also should review this so it follows all the guidelines (:

Ok I get that. Still, thanks for your review.

would it be possible to use a stable release with the dependency updates backported?

Umm that means we have to maintain a patch for this. Using latest commit will be more convenient. But actually it is stable enough, maybe I should go to upstream and ask them to release a new version.

Seems like the No channel PR action cannot pass successfully. Maybe I should open a new branch and new PR for this package?

Closed the PR for now. I will try to argue with upstream to get new release.


Test the api_call() post|put|patch elif statement

Ideally, implement one of each type of endpoint to test

I'm going to call this tested by Film.report()


"ls" behavior change between 0.2.1 and 0.3.0?

It seems that in 0.2.1 the ls method will retrieve all items with a given prefix, while in 0.3.0 ls will only return directory-like entries. Is this an intended behavior change? It's obviously a breaking change, but either way I can't seem to find a workaround.
Here's 0.2.1 listing some files from one of the public GCP datasets:
$ pip freeze | grep gcsfs
gcsfs==0.2.1
$ python -q
>>> import gcsfs
>>> c = gcsfs.GCSFileSystem()
>>> c.ls('gs://gcp-public-data-landsat/index.csv')
['gcp-public-data-landsat/index.csv.gz-Z2HDRBNIWV', 'gcp-public-data-landsat/index.csv.gz-62ZC8HYJDE', 'gcp-public-data-landsat/index.csv.gz-BVVBYIFND0', ....]

And here's 0.3.0 doing the same listing and getting zero results:
$ pip freeze | grep gcsfs
gcsfs==0.3.0
$ python -q
>>> import gcsfs
>>> c = gcsfs.GCSFileSystem()
>>> c.ls('gs://gcp-public-data-landsat/index.csv')
[]

That's correct - the previous behaviour was wrong! That is, the equivalent functionality on a local file-system would only list files within a directory, not all that happened to have that prefix.
If you wanted the previous listing, the easiest thing to do would be
fs.glob('gs://gcp-public-data-landsat/index.csv*')

Huh, interesting. I know the previous behavior doesn't act like a "normal" filesystem but it's the abstraction GCS et al expose (and that I suppose gcsfs is trying to hide). It's also what the documentation very strongly implies -- it uses the word "prefix" the same way that the GCS / S3 docs do. Would you accept a doc pull request that clarifies?

Yes, updating the docs is certainly needed, and I am aiming to get to it. If you have time, I would greatly appreciate it. I always found the s3/gcs docs confusing on this point, because prefix behaves differently when used on its own, versus in combination with a separator.

Sorry one more thing -- so is it a bug that the listing below does not return the empty list as a local file system would?
>>> gcsfs._version.get_versions()['version']
'0.3.0'
>>> c.ls('gs://gcp-public-data-landsat/LM')
['gcp-public-data-landsat/LM01/', 'gcp-public-data-landsat/LM04/', 'gcp-public-data-landsat/LM03/', 'gcp-public-data-landsat/LM02/', 'gcp-public-data-landsat/LM05/']

Hm, yes, going on my own argument, this should return an empty list.

This new feature introduces a bug with pyarrow. Indeed, if we list the file /root/a where a is a directory, the function returns in addition to the parquet files the directory a. pyarrow throws an error because parquet files are mixed with directories (keys). Moreover, this error is silent because it is raised in a thread and is not caught correctly...

Are you certain? gcsfs/tests/test_core.py::test_ls_touch , for example, seems to assert a case where this is not true. I have tried locally (master versions of fsspec and gcsfs) and do not find what you are seeing either:
In [180]: gcs.ls("mdtemp/oi")
Out[180]: ['mdtemp/oi/how']

(does not include "mdtemp/oi", whether or not using the terminal "/")

A code that allows me to reproduce the error.
import gcsfs
import gcsfs.core
import pyarrow.parquet as pq

fs = gcsfs.GCSFileSystem()
df = pq.ParquetDataset("gs://pangeo-cnes/argo", filesystem=fs)

---------------------------------------------------------------------------

IndexError                                Traceback (most recent call last)

<ipython-input-2-b3d8fe4d14c5> in <module>
      1 fs = gcsfs.GCSFileSystem()
----> 2 df = pq.ParquetDataset("gs://pangeo-cnes/argo", filesystem=fs)

/srv/conda/envs/notebook/lib/python3.7/site-packages/pyarrow/parquet.py in __init__(self, path_or_paths, filesystem, schema, metadata, split_row_groups, validate_schema, filters, metadata_nthreads, memory_map)
   1006
   1007         if validate_schema:
-> 1008             self.validate_schemas()
   1009
   1010     def equals(self, other):

/srv/conda/envs/notebook/lib/python3.7/site-packages/pyarrow/parquet.py in validate_schemas(self)
   1038                 self.schema = self.common_metadata.schema
   1039             else:
-> 1040                 self.schema = self.pieces[0].get_metadata().schema
   1041         elif self.schema is None:
   1042             self.schema = self.metadata.schema

IndexError: list index out of range

def ls(self, path, detail=False):
    """List objects under the given '/{bucket}/{prefix} path."""
    path = gcsfs.core.norm_path(path)

    if path in ['/', '']:
        if detail:
            return self._list_buckets()
        else:
            return self.buckets
    elif path.endswith("/"):
        return self._ls(path, detail)
    else:
        combined_listing = self._ls(path + "/", detail)
        if detail:
            combined_entries = dict(
                (l["name"], l) for l in combined_listing)
            combined_entries.pop(path + "/", None)
            return list(combined_entries.values())
        else:
            return list(set(combined_listing) - {path + "/"})

gcsfs.core.GCSFileSystem.ls = ls

gcsfs.__version__

'0.3.0'

fs = gcsfs.GCSFileSystem()

df = pq.ParquetDataset("gs://pangeo-cnes/argo", filesystem=fs)

So it turns out that you have a real key which happens to have the same path as the directory you are trying to access:
In [189]: gcs.cat('gs://pangeo-cnes/argo/')
Out[189]: b'placeholder'

Note that this path shows up if you ls 'gs://pangeo-cnes/argo/' but not for 'gs://pangeo-cnes/argo' (without trailing "/").

I don't quite understand the answer. If I enter df = pq.ParquetDataset("gs://pangeo-cnes/argo/", filesystem=fs) I have the same error.

It would seem that pyarrow doesn't care about the final "/" but gcsfs does - as you can see by the difference in the output of ls with and without.
But the point is, there is an extra file in the bucket, and this is causing the error.

The structure of my data is as follows:
argo/
├── year=1995
│   ├── month=10
│   │   └── 8030c725b5ff42359fba4362719212b0.parquet
│   ├── month=11
│   │   └── c52e1e7984364915bec0f8bd8c77de89.parquet
│   ├── month=12
│   │   └── e91fe0ba3cdc4c96870c8451adff7f24.parquet
│   └── month=9
│       └── 155289ec32284c97b6f72ac1df7a3060.parquet
.../...

The files are only present in the sheets in the tree structure.

This is the call to the system that causes the error:
>>> next(fs.walk("gs://pangeo-cnes/argo/year=2016/month=1"))
('pangeo-cnes/argo/year=2016/month=1',
 ['month=10','month=11','month=12'],
 ['58e2438c684d478f81958a3b366840a6.parquet'])

The "month=1" directory is listed and the function returns the file present in the directory and directories located at the same level as "month=1".
In the old version we have:
>>> next(fs.walk("gs://pangeo-cnes/argo/year=2016/month=1"))
('pangeo-cnes/argo/year=2016/month=1',
 [],
 ['58e2438c684d478f81958a3b366840a6.parquet'])

The "/" at the end of the path returns exactly the same result because fsspec starts by deleting it.....

The true structure is, in fact:
argo/  <- file containing b'placeholder'
argo/
├── year=1995
│   ├── month=10
│   │   └── 8030c725b5ff42359fba4362719212b0.parquet
│   ├── month=11
│   │   └── c52e1e7984364915bec0f8bd8c77de89.parquet
│   ├── month=12
│   │   └── e91fe0ba3cdc4c96870c8451adff7f24.parquet
│   └── month=9
│       └── 155289ec32284c97b6f72ac1df7a3060.parquet
.../...

It works!
:+1:

Alternate version in #179


Changing the value/contents of a diamond doesn't transfer to a parent square

You need to unattach and reattach it for changes to happen I think? At least for brush. Might be ok for rules?

I think it updates when you change variable now. Still unsure about other situations, like placing/taking something in add/subtract pads

Correct - it doesn't update when you remove a diamond from a diamond

N/A because diamonds are getting re-done


A branch protection setting is not enabled: administrators require review

Hi there
The default branch protection setting called administrators require review is not enabled for this repository
See repository settings/Branches/Branch protection rules
Either add a new Branch protection rule or edit the existing branch protection rule and select the Require a pull request before merging option
See the repository standards: https://github.com/ministryofjustice/github-repository-standards
See the report: https://operations-engineering-reports.cloud-platform.service.justice.gov.uk/github_repositories
Please contact Operations Engineering on Slack #ask-operations-engineering, if you need any assistance

it's only me who ever updates this repo

Seems totally fair. Can close.


test issue

Issue world: http://lively-web.org/issues/16-04-19_test_issue.html
reported by robertkrahn:
regarding issue template mail

OK, apis.Github.Issues.getIssue changed the format of the returned github issue object, should work now.


No longer needed in chrome and causes actual pixel to be spaced apart

https://github.com/nostalgic-css/NES.css/blob/b7b978b8c321f3f996382414e54412802a0197cb/scss/utilities/rounded-corners-mixin.scss#L19

+1

What an strange bug. On my Chrome version (114), the border-image-repeat: space;  is what is causing the problem.
I'll test at browser stack


Optional build exclusion of non-CFStream transport source

Exclude non-CFStream build source from gRPC C-Core and support build-time configuration of CFStream/Non-CFStream iOS build in Cocoapod, SPM and Bazel

@HannahShiSFB FYI - Just reassigning to you as both this issue and https://github.com/grpc/grpc-ios/issues/101 are aiming to improve build time. :)


fix N/S routing in route_ports_to_side

Edited route_ports_to_y to mirror prior changes to route_ports_to_x

Thank you Thomas!


Fix area integration test

[X] Update the area integration test to area_utils fixes #314
[x] Move plot_confusion_matrix from area_utils to crop_area_estimation.ipynb and change_area_estimation.ipynb

@bhyeh Let's move this function inside the notebooks to avoid adding seaborn to environment. What do you think about that?

Okay, I will merge this PR.
A new PR is needed to fix the error with the failing dataset-tests.


Typings for Table component

I followed the Table readme.md, so should work without a problem.

Thanks!


Make me maintainer por favor

Comment:
@chrisjsewell could you make me a maintainer of this feedstock? 🙏 😘

Just make a PR (from a personal fork), adding your github handle to the maintainers list in the recipe/meta.yaml 😘

(and maybe have a look at doing it for all the others as well 😄  https://anaconda.org/search?q=aiida-)


Potential Memory Leak

Which version of Serilog.Sinks.Grafana.Loki are you using?
v8.1.0
Which version of .NET are you using?
net6.0
Describe the bug
I've created a simple Prometheus .NET Exporter using Serilog and the Serilog Grafana Loki library.
On start-up of the application I can see it uses approximately 30,000 k active private working set.
If I leave it running and do nothing, no requests, the private working set memory increases slowly over time.
I have seen this in the GBs on my production servers.
On searching and profiling the code I commented out the loggerConfiguration.WriteTo.GrafanaLoki(lokiUrl, labels) section and I observed that memory no longer increases over time.
To Reproduce
Create a simple ASP .NET 6 Application with a basic page. Leave it running and see memory increase over time.
Expected behavior
I expect the application to start up and when it is doing no work for its memory use to be stable and not increase over time.
Log/SelfLog output or exception with stacktrace
No response
Application or code sample, which could be used to reproduce a bug
No response
Additional context
Whilst I am using Prometheus .NET I am not calling any of the methods after the initial request.
I have read the documentation

[X] I have read Common Problems section in project wiki

Hi @prime23-gareth,
Feels like your logs not being delivered to Loki and they are keeping storing in memory.
To investigate this problem I suggest using Serilog's SelfLog and check stdout for diagnostic info of this Sink as described in Common problems section.
Also it is reasonable to restrict queue limit with queueLimit parameter. Available parameters are described here.
But I suggest that SelfLog will give you useful info. So, please, if you would have a time, try out with this parameter and tell me would be there any additional info.
Thanks!

Thank you for your quick response. I've added SelfLog but its showing no errors.
I also tried adding queueLimit:1 as a test and that does seem to dramatically decrease the memory increment but it does not stop it.

@prime23-gareth, OK, got it.
Could you please share the test app with your configuration and give me some details about your environment?
Because we running sink for 2+ years and seems like all works like a charm. Plus hadn't heard about problems like that from Sink users.
So I wondering where is the problem.
And also could you confirm pls that Loki receiving logs correctly?

I'll need to remove some private code but ill rewrite when i get a chance.

Yes, sure. I will keep my eye on it


Sso #114

Add Support in SSO Login by first fetching login types.

Hello, I am a code review agent on flows.network.
It could take a few minutes for me to analyze this PR. Relax, grab a cup of coffee and check back later. Thanks!

@CodiumAI-Agent /review

PR Reviewer Guide 🔍
Here are some key observations to aid the review process:

⏱ Estimated effort to review: 4 🔵🔵🔵🔵⚪
🧪 No relevant tests
🔒 No security concerns identified
⚡ Recommended focus areas for review
Code ComplexityThe login screen implementation has significantly increased in complexity, particularly with the handling of various login types and SSO integration. This could make the code harder to maintain and debug.
Error HandlingThe new login and async request handling functions need more robust error handling and logging to ensure that all potential issues are captured and can be diagnosed.
UI ConsistencyThe addition of multiple SSO buttons and their state management could lead to inconsistencies in the UI, especially under different error states or asynchronous conditions.

Persistent review updated to latest commit https://github.com/alanpoon/robrix/commit/6c2971bb8a59987960ac6030f94aad9b39d648c8


[feat] padded blocks fixer

I fixed the bugs present in the rule and wrote the fixer. I gave it a try in a project containing several hundred of files that would give false positive with the rule.
The settings used was never. The rule fixed the issues and now there is no reporting.

Fixes (#296)

Hello, Are any plans to continue this?


Display horizontal scrollbar when necessary for profiler messages

Q
A

Bug fix?
yes

New feature?
no

BC breaks?
no

Deprecations?
no

Related tickets
N/A

Documentation
N/A

License
MIT

Since #146, messages are truncated which may definitively hide informations to user. I replaced the text-overflow: ellipsis with a overflow-x:auto to display an horizontal scrollbar when required.

Do I understand it correct that the URL in the header is truncated but the content is using horizontal scroll?

Yes.


Region format, tab or space indent, misc improvements

This pull request implements the following functionality:

format selection
use format options from vscode (prefer tabs or spaces)
require no unsaved changes to format
minor improvements

Cool !


New Contribution

Contributor: L10-bit
SSH Public key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFWUz+G2QqWKsBGvXQZwPcZGhCQagLGnxlLJzhA5gGi2
Attestation: [any form of attestation for contribution (e.g., signature) - Optional]

I've started contributing.

Ready to contribute


workspace module enhancement

Is your feature request related to a problem? Please describe.
Workspace lacks file interaction with BML
Describe the solution you'd like
1.provice new  http interface to save or parse script file in BML
2.provice workspace-http module ,other modules can use it to access BML ，and get script

This issue has been fixed


TYP: Series/DataFrame are not Hashable

[x] relate to #97
[x] Tests added: Please use assert_type() to assert the type of any return value

I cannot reproduce the dist failure of pyright:
poetry run poe install_dist
poetry run poe rename_src
poetry run poe pyright_dist  # no errors

I cannot reproduce the dist failure of pyright:

I looked in your log and saw this in the install_dist step:
pandas-stubs is already installed with the same version as the provided wheel. Use --force-reinstall to force an installation of the wheel.

So it may be that the caching you introduced is keeping around a version of pandas-stubs from a previous test??

Yes, that must be the case! Thank you for finding this! Let's just cache poetry.lock.

MIght be a good idea to change build_dist to do a --force-reinstall

ping when you want me to review the whole thing (and it's all green)

Green and ready for review @Dr-Irv
Caching just poetry.lock seems to make the installation twice as fast while caching poetry.lock and the venv makes it three times as fast. I'm fine just caching poetry.lock.

You could add a negative test to verify that these types are not Hashable, e.g.,
def test_not_hashable():
    def test_func(h: Hashable):
        pass
    test_func(pd.Series()) # type: ignore

You could add a negative test to verify that these types are not Hashable, e.g.,

Added and green


How much images should be used to compute the is?

Dear sbarratt:
Thanks for your job,i have a problem with the is. With cifar for example , if i used the total cifa dataset to compute the is score ,i will get the 9.5 score.But if i used a few batch images generate by GAN e.g (1000 images), i only get 2.5 score.So i am confused by how many images i should used to compute the IS score as to judge the quality of the generator images.Thanks for your help.

@destructive-observer Did you find out the answer by yourself? I also met this question.


Chat pane randomly scrolls to the top

The chat pane randomly scrolls to the top, and I haven't been able to isolate how or why... if I do I'll post it in the comments.

Seems to be fixed.


LISAv2 cannot find test cases which have two areas

If there is a test case that has two areas defined, Run-LISAv2 will not find any test case if the TestNames flag and the TestArea flag is defined.
Example:
.\Run-lisav2.ps1 -TestPlatform Azure -RGIdentifier "v-advlad-vpp"
-ARMImageName "RedHat RHEL 7.5 latest" -TestLocation "westeurope" -TestNames 'VERIFY-DPDK-FAILSAFE-DURING-TRAFFIC,VERIFY-DPDK-BUILD-AND-TESTPMD-TEST,VERIFY-SR
IOV-FAILSAFE-FOR-DPDK,VERIFY-DPDK-COMPLIANCE,VERIFY-DPDK-OVS,VERIFY-DPDK-RING-LATENCY,PERF-DPDK-FWD-PPS-DS15,PERF-DPDK-SINGLE-CORE-PPS-DS4,PERF-DPDK-SINGLE-CO
RE-PPS-DS15,PERF-DPDK-MULTICORE-PPS-DS15,PERF-DPDK-MULTICORE-PPS-F32' -TestArea 'DPDK'
...
06/12/2019 04:26:38 : [INFO ] Setting global variables
06/12/2019 04:26:38 : [INFO ] Validating XML Files from C:\Users\v-advlad\work\LISAv2 folder recursively...
06/12/2019 04:26:38 : [ERROR] EXCEPTION: Not able to collect any test cases from XML files
06/12/2019 04:26:38 : [ERROR] Source: Line 211 in script .\TestControllers\TestController.psm1.
06/12/2019 04:26:38 : [INFO ] LISAv2 exit code: 1

Closing this, as I have removed the double areas from DPDK tests.


updated main page

removed gpa and added yearly summary

I checked with Nicole, and yes it is retired. I removed all the code related to it with the exception of the schema. I just wanted to double check it was ok to do so before removing the table & related data.

There probably isn't any data being stored for GPA out in production, so it's okay to remove.  I haven't touched this stuff in a while though, so it might be a good idea to double-check on the server.


scala.js referring to non-existent method java.lang.Float$.floatToRawIntBits

I encountered the following error when I tried to upgrade to scalacheck 1.13.1
[info] Fast optimizing /Users/julien/Project/Monocle/test/js/target/scala-2.11/monocle-test-test-fastopt.js
[error] Referring to non-existent method java.lang.Float$.floatToRawIntBits(scala.Float)scala.Int
[error]   called from org.scalacheck.Cogen$.cogenFloat$lzycompute()org.scalacheck.Cogen
[error]   called from org.scalacheck.Cogen$.cogenFloat()org.scalacheck.Cogen
[error]   called from monocle.generic.HListSpec.<init>()
[error]   called from monocle.generic.HListSpec.__exportedInits
[error]   exported to JavaScript with @JSExport
[error] involving instantiated classes:
[error]   org.scalacheck.Cogen$
[error]   monocle.generic.HListSpec
[error] Referring to non-existent method java.lang.Double$.doubleToRawLongBits(scala.Double)scala.Long
[error]   called from org.scalacheck.Cogen$.cogenDouble$lzycompute()org.scalacheck.Cogen
[error]   called from org.scalacheck.Cogen$.cogenDouble()org.scalacheck.Cogen
[error]   called from monocle.generic.HListSpec.<init>()
[error]   called from monocle.generic.HListSpec.__exportedInits
[error]   exported to JavaScript with @JSExport
[error] involving instantiated classes:
[error]   org.scalacheck.Cogen$
[error]   monocle.generic.HListSpec

https://github.com/scala-js/scala-js/issues/2327

Thanks @xuwei-k for the reference. Do you think it would be acceptable to replace:

floatToRawIntBits by floatToIntBits
doubleToRawLongBits by doubleToLongBits

Or is it best to use raw methods specifically for the jvm and non raw methods for scala.js?


Disclaim flags to fix module registration

Disclaim flags in modules containing flag definitions so that usage of
DEFINE_auto and DEFINE_dict register flags to the correct calling
modules. This affects functions that perform logic by a flags' registered
module, for example, help formatting. Without disclaiming the flags, help
for a module's flags won't be displayed unless the user uses --helpfull (in
which case all flags are listed under fancyflags._define_auto).

@googlebot

Merged in bbcb51d7f144f31b9994f79e51c9c25501615f22. Thanks again!


NGO users can manage operators/gov entities

As in the title. Pivotal story here: https://www.pivotaltracker.com/story/show/185881210

Thanks. Yes, I know that. I had to change that script in other PR to not update bo_manager users role. I think keeping user_permissions in this way in DB is bad idea and would gladly remove that model in the future. Keep abilities static, and only make certain abilities updatable for bo_managers but not ALL user permissions for all users, that makes no sense for me to always load this model.

@tsubik we shouldn't do that.
The individual users' permissions can still be edited in the Back Office on the permission matrix.
Most of the times the general settings are fine, but there were requirements to change permissions for specific users.

Oh, you mean to keep this only for BO Managers.
Yeah, that fine. But where do you want to save them?

I thought that this access control should be directly in user's details in the admin panel not separately. What's more, I don't think we need those extra permissions to be in a separate table, the new data which won't have all permissions just couple overrides is not that heavy.