Information in No list item result is not clearly visible after changing the orientation from landscape to portrait mode.

Check out Accessibility Insights! - Identify accessibility bugs before check-in and make bug fixing faster and easier.
GitHubTags:#A11y_VSCode;#A11ySev2;#A11yTCS;#A11yWCAG2.1;#DesktopApp;#Visual Studio Code Client;#WCAG1.3.4;#DesktopApp;#Win10;#VisualStudioCode-Win32-Apr2021;#A11yMAS;#FTP;
Environment Details:
Application Name: Bridge to Kubernetes (Mindaro)
Windows Version: Windows10
Repro Steps:

Setup The Kubernetes extension.
Open visual studio code and load "Bikes" project.
Tab to "View" menu item in top navigation bar, press enter to expand and use down arrow key to Select "Command Pallet" option.
Search and select "Local Process with Kubernetes: Configure Local Process with Kubernetes”
Connect to Kubernetes panel will open.
Tab to bike options and press enter
Input “3000” as your local port and press enter.
Tab to Launch via NPM option and press enter to select it.
Change the orientation from landscape and portrait mode
Observe that the content in no result is not visible after changing the orientation from landscape to portrait mode.

Actual:
Information in No list item result is not clearly visible after changing the orientation from landscape to portrait mode.
Similar issue is also observed with Kubernetes Bikes accessibility Testing cluster.
Expected:
Information in No list item result should be completely visible after changing the orientation from landscape to portrait mode..
User Impact:
Low vision users will not be able to view the Information of No list item

Accessibility issue for extensions should be filled in the repository of the extension. Once that is done the extension author should investigate and file an issue in VS Code using proper description of our components. Thanks!
Apart from that:
Please follow these recommendations when filling issues for VS Code:

First try to find duplicates. Before filling any issue be aware of all the issues tagged with accessibility. It is not a long list, please read through it in detail!
Always test on VS Code insiders
Attach gifs inline in the issue. Do not give a link to a 20 MB ppt video
Do not write User Impact section, it is not useful
Be responsive, if an issue requires more information please respond in a timely manner

Here’s an example of a good concise user filled issue https://github.com/microsoft/vscode/issues/96987
Here’s an example of a not a concise issue with too many details https://github.com/microsoft/vscode/issues/62033
The moto should be quality not quantity.
Thanks


Parallelization issues

I'm trying to run FCI but am having some difficulty doing so in parallel on a cluster. I would appreciate any suggestions for correcting my approach. Here are a few things that I have tried:

Using mpirun -n 128 gives me 128 copies of the same first calculation rather than correctly parallelizing the calculations.
Installation of mpi4pyscf fails on both my local machine and on the cluster. I receive the error File "/tmp/pip-install-wuzy0yyl/mpi4pyscf_158d5063bd3d46fa9f1393f9a5faec66/setup.py", line 15, in <module>         with open(os.path.join(topdir, 'requirements.txt'), 'r') as f:     FileNotFoundError: [Errno 2] No such file or directory: '/tmp/pip-install-wuzy0yyl/mpi4pyscf_158d5063bd3d46fa9f1393f9a5faec66/requirements.txt'

Thanks in advance for your time.

pyscf itself do not support MPI. Parallelization of pyscf is achieved by openMP. You can set OMP_NUM_THREADS to enable a nulti-thread job.
And, there's no fci module in mpi4pyscf at all, as far as I know.

Hi @lanieleung , has your question been answered?

Yes, this solves the problem. Thank you both.


WIP: Revert "Office365: Feature, Bugfix - PAPP-21921: Feature enhancement (#3)

This reverts commit ce25cce43accc38dfbd7df54bbedbfe958752f3d.
Revert Bug fix and Feature enhancement for PAPP-21921.

Closing this MR after discussing with @cpangam.


[FEATURE REQ] Add Microsoft.Extensions.Logging.AzureEventHub

Moved from https://github.com/dotnet/extensions/issues/1771 opened by @jamesharling
Is your feature request related to a problem? Please describe.
This is simply an additional logger provider for a popular choice of logging sink.
Describe the solution you'd like
I would like to be able to pump events raised through ILogger<T> to an additional logger provider, that sends the events to an Azure Event Hubs instance.
Describe alternatives you've considered
There are no alternatives within the M.E.L. ecosystem.
Additional context
The format of these events should be customizable, but a default formatter shall be provided.
Proposed implementation: https://github.com/dotnet/extensions/pull/1772
cc @pakrym @maryamariyan

Copying my answer from another thread:

Maybe. We would have to figure out how popular EventHubs are as the log destination.
Considering that this is the first request of it's kind I'm slightly reluctant to ship a first party implementation just yet.

We haven't gotten more requests for this feature. I don't think we are going to ship it.


Remove hasUpdate Util and fast-deep-equal dependency

[Question] Does anyone know if hasFormBeenUpdated is ever different from dirty? The Formik docs for dirty say that it is calculated by deep comparing initialValues and values but it looks like this is also the implementation of hasUpdated so not sure if these two ways of calculating basically the same thing are different/necessary.

Forgot I wrote this util function awhile back.
I'm pretty sure we can delete that util function which would also allow us to remove the fast-deep-equal dependency. I don't believe it's used anywhere else.
Originally posted by @SeanGroff in https://github.com/SelectQuoteLabs/SQForm/pull/385#discussion_r681974351

This issue was resolved with PR https://github.com/SelectQuoteLabs/SQForm/pull/388


[Breaking change]: TimeZoneInfo.FindSystemTimeZoneById() doesn't return new TimeZoneInfo object

Description
The TimeZoneInfo object returned by FindSystemTimeZoneById method is a cached version of the TimeZoneInfo instead of a new one.
Version
.NET 8 GA
Previous behavior
TimeZoneInfo.FindSystemTimeZoneById() returned a new TimeZoneInfo object.
New behavior
TimeZoneInfo.FindSystemTimeZoneById() returns a cached TimeZoneInfo object.
Type of breaking change

[ ] Binary incompatible: Existing binaries may encounter a breaking change in behavior, such as failure to load or execute, and if so, require recompilation.
[ ] Source incompatible: When recompiled using the new SDK or component or to target the new runtime, existing source code may require source changes to compile successfully.
[X] Behavioral change: Existing binaries may behave differently at run time.

Reason for change
This change aims to resolve namely 2 performance issues with FindSystemTimeZoneById ,

It addresses the inefficiency observed when creating a TimeZoneInfo object with an alternative zone ID (like using IANA Id on Windows and Windows Id on Linux) using the FindSystemTimeZoneById method. By default, the object returned by GetSystemTimeZones is only cached for the zone ID matching the operating system (OS) in use. Consequently, attempts to create a new object with an alternative ID result in a cache miss, necessitating repeated system reads. Particularly on non-Windows OS, this incurs additional overhead due to file system access and probing for the zone file. To mitigate this issue, a cache for alternative IDs is introduced.
The change targets the unnecessary creation of new zone objects when requested with FindSystemTimeZoneById. Despite the existence of a cached object, a new one is created upon each request. However, since zone objects lack writable properties, cloning them is unnecessary. Instead, returning the cached object circumvents unnecessary allocation and validation steps.

Recommended action
If your application uses FindSystemTimeZoneById to create a new instance of TimeZoneInfo, refactor the code to use  one of these methods.
Feature area
Core .NET libraries
Affected APIs
No response

Related issue in dotnet repo: https://github.com/dotnet/runtime/issues/98571

@kuldeepbamrah thanks for submitting this. The writing LGTM.
I did a minor edit to fill the feature area an affected APIs sections


Fix: sidekiq middleware

correctly resolve sidekiq constant name,
to solve uninitialized constant Prosopite::Middleware::Sidekiq::ServerMiddleware (NameError)

@charkost would it be possible for a patch release please 😅


Problem using async helpers

After updating my app to Ember version 3.2 the helpers like click or settled are not waiting the queries to finish.
I did a little example to show the error:  https://ember-twiddle.com/6fea6c57693c2cd14312bdf4293f3778?openFiles=twiddle.json%2Ctemplates.components.my-component.hbs
If you change the Twiddle depencies to Ember 3.1 you will se that the tests pass.

Hmm, I am using this addon in v3.3 and all of my tests have been converted to async. No issues here, so I suspect the problem you're encountering is related to something else.
I don't have the time to dig deeper at the moment though, maybe somebody else can take a look?

Hi, @bgentry. @raphaelns-developer works with me. We will update the Twiddle with an example using just fetch instead of Apollo to get the same JSON to see if it works or not.

Looks like its related to https://github.com/emberjs/ember-test-helpers/issues/339.

@bgentry he updated the Twiddle to use only ember-fetch to exposed the bug and posted on ember-test-helper. You may close this issue.

@bgentry I guess we should reopen this issue.
When we face this issue:
There are some scenarios when settled does not wait for some async calls:

when there is a watched query and we refetch the query;
when there is a watched query and we fetch more data;
when we send a mutation with the option refetchQueries;

We just increment the ongoing counter for the first fetch. When we call refetch, fetchMore or set refetchQueries when sending a mutation, we do not register those ongoing requests.
How we solved this issue
Query Manager
import QueryManager from 'ember-apollo-client/apollo/query-manager';

export default QueryManager.extend({
  refetch(opts, observable) {
    return this.apollo.refetch(opts, observable);
  },

  fetchMore(opts, observable) {
    return this.apollo.fetchMore(opts, observable);
  }
});

Service
import ApolloService from 'ember-apollo-client/services/apollo';
import QueryManager from 'my-app/apollo/query-manager';

export default ApolloService.extend({
  createQueryManager() {
    return QueryManager.create({ apollo: this });
  },

  refetch(opts, observable) {
    return this._waitFor(observable.refetch(opts));
  },

  fetchMore(opts, observable) {
    return this._waitFor(observable.fetchMore(opts));
  },

  mutate(opts, resultKey) {
    if (Ember.testing) {
      opts.awaitRefetchQueries = true;
    }

    return this._super(opts, resultKey);
  }
});

Examples of how we use those functions:

fetchMore for pagination
refetch for searches
mutation with refetchQueries for deletes

Disclaimer
We are not mocking our API. Our API has a sandbox server for tests. Maybe mocks are obfuscating this issue.


Editor does not restore focus after exiting command panel

Does this issue occur when all extensions are disabled?: Yes

VS Code Version:   1.78.2
Date: 2023-05-10T14:41:12.581Z
Commit: b3e4e68a0bc097f0ae7907b217c1119af9e03435
OS Version: Mac os 12.2.1
Browser: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36

Steps to Reproduce:

Open vscode.dev, just open a project space and open a file, the editor is in focus at this time
Use cmd + p to call Command Panel, then press esc to exit Command Panel
Then the editor is not in focus at this time, but in electron, the editor remains in focus.

The problem you are facing is the editor focus disappears when you close the panel with a short cut key? How do you want to fix the bug? I think i can work on this issue

The problem you are facing is the editor focus disappears when you close the panel with a short cut key? How do you want to fix the bug? I think i can work on this issue

hi @ANSHTYAGI7  I don't have a clue yet. I don't know if this was deliberately done in the browser?  @aeschli Do you know something about this interaction?

Are you able to repro this behavior in https://insiders.vscode.dev ?

Are you able to repro this behavior in https://insiders.vscode.dev ?

hi @TylerLeonhardt  Its performance is normal in https://insiders.vscode.dev/

Hmmm I am suspicious of an extension or configuration issue. Can you open vscode.dev in an incognito/private window and tell me how it goes?

Wow, in privacy mode, it does behave normally. But the strange thing is that I only installed a few theme extensions in my normal mode application.

However, it seems that it should not be caused by vscode, but may be the reason for extension. I think this issue could be closed

Here are a couple of ideas for fixing this:

Open the Command Palette (⌘/Ctrl+Shift+P) and run the extension bisect command: Help: Start Extension Bisect and follow the prompts? (More information about Extension Bisect here)

Open the Keyboard Shortcuts editor and specifically check if you have a non-default keybinding set: https://code.visualstudio.com/docs/getstarted/keybindings#_viewing-modified-keybindings

In your settings file, delete settings one by one to see if any of those are causing it

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


iOS - action button still not showing on iOS 12.x

Description:

On iOS v12.x the action buttons just show if the push notification has an image attached. Once I send at least one notification with image, the subsequent notification will show the buttons even without an image.
I know that the closed issue 690 is very similar to this, but it was closed mentioning that this bug just happens on while running on the local environment, but I got my app in production and the bug still happening on the apple store version.
Is there any solution for this that wasn't mentioned on the other issue discussion?
Environment
dev:
macOS Mojave version 10.14.4
Xcode version 10.2
"react-native-onesignal": "^3.2.12",
production
iPhone X - iOS 12.2
Steps to Reproduce Issue:

Create a fresh react native app
Install react native onesignal
Run the react native in iOS v12.0.1
Send a push notification with actions buttons

Anything else:
Raw push notification object (containing buttons)
{      "att":{         "id":"1"    },    "custom":{         "a":{            "message_type":"CustomMessage",          "id":"4b7cbde2-555b-44b0-857e-9cd442894c15"       },       "i":"4bb26ad3-d358-4b87-a8b2-21a96c8ca64c"    },    "buttons":[         {            "i":"OnYes",          "n":"Yes"       },       {            "i":"OnNo",          "n":"No"       }    ],    "aps":{         "content-available":1,       "alert":{            "title":"Health Check",          "body":"Message with action buttons"       },       "mutable-content":1,       "sound":"default"    } }

Hello @gabrielgc thanks for your message.
Unfortunately, I don't know of a solution other than waiting for Apple to fix this. Thanks for reporting seeing it in production. I will leave open so we can track it here.

This is a duplicate of https://github.com/OneSignal/OneSignal-iOS-SDK/issues/430


[build] Makefile clean target fails in examples if nothing to clean

find -type f -executable | xargs file -i | grep -E 'x-object|x-archive|x-sharedlib|x-executable|x-pie-executable' | rev | cut -d ':' -f 2- | rev | xargs rm -fv
Usage: file [-bcCdEhikLlNnprsvzZ0] [--apple] [--extension] [--mime-encoding]
            [--mime-type] [-e <testname>] [-F <separator>]  [-f <namefile>]
            [-m <magicfiles>] [-P <parameter=value>] <file> ...
       file -C [-m <magicfiles>]
       file [--help]
Cleaning done

have a look at the raspberry PI clean rule, seems to work just fine...

Replaced clean target, actually it looks more comprehensive to me...


No icons shown since update of theme

Hi,
I am using atom-material-ui theme by silvestreh - before the update to 0.5.9 the file-icons worked nice and smooth.
Since that update I can not see any icons the tab.
Is this an issue of your package or of theme?
Regards,
Stefan

Have you tried the force show icons setting? Some themes hide the icon intentionally

Yes I did - but did not work

Ok, I had a look and it's the theme pushing the icons out of view. I tired inspecting the css to see why, but couldn't see any obvious cause/fix.

Ok thank you I think I will open an issue/feature request on the theme.


PHP parser explorations

I recently looked into what ongoing PHP efforts we might want to contribute to, and was especially excited by the ongoing language service efforts from extensions like PHP IntelliSense and Crane. Eventually I zeroed into the parsers underlying these language services, and began investigating what it might look like to have a PHP parser optimized for IDE scenarios (e.g. error tolerance, performance, tree representation, etc.) I've made some good progress, and hope to reach out to the community with more details soon.
This issue tracks progress on that work.

Does that mean you plan to contribute to https://github.com/nikic/PHP-Parser? I have a couple of issues opened (and many already closed) regarding error recovery and indeed every bit there makes PHP IntelliSense work in more cases.

@felixfbecker yep, that was where I started, but it's exceedingly difficult to retrofit a parser, let alone an auto-generated one, with things like "error tolerance". Over time, you end up with a long tail of esoteric bugs.
There are additional challenges, such as how the tree is represented and performance, that are a bit difficult to manage (I'll enumerate them further if you're interested). So, I began working on a handspun parser (also written in PHP). Right now we're heads down with the VS Code endgame, but I plan to share more details (and there are a lot of details :wink: ) later this month. The code currently lives in a private repo.  I'll make it public after a little bit more cleanup, which is needed so that people are able to read the code, understand it, and contribute back to it.
Just to set expectations - it's a proof-of-concept. It should, however, be enough to decide whether there's enough interest to invest further and bring it to production quality or whether we want to change direction.
Once it's public - should be soon - we should check it against the error-tolerance issues you mentioned.

I just don't know if the effort is worth to build a completely new parser from scratch and support it long-term with new syntax etc. when there is already a pretty good one out there that has a lot of support and is used by other big libraries. The improvements nikic did for error recovery where all very small patches in the grammar and I think doing improvements there is a lot easier than writing a completely new parser.
Crane's author stated that his motiviation for not using PHP but TypeScript to parse was that the extension "should work out of the box" and have no dependencies and not PHP runtime requirement. I on the other hand chose PHP to make use of great PHP packages that help the LS. So in what language your new parser is written in will decide who of Crane/PHP IntelliSense is able to use it.
If you write it in PHP, and therefor target my LS, I would much more appreciate some help through PRs to the LS maybe or improvements in nikic's parser. The LS is very coupled to it, and switching the parser will be non-trivial, especially if it would mean a regression in features.
But anyway, appreciate that PHP gets some love from you 👍

Well, as someone that has already done a lot of exploration into an IDE extension for PHP back in February/March, I actually agree with @mousetraps on needing a custom implementation.
Initially, I too tried to start with a generated parser. My "little" concept extension needed to work across all systems and not have any dependencies on the installed PHP version, so I needed a JS/TS implementation. That led me to the glayzzle/php-parser project (which the Crane extension uses a fork of). Unfortunately, it didn't support PHP 7 at the time, and there were no other suitable projects to build on. So I went to the source, figuratively and literally.
I looked at how PHP itself worked, and thankfully, PHP 7 used a new generated parser and abstract syntax tree (AST). This meant that it would be relatively simple to use its own grammar file and some of the other packages that the glayzzle project was built on, and then integrate it into vscode. In reality however, I ended up with a TON of shift-reduce, and worse, reduce-reduce conflict warnings from the generator. These are ambiguities that could affect which actions are run, and thereby possibly introduce very difficult bugs to track down later on. After a bit of work, I eventually ended up with a grammar where I had replaced most of the offending rules regarding PHP's expressions. More importantly it had 0 conflicts and by then several hundred tests to show that it was still working as expected (which still isn't full coverage).
Now, having any lexer, parser, and abstract syntax tree is generally enough to implement relatively simple IDE features like IntelliSense on a small scale (although really, even IntelliSense has quirks, like determining the correct type of $this). This was fine for my concept extension, but as you try and implement more and more features like semantic analysis, you inherently need more and more compute time. Unfortunately, you are restricted by the fact that everything needs to ideally finish and update before the next keypress. So if I were to try and go from concept to actual extension, I would have immediately run into several problems.
The first is performance. Neither the generated lexer, nor the generated parser supported methods to only tokenize and parse partial segments of a file. In a large project, you shouldn't parse entire files when someone does a "find and replace all" or "rename symbol". After each change, diagnostics must also be run, and there are a lot of them. Syntax errors are only the beginning.
Speaking of syntax errors, the next major issue would be error tolerance. If a parser choked at the first syntax error it saw as you typed, you would lose any symbols found later in the file and potentially trigger a lot of diagnostic errors. Errors are typically solved in one of two ways. The text can simply be ignored, or an additional fake token can be added to make it valid. For example, take the following text: isVariableOrFunction;. The easiest way for the parser to get around this syntax error is to simply ignore it, just like a comment or whitespace. If an IDE wanted to find the best solution however, it could take into account the cursor position, adding a fake '$' token if the cursor is at the start to make it a variable, or fake '(' and ')' tokens at the end to turn it into a function. Making the right choice for this and other situations can be difficult for generated parsers.
Now, remember how I said comments and whitespace could essentially be ignored? Well, not really. To fully take advantage of an IDE's formatting capabilities, your analyzers need contextual information. Which means that they should really be represented in the tree. Take the semicolons in a for-block. A generic formatting rule of "nothing after a semi-colon except a newline or line comment" would fail here without knowledge of the for statement. Now try making a generated parser account for all the possible combinations of whitespace in various expressions (like a=b, or a = b, or a= b, etc)...
TL;DR: Generated parsers are very fast and excellent for compilers that only need a single pass, but bad for IDEs where files constantly change. Either way, I am also very interested in seeing how your parser works and how applicable concepts used by Roslyn are 😃 .

My story is a lot like @mattacosta. I looked into using Jison to generate a php7 parser by modifying the official PHP zend_language_parser.y grammar file only to be met with many shift-reduce conflicts. I ironed out all those and then started experimenting with using error tokens to recover from parse errors but found this approach very limited.
I ditched the generated parser and wrote a recursive descent parser and regex lexer for php7 and am making progress towards providing another PHP intellisense offering in Javascript/Typescript. It's slow going and in a private repo for now.
I think a fast, error tolerant parser is key to having good code completion and static code analysis and am interested in @mousetraps  efforts.

I looked at how PHP itself worked, and thankfully, PHP 7 used a new generated parser and abstract syntax tree (AST).

The problem with PHP's on parser is that it is only able to parse code of the version it is running.

(although really, even IntelliSense has quirks, like determining the correct type of $this). This was fine for my concept extension, but as you try and implement more and more features like semantic analysis, you inherently need more and more compute time. Unfortunately, you are restricted by the fact that everything needs to ideally finish and update before the next keypress.

My language server has no problem with these

The first is performance. Neither the generated lexer, nor the generated parser supported methods to only tokenize and parse partial segments of a file. In a large project, you shouldn't parse entire files when someone does a "find and replace all" or "rename symbol".

I have not met any performance issues with reparsing the document on every change.

After each change, diagnostics must also be run, and there are a lot of them. Syntax errors are only the beginning.
Speaking of syntax errors, the next major issue would be error tolerance. If a parser choked at the first syntax error it saw as you typed, you would lose any symbols found later in the file and potentially trigger a lot of diagnostic errors. Errors are typically solved in one of two ways. The text can simply be ignored, or an additional fake token can be added to make it valid. For example, take the following text: isVariableOrFunction;. The easiest way for the parser to get around this syntax error is to simply ignore it, just like a comment or whitespace. If an IDE wanted to find the best solution however, it could take into account the cursor position, adding a fake '$' token if the cursor is at the start to make it a variable, or fake '(' and ')' tokens at the end to turn it into a function. Making the right choice for this and other situations can be difficult for generated parsers.

https://github.com/nikic/PHP-Parser has error recovery. It can meet a statement that is not terminated by a semicolon for example, and unfinished variable, etc and still give you an AST. The statement is not simply ignored, you would get a Expr\Variable node with an Error node as the name. There is no need to insert any fake tokens.
You can collect all errors in the document as diagnostics, not just the first one.

Why are you all trying to build new extensions and parsers, instead of contributing to existing open-source efforts (crane, glayzzle/php-parser, nikic/PHP-Parser, vscode-php-intellisense)?

@felixfbecker There's nothing wrong with those projects, it's just that we may have different design goals and/or requirements to meet.
Also, it's not that generated parsers can't collect errors, it's that from a user's perspective, some of those errors might show up in inappropriate locations or have confusing messages when shown within an IDE. With custom parsers, it's easier to apply custom logic in order to provide a better user experience. Now that I have read that paragraph again, I probably should have made that a lot clearer.

Hello!
Just a comment!
I love the work done by felix! But it only works for PHP7 and higher! Would it be possible to make it work also for PHP5? Otherwise a LOT of people will be left out...
Thanks in advance!

@darcome Please note that my extension is fully capable of providing IntelliSense for files written in PHP 5. Just the runtime for the language server needs to be PHP 7. You should be able to install versions side-by-side if you need to and point the LS to use PHP 7.

Hey all! As promised, the parser is now available here:
https://github.com/Microsoft/tolerant-php-parser
As I mentioned, it's still in its early stages, and we're hungry for feedback, so please please please try it out and let us know what you think!
cc @mattacosta, @bmewburn, @felixfbecker

Hello,
I am sorry but I don't understand how can I test it on vscode... What is the name of the extension to use? What are its requirements? For example, does it need PHP7?
Thanks in advance,
Luca

@darcome It's not an extension yet. It's just under-the-hood code that may eventually power a future extension. As of right now, you can only debug the code using VSCode, nothing else. For performance/memory reasons it does require PHP 7 as well.

Sorry to bother you again, but how can I do it?
Is there a guide I can follow? Or can you tell me some hints?
Thanks in advance

Hey @darcome - as @mattacosta mentioned, the parser is under-the-hood code that produces a syntax tree from a source code string. This syntax tree represents the lexical and syntactic structure of source code, which enables services (like code-completions, formatting, etc.) to intelligently process it.
There are lots of ways to contribute:

Try building an app that uses the information provided by the parser (e.g. a PHP script or VSCode extension). Sample code is available in the README under the Getting Started section, and you can configure your machine using the instructions here. This will help because you can give us feedback on the parse trees that are generated and also the API. You can also take a look at some of the scripts in the tools folder, which use the parser to perform various tasks (e.g. one of them auto-generates API documentation for the parser using the parser)
Install the VSCode Syntax Visualizer Extension to get a more tangible feel for the AST and also see error squigglies in the editor (you'll also need to run through the steps to install PHP7 as outlined in Getting Started. If you see error squigglies for valid code, then please file an issue because we want to know about it, and that's something we should address. e.g. https://github.com/Microsoft/tolerant-php-parser/issues/30.
Make a PR - See the Contributing page for more details. I also included some example PRs to help people ramp up with the codebase.
Your idea here :smiley:


Complete validate function and auto detectand prevent error

Hi and thanks for lib;)
Some tips to improve

it's better to automatically detect format of barcode
complete validate function to return format
prevent error in code if string of code is not valid on selected format

Hi,

it's better to automatically detect format of barcode
complete validate function to return format

https://github.com/lindell/JsBarcode/issues/186#issuecomment-325422746

prevent error in code if string of code is not valid on selected format

You can use valid option or try/catch to avoid it.


FnMut debug handler

closes #1673
Not exactly sure why, but I had to remove the lifetime from DebugInfo to get this to work (otherwise I always get lifetime errors when adding the RefCell).

Not exactly sure why, but I had to remove the lifetime from DebugInfo to get this to work (otherwise I always get lifetime errors when adding the RefCell).

Perhaps related to the removed comment about 'accessing referenced data in the debug implementation without cloning it.'?


Propel archivable behavior doesn't work properly (archived_at column doesn't get updated on insert)

I have some problems with the Propel's archivable behavior. For some reasons, Propel doesn't set archived_at field to the current datetime when the object is being archived.
My schema:
SeminarCustomer:
  tableName:          seminar_customer
  columns:
    id:              { type: integer, required: true, primaryKey: true, foreignClass: Customer, foreignReference: id, onDelete: cascade }
    ...
   office_id:       { type: integer, required: false, foreignTable: office, foreignReference: id }
   entity_id:       { type: integer, required: true, default: 1 }
   propel_behaviors:
     timestampable:   ~
     archivable:      ~

SeminarCustomer::archive method:
public function archive(PropelPDO $con = null)
{
  if ($this->isNew()) {
    throw new PropelException('New objects cannot be archived. You must save the current object before calling archive().');
  }
  if (!$archive = $this->getArchive($con)) {
    $archive = new SeminarCustomerArchive();
    $archive->setPrimaryKey($this->getPrimaryKey());
  }
  $this->copyInto($archive, $deepCopy = false, $makeNew = false);
  // NOTE: here should be $archive->setArchivedAt(time());
  $archive->save($con);

  return $archive;
}

archived_at column definitely exists in my seminar_customer_archive table.
Symfony: 1.4.17-DEV
Propel: 1.6.3

I've attached unit test and the bugfix. Could you please take a look at it. Thank you for your time.

Can you open a PR with your fix? We'll be able to discuss it in a better way then


fork: fix clonning for projects within subgroups

Solves issue #424 by considering (sub)group naming when clonning a project after a fork.

Looks like we just need to run gofmt on these changes.

@zaquestion oh, sorry.. just did the 'gofmt' and forced push the changes.


Last load step fails almost always

The LoadStepper has some issue with the last time step and almost always diverges with a singularity exception. Needs investigation.

Should be resolved by https://github.com/termi-official/Thunderbolt.jl/pull/96 .


Update base.json

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Test Comment.

Another comment

Test Comment

Test Comment

Test Comment

test

Test

test

test comment

test

test


Add simple example

Hi @xuanngo2001! Thank you for PR! Your example is good, but it's too heavy for the "Getting started" section. Not all developers need to sync table structure and add some records on each application run.
So it's better to create a new section at the bottom of README.md and move your example there. Something like "Examples".
Again, thank you for your PR!


Useless I/O eating up disks

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Describe the bug
A clear and concise description of what the bug is, including last known working version (if any).
Tip: to validate your setup was working with the previous version, use opnsense-revert (https://docs.opnsense.org/manual/opnsense_tools.html#opnsense-revert)
To Reproduce
Steps to reproduce the behavior:

Setup a normal OPNsense on ZFS
Enable logs and stuff into tmpfs
Have firewall aliases

Expected behavior
Stop re-writing my tables when they did not change
Describe alternatives you considered
Fix/reduce the useless writes.
Screenshots
The writes are constant

The reads are okay

Additional context
   	18:32	zfs snapshot zroot/ROOT/default@06jun2023t20h32
   	18:40	zfs snapshot zroot/ROOT/default@06jun2023t20h40
   	18:46	zfs diff zroot/ROOT/default@06jun2023t20h32 zroot/ROOT/default@06jun2023t20h40

M	/root
M	/var/db/aliastables/Emails.self.txt
M	/var/db/aliastables/Emails.md5.txt
M	/var/db/aliastables/Emails.txt
M	/var/db/entropy/saved-entropy.3
M	/var/db/aliastables/Bogus_destinations.self.txt
M	/var/db/aliastables/Bogus_destinations.md5.txt
M	/var/db/aliastables/Bogus_destinations.txt
M	/var/db/aliastables/SAFE_HOSTS.self.txt
M	/var/db/aliastables/SAFE_HOSTS.md5.txt
M	/var/db/aliastables/SAFE_HOSTS.txt
M	/var/db/aliastables/xxx_Ambrose.self.txt
M	/var/db/aliastables/xxx_Ambrose.md5.txt
M	/var/db/aliastables/xxx_Ambrose.txt
M	/var/db/currentipsecpinghosts
M	/var/db/aliastables/bogonsv6.self.txt
M	/var/db/aliastables/__lan_network.self.txt
M	/var/db/aliastables/virusprot.self.txt
M	/var/db/aliastables/__lo0_network.self.txt
M	/var/db/aliastables/__opt1_network.self.txt
M	/var/db/aliastables/bogons.self.txt
M	/var/db/aliastables/sshlockout.self.txt
M	/var/db/aliastables/__wan_network.self.txt
M	/var/db/aliastables/crowdsec_blacklists.self.txt
M	/var/db/aliastables/crowdsec6_blacklists.self.txt
M	/var/db/aliastables/OOB_HOSTS.self.txt
M	/var/db/aliastables/OOB_HOSTS.md5.txt
M	/var/db/aliastables/OOB_HOSTS.txt

# Out of OPNsense scope
M	/var/db/crowdsec/data
M	/var/db/crowdsec/data/crowdsec.db

Environment
OPNsense latest on Proxmox

Seems like some of the code is in https://github.com/opnsense/core/blob/6b40db6c2a6a9a1f140904a5bc6a5dd7462c4aeb/src/opnsense/scripts/filter/lib/alias/init.py#L161-L200

And that saved entropy could be due to https://github.com/opnsense/src/blob/stable/23.7/libexec/save-entropy/save-entropy.sh
Maybe someone can explain to me why this entropy file is needed. Some freeBSD content on the web seems to indicate that it's some security feature
Maybe we can say the entropy files are out of the scope of this issue

I don't think this is super important (bigger fish to fry), but you could try to compare the contents of
https://github.com/opnsense/core/blob/6b40db6c2a6a9a1f140904a5bc6a5dd7462c4aeb/src/opnsense/scripts/filter/lib/alias/__init__.py#L170
With what's about to be saved in
https://github.com/opnsense/core/blob/6b40db6c2a6a9a1f140904a5bc6a5dd7462c4aeb/src/opnsense/scripts/filter/lib/alias/__init__.py#L187
Before writing the contents

yes, exactly, I can contribute this
I was thinking to compare md5 files
Such changes are for master branch and so the next release ?

About /var/run/booting and /var/db/currentipsecpinghosts empty
I do not see why they are written, can you help me find the sources that update them ?

I was thinking to compare md5 files

I expect you can just compare content

Such changes are for master branch and so the next release ?

Either a next minor or major depending on the change.

About /var/run/booting ....

Knowing the system hasn't been booted (fully) yet.
https://github.com/opnsense/core/blob/6b40db6c2a6a9a1f140904a5bc6a5dd7462c4aeb/src/etc/rc#L232

... and /var/db/currentipsecpinghosts empty files

IPsec script https://github.com/opnsense/core/blob/master/src/sbin/ping_hosts.sh monitoring endpoints.
To be honest, I can't really imagine this is important at all. Chances of changes being accepted on these files are likely not very high. Preventing some writes for local cache files would probably be fine when there are no other downsides, files that are hardly being written to at all need a strong motivation to accept changes.

Thanks, I am cloning repos. I really enjoy this quick feedback, seems like an active and listening community !
Will see what I can do to help when I am done with this subject

Knowing the system hasn't been booted (fully) yet.

So it's a bug ? to write contents to this file, the system is booted since many hours 😄

So it's a bug ? to write contents to this file, the system is booted since many hours 😄

That's debatable, in theory it could have used a check for the file combined with a touch, this is just less code with little harm in reality:
https://github.com/opnsense/core/blob/6b40db6c2a6a9a1f140904a5bc6a5dd7462c4aeb/src/etc/inc/config.inc#L52

JFYI: In my case it was Unbound DNS reporting  so I disabled it

And writes dropped from alsmost 300kb per second to ~40 kb per second

There are some much bigger fish to fry...
https://github.com/opnsense/core/issues/7101

some changes are made, if new relevant io issues turn up, better open a new ticket after 24.1 is released.


feat: added guilds array and count to ready_t

This PR adds the guilds array and a count of the array to the ready_t event, as Discord provides an array of unavailable guilds on the ready event. This means people can now get the amount of guilds a bot is in from the ready_t event.
Code change checklist

[x] I have ensured that all methods and functions are fully documented using doxygen style comments.
[x] My code follows the coding style guide.
[x] I tested that my change works before raising the PR.
[x] I have ensured that I did not break any existing API calls.
[x] I have not built my pull request using AI, a static analysis tool or similar without any human oversight.

For me accessing dpp::ready_t::guilds results in a segfault.

For me accessing dpp::ready_t::guilds results in a segfault.

Can you send the raw event please? Remember to take out sensitive information.

the bot is in guilds, so guild_count being 0 makes no sense either.
raw event:
{
  "t": "READY",
  "s": 1,
  "op": 0,
  "d": {
    "v": 10,
    "user_settings": {

    },
    "user": {
      "verified": true,
      "username": "REDACTED",
      "mfa_enabled": true,
      "id": "REDACTED",
      "global_name": null,
      "flags": 0,
      "email": null,
      "discriminator": "REDACTED",
      "bot": true,
      "avatar": null
    },
    "shard": [
      0,
      1
    ],
    "session_type": "normal",
    "session_id": "REDACTED",
    "resume_gateway_url": "REDACTED",
    "relationships": [

    ],
    "private_channels": [

    ],
    "presences": [

    ],
    "guilds": [
      {
        "unavailable": true,
        "id": "REDACTED"
      }
    ],
    "guild_join_requests": [

    ],
    "geo_ordered_rtc_regions": [
      "REDACTED",
      "REDACTED",
      "REDACTED",
      "REDACTED",
      "REDACTED"
    ],
    "current_location": [
      "REDACTED",
      "REDACTED"
    ],
    "auth": {

    },
    "application": {
      "id": "REDACTED",
      "flags": 8421376
    },
    "_trace": [
      "[\"gateway-prd-us-east1-b-lz5w\",{\"micros\":91431,\"calls\":[\"id_created\",{\"micros\":1089,\"calls\":[]},\"session_lookup_time\",{\"micros\":4560,\"calls\":[]},\"session_lookup_finished\",{\"micros\":16,\"calls\":[]},\"discord-sessions-prd-2-85\",{\"micros\":85342,\"calls\":[\"start_session\",{\"micros\":75877,\"calls\":[\"discord-api-7865c84bc5-f4jll\",{\"micros\":61109,\"calls\":[\"get_user\",{\"micros\":9624},\"get_guilds\",{\"micros\":8391},\"send_scheduled_deletion_message\",{\"micros\":11},\"guild_join_requests\",{\"micros\":10},\"authorized_ip_coro\",{\"micros\":12}]}]},\"starting_guild_connect\",{\"micros\":58,\"calls\":[]},\"presence_started\",{\"micros\":316,\"calls\":[]},\"guilds_started\",{\"micros\":99,\"calls\":[]},\"guilds_connect\",{\"micros\":2,\"calls\":[]},\"presence_connect\",{\"micros\":8935,\"calls\":[]},\"connect_finished\",{\"micros\":8942,\"calls\":[]},\"build_ready\",{\"micros\":21,\"calls\":[]},\"clean_ready\",{\"micros\":26,\"calls\":[]},\"optimize_ready\",{\"micros\":1,\"calls\":[]},\"split_ready\",{\"micros\":0,\"calls\":[]}]}]}]"
    ]
  }
}

Just to make sure, your application is using the updated DPP library right? Not an older version?

For example using updated headers but an older libdpp.so can cause things like this

yes, but i fear it might be some cmake cache

the only thing i noticed is you cannot access the guild cache dpp::find_guild(id) in on_ready since guilds arent cached yet.
if you use bot.guild_get(id) to access the guild, certain fields like dpp::guild::members and dpp::guild::member_count arent populated yet.

Yes. Guild members are given separately after the ready event, if you have the guild members intent


Error in DISK_PATTERN regex

The on-disk regex pattern fails for the following case:
>>> import fileseq, re
>>> pattern = re.compile(fileseq.all._ON_DISK_PATTERN)
>>> pattern.match('foo.r1.bar/fbx').groups()
(None, 'foo.r', '1', '.bar/fbx')

This causes errant values to be introduced in the findSequencesOnDisk() method, ultimately resulting in a parsing exception.
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "fileseq/all.py", line 357, in findSequencesOnDisk
    result.append(FileSequence(seq))
  File "fileseq/all.py", line 167, in __init__
    self.__frameSet = FrameSet(m.group(3))
  File "fileseq/all.py", line 79, in __init__
    raise ParseException("Failed to parse frame range: %s on part '%s'" % (frange, part))
fileseq.all.ParseException: Failed to parse frame range: x on part 'x'

I've just tested this case against HEAD and it seems to be resolved with the massive number of changes that have taken place to the regular expressions and parsing logic:
>>> pattern.match('foo.r1.bar/fbx').groups()
('foo.r1.bar/', 'fbx', None, None)

This looks to be the expected results, since it was able to parse a dirname, basename, and then no frame range or extension.  I will close this issue, but we can reopen if you find there are still edge cases.


Service exited due to Segmentation fault: 11

Hi. Just wanted to let you know that I am getting this error when I use the dispose function:
var BitmapFactory = require("nativescript-bitmap-factory");
var KnownColors = require("color/known-colors");

exports.loaded = function (args) {
    var bmp = BitmapFactory.create(640, 480);
    bmp.dispose(function () {
    ...
    });
};

Oct  1 22:45:31 app[36907]: assertion failed: 15G1004 14A345: libxpc.dylib + 62597 [37A9DF49-35C1-3D93-B854-B35CACF0100F]: 0x7d
Oct  1 22:45:34 app[36907]: [App] if we're in the real pre-commit handler we can't actually add any new fences due to CA restriction
Oct  1 22:45:49 com.apple.CoreSimulator.SimDevice.63ADC13B-CF66-4AA2-B13F-BF7D83AFC6E6.launchd_sim[31936] (UIKitApplication:org.nativescript.app[0xd12b][36907]): Service exited due to Segmentation fault: 11

I have Xcode 8, OS X El Capitan. It works with the Android emulator but it fails in the iPhone emulator.
Possibly similar to: https://github.com/NativeScript/sample-Groceries/issues/152

Have you tried to access the bmp object outside the dispose() method / exported loaded function?
dispose() frees the memory after the function, you have submitted, was called: http://stackoverflow.com/questions/10026835/application-exited-abnormally-with-signal-11-segmentation-fault-11
Or does this happen while you are in the loaded function?

I can also report that I'm seeing the same behavior and I am not accessing the bitmap object outside of the dispose method. I'm creating an image in an Angular component's ngOnInit method.
import { Component, OnInit } from "@angular/core";
import { create as createBitmap } from "nativescript-bitmap-factory";
import KnownColors = require("color/known-colors");

@Component({
  selector: "image-background-component",
  template: "<Image [src]='imageSource'></Image>",
})
export class ImageBackgroundComponent implements OnInit {

  imageSource:string;

  ngOnInit() {
    let backgroundImage = createBitmap(80);
    backgroundImage.dispose((b) => {
      b.drawCircle(80, null, KnownColors.Red);
      this.imageSource = b.toDataUrl();
    });
  }

}

This renders properly on the screen, but then almost immediately segfaults:
Oct  3 09:42:49 DoubleBigMac com.apple.CoreSimulator.SimDevice.5D9DF334-10E0-4D19-AF90-6AD0F860E724.launchd_sim[20723] (UIKitApplication:com.cyanna.iinlc[0x5da7][44605]): Service exited due to Segmentation fault: 11

@cmermingas, @jhuckabee : Do you use the latest version of the tns-core-modules?
Since version 2.3.x I have problems displaying bitmaps in my apps (in my case on Android). All my bitmaps seem to be displayed in white color (single color image) or as black box (multi color image) when I am assigning them to an Image control.
When I downgrade to version 2.2.1 e.g. anything works fine.
I am currently not sure if that is a problem of the core modules or the plugin. I will check this out.

Hi Marcel. I don't know how to reply to specific comments in this thread, so I'll pool all my answers here:

I haven't tried to access the bmp outside of the dispose function. I just copied the code from this repository readme, under Usage, and pasted it in a brand new app that I started with tns cli.

I am using the latest tns-core-modules. I set up NativeScript for the first time this past weekend.

The bitmap renders correctly but the app crashes in the iOS emulator after a few seconds. It doesn't happen in the Android emulator.

I have narrowed this down to CGImageRelease calls. Removing those seems to fix the problem, but I don't fully understand the memory management implications there.
Here is the crash file that results from the segfault.

@jhuckabee @cmermingas  Does this help when you surround the line with a try-catch-block and add a null/undefined check? Something like this:
try {
    if (!TypeUtils.isNullOrUndefined(oldImg)) {
        if (!TypeUtils.isNullOrUndefined(oldImg.CGImage)) {
            CGImageRelease(oldImg.CGImage);
        }
    }
}
catch (e) {
    console.log('[ERROR :: iOSImage.__onImageContext()]: ' + e);
}

My theory is that one of the objects (oldImage or CGImage) are null/undfined.
If so (and the solutions works) I will fix this in the next version.

Unfortunately that didn't work for me. According to the docs, this shouldn't fail if CGImageRef is NULL. I wonder if this is an issue with iOS runtime marshaling in NativeScript?

From what I'm reading, UIImage is an autoreleased object. Is calling CGImageRelease even necessary here? What it sounds like is happening is by the time the autorelease process runs, we've already released an object that it is again trying to release for us and results in the segfault we're seeing here.

Hi all, is there any resolution or workaround for this issue? I believe I'm having the same issue with the latest version.

What version are you using? I haven't upgraded yet, but looks like it was addressed in e8055020381dcf973ebc54706735ab214384f76f.

@mcordes This should not happen anymore (v1.6.2).
As @jhuckabee wrote in his comment, the problem is that an iOS image is an auto released object and iOS does not seem to check if an UIImage has already been disposed.
So I removed releasing an image manually.
If that still makes problems, you can try to go back to the "old" behavior, by calling the setDefaultOptions() function:
import BitmapFactory = require('nativescript-bitmap-factory');

BitmapFactory.setDefaultOptions({
    ios: {
        autoRelease: false,
    }
});

The default value for autoRelease is (true).

@mkloubert thanks for the update. I am using the latest (1.6.2) and I've tried both with and without the autoRelease flag set. Everything looks great on Android and I see the Segmentation fault: 11 on iOS. I'll put together a quick demo this evening of what I'm seeing to make sure I can reproduce it outside of my application.

Thanks for the help guys. I put together a simplified version of my app to just test the bitmap functionality and it works fine leading me to believe the problem is elsewhere. Sorry for the confusion. This bug certainly looks like it's fixed to me.
For the record I'm using autoRelease=true with 1.6.2. Thanks again.


Taking two screenshots of the same accordion item (image) toggles them open / closed

If I have the following:
"actionsIdentifierImageManipulation": [
          {"action": "resizeWindow", "width": 1024,"height": 768},
          {"action": "see", "text": "Page"},
          {"action": "click", "link": "Page"},
          {"action": "openPageTreePath", "path": ["Congratulations"]},
          {"action": "switchToContentFrame"},
          {"action": "waitForText", "text": "Congratulations", "timeout": 5},
          {"action": "click", "link": "div#element-tt_content-210 a[href*=edit]"},
          {"action": "waitForText", "text": "Edit Page Content \"Deliver business value\" on page \"Congratulations\"", "timeout": 5},
          {"action": "click", "link": "Images"},
          {"action": "click", "link": "//div[@id=\"data-1-tt_content-210-image_records\"]/div[1]//button[contains(@class, \"form-irre-header-button\")]"},
          {"action": "wait", "timeout": 0.5},
          {"action": "resizeToFullPage"},
          {
            "action": "makeScreenshotOfElement",
            "selector": "//div[@id=\"data-1-tt_content-210-image_records\"]/div[1]//div[contains(@class, \"form-group\")][contains(., \"Image manipulation\")]",
            "fileName": "ImageManipulationButton"
          },
          {"action": "resizeWindow", "width": 1024,"height": 768}
        ],
        "tt_content": [
          {
            "action": "goToField",
            "fields": "image"
          },
          {
            "action": "click",
            "link": ".form-irre-header-button"
          },
          {
            "action": "wait",
            "timeout": 0.1
          },
          {
            "action": "makeScreenshotOfElement",
            "selector": ".form-section",
            "fileName": "Image"
          }
        ]

Running them separate will show "Image" opened, running both together will show "Image" closed

Is this a bug or as expected? I would expect that clicking a toggler once differs from clicking a toggler twice.

I would not expect one action group to have effect on the other. In Pupeteer I had an action that would only open and not close accordions to solve this.

Instead of creating actions that check the state of all possible switchable elements, I suggest following the principle of "leave your place as you found it" and simply close the accordion after taking the screenshot.

Ok?


Use Handler infra instead of CompileResult

The idea is to stop using the CompileResult<T> monad in sway_core. The type is a beautiful concept, and would be the go-to solution in Haskell. However, there is lacking proper language support for early returns (i.e. do notation in Haskell). Meanwhile, the ? operator is inappropriate for logging (writer monad), which is half of what CompileResult is (roughly (Maybe a, [Warning], [Error])).
Currently, use of CompileResult<T> results in a lot of noise dealing with error handling.
Instead of CompileResult, we can use the Handler concept in the parser, which is also the way rustc deals with emitting errors.

https://github.com/FuelLabs/sway/pull/3057 can be used for inspiration to resolve this issue.


style bug: Background is translucent when generating text

Could you describe how to reproduce this issue, please?

I just select some text in chrome, and use cmd+k open the windows. Then I click Yes in the toast.

I just select some text in chrome, and use cmd+k open the window. Then I click Yes in the toast.

Sorry, I still can't reproduce this issue. If possible, would you mind to make a short video to demonstrate it or submit a PR to fix it?

I just select some text in chrome, and use cmd+k open the window. Then I click Yes in the toast.

Sorry, I still can't reproduce this issue. If possible, would you mind to make a short video to demonstrate it or submit a PR to fix it?

I have also encountered this issue in production mode, I will fix it today.


"height" is not cleaned from CMIP6 Datasets with dodola.core.standardize_gcm

Running some raw CMIP6 runs through dodola cleancmip6 with v0.2.0 or main does not remove the "height" coordinate variable from the Dataset.
Here is a print from one of the cleaned Datasets:
opening az://clean/ACCESS-ESM1-5/training/r1i1p1f1/tasmax.zarr
<xarray.Dataset>
Dimensions:    (bnds: 2, lat: 145, lon: 192, time: 7300)
Coordinates:
    height     float64 ...
  * lat        (lat) float64 -90.0 -88.75 -87.5 -86.25 ... 86.25 87.5 88.75 90.0
    lat_bnds   (lat, bnds) float64 dask.array<chunksize=(145, 2), meta=np.ndarray>
  * lon        (lon) float64 0.0 1.875 3.75 5.625 ... 352.5 354.4 356.2 358.1
    lon_bnds   (lon, bnds) float64 dask.array<chunksize=(192, 2), meta=np.ndarray>
  * time       (time) object 1995-01-01 12:00:00 ... 2014-12-31 12:00:00
    time_bnds  (time, bnds) datetime64[ns] dask.array<chunksize=(7300, 1), meta=np.ndarray>
Dimensions without coordinates: bnds
Data variables:
    tasmax     (time, lat, lon) float32 dask.array<chunksize=(365, 145, 192), meta=np.ndarray>
Attributes: (12/50)
    Conventions:             CF-1.7 CMIP-6.2
    activity_id:             CMIP
    branch_method:           standard
    branch_time_in_child:    0.0
    branch_time_in_parent:   21915.0
    cmor_version:            3.4.0
    ...                      ...
    table_info:              Creation Date:(30 April 2019) MD5:e14f55f257ccea...
    title:                   ACCESS-ESM1-5 output prepared for CMIP6
    tracking_id:             hdl:21.14100/67543e90-bb83-44b1-8a30-e1fbb5ada0d...
    variable_id:             tasmax
    variant_label:           r1i1p1f1
    version:                 v20191115

It's important that we remove this "height" coordinate because it causes the Quantile Delta Mapping training step to fail in a very hard and obtuse way.
I think the problem is that we aren't correctly detecting that "height" is present with  https://github.com/ClimateImpactLab/dodola/blob/1e372ab58a67b0865687fa04ba40c4996f6d3351/dodola/core.py#L279 Instead, we might check that "heights" is an element in ds.variables or ds.coords ?

Pinging @dgergel because I said I'd follow up on this.


Supported Raspberry Pi models?

Which models does Circlean support? I did some tests:

RPi 3B: OK
RPi 3B+: not working, destination USB stick stays empty
RPi 4B: not even booting

Is this to expected? Are there any plans to provide an updated image for new RPi models?
Thank you!

Hmmmm I expected it to work on the 3B+, but I don't have one to test with, so I'll trust you on that.
And same, but more expected, for the 4B. I need to get one of these and figure out what's going on.
And when I figure it out, I'll release a new image/new images.

4B probably only boots with new firmware and kernel files of a current Raspbian image.
3B+ fails to correctly recognize the USB sticks. I have attached a photo.

Right, I see, someone else reported having a similar issue.
The USB key not being recognized is weird, and I'll need to get my hand on the right version of the device.

I used the pre-built img from CIRCLean. I tested RPI 1 B+ and RPI 2B. I got the same error as Michael's 3B+ - "Error: could not determine real path of the device: No such file or directory"

Just to make sure: where are the two USB keys plugged?
The source key should be in the top left slot, and the destination in the bottom right one.
We released a new image last week, and it is working on rPi4.

I had the keys plugged in as you described.

This is annoying, I have no idea what is going wrong here...
Which image are you using? And I see the destination key isn't found on the screenshot, is this key mountable on an other device? And what is the filesystem format?

I used the img - 2019-08-30_CIRCLean.img
Both keys are formatted as FAT32 and mount fine on my Mint desktop.

I am using the 2020-01-16_CIRCLean.img, but I am having issuse on a RPi 4B. Source key in the top left and destination in one of the others. Looks like it can't find the source key. I've tried it with both usb keys and usb disks.

What is the file system of the devices you try to mount?

FAT32. 32GB Integral USB 3.0 flash drive just unpacked. Two of them.

What is the file system of the devices you try to mount?

brother I'm using this project for my finale year project so can you provide the latest pre-build img for the project and mention the supported devices!!

I am also looking for a fresh look needed for security needs


call check point for this action

im putting in my corect username and password and it keeps say call check point for this action
ive made a new password and it still isnt working
what do i do

plz help

Same issue here... it would be nice if this gets fixed soon 😊

YEAAAH ME TOO


Add build and scan script

This PR adds a python script to build and run parameter scans of the code(s). Currently the script has only gcc, so the icc option should be added there. Also storing the results of the scan(s) is missing (with @kakwok we were thinking JSON storage similar to run-scan.py in https://github.com/cms-patatrack/pixeltrack-standalone).
This PR also suggests to move the source code to src directory, and change the default number of threads for TBB to 1.

@kakwok @cerati What do you think?

@kakwok @cerati What do you think?

no objections from me!

no objections from me!

Sounds good to me! I can extend the storage part using JSON after this PR is merged

Sounds good to me! I can extend the storage part using JSON after this PR is merged


support for mija motion sensor

Requires HASS >= 0.89

I wanted to get this in so I pulled it in line w/ the Aqara one myself... Thanks for the contribution!!!


Plop Notifications as Absolute

I rule and have completed some work on Case Manager that's ready for review!
Notifications no longer bump form up and down yeah? Also added opacity effect when hovered.
This pull request makes the following changes:

Notifications boop

It relates to the following issue #s:

Fixes #1210

Codecov Report

Merging #1217 into master will increase coverage by 2.09%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #1217      +/-   ##
==========================================
+ Coverage   93.21%   95.31%   +2.09%
==========================================
  Files          56       55       -1
  Lines        1224     1195      -29
==========================================
- Hits         1141     1139       -2
+ Misses         83       56      -27

Impacted Files
Coverage Δ

app/lib/reports/fulfillment.rb

app/controllers/reports_controller.rb
100% <0%> (+16.66%)
:arrow_up:

app/lib/reporting/patient.rb
100% <0%> (+33.33%)
:arrow_up:

Continue to review full report at Codecov.

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

TANKS A LOT


loading the tiff image tiles into openseadragon viewer

I am working on a project which requires to display tiff images using OpenSeadragon. as of now, it was working fine as i was creating the tiles and the image was being displayed properly using these tiles as tiles were being generated in .png or .jpg format. But now, my requirement has changed and i had to create the tiles in .tif format. so far everything is working fine but when it comes to display these tiles (.tif formatted), it throws the error as: [Uncaught Error: Sorry, we don't support TIF-based Deep Zoom Images].
Help me with, how can i display these .tif formatted tiles using OpenSeadragon. also let me know if there is any opensource alternative to OpenSeadragon which can fulfill the above mentioned requirements.
Also let me know, this library (GeoTiffTileSource) creates the tiles in which format (i.e. png, jpg or tif)

being displayed properly using these tiles as tiles were being generated in .png or .jpg format. But now, my requirement has changed and i had to create the tiles in .tif format

Why has the requirement moved to needing .tif tiles? PNG is lossless, so there's typically no benefit to using .tif instead of png.

Also let me know, this library (GeoTiffTileSource) creates the tiles in which format (i.e. png, jpg or tif)

This library doesn't create the tiles, it just displays them in whatever format the pyramidal TIFF file was created in. Since displaying the tiles is something the browser does natively, it depends on browser support for the particular tile format.


Cannot convert between a TensorFlowLite buffer with 76800 bytes and a Java Buffer with 230400 bytes

I modify the image classification code https://github.com/tensorflow/examples/tree/master/lite/examples/image_classification/android to run inference on a float type grayscale bitmap with size (1, 120, 160, 1). However, an exception is throw regarding "Cannot convert between a TensorFlowLite buffer with 76800 bytes and a Java Buffer with 230400 bytes". I checked the input tensor image shape which is indeed (1, 120, 160, 1).
Basically, java buffer is still assuming the input size is (1, 120, 160, 3). Therefore, what need be modified in order to run inference on grayscale image for image classification code? I feel like TensorImage class is somehow hard-coded for RBG image instead of grayscale one.
Process: org.tensorflow.lite.examples.classification, PID: 20064
java.lang.IllegalArgumentException: Cannot convert between a TensorFlowLite buffer with 76800 bytes and a Java Buffer with 230400 bytes.
    at org.tensorflow.lite.Tensor.throwIfShapeIsIncompatible(Tensor.java:402)
    at org.tensorflow.lite.Tensor.throwIfDataIsIncompatible(Tensor.java:369)
    at org.tensorflow.lite.Tensor.setTo(Tensor.java:187)
    at org.tensorflow.lite.NativeInterpreterWrapper.run(NativeInterpreterWrapper.java:150)
    at org.tensorflow.lite.Interpreter.runForMultipleInputsOutputs(Interpreter.java:314)
    at org.tensorflow.lite.Interpreter.run(Interpreter.java:275)
    at org.tensorflow.lite.examples.classification.tflite.Classifier.recognizeImage(Classifier.java:266)
    at org.tensorflow.lite.examples.classification.ClassifierActivity$3.run(ClassifierActivity.java:98)
    at java.lang.Thread.run(Thread.java:919)

Sorry, but yes the TensorImage class only supports RGB image. It's on our radar now but may not be very soon.

Please let me know if you need further help, or you want to raise a general issue on grayscale support.

Got it and thanks for the update!
I just want to double check on the complexity of modifying the TensorImage source code to get grayscale image working to see whether it worths myself to spend time on that. Otherwise, I might simply raise a general issue on grayscale image to let you guys help resolve.

I don't think it's too hard. Let me try it tomorrow and will let you know.

Thanks. I feel this is related to line 141 in TensorImage.class
int requiredFlatSize = this.bitmapImage.getWidth() * this.bitmapImage.getHeight() * 3;
However, it will be nice that you can help confirm and let me know if I missed something else.
Thanks!

That's one. Also the TensorImage.load methods, and the conversion code in ImageConversions.java.
It's not really difficult to modify to get it running, but design consistent interfaces might take longer.
For your usage, I'm curious about how you store a gray image in Android - or saying how you expect to convert the Bitmap to values. Are you just interested in one particular channel? Or you want to use formulas in https://en.wikipedia.org/wiki/Grayscale to compute the gray scale?
Thanks!

Regarding TensorImage.load, I am loading a bitmap image. From what I see, https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/experimental/support/java/src/java/org/tensorflow/lite/support/image/TensorImage.java#L119, it should be fine. However, I see what you are saying that if I am going to load a int or float pixel array, I have to make an modification. https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/experimental/support/java/src/java/org/tensorflow/lite/support/image/TensorImage.java#L151
Regarding ImageConversions.java, I see I have to modify this method https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/experimental/support/java/src/java/org/tensorflow/lite/support/image/ImageConversions.java#L90 regarding couple place assuming that size is (w, h, 3).
I am actually using use formulas in https://en.wikipedia.org/wiki/Grayscale to compute the gray scale to store grayscale image because our Neural Network is trained on grayscale images.
Also, one more question, is there a quick method to apply a patch on Gradle file because I never patch a Gradle file before.

Thanks for the info. We're considering the best way to support single channel images, so understanding usages are essential. That's really helpful.
What do you mean by "patching a gradle file"? If you're talking about adding a new class or modifying existing class in a gradle dependency, I googled a bit and seems there are several different ways to do that. You may need to take a look and choose what's the best one for you.

Sorry about the confusion and I was talking about modifying gradle dependency. I was initially wondering that whether I can directly apply a patch during the build to modify the necessary files. However, it looks like the easiest way is to add as an external library and the modify.
https://stackoverflow.com/questions/16588064/how-do-i-add-a-library-project-to-android-studio/16639227#16639227
https://stackoverflow.com/questions/30344053/how-do-you-edit-a-dependency-external-library-in-android-studio
Take your time to figure out the best way to support multi/single channel images and thanks for the help!


Fix encoding empty strings

This PR fixes issue #1

We don't have a develop branch in this repo. Perhaps we should have one?
Is it okay if you target the feature/bigint branch instead?


Run latest cookstyle

:speaking_head: Foreword
Thank for taking the time to fill this bug report fully. Without it we may not be able to fix the bug, and the issue may be closed without resolution.
:ghost: Brief Description
Chef have released updated cookstyle rules, we should therefore run the auto fix against the cookbook

Ensure you are on the latest stable chef-workstation
Run cookstyle -a

Issue sprouted from sous-chefs/meta/issues/111. If not applicable then issue should be closed.

This can be closed as it has been fixed by #111


Warn if no ambient type definition found

I am using version: 0.7.12.
I tried to install an ambient typing which was not there. I didn't see any warning and it actually included a reference to the file in main.d.ts and browser.d.ts.
Should there be a warning in this scenario or at least it should not add the reference?

What did you try to install?

this was the command i ran: typings install expect --ambient --save

There is an expect library. Why you think it wasn't there?

It didn't actually install the expect.d.ts file but it looked like it was successfully installed. Also it included a reference to it in browser.d.ts and main.d.ts

Does it install typings/main/ambient/expect/index.d.ts?

No, there is not an expect folder under ambient

That is strange. I just tried it and it is working fine.

What's in your main.d.ts?

/// <reference path="main/ambient/expect/index.d.ts" />

hey @unional this was my fault. it was IDE that didn't update, but the index.d.ts file is actually there on disk. sorry about this!

Good to know. Is it vscode? I am also noticing this lately. Do you know if there is an issue open on vscod to track this?

I need to manually click the refresh button.

Yeah, it is latest vscode.  Manually clicking refresh button worked.
I'll see if there is an issue for this over there. If not, I can open one.

I found https://github.com/Microsoft/vscode/issues/4673 which might be similar


[6401] Add bulk placements confirm page

Context
https://trello.com/c/7mK5PJCR/6401-bulk-placements-upload-confirmation
Changes proposed in this pull request
Adds a confirm page for final step in the bulk placements flow
Guidance to review

 Bulk placements upload confirmation


Should 1.0.0 be latest on npm?

a time of writing this, (sep 9 2024)
it showed a new publish 2 days ago,
but npm version still 0.19.0


update open_source_articles

A well-documented file with links to all amazing articles on open source. The articles can be placed into different groups for better clarity.

I'll work on this

Awesome

Let the articles be divided into different topics. e.g Licensing...


12 simpler constructor of simple control blocks

Description & Motivation
The default implementation for If, Iff, etc. take lists of Conditionals as inputs, which can be excessively verbose in cases where there is only one Conditional. Adding a special constructor (e.g. something like Iff.s) which takes a single Conditional could make simple code look cleaner.
Related Issue(s)
Issue #12
Testing
Added a new unit test that should return true if single conditional constructor is used.
Backwards-compatibility

Is this a breaking change that will not be backwards-compatible?  If yes, how so?

Nope.
Documentation

Does the change require any updates to documentation?  If so, where?  Are they included?

Yes.

If [condition] is 1, then [then] will be executed.
ElseIf.s(this.condition, this.then);

If [condition] is 1, then [then] will be executed.
ElseIf.s(this. Condition, this.then);


[LinearProgress] Migration of linear-progress component

[x] PR has tests / docs demo, and is linted.
[x] Commit and PR titles begin with [ComponentName], and are in imperative form: "[Component] Fix leaky abstraction".
[x] Description explains the issue / use-case resolved, and auto-closes the related issue(s) (http://tr.im/vFqem).

Migration of linear-progress component:

Indeterminate mode
Determinate mode
Buffer mode
Query mode

I am getting some flow errors, can you point me how to fix these errors?

Tanks @jvhoven !

CircleCi test is failing because the selenium fail to download ERROR: Tag 2.53.1 not found in repository docker.io/selenium/hub

The build now fails on Bad response: 422 {"message":"Couldn't find a repository matching this job.","error":true}. You gonna need to rebase this PR to have 🍏 .

@oliviertassinari rebased and now it's green 👍

@oliviertassinari Updated

@oliviertassinari Changes done 👍

@oliviertassinari Squashed and ready to merge 🎉

I'm not sure, the Github diff is weird 😁 . Any idea what went wrong?

Oh I didn't saw that ! Hum it looks like the merge from next have been included in the squash. Is there a way to remove it ?

Well, let's merge and see.

It's all good. Thanks a lot!


Everything after DataFrame.sample() running out of memory

System information

OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Linux (remote machine)
Modin version (modin.__version__): 0.7.0
Python version: 3.7
Code we can use to reproduce:

import modin.pandas as pd

# read data files
df1 = pd.read_parquet("data1.parquet")
df2 = pd.read_parquet("data2.parquet")

# do some operations
df = pd.merge(df1, df2, right_index=True, left_index=True, sort=False)

# write out the result
df.to_parquet("new_data.parquet")

# but if you sample down
df = df.sample(n=10000, random_state=42)

# then do anything after it, nothing works
df.to_parquet("new_data2.parquet") #<-- doesn't complete

Describe the problem

Everything after DataFrame.sample() is not working/killing the process/workers running out of memory (similar to this issue on Dask)
The same code runs beautifully without .sample() on the same machine. Whenever .sample() is summoned, the workers start running out of memory and the run gets killed after a couple of retries.
What's worth noting here that modin is doing a beautiful job on the complete data file (~ 1M records), but then whenever I sub-sample to say 100,000 records, it starts running out of memory!
PS: I'm running modin + dask
Source code / logs

Hi @jadhosn thanks for the report!

What's worth noting here that modin is doing a beautiful job on the complete data file (~ 1M records), but then whenever I sub-sample to say 100,000 records, it starts running out of memory!

This is interesting, looking through the sample code, it should not be creating copies. I spent some time triaging this here is what I can note (with Dask):

sample is taking way too much time and using only one core the whole time. 2 minutes on 1m lines of code is not reasonable, we should fix this
Python worker memory does appear to increase even though it should not be. It is going through the internal mask, which has a memory and runtime optimized implementation so I would not expect this.
If I dig into the implementation a bit, the rearranged nature of the sample is causing mask to take longer than expected. Example:

# From internal implementation
sample_indices = random_num_gen.choice(
    np.arange(0, len(df)), size=n, replace=replace, p=weights
)
df.iloc[sample_indices] # Takes >2 min on 1m rows, creates >8000 partitions
df.iloc[np.sort(sample_indices)] # Takes 173ms on 1m rows

I will optimistically tag for next release (Monday) but cannot make a promise here. If you are okay with sorted indices for this use case, I can provide a temporary workaround.

@devin-petersohn thank you for the quick response! That seems like exactly what I'm seeing.
I am okay with sorted indices (assuming this operation is not expensive in modin as I will be executing it right before the sample() call). What workaround did you have in mind?

This will be overfit to your example code above, but you should be able to adjust as you need.
Code you provided:
# read data files
df1 = pd.read_parquet("data1.parquet")
df2 = pd.read_parquet("data2.parquet")

# do some operations
df = pd.merge(df1, df2, right_index=True, left_index=True, sort=False)

To replace sample:
random_state = 42
n = 10_000 # 10,000 records
replace = False
weights = None
random_num_gen = np.random.RandomState(random_state)
sample_indices = random_num_gen.choice(
    np.arange(0, len(df)), size=n, replace=replace, p=weights
)
sampled_df = df.iloc[np.sort(sample_indices)] # Takes 173ms on 1m rows

This should be near instant from an interactive perspective.

We weren't able to get to this in time for this release, will prioritize for the next release.


Enable more build tests on Windows

Enabling a few more tests on Windows.
Signed-off-by: Darren Stahl<EMAIL_ADDRESS>

LGTM


user-data-cleanup: Support condition and data references for auto extraction of user-data locations from RTDB rules

LGTM!


There may be an issue with the I2C code

I modified the print_ I2c_ Scan() section code ，I modified the I2C PINS and now I can find the I2C device. So now I can confirm that the software is not working properly
void print_i2c_scan() {
//Serial.printf("I2C: Scanning ...\n");
// byte count = 0;
//i2c->begin();
//for (byte i = 8; i < 120; i++) {
// i2c->beginTransmission(i);          // Begin I2C transmission Address (i)
// if (i2c->endTransmission() == 0) { // Receive 0 = success (ACK response)
//  Serial.printf("I2C: Found address: 0x%02X (%d)\n",i,i);
//   count++;
// }
//}
//Serial.printf("I2C: Found %d device(s)\n", count);
byte error, address;
int nDevices;
Serial.println("Scanning...");
nDevices = 0;
for(address = 1; address < 127; address++ )
{
// The i2c_scanner uses the return value of
// the Write.endTransmisstion to see if
// a device did acknowledge to the address.
WIRE.beginTransmission(address);
error = WIRE.endTransmission();
if (error == 0)
{
  Serial.print("I2C device found at address 0x");
  if (address<16)
    Serial.print("0");
  Serial.print(address,HEX);
  Serial.println("  !");

  nDevices++;
}
else if (error==4)
{
  Serial.print("Unknown error at address 0x");
  if (address<16)
    Serial.print("0");
  Serial.println(address,HEX);
}

}
if (nDevices == 0)
Serial.println("No I2C devices found\n");
else
Serial.println("done\n");
}
madflight starting 5 ...
madflight starting 4 ...
madflight starting 3 ...
madflight starting 2 ...
madflight starting 1 ...
USE_HW_ESP32
I2C: SDA=21 SCL=22
SPI: MOSI=23 MISO=19 SCLK=18 CS=15
Scanning...
I2C device found at address 0x68  !
done
USE_RX_PPM pin=35
USE_IMU_MPU6050_I2C
E (4065) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=48
E (4066) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=97
E (4077) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=195
E (4089) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=48
E (4100) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=97
E (4111) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=195
E (4123) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=48
E (4134) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=97
E (4145) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=195
E (4157) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=48
E (4168) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=97
E (4180) ledc: requested frequency and duty resolution can not be achieved, try reducing freq_hz or duty_resolution. div_param=195
float AccErrorX = +0.000061;
float AccErrorY = +0.000061;
float AccErrorZ = -1.000061;
float GyroErrorX = -0.007634;
float GyroErrorY = -0.007634;
float GyroErrorZ = +0.007634;
Paste these values in user specified variables section and comment out calculate_IMU_error() in void setup.
ahrs_Setup() No Magnetometer
ahrs_Setup() Estimated yaw:-0.00
gx:+0.00	gy:+0.00	gz:-0.00	ax:+0.00	ay:+0.00	az:-0.00	mx:+0.00	my:+0.00	mz:+0.00	roll:+0.0	pitch:-0.0	yaw:-0.0	yaw_mag:-0.0	imu_err_cnt:0
gx:+0.00	gy:+0.00	gz:-0.00	ax:+0.00	ay:+0.00	az:-0.00	mx:+0.00

I used the code here
https://learn.adafruit.com/scanning-i2c-addresses/arduino

Hi, thanks for trying this out.
As I understand it, you changed the SDA pin from 23 to 21 in hw_ESP32.h.
But did you also change the HW_PIN_SPI_MOSI pin from 21 to 23??? Otherwise you have pin 21 defined twice, that does not work.
You should have something like this
//I2C:
const int HW_PIN_I2C_SDA  = 21; //<<<<<<<<<<<<<<<<<< was 23
const int HW_PIN_I2C_SCL  = 22; //default: Wire 22
typedef SoftWire HW_WIRETYPE; //define the class to use for I2C
//TwoWire *i2c = &Wire; //&Wire or &Wire1 - when using <Wire.h>
HW_WIRETYPE *i2c = new HW_WIRETYPE();  //create a ESP32_SoftWire instance

//SPI:
const int HW_PIN_SPI_MOSI = 23; //<<<<<<<<<<<<<<<<<<<<<< was 21
const int HW_PIN_SPI_MISO = 36; //VP defaults: VSPI 19, HSPI 12
const int HW_PIN_SPI_SCLK = 19; //   defaults: VSPI 18, HSPI 14
const int HW_PIN_SPI_CS   = 18; //   defaults: VSPI  5, HSPI 15
SPIClass *spi = new SPIClass(HSPI); // VSPI or HSPI(default)

Maybe try a fresh git clone, I've been making quite a few updates the last couple of days. Here is the output I'm getting on an ESP32 with MPU9150 (= MPU6050 + magnetometer) connected.
USE_HW_ESP32
I2C: SDA=21 SCL=22
SPI: MOSI=23 MISO=36 SCLK=19 CS=18
I2C: Scanning ...
I2C: Found address: 0x69 (105)
I2C: Found address: 0x77 (119)
I2C: Found 2 device(s)
USE_RCIN_CRSF
USE_IMU_MPU6050_I2C
....
CH1:1500	rcin_roll:+0.00	gx:-7.00	ax:-0.00	mx:+0.00	ahrs_roll:-0.1	roll_PID:+0.004	m1%:0	loop_rt:375
CH1:1500	rcin_roll:+0.00	gx:-7.00	ax:-0.00	mx:+0.00	ahrs_roll:-0.2	roll_PID:+0.004	m1%:0	loop_rt:354
CH1:1500	rcin_roll:+0.00	gx:-7.21	ax:-0.01	mx:+0.00	ahrs_roll:-0.2	roll_PID:+0.004	m1%:0	loop_rt:342

Thank you! Pin 21 is only defined once ，MPU9150 (=MPU6500+magnetometer), so MPU9250 and MPU6050 are completely different，I will test MPU6500 immediately
//I2C:
const int i2c_SDA_PIN  = 21; //default: Wire 21
const int i2c_SCL_PIN  = 22; //default: Wire 22
typedef SoftWire HW_WIRETYPE; //define the class to use for I2C
//TwoWire *i2c = &Wire; //&Wire or &Wire1 - when using <Wire.h>
HW_WIRETYPE *i2c = new HW_WIRETYPE();  //create a ESP32_SoftWire instance
//SPI:
const int spi_MOSI_PIN = 23; //   default: VSPI 23, HSPI 13
const int spi_MISO_PIN = 19; //VP default: VSPI 19, HSPI 12
const int spi_SCLK_PIN = 18; //   default: VSPI 18, HSPI 14
const int spi_CS_PIN   = 15; //   default: VSPI  5, HSPI 15
SPIClass *spi = new SPIClass(VSPI); // VSPI(default) or HSPI

I tested using MPU6500, but your code still cannot recognize the device
I am using the ARDUINO1.8.16IDE and I have used the development board linked below
NodeMCU ESP32 S Dev Kit
https://www.az-delivery.de/products/nodemcu-esp-32s-kit?shpxid=f07075dc-6a71-4466-9b0e-27f241a6759f
But I use RP2040+MPU6500, and your code can identify the device
madflight starting 5 ...
madflight starting 4 ...
madflight starting 3 ...
madflight starting 2 ...
madflight starting 1 ...
USE_HW_RP2040
I2C: SDA=20 SCL=21
SPI: MOSI=19 MISO=16 SCLK=18 CS=17
I2C: Scanning ...
I2C: Found address: 0x68 (104)
I2C: Found 1 device(s)
USE_RX_PPM pin=1
USE_IMU_MPU9250_I2C

I used the code you updated today, RP2040 can recognize MPU6050 and MPU6500, but ESP32 cannot recognize MPU6050 and MPU6500.
RP2040 can only recognize that the device has no XYZ data output when connected to MPU6050. RP2040 can recognize that the device has XYZ data output when connected to MPU6500.
RP2040 connected to MPU6050
madflight starting 3 ...
madflight starting 2 ...
madflight starting 1 ...
USE_HW_RP2040
HW_PIN_LED=25
HW_PIN_RCIN_RX=1 TX=0
HW_PIN_IMU_INT=22
HW_PIN_I2C_SDA=20 SCL=21
HW_PIN_SPI_MOSI=19 MISO=16 SCLK=18 CS=17
HW_PIN_OUT[14]=2,3,4,5,6,7,8,9,10,11,12,13,14,15
I2C: Scanning ...
I2C: Found address: 0x68 (104)
I2C: Found 1 device(s)
USE_RCIN_CRSF
USE_IMU_MPU6050_I2C
RP2040 connected to MPU6500.
madflight starting 5 ...
madflight starting 4 ...
madflight starting 3 ...
madflight starting 2 ...
madflight starting 1 ...
USE_HW_RP2040
HW_PIN_LED=25
HW_PIN_RCIN_RX=1 TX=0
HW_PIN_IMU_INT=22
HW_PIN_I2C_SDA=20 SCL=21
HW_PIN_SPI_MOSI=19 MISO=16 SCLK=18 CS=17
HW_PIN_OUT[14]=2,3,4,5,6,7,8,9,10,11,12,13,14,15
I2C: Scanning ...
I2C: Found address: 0x68 (104)
I2C: Found 1 device(s)
USE_RCIN_CRSF
USE_IMU_MPU9250_I2C
IMU init failed rv=-1112. Retrying...
USE_IMU_MPU9250_I2C
IMU init failed rv=-1000. Retrying...
USE_IMU_MPU9250_I2C
IMU init failed rv=-1000. Retrying...
USE_IMU_MPU9250_I2C
IMU init failed rv=-1000. Retrying...
USE_IMU_MPU9250_I2C
IMU init failed rv=-1000. Retrying...
USE_IMU_MPU9250_I2C
IMU init failed rv=-1000. Retrying...
USE_IMU_MPU9250_I2C
IMU init failed rv=-1000. Retrying...
USE_IMU_MPU9250_I2C
IMU init failed rv=-1000. Retrying...
USE_IMU_MPU9250_I2C
IMU init failed rv=-1000. Retrying...
USE_IMU_MPU9250_I2C
IMU init failed rv=-1000.

I've updated imu.h, RP2040 connected to MPU6500 should work now.
"NodeMCU ESP32 S Dev Kit" - I'm not 100% sure this is a ESP32 or a ESP32-Sx variant, or some sort of fake. I've never seen the ESP32S module on the picture.
Anyway, I've added #define USE_ESP32_SOFTWIRE in hw_ESP32.h, comment this line to use the regular Wire.h library. Maybe it helps.
Please give it a try, and let me know.

comment this line# define USE_ ESP32_ SOFTWIRE to use the regular Wire. h library.Will cause ESP32 to fail compilation
RP2040 connected to MPU6500,
Still only identifying the device, MPU6050 cannot output correct data

I have purchased a new MPU6500 module and will continue testing it tomorrow
Will your code support WING in the future? Will the barometer and GPS be added to provide automatic home function
Thank you!

Pushed a new version today with some barometers.
Still fighting with I2C on the ESP32, added a note in hw_ESP32.h
Did not test on RP2040 today, hope it still works ;-)

Will your code support WING in the future? Will the barometer and GPS be added to provide automatic home function
If possible, it would be better to support BMI 323 and ICM42688, as both BF and INAV now support these sensors. adding an SD card holder can record some data. If WIFI is utilized, the PID can be modified using web mode

These are certainly options. I'm working on barometers now, then maybe GPS. The rest probably won't happen (not enough time to work on this...)
But if you feel like, please go ahead and add the new functions/sensors and send me a pull request.

I am planning to design a 36X36 FC hardware

Sounds good! Actually RP2040 can do 6 hardware serial ports with the PIO see here

Thank you again! Attempting to connect to MPU6500 through I2C mode using RP2040 failed again, but when I connect to MPU6500 through SPI mode using RP2040, the measurement data of MPU6500 can be displayed.I have abandoned I2C mode.
I should enter the hardware design phase now, using RP2040+ELRS (SX1280+ESP8285)+MPU6500(or MPU9250,Actually, I prefer BMI 088 more )+BMP280(Actually, I prefer DPS310 more) +5VBEC
Can you give some advice on hardware design?

Definitely use SPI for the IMU: faster and more stable. I would not bother to include ELRS on the board, but provide a 4 pin connector to connect an external ELRS module. Rather include a current shunt and voltage sense resistor divider (see new BAT_ADC pin on my pinout) or use an INA226. You can use more modern IMU/BARO chips, but you will need to write drivers for them as I'm focusing on easily available sensor breakout boards at the moment. Options like LCD or SDCARD will probably need SPI, which is already used for IMU or you need to sacrifice 4 pins for a second SPI.
Looking forward to see your design!


Asserts in release code

Hi, thanks for your work! There are some asserts which prevent proper error handling when using your crate. Could you please drop them or turn into debug_assert? Thanks!
            let slice = &src[slice_start_index..current_index];
            assert_eq!(slice, "}", "[Lexer] Invalid last char, should be '}}'");
            if slice != "}" {
                return Err(LexerError::InvalidLastChar);
            }

Fixed in #4


docs: update mint client cli commands

While working through the cli tutorial, I noticed mint_cli is had been renamed to mint-client-cli after #329

Hey @kevkevinpal, @elsirion, @justinmoon , I'm requesting reviews for this docs pr

PS: Are there contribution guidelines?
With this PR, I was of a mind to read through and add a comment like "Please ensure update docs along with API  / cli changes" if necessary.
I could also start and maintain such a contribution guideline if it's helpful

LGTM, maybe this would be a chance to also just change the other snake case aliases into kebab case


Include api and controllers (APIs) in kpt module

Include the api and controllers modules directly inside kpt.
BY doing so the use of pseudo-modules is no longer necessary and
go get on the kpt module is possible.

Hmm ... for some reason kpt build scripts don't seem to like this change. We may have to go with #2929 at least short-term until we can figure out what is tripping the build up. It doesn't seem quite clear form the errors, and they don't happen when running locally.

Will need to investigate why this breaks kpt build :)


fix: bump version on package with semantic-release

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


MSEdge.Win10.VirtualBox will not start

As shown in the attached screen shot of the test of starting up MSEdge.Win10 by virt-manager in a RHEL 7.6 environment, does not work.
Only telling: "No bootable device."
The other virtual packages works though.
Are there any testing of these after deployment?

Looks like the MSEdge.Win10 VM no longer supports MBR booting, the rest are fine.
The QEMU configuration needs to have -bios /usr/share/qemu/OVMF.fd added for Win10 VMs (after installing ovmf). At a guess this should be only for Win10 too.

FWIW This seems to have been a temporary blip, MSEdge.Win10.VirtualBox is back to MBR booting. https://github.com/lentinj/ie-vm/commit/b95ba129dade63d67fd5d1e19765de5045f1f0e6 sets the default back to MBR booting, but there's an --efi option just in case.


Create/Edit Supplier Addresses

Add the ability to create and edit Supplier Addresses

As an Admin User, when I click Create Supplier Address from the Supplier Address list page, allow the Admin user to fill out Address Information (Address Name, Company Name, First Name, Last Name, Street 1(required), Street 2, City (required),  State (required), Zip (required), Country (required), Phone)
As an Admin User, when I click Save, my Supplier Address should be created, and I should now see my Supplier Address on the Supplier Address list page.
As an Admin User, when I click Discard Changes, a Supplier Address should not be created and I should return to the Supplier Address list page
As an Admin User, when I click on an existing Supplier Address to edit it, allow the Admin user to make changes to the existing form (Address Name, Company Name, First Name, Last Name, Street 1(required), Street 2, City (required),  State (required), Zip (required), Country (required), Phone)
As an Admin User, when I click Save, my Supplier Address should be updated with the changes I made. Remain on the Supplier Address detail page after saving.
As an Admin User, when I click Discard Changes, a Supplier Address should not be updated and I should return to the Supplier Address list page

Note, MPOs can perform these actions for any Supplier. Supplier Users can perform these actions for their Supplier only.

Merged into development


Increase screen brightness if it's too dark [4-8h]

@sladomic See https://github.com/literacyapp-org/literacyapp-ui/blob/master/app/src/main/AndroidManifest.xml#L6 and https://github.com/literacyapp-org/literacyapp-ui/blob/master/app/src/main/java/org/literacyapp/ui/UiBroadcastReceiver.java#L40


Search endpoints vary in case sensitivity and substring/fullstring requirements

It'd be nice if these were standard across all search endpoints. Here're some examples:
Divisions:

Doesn't work: http://api.opencivicdata.org/divisions/?name=United
Doesn't work: http://api.opencivicdata.org/divisions/?name=united states
Works: http://api.opencivicdata.org/divisions/?name=United States

Jurisdictions:

Works: http://api.opencivicdata.org/jurisdictions/?name=Rhode
Works: http://api.opencivicdata.org/jurisdictions/?name=rhode island
Works: http://api.opencivicdata.org/jurisdictions/?name=Rhode Island

Organizations:

Doesn't work: http://api.opencivicdata.org/organizations/?name=Alabama
Doesn't work: http://api.opencivicdata.org/organizations/?name=alabama senate
Works: http://api.opencivicdata.org/organizations/?name=Alabama Senate

Related #24


Decorators for Vue stories

Hi, I wasn't able to make work decorators when using Vue Stories and the documentation only reference an react example.
Are those supported?

WIP now.
https://github.com/storybooks/storybook/pull/1595

close due to released v3.2.8
https://github.com/storybooks/storybook/releases/tag/v3.2.8

@kazupon I can't find any documentation for how to actually use decorators with Vue...

@smiller171, for decorators with Vue, try:
// .storybook/stories/index.js

import YourButton from 'path/to/YourButton.vue'

function Reded() {
  return {
    template: '
<story/>
',
  }
}

storiesOf('YourButton', module)
  .addDecorator(Reded)
  .add('default form', () => ({
    components: {YourButton },
    template:   '<YourButton  />',
  }))

This should be added to the documentation. It was actually an effort to find this here.

This should be added to the documentation. It was actually an effort to find this here.
For anyone looking for a solution similar to the one shown in the docs, I solved with:
import { addDecorator } from '@storybook/vue';

// Decorator to center-align all stories
addDecorator(() => ({
  template: '
<story/>
',
}));

@adi-zz This is good to add a decorator in my story but what about for pre-existing decorators in scss files.
For example, in Vue.js I have @import "~theme/colors.scss";, which returns me the error: Module parse failed: Unexpected character '@'


Update README_HINDI.md

Title
Description of what's changing
...
What else might be impacted?
...
Which issue does this PR relate to?
...
Checklist
[ ] Tests are written and maintain or improve code coverage
[ ] I've tested this in my application using yarn link (if applicable)
[ ] You consent to and are confident this change can be released with no regression

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


chore(nix): update sources to the latest

Updated Cargo to 1.59.0.
The nightly channel is now at 22-12-2021.


ITMS-90809: Deprecated API Usage - New apps that use UIWebView are no longer accepted.

Hi,
Am facing this issue when i upload to appStoreConnect.
Please help me to resolve this.
Thanks.

Please help me on this above issue.

Somehow the change in
https://github.com/clockin/react-native-login-twitter/blob/master/react-native-login-twitter.podspec
#18
is not getting reflected at npm repo so you have to manually change that into TwitterKit5


Stop doing style="overflow: hidden/auto" on the body tag

Setting overflow: auto on the tag (usually the <body> tag) when the drawer is closed has the unfortunate effect of interfering with an overflow style set by stylesheet.
Some responsive sites prefer their <body> tag to be overflow: hidden always so that some controls remain at the top or bottom of the screen while the main content element gets an overflow: auto so it gets internal scrollbars instead of a viewport-wide scrollbar.
In this PR, we simply use CSS to set overflow: hidden; on the .drawer-open element instead.

I'm sorry for being late. Thank you for your PR!
I think that !important declaration is necessary for backward compatibility and CSS specificity. What do you think?

Hi @blivesta,

I think that !important declaration is necessary for backward compatibility and CSS specificity.

Makes sense, the code is no longer setting the style directly on the element.
I don't have the checkout where I created this PR anymore, so feel free to change the declaration to:
.drawer-open {
   overflow: hidden !important;
 }

Thanks:beer:


[CHORE] Implement new endpoints + extend player class

Please describe changes
Accident happened (accidentally merged).... so here's the new PR
[BREAKING] grouping into .skyblock for sb endpoints
Help me add TS typings
Description

[x] I've added new features. (methods or parameters)
[x] I've added jsdoc and typings.
[x] I've fixed bug. (optional you can mention a issue if there is one)
[ ] I've corrected the spelling in README, documentation, etc.
[x] I've tested my code. (npm run test)

wtf

oh the filename is incorrectly cased lul

should _tierInfo start with underscore? (AchievementTier.js)

Well it's supposed to be "private" or like an undocumented thing, because I'd much rather people use getTier() instead of _tierInfo... but feel free to change it.
The other reason is _tierInfo doesn't parse anything at all ... it just sorts the tiers

what is it?

what is it?

uhh yeah idk how this looks in intellisense, but I extended VanityCompanions from VanityPets, therefore I have to remove this.pets for companions and instead add this.companions

@StavZ mind doing the typings

it's been a while since i worked on this library @Kathund .... give me a few days and I'll be able to update you on the situation as I'm a bit busy with other things rn.

it's been a while since i worked on this library @Kathund .... give me a few days and I'll be able to update you on the situation as I'm a bit busy with other things rn.

Keep me updated! Im also using the code from this to add woolwars

Taken over by #508