Sphinx documentation

Summary
Do we want to develop Sphinx-based documentation?

Additional Detail
We can build our documentation on a ReadTheDocs site, but I'm not sure if we want to do that in this repository or in a new repo that wasn't created for a demonstration.

Next Steps

Copy documentation structure from an existing library (e.g., tedana, NiMARE, or phys2bids).
Adapt documentation to fit AROMA.
Set up RTD site.

You might want to have some barebones installation of sphinx here, so that the developer API can be generated from the docstrings easily and do not spend too much time with finicky RTD installations (e.g., cloning this repo for the docstrings from the tutorial's repo build).

That's a good idea. If we can generate part of the documentation with the docstrings that would be great. I will have a look at how you deal with this on fMRIPrep for example.

With sphinx + autodoc (which is an extension distributed with the sphinx package itself) it should be fairly easy. We use sphinx-napoleon to allow numpy-style docstrings easily.

I like numpy-style docstrings and think we should have those here too.


修复当provider没有设置version时调用服务报错

This PR has expired, and after verification, the reversion field is still missing, so it is closed first.


Fix: Dialog layout shift when using svelte transitions

This PR fixes an issue where the layout would shift due to the scrollbar being re-added before the outro animation/transition was complete.
It does not address/attempt to address the issue for those not using forceVisible, as this will require extra effort and thought into how we're handling display: none depending on open.
What changed?
Previously, regardless of forceVisible, we were removing the scroll as soon as open = true, and adding it back as soon as open = false.
Now, we still remove it as soon as open = true, however, for those using forceVisible, since the content is conditionally rendered based on the value of open, we're unsubbing from the scroll removal in the destroy of the content, which is called after all transitions/animations have completed.

GENIUS


Toggle fullscreen

Hi Brain I have edited to button to make it look decent and good UI design and I have changed the Boolean parameter to make the toggle works

this is the issue  : https://github.com/BCStudentSoftwareDevTeam/celts/issues/1122

We reviewed this pull request, and it looks great. They did a good job, making it work as well as it should be. Good job guys.

We checked the website after the implemented fixes, and the issues were resolved. We also checked the code, and everything seemed fine. However, one small change we suggest is changing variable types from 'var' to 'let' to stick to modern JavaScript conventions and avoid potential errors.


allowing the passing of scope into the ngAudio load and play methods.

Adding an on element destroy function to the ngAudioHover directive. The on element destroyed functions in the directives are unnecessary, but I just would rather be safe.
This change is backwards compatible, but users of the ngAudio load and play functions who do not pass in a scope will still leak. They either have to pass in a scope or at some point call the destroy method on the audio object they created.
Probably should update the docs to reflect this change in API.

:100: Approved @lbyers Could you create a issue for updating the docs?


Music in Zero Wing Rhapsody SWF desyncs with animation

Only known copy of the SWF left online is here: http://www.antra.dk/0_wing_rhapsody.swf
The music noticeably desyncs with the animation when compared with Adobe Flash, by around 5-7 seconds at the end of the animation. There are various "pauses" in the music, which probably is another symptom of whatever the root problem is.
Firefox 42, latest Shumway, Windows 10 x64.

Also just noticed the logo in the bottom-right corner does not render properly when moused-over compared to Flash.


Minor changes that I forgot to push to my last PR #1283

Very minor changes that I forgot to push to my last PR, #1283. One of the code review comments was to rename toNameSchema to toPathSchema, which I thought was a good idea. The other change was to add lodash.get to the package.json.
Reasons for making this change
I realized I forgot to push these review changes before last PR was merged.
Checklist

[x] I'm adding or updating code

[x] I've added and/or updated tests

Yeah, good point, sorry I forgot about those -- thanks for catching.


feat: stopped notification handler

Description:
@benlesh
This PR is a WIP representation of what I would like to see implemented as a replacement for the canReportError shenanigans - which I would delete as part of this being merged.
The fundamental problem is that errors reported to stopped subscribers are swallowed and no mechanism is offered to RxJS developers to let them alter this behaviour. ATM, there is one place - in the try/catch that surrounds the subscribe within Observable - at which the chain of subscribers is traversed to determine whether or not any are stopped/closed and whether the error can be reported. This is pretty crappy - I feel comfortable saying this, because I wrote the code. 😅
I would prefer to ditch the traversal entirely and, instead, offer a configuration point that can be used to register a handler for notifications sent to stopped observers. This would be more general than the traversal that currently happens - I can see it being useful in the DevTools - and would certainly be simpler. IMO, this shouldn't really impact anyone. ATM, in v6, errors that cannot be reported are written to the console; it's only in v7 that an error is actually thrown. Also, to my knowledge, this error swallowing has only ever affected me - when investigating two bugs in the RxJS core.
What are your thoughts on this? AFAICT, it the wiring up of the stopped-notification handler only needs to happen in Subscriber#next/error/complete. If you want me to go ahead with this, I can add some tests and can remove canReportError, etc.
IMO, this doesn't have to be perfect; it just has to be better than the traversal - and that shouldn't be too hard. 😅
Related issue (if exists): None

Also needs a rebase it seems.

Addressed comments.


Not updating

I use it to track 1 stock.  Shows sleep blue moon.  Price is not current price.  I don' t believe it is working anymore.  Hasn't been working right for a few days.

Same for me. Removing and re-adding the plugin fixed the issue for me.

Fixed in v1.1.3


StringLiteral.camelcase does not handle (lower: true parameter

module A
  macro define_method(decl)
    def {{decl.var.camelcase(lower: true)}}
      puts "does not work!"
    end
  end
end

class Z
  include A
  define_method test_column : String
end

Z.new.testColumn

Result:
There was a problem expanding macro 'field_column'

Code in test.cr:11:3

 11 | field_column test_column : String
      ^
Called macro defined in test.cr:2:3

 2 | macro field_column(decl)

Which expanded to:

 > 1 | def TestColumn
                     ^
Error: unexpected token: NEWLINE

Expected: handles lowercase and defines testColumn method

Duplicate of https://github.com/crystal-lang/crystal/issues/8292?

yep, sorry for double post

Reduced:
{{"foo_bar".camelcase(lower: true)}} # => "FooBar"

Do we want to support the same UX?  Currently named_args aren't included in the macro method interpret method.  It would be doable but might take a bit of work.  If not the syntax would just be like {{"foo_bar".camelcase(true)}}.
@straight-shoota @asterite thoughts?

It's something nice to have, but I know it's a bit tedious to implement.


Flash screen in case Apply master password

Description the bug
Version test: v1.0.1(137)
Steps:

Upgrade version and create master password successfully
Click on Finish button
Observe the Apply master password displayed

Actual: Flash screen
https://user-images.githubusercontent.com/117999489/236179010-f3a2722f-3dd1-466c-aa10-bfa86735caa8.mp4
Expect: Navigate to Apply master password

Version test: v1.0.1(142)
Devices test: IP 11
Please re-check issue

Version test: v1.0.2(150)
Devices test: IP 11
Validation passed.


add test about creating VM from instanceType

📝 Description

Add a brief description

🎥 Demo

Please add a video or an image of the behavior/changes

I turns out the CI has no boot source


ci: add workflow identification

Confirmed working: https://app.redash.io/prismaio/queries/469381?p_ci=["false"%2C"true"]&p_information=prisma test.yml


AutoReversingMigration sealed Error

This is probably a Fluentmigrator question, but maybe someone can help. When doing my migrations for a test Serenity app, I try to override the Down() method, but I get an error since it is sealed. Any suggestions how to go about doping tables before adding?
 public abstract class AutoReversingMigration : MigrationBase
    {
        public sealed override void Down()
        {
        }
    ...

I tried inheriting from Migration to solve the problem, but I get an exception saying my table already exists. This is the code...
using FluentMigrator;
using FluentMigrator.Runner.Extensions;

namespace relosys.Migrations.DefaultDB
{
    [Migration(100)]
    public class DefaultDB_Z100_Update : Migration
    {
        public override void Up()
        {
            //ADDRESS
            this.Create.Table("Address")
            .WithColumn("AddressId").AsInt64().Identity(1, 1).PrimaryKey()
            .WithColumn("AddressTypeId").AsInt64().NotNullable().ForeignKey("FK_Address_AddressTypeId", "AddressType", "AddressTypeId")
            .WithColumn("AddressName").AsString(250).NotNullable()
            .WithColumn("AddressLine1").AsString(250).Nullable()
            .WithColumn("AddressLine2").AsString(250).Nullable()
            .WithColumn("AddressLine3").AsString(250).Nullable()
            .WithColumn("AddressCountryId").AsInt64().Nullable().ForeignKey("FK_Address_AddressCountryId", "Countries", "CountryId");

        }
        public override void Down()
        {
            this.Delete.Table("Address");
        }

    }
}

Use proper versioning


Enable CentOS 8 support

Pull Request (PR) description

This Pull Request (PR) fixes the following issues

I think this can be closed in favor of #594 that was merged


Settings Default option for switching files with unsaved changes not working as intended

Describe the bug
When turning setting 'Default option for switching files with unsaved changes' to 'save', switching files isn't consistent but saving seems to work
Reporter
@diedekerkhof
Category

Explorer
Settings

To Reproduce

Set Default option for switching files with unsaved changes to Save
Edit a file
Try to switch file
See error

Expected behavior
When switching to another file it should save the previous file and switch to the desired file

:tada: This issue has been resolved in version 2.26.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Convert README from "md" to "rst" with same content

This conversion is to allow SYNC with the documentation on docs cardano-rest

Hi @Nazeim, thanks for this. Actually it is technically possible to use .md files in Sphinx docs (with a plugin). So perhaps we can consider enabling that setting?

Hi @Nazeim, thanks for this. Actually it is technically possible to use .md files in Sphinx docs (with a plugin). So perhaps we can consider enabling that setting?

This repository is getting deprecated, and will be archived. Closing this PR.


resolved issue of segment details page shared link not working

Resolved issue of sharable links to segment detail pages not working

@Yagnik56 just had one the comment for something to try, this looks good to me otherwise


ROCm in 6900xt not recognized

Hello. I am trying to run my pytorch model with the ROCm with my 6900xt. I installed the ROCm 4.5 correctly, it works perfectly with tensorflow. So I moved on and downloaded with docker pull rocm/pytorch:latest, but it wont recognize my GPU. The command I am using is sudo docker run -it -v $HOME:/data --privileged --rm --device=/dev/kfd --device=/dev/dri --group-add video rocm/pytorch:latest it gives me the following error:

Hi @EduMio
Thanks for reaching out.
Navi series of cards are not officially supported right now with ROCm 4.5 and so some things do not work definitely. We can not comment/work on this issue until its supported officially.
Please stay tuned for more updates through our documentation. Thank you.

container rocm/pytorch:latest is build with rocm 4.3.1... not 4.5... may be try to rebuild pytorch with rocm 4.5.x

I wish I could, but in the official page (
https://hub.docker.com/r/rocm/pytorch/tags) I did not find a 4.5.x version
of it. I tried with the rocm/pytorch:latest but to no avail. I guess we
just have to wait for the 4.5.x version.
On Sun, Dec 12, 2021 at 11:37 AM Djip007 @.***> wrote:

container rocm/pytorch:latest is build with rocm 4.3.1... not 4.5... may
be try to rebuild pytorch with rocm 4.5.x
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/RadeonOpenCompute/ROCm/issues/1631#issuecomment-991909667,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANH53PUB4224WYD4XN3RXSLUQSXRTANCNFSM5I72CBYA
.

yesterday: rocm4.5.2_ubuntu18.04_py3.8_pytorch_1.10.0
=> pytorch + rocm4.5.2... did'nt test... but good news no?

That is good news for sure, I am going to test that on my VM and see how it
goes. Thank you for sharing the info!
On Fri, Dec 17, 2021 at 4:03 PM Djip007 @.***> wrote:

yesterday: rocm4.5.2_ubuntu18.04_py3.8_pytorch_1.10.0
=> pytorch + rocm4.5.2... did'nt test... but good news no?
—
Reply to this email directly, view it on GitHub
https://github.com/RadeonOpenCompute/ROCm/issues/1631#issuecomment-996965290,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANH53PSRY2K5O7JR35OFYHDUROCORANCNFSM5I72CBYA
.
You are receiving this because you were mentioned.Message ID:
@.***>

yesterday: rocm4.5.2_ubuntu18.04_py3.8_pytorch_1.10.0
=> pytorch + rocm4.5.2... did'nt test... but good news no?

Au cas ou (et pas du tout testé...) je suis tombé la dessus:
https://download.pytorch.org/whl/nightly/rocm4.5.2/torch_nightly.html
ca voudrait dire que il y a plus que les versions qui sont mis sur la page d'accueil de pytorch.. https://pytorch.org/get-started/locally/

Thank you very much! I am going to try it in some weeks and might post some
testing feedbacks in my machine
On Tue, Feb 1, 2022 at 1:14 PM Djip007 @.***> wrote:

Au cas ou (et pas du tout testé...) je suis tombé la dessus:
https://download.pytorch.org/whl/nightly/rocm4.5.2/torch_nightly.html
ca voudrait dire que il y a plus que les versions qui sont mis sur la page
d'accueil de pytorch.. https://pytorch.org/get-started/locally/
—
Reply to this email directly, view it on GitHub
https://github.com/RadeonOpenCompute/ROCm/issues/1631#issuecomment-1027017985,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ANH53PVVNRHKQN2AL5GGPADUZABFRANCNFSM5I72CBYA
.
You are receiving this because you were mentioned.Message ID:
@.***>


issues

cant find developer mode in my extensions where files are uploaded

what browser? @khitishkumar18

Chrome
On Fri, Jan 26, 2024, 11:00 PM ben @.***> wrote:

what browser? @khitishkumar18 https://github.com/khitishkumar18
—
Reply to this email directly, view it on GitHub
https://github.com/31b4/Leetcode-Premium-Bypass/issues/75#issuecomment-1912423338,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A6CTC2H7MJFGIPRLZTQNBC3YQPR3FAVCNFSM6AAAAABCMIU7RSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJSGQZDGMZTHA
.
You are receiving this because you were mentioned.Message ID:
@.***>

@khitishkumar18, learn to use Google, but still, go to this link: https://github.com/31b4/Leetcode-Premium-Bypass/issues/44#issue-2088330037.

It works!
On Sat, Jan 27, 2024, 7:26 AM Gourav @.***> wrote:

@khitishkumar18 https://github.com/khitishkumar18, learn to use Google,
but still, go to this link: #44 (comment)
https://github.com/31b4/Leetcode-Premium-Bypass/issues/44#issue-2088330037
.
—
Reply to this email directly, view it on GitHub
https://github.com/31b4/Leetcode-Premium-Bypass/issues/75#issuecomment-1912910579,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A6CTC2HL4BWTCNZYEQWZSSLYQRNFHAVCNFSM6AAAAABCMIU7RSVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJSHEYTANJXHE
.
You are receiving this because you were mentioned.Message ID:
@.***>


winpr/clipboard: Omit last line ending for gnome-copied-files

Quoting the commit here:
Every uri in the x-special/gnome-copied-files mime type is separated by
a '\n' char.
However, not every line ends with '\n'. The last line MUST not include
the new line character.

Without this commit, nautilus just crashes upon retrieving the content for the x-special/gnome-copied-files mime type.
Although the crash is actually a bug in nautilus, it is still the wrong format for the x-special/gnome-copied-files mime type.

@freerdp-bot can you test please ?

@freerdp-bot test


Support RustFft features

Hi guys,
is it possible to support RustFft included features like avx, sse and neon?

Hey,
yes, that makes sense. I added it in PR. It's released under v0.4.2.
The feature flags are all enabled by default to match rustffts default feature specs

Added in v0.4.2


MVC Dispatcher

Closing this as this is available through Link Generation available as part of 2.2.0-preview3 release: https://github.com/aspnet/Docs/issues/8763#issuecomment-431711462


Documentation bug in "Dynamic queries -> Dynamic and joins"

In /guides/howtos/Dynamic%20queries.md, there’s the following code block:
def filter(params) do
  Post
  # 1. Add named join binding
  |> join([p], assoc(p, :authors), as: :authors)
  |> order_by(^filter_order_by(params["order_by"]))
  |> where(^filter_where(params))
end

However, it seems there’s (currently) no version of Ecto.Query.join that permits the qual argument to be omitted, so as written that code block produces the following error:
** (ArgumentError) invalid binding passed to Ecto.Query.join/5, should be list of variables, got: assoc(p, :authors)
    (ecto 3.4.4) lib/ecto/query.ex:1037: Ecto.Query."MACRO-join"/6
    (ecto 3.4.4) expanding macro: Ecto.Query.join/4
    [...]

I believe the code block should instead be:
def filter(params) do
  Post
  # 1. Add named join binding
  |> join(:inner, [p], assoc(p, :authors), as: :authors)
  |> order_by(^filter_order_by(params["order_by"]))
  |> where(^filter_where(params))
end

Note the addition of :inner in the join/5 invokation.
Also, the documentation for Ecto.Query.join mentions that :inner is the default, but I don’t think it makes sense to talk about a default if the qual argument is mandatory.
I could take a stab at a PR if you agree that this could be improved.

Agreed! A PR will be very appreciated!

Sorry about the delay, thanks for fixing it 👍


Java runtime Environnement error undefined

Hello,
I used Joal since months and I love it.
Now I tried to install Joal Desktop on a new computer and the application refuses to start, because of java. On Windows 10.
Java is up-to-date. I have the same problem on Mac (Big Sur and older one)
What could I do ?
Best

same here after reinstall

same here
Did someone find the solution ?

Hello there, thanks for the report and the troubleshoot.
I think i know how to fix that, i'll take a look at it asap :)

A quick feedback:
I'm on it, but i need to transform all of the old travis CI build system to Gitlab Actions, i've spent 3 hours transforming the joal-core one ^^.
Next to come : joal-ui & joal-desktop. Should be Ok in the next few day (maybe next week)

Ok, it's now done, you just need to update your client and it should work as expected.
(if you are on windows juste restart JoalDesktop to automatically download the new version 2.0.7)


I have added a bubble sort code for this file.

I have added a .java file for bubble sort algorithm. Kindly accept and merge my PR

Hello there, this contribution is showing excluded from Hacktoberfest. Can you please see through it.


Remove test warnings

When running the test suite you get a console full of warnings. It's annoying. They should either be suppressed, or considered part of the test. This PR does that

Awesome!
I do wonder if we could do something like:

test.noWarn = function( descr, t ) {
    onWarn( () => {} ); // suppress
    this( descr, t );
}

// then use it like
test.noWarn( 'Double teardown is handled gracefully (#1218)', t => {
 	...
}

Ah, nice idea. Or maybe
t.suppressWarnings();
t.onWarn( msg => ... );

That way we could still import test directly from qunit (otherwise we'd have to be careful about where the augmentation took place), and we're already adding to the t object (htmlEqual)

Ah, nice idea. Or maybe

t.suppressWarnings();
t.onWarn( msg => ... );

Yep, even better. :D


Add JSON_DECODE_NUMBER_AS_STRING flag

This patch adds a flag to decode all numbers as strings to allow for JSON containing
numbers that overflow either int or real and/or in cases where a higher degree of
precision is required and string to number conversion can be done outside Jansson.

Coverage increased (+0.07%) to 96.106% when pulling af86b9fb9040001a3713faf210b434d99b05dffb on montegoulding:parse_numbers_as_strings into aed855e6920923898b94a1b922fbace27a34ddf2 on akheron:master.

Hi and thanks for the PR!
Are you sure this is the right approach? I'm just thinking about how the user is able to know which strings are actually numbers.

Hi @akheron.
We are dealing with a JSON files that may have very large numbers and we are hitting both overflow and precision issues. We are also using the values in a system where everything is a string until it must be treated as a number so we actually have to convert back into string anyway. It may be that our use case is too much an edge case for you though. Probably it would be nicer to have all numbers be a reference to the string and then an api to get as type so you know it's a number... but that would be a much bigger patch ;-)
I also thought about adding  JSON_OVERFLOW_NUMBER_AS_STRING but all numbers as strings is better for our situation.

There's an old issue #10 about this. Especially this comment https://github.com/akheron/jansson/issues/10#issuecomment-257018475 is interesting. The author has added a flag to strings to denote whether the string contains a number.

Aha... a PR for that would have saved me some time ;-)


GenericRecord not iterable

The GenericRecord class allows access to values by key, but it's not iterable, so you need to know the keys in advance. The Java implementation is the same.
But this seems like something you'd often want! Is there something I'm missing?

tldr; You can generally get around this limitation by iterating over the schema's field names and acquiring values from the generic record using those names:
var schema = (RecordSchema)Schema.Parse("...");
var record = new GenericRecord(schema);

foreach (var field in schema.Fields)
{
    if (record.TryGetValue(field.Name, out object value))
    {
        // Do something with the value
    }
}

I've wanted this in a few scenarios as well. Since GenericRecord uses an Dictionary<string, object> (contents) under the hood, it should be easy to implement. We can simply return that dictionary's enumerator.

Indicate that we implement IEnumerable<KeyValuePair<string, object>> and IEnumerable

    public class GenericRecord : IEnumerable<KeyValuePair<string, object>>, IEnumerable
    {

Implement the two methods

        public IEnumerator<KeyValuePair<string, object>> GetEnumerator()
        {
            return contents.GetEnumerator();
        }

        IEnumerator IEnumerable.GetEnumerator()
        {
            return contents.GetEnumerator();
        }

However, after trying to implement this myself, I noticed some unexpected behavior. When you create a new GenericRecord, it doesn't actually add anything to the contents dictionary until you call Add. This means that you won't see any of the fields from the schema until you've actually set/added them.
{
  "type": "record",
  "name": "myRecord",
  "fields": [{
    "name": "f1",
    "type": "string"
  }]
}

var record = new GenericRecord(myRecordSchema);
// record.contents is empty (record.ToList().Length == 0)

record.Add("f1", "my field value");
// record.contents has one value (record.ToList().Length == 1)

IMHO, this seems a little unintuitive. Maybe that's why it was left out initially. Maybe I'm taking too simplistic of an approach to solve the problem though. I guess we could iterate over the schema's field names inside the GetEnumerator method (just thought of that while typing up this post). I may think on this a bit more.
The approach used in the tldr; section has covered my use cases so far.


Topology/bindings not rebuilt after reconnection

Hi there
I use the following code to define a topology and to connect to my RabbitMQ server:
var amqp = require("wascally");
var amqpQueueName = 'MY_QUEU';

var amqpConfig = {
  connection: {
	user: 'USER', pass: 'PASS', server: 'HOST', port: 5673, vhost: '/',
	heartbeat : 10, timeout: 5000,
	caPath: './private/CA.cert.pem,./private/ICA.cert.pem',
	certPath: './private/client.cert.pem',
	keyPath: './private/client.key.pem',
	replyQueue: false
  },
  queues: [ { name: amqpQueueName, subscribe: true, autoDelete: true, durable: true } ],
  exchanges: [
	{ name: 'MY_EXCHANGE', type: "direct", autoDelete: false, durable: false }
  ],
  bindings: [ { exchange: 'MY_EXCHANGE', target: amqpQueueName, keys: ['MY_ROUTING_KEY'] } ]
};

var setUpHandler = function(){
  var handler = amqp.handle( '*', function( message ) {
	try {
	  console.log(message);
        message.ack();
	} catch( err ) {
	  message.nack();
	}
  } );
};

amqp.configure(amqpConfig).done(setUpHandler);

The code works as expected.
If I close the connection in RabbitMQ's management interface, the connection, all subscriptions and bindings are rebuilt and messaging works as expected. This is the corresponding debug output.
Mon, 18 Apr 2016 14:26:19 GMT wascally.amqp-connection info Attempting connection to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:26:19 GMT wascally.topology info Declaring direct exchange 'MY_EXCHANGE' on connection 'default' with the options: {"autoDelete":false,"durable":false}
Mon, 18 Apr 2016 14:26:20 GMT wascally.amqp-connection info Connected to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:26:21 GMT wascally.topology info Declaring queue 'MY_QUEUE' on connection 'default' with the options: {"subscribe":true,"autoDelete":true,"durable":true}
Mon, 18 Apr 2016 14:26:21 GMT wascally.amqp-queue info Starting subscription MY_QUEUE - default
Mon, 18 Apr 2016 14:26:21 GMT wascally.topology info Binding 'MY_QUEUE' to 'MY_EXCHANGE' on 'default' with keys: ["MY_ROUTING_KEY"]

=================> close connection

Mon, 18 Apr 2016 14:27:04 GMT wascally.topology info Declaring direct exchange 'MY_EXCHANGE' on connection 'default' with the options: {"autoDelete":false,"durable":false}
Mon, 18 Apr 2016 14:27:04 GMT wascally.amqp-queue info Unsubscribing from queue MY_QUEUE with tag amq.ctag-yAKJVop08Hl-1iQzj-4jfQ
Mon, 18 Apr 2016 14:27:04 GMT wascally.topology info Declaring queue 'MY_QUEUE' on connection 'default' with the options: {"subscribe":true,"autoDelete":true,"durable":true}
Mon, 18 Apr 2016 14:27:04 GMT wascally.iomonad debug Resource acquisition failed with 'IllegalOperationError: Connection closed (Error: Connection closed: 320 (CONNECTION-FORCED) with message "CONNECTION_FORCED - Closed via management plugin")'
Mon, 18 Apr 2016 14:27:04 GMT wascally.iomonad debug Resource acquisition failed with 'IllegalOperationError: Connection closed (Error: Connection closed: 320 (CONNECTION-FORCED) with message "CONNECTION_FORCED - Closed via management plugin")'
Mon, 18 Apr 2016 14:27:04 GMT wascally.iomonad debug Resource acquisition failed with 'IllegalOperationError: Channel closed'
Mon, 18 Apr 2016 14:27:04 GMT wascally.amqp-connection info Attempting connection to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:27:05 GMT wascally.amqp-connection info Connected to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:27:05 GMT wascally.topology info Reconnection to 'default' established - rebuilding topology
Mon, 18 Apr 2016 14:27:05 GMT wascally.topology info Declaring direct exchange 'MY_EXCHANGE' on connection 'default' with the options: {"autoDelete":false,"durable":false}
Mon, 18 Apr 2016 14:27:05 GMT wascally.amqp-queue info Starting subscription MY_QUEUE - default
Mon, 18 Apr 2016 14:27:05 GMT wascally.topology info Binding 'MY_QUEUE' to 'MY_EXCHANGE' on 'default' with keys: ["MY_ROUTING_KEY"]
Mon, 18 Apr 2016 14:27:05 GMT wascally.topology info Topology rebuilt for connection 'default'

The problem occurs as soon as the connection to the RabbitMQ server is interrupted (e.g. by shutting down the machine's network interface). In such a situation, the connection and subscriptions are coming back but the bindings are not reestablished.
This is the corresponding debug output.
Mon, 18 Apr 2016 14:01:49 GMT wascally.amqp-connection info Attempting connection to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:01:49 GMT wascally.topology info Declaring direct exchange 'MY_EXCHANGE' on connection 'default' with the options: {"autoDelete":false,"durable":false}
Mon, 18 Apr 2016 14:01:50 GMT wascally.amqp-connection info Connected to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:02:05 GMT wascally.topology info Declaring queue 'MY_QUEUE' on connection 'default' with the options: {"subscribe":true,"autoDelete":true,"durable":true}
Mon, 18 Apr 2016 14:02:06 GMT wascally.amqp-queue info Starting subscription MY_QUEUE - default
Mon, 18 Apr 2016 14:02:06 GMT wascally.topology info Binding 'MY_QUEUE' to 'MY_EXCHANGE' on 'default' with keys: ["MY_ROUTING_KEY"]

=================> interrupt connection

Mon, 18 Apr 2016 14:04:10 GMT wascally.topology info Declaring direct exchange 'MY_EXCHANGE' on connection 'default' with the options: {"autoDelete":false,"durable":false}
Mon, 18 Apr 2016 14:04:10 GMT wascally.amqp-queue info Unsubscribing from queue MY_QUEUE with tag amq.ctag-7RBTzn0NGN7qQGlXYQk_4Q
Mon, 18 Apr 2016 14:04:10 GMT wascally.topology info Declaring queue 'MY_QUEUE' on connection 'default' with the options: {"subscribe":true,"autoDelete":true,"durable":true}
Mon, 18 Apr 2016 14:04:10 GMT wascally.amqp-connection info Attempting connection to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:04:15 GMT wascally.amqp-connection info Failed to connect to default (amqps://USER:PASS@HOST:5673//?heartbeat=10) with [Error: connect ETIMEDOUT]
Mon, 18 Apr 2016 14:04:15 GMT wascally.amqp-connection info Attempting connection to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:04:15 GMT wascally.amqp-connection info Cannot connect to default - all endpoints failed
Mon, 18 Apr 2016 14:04:15 GMT wascally.iomonad debug Resource acquisition failed with 'No endpoints could be reached'
Mon, 18 Apr 2016 14:04:15 GMT wascally.amqp-connection info Attempting connection to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:04:20 GMT wascally.amqp-connection info Failed to connect to default (amqps://USER:PASS@HOST:5673//?heartbeat=10) with [Error: connect ETIMEDOUT]
Mon, 18 Apr 2016 14:04:20 GMT wascally.amqp-connection info Attempting connection to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:04:20 GMT wascally.amqp-connection info Cannot connect to default - all endpoints failed
Mon, 18 Apr 2016 14:04:20 GMT wascally.iomonad debug Resource acquisition failed with 'No endpoints could be reached'
Mon, 18 Apr 2016 14:04:20 GMT wascally.amqp-connection info Attempting connection to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:04:25 GMT wascally.amqp-connection info Failed to connect to default (amqps://USER:PASS@HOST:5673//?heartbeat=10) with [Error: connect ETIMEDOUT]
Mon, 18 Apr 2016 14:04:25 GMT wascally.amqp-connection info Attempting connection to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:04:25 GMT wascally.amqp-connection info Cannot connect to default - all endpoints failed
Mon, 18 Apr 2016 14:04:25 GMT wascally.iomonad debug Resource acquisition failed with 'No endpoints could be reached'
Mon, 18 Apr 2016 14:04:26 GMT wascally.amqp-connection info Attempting connection to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)

=================> establish connection

Mon, 18 Apr 2016 14:04:30 GMT wascally.amqp-connection info Connected to default (amqps://USER:PASS@HOST:5673//?heartbeat=10)
Mon, 18 Apr 2016 14:04:31 GMT wascally.amqp-queue info Starting subscription MY_QUEUE - default

Any hints here?

@steirico have a look at rabbot, wascally's successor. It resolves a lot of the connectivity edge cases that occasionally show up in wascally and has a compatible API with a lot more features. Let me know in issues if you're seeing the same thing in the rabbot repository.


version number no longer complies with ITC

if we branch from the current Head and submit to iTunes connect, it fails because of the versioning numbers being used in the pod.  Details for this issue can be found here:
https://github.com/CocoaPods/CocoaPods/issues/4421#issuecomment-150372394
ITC is now enforcing version numbers of the format x.y.z
In my own app I was able to skirt this issue by not pulling from Head (pod 'SwiftDate', :head
), whatever version number shows up in the current release still conforms to ITC while what is showing up from head does not.

Fixed since 2.0.0.
Thanks


HasTappableComponents with FixedResolutionViewport appears register taps in the wrong place

Current bug behaviour
Using HasTappableComponents with TapCallbacks gives strange results in a FixedResolutionViewport game. The router seems to render my component centered and then the tap seems to register on the place where it would be if my component wasn't centered. The image below shows where the tap registers with a red arrow.

Expected behaviour
I expect the tap to register on the red square.
Steps to reproduce
import 'package:flame/components.dart';
import 'package:flame/experimental.dart';
import 'package:flame/game.dart';
import 'package:flutter/rendering.dart';

class TestGame extends FlameGame with HasTappableComponents {
  @override
  Future<void>? onLoad() async {
    camera.viewport = FixedResolutionViewport(
      Vector2(540, 960),
    );
    await add(
      RouterComponent(
        initialRoute: 'home',
        routes: {
          'home': Route(SceneComponent.new),
        },
      ),
    );
    return super.onLoad();
  }
}

class SceneComponent extends PositionComponent with HasGameRef<TestGame> {
  @override
  Future<void>? onLoad() async {
    size = gameRef.size;
    await add(
      TestComponent(
        position: Vector2(
          size.x * 0.5,
          size.y * 0.5,
        ),
        size: Vector2(100, 100),
        anchor: Anchor.center,
      ),
    );
    return super.onLoad();
  }

  @override
  void render(Canvas canvas) {
    canvas.drawRect(size.toRect(), Paint()..color = Color.fromARGB(255, 0, 255, 119));
    return super.render(canvas);
  }
}

class TestComponent extends PositionComponent with TapCallbacks {
  TestComponent({
    super.position,
    super.size,
    super.scale,
    super.angle,
    super.nativeAngle,
    super.anchor,
    super.children,
    super.priority,
  });

  @override
  void onTapDown(TapDownEvent event) {
    print('tap');
    super.onTapDown(event);
  }

  @override
  void render(Canvas canvas) {
    canvas.drawRect(
      size.toRect(),
      Paint()..color = Color.fromARGB(255, 255, 0, 0),
    );
  }
}

More information
flutter: 3.3.3
flame: ^1.4.0

@duck-dev-go you beat me to it. I'm experiencing this as well. I have a FixedResolutionViewport of 800x360 and the tap is registering above the component, but not directly on the component.

Have you tried using the CameraComponent instead of the camera on FlameGame?

No sir. I'll give that a shot.
On Nov 2, 2022, 3:35 AM -0600, Lukas Klingsbo @.***>, wrote:

Have you tried using the CameraComponent instead of the camera on FlameGame?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>

yep, the same issue

No sir. I'll give that a shot.
…
On Nov 2, 2022, 3:35 AM -0600, Lukas Klingsbo @.>, wrote: Have you tried using the CameraComponent instead of the camera on FlameGame? — Reply to this email directly, view it on GitHub, or unsubscribe.

No sir. I'll give that a shot.
…
On Nov 2, 2022, 3:35 AM -0600, Lukas Klingsbo @.>, wrote: Have you tried using the CameraComponent instead of the camera on FlameGame? — Reply to this email directly, view it on GitHub, or unsubscribe.

No sir. I'll give that a shot.
…
On Nov 2, 2022, 3:35 AM -0600, Lukas Klingsbo @.>, wrote: Have you tried using the CameraComponent instead of the camera on FlameGame? — Reply to this email directly, view it on GitHub, or unsubscribe.

I did and it works with the CameraComponent. It's quite the overhaul tho :/

I did and it works with the CameraComponent. It's quite the overhaul tho :/

At least you will be future proof now since the CameraComponent is what will replace the built-in Camera class in FlameGame. There are also a lot of cool things you can do with the CameraComponent that you can't do with the normal Camera. :)

Tbh, I too find the new camera APIs a little complex compared to existing ones. I hope there will be a migration guide for this going forward.

We should be able to have a game class that does most of it for you, like it is now with the old camera.
And if you have any specific pain points we're of course all ears!

I think some basic examples in the docs would really help.
On Nov 16, 2022 at 9:45 AM -0700, Lukas Klingsbo @.***>, wrote:

Tbh, I too find the new camera APIs a little complex compared to existing ones. I hope there will be a migration guide for this going forward.
We should be able to have a game class that does most of it for you, like it is now with the old camera.
And if you have any specific pain points we're of course all ears!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>


remove nvidia virtual kernel driver

In our new Nvidia virtualization system, we don't need to support Nvidia kernel driver virtualization. Remove that to clean the system.


Move KBM engine into separate process

Summary of the Pull Request
What is this about:
What is include in the PR:

Move remapping logic from the module interface into a separate process
Move corresponding tests into a separate project
Dedicated logger folder for the new process
Name of the new executable: PowerToys.KeyboardManager.exe
Start KBM engine from the runner and set real-time priority for the process
Exit the process if parent process(runner) exited
New c++ file watcher. Implementation is based on WIN32 API

TODO:

Add telemetry
Do not allow multiple instances of PowerToys.KeyboardManager.exe
Apply new log files structure to the project
When Remap key window or Remap shortcut window is opened remapings are suspended
Sync settings reading and remapping

How does someone test / validate:

Run PowerToys
Try to edit key/shortcut remapping. Take into account, that Press a key windows does not work because low-level hook is deleted from the KBM module interface
Verify that remapping are applied
Check process priority. When running elevated priority should be real-time and when running as a user it should be high
Try to restart PowerToys as administrator
Disable/enable KBM

Future considerations:

Rename projects

Quality Checklist

[X] Linked issue: #10127
[ ] Communication: I've discussed this with core contributors in the issue.
[ ] Tests: Added/updated and all pass
[ ] Installer: Added/updated and all pass
[ ] Localization: All end user facing strings can be localized
[ ] Docs: Added/ updated
[ ] Binaries: Any new files are added to WXS / YML

[ ] No new binaries
[ ] YML for signing for new binaries
[ ] WXS for installer for new binaries

Contributor License Agreement (CLA)
A CLA must be signed. If not, go over here and sign the CLA.

Note: It is theoretically possible that an instance of KBM will not start on 'restart as admin'


Adding a Solid (primary) button to Cardigan

This is the first of the new buttons referenced in #5230.
There are separate components to serve button and a elements – ButtonSolid and ButtonSolidLink. These share styles from styled components. The ButtonSolidLink variant can accept a link as a string (http://blah.com) or as a NextLink object ({as: x, href: y}).
I thought it made sense to get eyes on this in Cardigan before I attempted to swap out all occurrences of the primary button in the apps.

All instances of <Button type="primary" /> and other ad-hoc btn btn--primary implementations have been replaced with this ButonSolid.
There was one instance where the component itself couldn't quite handle the UI (a yellow number that appears alongside the button text in the SearchFiltersMobile component), so I exported the styled component that ButtonSolid uses and used that instead. This felt like a reasonable compromise to me – do you agree?


SwiftUI doesn't belong in this project.

I was making a chat app, and wanted a inline emoji picker, and found this one. My project was in SwiftUI, not UIKit. I look in the README, to find absolutely nothing about how to add it using SwiftUI. But it was just dangling in my face the possiblity, with the checkmark "SwiftUI support."
I finally look in the source code to find a reference, but has UIKit in the source, meaning multiplatform apps (macOS + iOS), can't import the project because of how UIKit doesn't exist in macOS.
I find #67, and a request to give examples, but none at all, but still "SwiftUI support." as a checkbox. I don't understand why you would check this if the code for this doesn't make sense, and there is no documentation about this feature.
I just don't want people thinking that this project has SwiftUI, to continue to find nothing at all about how this project works. (like how I did)
Thanks!

Maybe add something like "partial SwiftUI support" as a checkbox, or nothing at all as a checkbox, but the fact that SwiftUI is even a point of this project shouldn't be here as nobody really knows how SwiftUI in this project actually works.

EmojiView itself supports rendering within SwiftUI, using EmojiView_SwiftUI().
Additionally, this project is specifically tailored for the iOS platform and does not provide support for macOS or any other platforms, as stated in the README.

However, I believe there could be a simpler approach integrated with SwiftUI's TextEditor/TextField, perhaps by referring to the example provided by https://github.com/paescebu/CustomKeyboardKit/tree/master/Sources/CustomKeyboardKit/ViewExtensions#L26.
Maybe we can add a ViewModifier to achieve a similar effect, like this:
TextEditor(text: $text)
    .emojiKeyboardView()

Thank you for responding,
I can understand that this project isn’t directly supported with macOS, but I don’t think people wanting a approach even on iOS needs to go looking deep into issues to find something that was already advertised on the README.
Your approach with Textfield looks interesting, and I could probably help. Really, I’m just requesting documentation, and it to be put in the README so people, that are looking for a soulution get one and not a issue like this one to find the real documentation for a feature advertised
Thanks!

Merge #79.


Only time and date will load when this module is active.

As the title says, only my time and date loads when this module is active. I have no idea what's causing this. Is it possible you'd be able to look over this? Everything is on "loading" or "fetching" except time and date. I love the wi-fi connection button! Thanks.

Did it get fixed?

Yes. I used @pjkoeleman 's settings and it magically worked. I have no idea how though. Thank you for this module!

Something must have been wrong with your config earlier. You're most welcome! I'm glad this got resolved :)


series_year should exist similar to movies_year

As already discussed, a series_year field should exist and be populated if available, similar to movies_year.
The main reason is that depending on the task, plugin (set/if/sort) you might need this information in a general available field. So that file rename, search, if, sort plugins/tasks can use it. Atm you need specific knowledge of possible field names to use/test, to extract it.

the problem with that is that series plugin can only set that field if it's a part of the series name, which it usually isn't.

I'm really confused on why there seems to-be a distinct difference how this is handled. I mean my file/folder names include the year for series and movies. The meta lookups also provide a year for series, movies. I let flexget store series, movies in the db using the 'title + year' format.
So from my point as user, i see no reason why i can use movies_year, but not series_year?
Should the series plugin not utilize the year fields of the different input plugins if provided, instead of relying on title parsing, splitting?
If i do this i would expect a valid series_year field.
configure_series:
  from:
    thetvdb_list:
      username: <username>
      account_id: <account identifier>
  from:
    trakt_list:
        account: <username>
        list: <account identifier>
        type: shows

I can only speak for myself, but all my inputs come from some web-list that have separated 'name' and 'year' fields. So to me not having the 'year' is the unusual case.

As has already been stated a few times, the series plugin is old and due for a major refactor/overhaul. It is, however, no easy task and there's no point in performing triage.
series is a big part of Flexget and needs to be rewritten with care, and without a clear concept of what it should be like and how it should behave, there's absolutely no point in fiddling with small parts of it. You can get the series year from the online lookup plugins and if you're using one, you should have a clear idea of why and what fields it populates (the wiki should have most of them).

Oki i give up, i simply noticed this inconsistency and pointed out my expectation vs whats happening. I was hoping that this might be just a minor change that could be done, but guess i was wrong.

Oki i give up, i simply noticed this inconsistency and pointed out my expectation vs whats happening. I was hoping that this might be just a minor change that could be done, but guess i was wrong.

Yeah, we aren't arguing that it wouldn't be nice to have, or isn't a better system, just that it might be a bigger undertaking to do it correctly than just populating it from a few online lookup plugins.

Please reopen in feathub


Workspace numbers getting mixed when connecting/disconnecting external display.

I’m not sure if it is a bug.
I’m using yabai + skhd + sketchy bar as dock.
I have 19 workspaces configured
SPACE_ICONS=("1." "2." "3." "4." "5." "6." "7." "8." "9." "10." "11." "12." "13." "14." "15." "16" "17" "18."** "19.»)
and frequently using external display with my MacBook.
By default, yabai placing workspaces 11-19 on the second display, when I’m connecting it. Which is exactly what I want.
But when I disconnect the external display - the windows numbers are getting mixed.
The windows from WS11 jumps to WS1, and WS12 becomes WS11, WS13 becomes WS12 and so on.
All programs that I have on WS12 appear on WS11 respectively.
So all my hotkeys leading the wrong direction. And if I plug external display back — they are going back, so windows from WS1 come back to WS11, from WS11 jumping to WS12 and so on.
This behaviour is unexpected, and as I just recently switch to yabai I’m not sure, where this is coming from and how to prevent windows from jumping around when I plug/unplug a display.

Having this issue on Monterery 12.6, without any external displays connected. It seems to happen randomly, possibly when I open or close windows, or swap workspaces. A workspace that used to be on WS2 might change to be WS5, and I have to search around for where that workspace lives now. This has been happening rather frequently, and seems more prominent the more windows I have open. It seems yabai is getting the order of the workspaces mixed up.

This is a macOS thing.

System Preferences > Mission Control > "Automatically rearragange Spaces based on recent use".

This is a macOS thing.

System Preferences > Mission Control > "Automatically rearragange Spaces based on recent use".

No, this setting has nothing to do with the workspace numbers getting mixed.
Disregarding it is on or off, when I plug or unplug an external display - all windows that are on 10 workspace and above losing their original number.

It might not be that setting, but this is still a macOS thing. Yabai does not move your windows when you connect or disconnect a monitor.


i am trying to streamline my CI workflow with minio-jenkins plugin and i saw that i just uploaded the files and not the folders to the bucket

Thanks for the details @lirany1 . It is currently not supported, we'll need to implement this at our side.
Due to other activities, right now we dont have cycles to address this, but we'll get back to it soon


Adding nested property columns, fixing broken unit tests

This change allows griddle to access nested object properties as columns and refer to those columns in the columnMetaData.
{   prop1: 1212,   prop2: {     nestedProp1: "something",     nestedProp2:  "other thing"   } }

Hi, thank for submitting this PR. I will be merging soon, but will be closing, then reopening this PR to trigger a travis build before merging officially.

Hoping to trigger Travis CI by closing/reopening

Ran tests locally.  Merging.

I get the "no data to display" error message


Simplify yazi.toml input and select sections

I'm currently going through recent changes to the config preset and I noticed this addition:
[input]
# cd
cd_title  = "Change directory:"
cd_origin = "top-center"
cd_offset = [ 0, 2, 50, 3 ]

# create
create_title  = "Create:"
create_origin = "top-center"
create_offset = [ 0, 2, 50, 3 ]

# rename
rename_title  = "Rename:"
rename_origin = "hovered"
rename_offset = [ 0, 1, 50, 3 ]

# ....

I'm thinking this could be simplified to:
[input]
# cd
cd = { title = "Change directory:", origin = "top-center", offset = [ 0, 2, 50, 3 ] }

# create
create = { title  = "Create:", origin = "top-center", offset = [ 0, 2, 50, 3 ] }

# rename
rename = { title  = "Rename:", origin = "hovered", offset = [ 0, 1, 50, 3 ] }

# ....

That would depend on being able to merge missing properties of input.cd/create/rename/etc with the default ones... just a thought. Might not be feasible 😅.

I want to avoid more nesting levels, I think the second option just appears neater, but writing and reading aren't as natural as the first one - You might still need to break the items within it for better readability.


can't parse uri without scheme but having path

I expect example.org/path to be valid Uri, but parse() returns an InvalidFormat error
use http::Uri;

fn main() {
    let uri: Uri = "example.org/path".parse().unwrap();

    dbg!(uri.authority());
}

// ^this will result in:
// thread 'main' panicked at src/main.rs:4:47:
// called `Result::unwrap()` on an `Err` value: InvalidUri(InvalidFormat)

note: http://example.org/path is parsed correctly!

This is working as intended. See #523 for details.

Exactly. That is not a valid Uri. There are 4 main options, defined in the HTTP specs.

Oh, using this for connecting to servers was quite common like broker.mqttdashboard.com/mqtt, so I thought it's valid 😅
Thanks for your response, can you please point me to the specific part in standards 😁

https://datatracker.ietf.org/doc/html/rfc7230#section-5.3


Add run command to project.json for samples

Fix #122
/cc @cartermp @matthewreily

LGTM

LGTM as well.
Just tested on a mac and windows machine at the same time for fun.  This cross-platform thing feels pretty magical!

It is magical and I really like working on this using my mac and VS Code.

+1 for magic :smile:


Any plans to share code for training?

Hello, Authors.
Thank you for your excellent work.
Do you have any plans to share the training code?
After constructing my model following your instructions, it encountered an error.
This is my code for model.
model = AutoModelForCausalLM.from_pretrained(
        "mistralai/Mistral-7B-Instruct-v0.1",
        attn_implementation="flash_attention_2",
        torch_dtype=torch.bfloat16,
        device_map='auto',
        cache_dir=cache_dir,
    )
  model.config.use_cache = False  # silence the warnings. Please re-enable for inference!
  model = xlora.add_xlora_to_model(
      model=model,
      xlora_config=xlora.xLoRAConfig(
          model.config.hidden_size,
          xlora_depth=4,
          device=torch.device("cuda"),
          adapters={
              "adapter_1": "upaya07/Arithmo2-Mistral-7B-adapter",
              "adapter_2": "Amar5000/mistral-7b-code-adapter-v2",
              "adapter_3": "vineetsharma/qlora-adapter-Mistral-7B-Instruct-v0.1-gsm8k",
              "adapter_4": "sandst1/mistral-sql-adapter-7b",
          },
      ),
      verbose=True,
  )

And error is,
File "/usr/local/lib/python3.10/dist-packages/transformers/trainer.py", line 1537, in train
   return inner_training_loop(
 File "/usr/local/lib/python3.10/dist-packages/transformers/trainer.py", line 1854, in _inner_training_loop
   tr_loss_step = self.training_step(model, inputs)
 File "/usr/local/lib/python3.10/dist-packages/transformers/trainer.py", line 2744, in training_step
   self.accelerator.backward(loss)
 File "/usr/local/lib/python3.10/dist-packages/accelerate/accelerator.py", line 1958, in backward
   self.deepspeed_engine_wrapped.backward(loss, **kwargs)
 File "/usr/local/lib/python3.10/dist-packages/accelerate/utils/deepspeed.py", line 167, in backward
   self.engine.backward(loss, **kwargs)
 File "/usr/local/lib/python3.10/dist-packages/deepspeed/utils/nvtx.py", line 15, in wrapped_fn
   ret_val = func(*args, **kwargs)
 File "/usr/local/lib/python3.10/dist-packages/deepspeed/runtime/engine.py", line 1964, in backward
   self.optimizer.backward(loss, retain_graph=retain_graph)
 File "/usr/local/lib/python3.10/dist-packages/deepspeed/runtime/zero/stage_1_and_2.py", line 2040, in backward
   self.loss_scaler.backward(loss.float(), retain_graph=retain_graph)
 File "/usr/local/lib/python3.10/dist-packages/deepspeed/runtime/fp16/loss_scaler.py", line 63, in backward
   scaled_loss.backward(retain_graph=retain_graph)
 File "/usr/local/lib/python3.10/dist-packages/torch/_tensor.py", line 503, in backward
   torch.autograd.backward(
 File "/usr/local/lib/python3.10/dist-packages/torch/autograd/__init__.py", line 254, in backward
   Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass
 File "/usr/local/lib/python3.10/dist-packages/torch/autograd/function.py", line 289, in apply
   return user_fn(self, *args)
 File "/usr/local/lib/python3.10/dist-packages/torch/utils/checkpoint.py", line 318, in backward
   torch.autograd.backward(outputs_with_grad, args_with_grad)
 File "/usr/local/lib/python3.10/dist-packages/torch/autograd/__init__.py", line 254, in backward
   Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass
RuntimeError: Trying to backward through the graph a second time (or directly access saved tensors after they have already been freed). Saved intermediate values of the graph are freed when you call .backward() or autograd.grad(). Specify retain_graph=True if you need to backward through the graph a second time or if you need to access saved tensors after calling backward.

I used huggingface library for SFT and tried with deepspeed zero2 and zero3 (both occured errors)
Thanks.

Hi @JY-CCK,
Could you please try to enable layerwise scalings? Additionally, if you could share a minimum reproducible example, that would be great! We did not encounter this error in our training and do not plan on releasing our training code.

model.config.use_cache = False  # silence the warnings. Please re-enable for inference!

use_cache must be False due to our dual-forward pass approach because caching attention values from the scaling pass and then using them for the forward pass would invalidate results. We intend to begin work on integration with vLLM, which will require 2 KV caches: vllm-project/vllm#2890.

Hi @EricLBuehler
Thank you for the response. Actually, I didn't fully understand the concept of Dual forward pass in the paper. Could you provide more details? Especially in section 4.2.1, I'm not sure what scaling Λ is. Is it different from λ?
Also, could you explain how to proceed with 'layerwise-scalings?
Is this mean 'model.set_scaling_pass_value(0)'?

The scalings Λ contains scalings for each layer, token, and adapter. The λ matrix contains scalings for each layer, and in Python terms can be thought of as indexing Λ.

I think I've found the solution.
Previously, after declaring the model with xlora, I used model.enable_input_require_grads(),
but removing it resolved the issue.
Anyway,
Could you explain more about "Setting and resetting the scaling pass value and global LoRA weight"?
What is it for?
Thanks.

Glad to hear that! For future reference, configuration information including layerwise scalings, topk, and softmax can be found in the xLoRAConfig class.
About the scalings and the dual forward pass scheme:
The scalings Λ contains scaling values for each layer, token, and adapter. The λ matrix contains scalings for each layer, and in Python terms can be thought of as indexing Λ. We apply the scalings from λ to the input for each adapter by

Indexing λ to get the scalings for the tokens for that adapter
Broadcast multiplying the resulting vector to the input for the adapter

About "Setting and resetting the scaling pass value and global LoRA weight":
This allows you to manually apply a coefficient to the output of each LoRA adapter. It acts like the alpha value in LoRA, and it is a granular parameter to increase the signal weight.
Additionally, we could share a training sample code, but we will be unable to provide it until the weekend.

Thanks for your kind response!

I think I've found the solution. Previously, after declaring the model with xlora, I used model.enable_input_require_grads(), but removing it resolved the issue.
Anyway, Could you explain more about "Setting and resetting the scaling pass value and global LoRA weight"? What is it for?
Thanks.

Hello, I encountered the same error as in your issue. I also removed model.enable_input_require_grads() as you suggested, but the error still persists:
loss: tensor(3.0876, device='cuda:0')
loss: tensor(3.0876, device='cuda:0')
Traceback (most recent call last):
  File "/mnt/petrelfs/zhangbo1/xlora/llmsafety_sft/finetune.py", line 402, in <module>
    train()
  File "/mnt/petrelfs/zhangbo1/xlora/llmsafety_sft/finetune.py", line 316, in train
    trainer.train()
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/transformers/trainer.py", line 1780, in train
    return inner_training_loop(
           ^^^^^^^^^^^^^^^^^^^^
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/transformers/trainer.py", line 2118, in _inner_training_loop
    tr_loss_step = self.training_step(model, inputs)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/transformers/trainer.py", line 3045, in training_step
    self.accelerator.backward(loss)
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/accelerate/accelerator.py", line 1995, in backward
    self.deepspeed_engine_wrapped.backward(loss, **kwargs)
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/accelerate/utils/deepspeed.py", line 166, in backward
    self.engine.backward(loss, **kwargs)
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/deepspeed/utils/nvtx.py", line 15, in wrapped_fn
    ret_val = func(*args, **kwargs)
              ^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/deepspeed/runtime/engine.py", line 1979, in backward
    self.optimizer.backward(loss, retain_graph=retain_graph)
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/deepspeed/runtime/zero/stage_1_and_2.py", line 2055, in backward
    self.loss_scaler.backward(loss.float(), retain_graph=retain_graph)
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/deepspeed/runtime/fp16/loss_scaler.py", line 66, in backward
    scaled_loss.backward(retain_graph=retain_graph)
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/torch/_tensor.py", line 494, in backward
    torch.autograd.backward(
  File "/mnt/petrelfs/zhangbo1/anaconda3/envs/eval_py311/lib/python3.11/site-packages/torch/autograd/__init__.py", line 255, in backward
    Variable._execution_engine.run_backward(  # Calls into the C++ engine to run the backward pass
RuntimeError: element 0 of tensors does not require grad and does not have a grad_fn


MSlookup not returning private IP

Hey guys
I must have missed something but I struggle to figure out what.
mslookup returns a public IP instead of a private one.
I did select "Disable public access and use private access" and add a private endpoint with private DNS record.
Only difference I can think of is that I am not using a Bastion hos but connecting to the VM directly using RDP.
Is that it, or did I miss something?
Kind regards
Kåre Schmidt

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

ID: 162050e3-c465-0dbf-77a7-dfb6c59ac7c2
Version Independent ID: 1711d962-fe8e-c895-9770-d1794ceb35cb
Content: Tutorial: Connect to a storage account using an Azure Private Endpoint - Azure Private Link
Content Source: articles/private-link/tutorial-private-endpoint-storage-portal.md
Service: private-link
GitHub Login: @asudbring
Microsoft Alias: allensu

@kschinspari
Thanks for your feedback! We will investigate and update as appropriate.


flask init exception when providing a folder path

I was avoiding to create alembic.ini file and db folder on the route directory. when providing the path in flask db init ./location/migrations command I get an exception. Here is the exception traceback:
Traceback (most recent call last):
  File "/home/python/.local/bin/flask", line 8, in <module>
    sys.exit(main())
  File "/home/python/.local/lib/python3.10/site-packages/flask/cli.py", line 985, in main
    cli.main()
  File "/home/python/.local/lib/python3.10/site-packages/flask/cli.py", line 579, in main
    return super().main(*args, **kwargs)
  File "/home/python/.local/lib/python3.10/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/home/python/.local/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/python/.local/lib/python3.10/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/python/.local/lib/python3.10/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/python/.local/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/home/python/.local/lib/python3.10/site-packages/click/decorators.py", line 26, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/home/python/.local/lib/python3.10/site-packages/flask/cli.py", line 427, in decorator
    return __ctx.invoke(f, *args, **kwargs)
  File "/home/python/.local/lib/python3.10/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/home/python/.local/lib/python3.10/site-packages/flask_db/cli.py", line 31, in init
    copied_files, existing_files = generate_configs(path,
  File "/home/python/.local/lib/python3.10/site-packages/flask_db/init.py", line 80, in generate_configs
    os.path.join(alembic_ini_dst_path(path), "alembic.ini"))
  File "/home/python/.local/lib/python3.10/site-packages/flask_db/init.py", line 61, in alembic_ini_dst_path
    return pathlib.Path(path).parents[file_depth_count(path)]
  File "/usr/local/lib/python3.10/pathlib.py", line 530, in __getitem__
    raise IndexError(idx)
IndexError: 3

The db folder was created but alembic.ini file was not get created.

Can you show me your project's exact directory structure and the exact command you ran?

Here is my structure folder:
.
├── app
│   ├── api
│   ├── cli
│   ├── config
│   ├── files
│   ├── lib
│   ├── models
│   └── tests
├── bin
├── client
│   ├── node_modules
│   ├── public
│   ├── src
│   └── tests
├── db
│   └── versions
├── mask_rcnn
│   ├── config
│   ├── lib
│   ├── mrcnn
└── nginx
    ├── cache
    ├── config
    └── logs

The db folder inside root folder. I wanted to put it in app/migrations folder.

What was the exact command you ran?
You originally posted you ran flask db init ./location/migrations but you don't have a location directory there.

What was the exact command you ran?
You originally posted you ran flask db init ./location/migrations but you don't have a location directory there.

It was just an example. The command I executed was flask db init ./app/migrations

I'm not able to reproduce this.
I deleted my alembic.ini file and db/ directory then ran: flask db init hello/migrations and it created an alembic.ini file configured to use hello/migrations and also created that directory. I used https://github.com/nickjj/docker-flask-example as an example project.
Also there's tests set up in this repo to use a custom directory with end to end tests to make sure everything works:
https://github.com/nickjj/flask-db/blob/109199f8c4a01e923afd1fe6fac34624e48c4544/.github/workflows/ci.yml#L40-L58

Okay for now I will close the issue. I will look again on my project configuration

I don't think Python would do anything differently with the ./ you've been prefixing to your paths but that is one difference between your commands and mine. It wouldn't hurt for you to try it without that even though technically it shouldn't make a difference.


Including parent table in STI discriminator map causes empty migrations

Describe the bug
When creating a single table inheritance set up where the parent table is included in the discriminatorMap property, generated migrations ignore all the tables. If the parent table is removed from the map - the migrations run correctly.
To Reproduce
Steps to reproduce the behavior:

Reproduction: https://github.com/alisd23/mikro-orm-nestjs-starter/tree/bug/sti-migration
Run migration:create command (info about setup and running commands in  README.md) with parent included in discriminatorMap
See new empty migration

With this child table:
// employee.entity.ts
@Entity()
export class Employee extends Person {
  @Property()
  number: number;
}

This works:
// person.entity.ts
@Entity({
  discriminatorColumn: 'type',
  discriminatorMap: {
    // person: 'Person',
    employee: 'Employee',
  },
})
export class Person {
  @PrimaryKey()
  id: string;
}

However this causes empty migrations:
// person.entity.ts
@Entity({
  discriminatorColumn: 'type',
  discriminatorMap: {
    person: 'Person',
    employee: 'Employee',
  },
})
export class Person {
  @PrimaryKey()
  id: string;
}

Versions

Dependency
Version

node
12.18.3

typescript
4.0.x

mikro-orm
4.0.7

your-driver
mysql2

@B4nan Do you have an ETA for release of the commits fixing this issue?

Later this week, will be aiming for the first half (tue/wed), but can't promise.

@B4nan I made the same fix as you applied here, and it appears to me that in MySQL any sort of many-many pivot table is no longer generated using the migration:create --initial command.

https://github.com/mikro-orm/mikro-orm/blob/master/packages/knex/src/schema/SchemaGenerator.ts#L574


NimBLE and iTag

I have tried to connect to an iTag (see my github page).  That works correctly.  After that I tried to subscribe to the button notification.  The iTag is not fully compliant and does not have descriptor 0x2902.
NimBLERemoteCharacteristic::setNotify() returns "false" because of this missing descriptor.  Setnotify wants to write to this descriptor.  But the iTag notification will work without this write operation.  So I changed setNotify in the following way:
bool NimBLERemoteCharacteristic::setNotify(uint16_t val, notify_callback notifyCallback, bool response) {
    bool res = true ;

    NIMBLE_LOGD(LOG_TAG, ">> setNotify(): %s, %02x", toString().c_str(), val);
    // Set callback, even if 2902 descriptor is missing
    m_notifyCallback = notifyCallback;
    // Get 2902 descriptor if it exists
    NimBLERemoteDescriptor* desc = getDescriptor(NimBLEUUID((uint16_t)0x2902));
    if(desc) {
        res = desc->writeValue((uint8_t *)&val, 2, response);
    }else{
        NIMBLE_LOGE(LOG_TAG, "<< setNotify(): Could not get 2902 descriptor");
    }
    NIMBLE_LOGD(LOG_TAG, "<< setNotify()");
    return res;
} // setNotify

Would it be a good idea to have this modification included in you library?

Hi @Edzelf this issue has been resolved already in commit 8310b7b56058ccc976d294fc990166d95b14744c .

Hi @Edzelf this issue has been resolved already in commit 8310b7b56058ccc976d294fc990166d95b14744c .

Thank you for your support.
I still have a strange problem, I am using PlatformIO for ESP32.  In platformio.ini:
lib_deps =
<EMAIL_ADDRESS>Then I get NimBLERemoteCharacteristic.cpp date 14 September.

A newer version is not available in PlatformIO.  I tried:
lib_deps =
<EMAIL_ADDRESS>
But that gives me:
Library Manager: Installing h2zero/NimBLE-Arduino @ ^1.1.0
KeyError: 'framework-stm32cube':
  File "C:\users\hp\.platformio\penv\lib\site-packages\platformio\builder\main.py", line 170:
    env.SConscript("$BUILD_SCRIPT")
  File "C:\Users\hp\.platformio\packages\tool-scons\scons-local-4.0.1\SCons\Script\SConscript.py", line 598:
    return _SConscript(self.fs, *files, **subst_kw)
  File "C:\Users\hp\.platformio\packages\tool-scons\scons-local-4.0.1\SCons\Script\SConscript.py", line 287:
    exec(compile(scriptdata, scriptname, 'exec'), call_stack[-1].globals)
  File "C:\users\hp\.platformio\platforms\espressif32\builder\main.py", line 224:
    target_elf = env.BuildProgram()

Thank you for your support.
I still have a strange problem, I am using PlatformIO for ESP32.  In platformio.ini:
lib_deps =
<EMAIL_ADDRESS>Then I get NimBLERemoteCharacteristic.cpp date 14 September.

A newer version is not available in PlatformIO.  I tried:
lib_deps =
<EMAIL_ADDRESS>
But that gives me:
Library Manager: Installing h2zero/NimBLE-Arduino @ ^1.1.0
KeyError: 'framework-stm32cube':
  File "C:\users\hp\.platformio\penv\lib\site-packages\platformio\builder\main.py", line 170:
    env.SConscript("$BUILD_SCRIPT")
  File "C:\Users\hp\.platformio\packages\tool-scons\scons-local-4.0.1\SCons\Script\SConscript.py", line 598:
    return _SConscript(self.fs, *files, **subst_kw)
  File "C:\Users\hp\.platformio\packages\tool-scons\scons-local-4.0.1\SCons\Script\SConscript.py", line 287:
    exec(compile(scriptdata, scriptname, 'exec'), call_stack[-1].globals)
  File "C:\users\hp\.platformio\platforms\espressif32\builder\main.py", line 224:
    target_elf = env.BuildProgram()

Platformio has not updated with the latest release yet. You can change your dependencies to point at the repo like this:
lib_deps = https://github.com/h2zero/NimBLE-Arduino.git#1.1.0

Platformio has not updated with the latest release yet. You can change your dependencies to point at the repo like this:
lib_deps = https://github.com/h2zero/NimBLE-Arduino.git#1.1.0

That did the trick.
Thank you!

That did the trick.
Thank you!

@Edzelf can we close this?

@Edzelf can we close this?


[Bug]: Improve performance of function run on the editor

Is there an existing issue for this?

[X] I have searched the existing issues

Description
Currently running a function on the editor on release takes slightly more time than it does on prod. This needs to be improved. Console implementation also causes a slow execution on it's DP and has the potential to further slow down the editor
https://www.loom.com/share/31f39247e2cb495ba39dffad08b3a689
Steps To Reproduce

Execute function3 on app on release and app on prod

Public Sample App
No response
Version
Cloud

cc @SatishGandham point this out there, are we able to see in this in our perf infra

Hi @ramsaptami , from the video you shared, you're executing a query in production and an Api in release. Since these two are different, the difference in time could result from the difference in execution time for the Query and Api.
We've observed a performance dip in release, which is fixed here, however, this fix will not affect the execution time of the JS function in any way.

Even with the same API, there's only a marginal difference in performance, though a step in the right direction for speed. But as I mentioned it on call the other day, think this is more to do with a combination of features that's lead to a cumulative slowdown

@ramsaptami

there's only a marginal difference in performance?

Do you mean after merging this PR current release is still slow when compared to production?
Can we please try to test without hitting external API which could have its own deviation?
To test the function execution between release vs production, i did a test where we ran a function
export default {
	function3: async () => {
		return storeValue('response', 1).then(() =>
			      storeValue('response', 2).then(
                                   () => storeValue('response', 3)
                                )
)
	},
}

Evaluations logs

Production
PR

@Rishabh-Rathod apologies for not being clear, I meant to say that release is faster now that the PR is merged but compared to prod, it's marginally faster, not significant. Favour mentioned performance difference is more obvious on larger apps and I've QA'd on template apps and a medium-sized app only


Code repositories to test against

Once I have all the key features I know of implemented I will want to do broad testing against real Fortran code bases to see if there was anything I missed. Once I have support for fixed form Fortran I'll do the same there as well.
Eventually, with code author permission (or if the license allows it) I'll store some good source code files in the examples directory.
Free Form:
https://github.com/firemodels/fds
https://sourceforge.net/projects/flibs/
https://github.com/astrofrog/fortranlib
https://github.com/Unidata/netcdf-fortran
https://github.com/jacobwilliams/json-fortran
https://github.com/jerryd/gtk-fortran
https://github.com/certik/fortran-utils
https://github.com/andreww/fox
Fixed Form:
https://github.com/stadelmanma/netl-ap-map-flow

Here's a couple of repos containing examples highlighting specific Fortran features:
https://github.com/scivision/fortran2018-examples
https://bitbucket.org/gyrokinetics/fortran-features/src/main/
For fixed form, you might consider LAPACK and BLAS

I took the free form list above, the two repos I mentioned, plus the following known users of Ford:
https://gitlab.com/lfortran/compiler_tester
https://github.com/fortran-lang/fpm
https://github.com/QcmPlab/HoneyTools
https://github.com/cibinjoseph/naturalFRUIT
https://github.com/cibinjoseph/C81-Interface
https://github.com/cp2k/dbcsr
https://github.com/kevinhng86/faiNumber-Fortran
https://github.com/ylikx/forpy
https://github.com/D3DEnergetic/FIDASIM
https://github.com/jacobwilliams/bspline-fortran
https://github.com/szaghi/VTKFortran
https://github.com/szaghi/FLAP
https://github.com/toml-f/toml-f
https://github.com/jacobwilliams/json-fortran
https://github.com/fortran-lang/stdlib
And the following most-starred Github repos using Fortran:
https://github.com/wrf-model/WRF
https://github.com/mapmeld/fortran-machine
https://github.com/wavebitscientific/functional-fortran
https://github.com/modern-fortran/neural-fortran
Running tree-sitter parse '../fortran_examples/**/*.f90' --quiet --stat gives:

Total parses: 2524; successful parses: 1803; failed parses: 721; success percentage: 71.43%

This doesn't include files that need preprocessing, or free form files. Pretty good though!
It should be possible to write something that will spit out the failing source. I'll have a look at doing that.

That sounds right. Tree-sitter is meant to be error tolerant so that a single error doesn’t cause the entire parse to fail since it was initially designed for use with code editors. Did you run this on the master branch or a temporary one with some of your fixes merged in?

This is using #76, plus a couple of other minor fixes I haven't pushed yet.

I removed flibs from my corpus as it has too many files using a custom preprocessor. WRF also uses a custom preprocessor for at least one of its submodules, so I ignored files containing KPP_REAL. Lots of projects seem happy to put preprocessor directives in .f90 files, but they're easily ignored with grep -LE "^#". That still leaves a few files that are written to be included in other files, and so aren't valid translation units. I've not worked out how to ignore them systematically yet.
It's a pity the parser isn't designed to take any options, it might be nice to be able to parse standalone snippets.
Anyway, here's the corpus I'm currently using:

C81-Interface
FIDASIM
FLAP
HOdebug-profile
HPCAcademyFortran
HoneyTools
Tracmass_previous
VTKFortran
WRF
WenOOF
bspline-fortran
compiler_tester
dbcsr
epoch
faiNumber-Fortran
fds
forpy
fortran-features
fortran-machine
fortran-utils
fortran2018-examples
fortranlib
fox
fpm
functional-fortran
gkw
gs2
gtk-fortran
json-fortran
ktransit
naturalFRUIT
neasy-f
netcdf-fortran
neural-fortran
stdlib
toml-f

And the current success rate:

Total parses: 2346; successful parses: 2310; failed parses: 36; success percentage: 98.47%

I think the remaining features or edge cases are:

/ in edit descriptors: 5 format("Array sizes =", i4, "MB. Clock resolution = ", f6.3, " ms."/)
some IO statements like backspace, rewind, pause
array literals containing function calls like: call append_chunk(lun_filecount,(/ real(file_count) /), '(f10.0)', ascii_fmt)
kind parameter on string literals: character(1, tfc) :: space = tfc_" "
computed goto: go to (1, 2, 3), n
operators between number literals without whitespace: elseif(n-1.eq.0) then
old school character declarations: CHARACTER   FMAT*22
labelled do: do 11 iter=1,itmax

And maybe one or two others that are less obvious.

I think the shortcoming in the CLI of the parser are just due to it intending to be a library. A small wrapper script that utilizes it would allow us some additional flexibility.
I have a Python script that utilizes the Java tree sitter language to translate parts of Java into Python that could be repurposed. I figure for parsing “snippets” our best bet would be to wrap them in a PROGRAM block and hope for the best.

Great idea!