Plans for Community Typescript Extensions Repo

This is great!
But I think we all need to join forces and make it even better!
There are a few patterns I have found myself repeating often in typescript and I missed some of the refactoring tools I had in Visual Studio with C#.
I was thinking about creating my own extension to speed up my own coding, but of course I wanted to find existing projects first.
Here are a few I have found:

Typescript Hero

Intellisense with missing Imports - Nice!
Auto Imports - Excellent!

Vscode-Refactorix

A few short tools

Vscode-GenGetSet

Looks like it also has Auto Imports and some other stuff

Js-Refactor

Some good looking method management that I would like to see in Typescript (Similar to Generate Method from Visual Studio/C#)

Resharper Visual Studio Typescript

A few interesting refactorings like introduce field

Atom Editor Typescript Refactorings

Add class members and some handle refactorings

Anyway, I'm sure there are others.
My main point is that I am interesting in partnering with you and others in creating a community repo for typescript refactoring. I imagine that a community organization would be created with shared ownership so that multiple owners can help manage pull requests, etc.
I like your branding with Typescript Hero, and I think if you moved it to a GitHub organization and allowed others to join in, it could be the goto tool for Typescript Refactoring.
Let me know what you think.

Hey @ricklove
Basically I love the idea! I would really love to see a cool developer experience grow from all those different projects. Actually with TypeScript 2.2, the whole auto import thing will kind of die, since they introduced some things that I implemented. But the good thing is, we could start add cool stuff.
As of now, some things are still missing in the typescript server; when one types, no code completion is provided. You have to write the class name and can then import it automatically via a code action.
I'm currently rewriting the whole extension to use client / server paradigm that is purposed by microsoft, so if this could be a possibility, I'd like to join forces after this rewrite.
Basically we could "just disable" the auto import stuff and focus on the cool ideas (like refactorings, automatic class generation, etc)
Did you open a ticket in the other repos you mentioned? I'd be more than happy to share the whole thing!
Cheers
Chris

Ok, cool.
That would be great to see what you think is an ideal architecture.
I was thinking that a higher level architecture could be created that would allow the same refactorings to work in vscode and other editors (abstracting away specifics of each editor and building a set of refactoring utilities).
Also, it would be cool if there is something like the json snippet editor for refactorings. Json alone wouldn't be enough, but a plugin architecture where users can easily make their own local refactorings would be great. Possibly, this could be coupled with a quick and easy way to submit those to the community.

What are your thoughts about the architecture?

I have not opened tickets in the other repos, I thought it would be easier to figure out a small plan then reach out to everyone.
Perhaps once a community organization is setup then it would be a good time to invite everyone to join a discussion there.

Do you think that would be a good way forward?

Hey @ricklove
This could get awesome :-) Well IMO the first step would be to kind of split up typescript hero. So we actually could make a nodejs-package out of the whole parsing / indexing part (especially the TypescriptParser and the reverse-index of the declarations). With that package, we could think about abstraction layers (interfaces) that could abstract an editor und would need to be implemented for each one. So basically the core of ts-hero would be the calculation and parsing of the files and the delivery of the declarations for certain use-cases.
As an example: we could have a TypescriptHeroAutoComplete which contains methods that helps deliver intellisense and actual declarations used for intellisense.
With such a (maybe second) package, the implementation should be - at least more or less - easy for other editors to come by. We could then even provide the implementations for other editors.
I totally agree with you that we need a small plan to get everyones attention.
Another thing could be to start and add another parser (ES6) to actually enable people to use our refactoring / importing tools with ES6 and not only typescript (at least far down the road).

Nice. Typescript Heroes is perfect.
I hadn't thought of ES6. Hopefully since Typescript is just a superset of ES, it won't be hard to use the typescript toolchain for both.
In fact you just gave an idea for some ultimate refactorings:
Upgrade to Typescript (ES5/6->Typescript ES7):

Typify everything
Flatten promises/then/catch -> async/await/try/catch
Upgrade ES5 code to this era (let, const, lamda, class, import, etc.)

Also the reverse could be useful for working with the anti-Typescript (for example Typescript developers who are working with ES6 teams).
Downgrade from Typescript: (TS->ES6)

Just run a build on the current file or selection (instead of building the entire project with tsc)

Generate Local .d.ts

Generate a simple and editable .d.ts for untyped modules.
Possible choose the components of concern and generate the definitions for only those components.

Anyway, these are just some ideas that came to mind that would be helpful.
Of course they would be a major undertaking, but it could start with local refactorings that work on the method level and as they work better and all cases are handled it could eventually take on a whole file or more.
I look forward to having a good architecture where it can be simple to build next-gen refactorings and greater increase coding speed.

Cool ideas! 👍
Actually, I just tried, we can throw normal javascript (ES5/6) at the typescript parser, and it will generate the correct AST and declarations. So basically, a first step to a cool architecture would be to split the core (parsing / reverse index) of tsh out and create a separate package. With that implement typescript hero for vscode and possible other extensions for other editors or languages like ES6.
After that step, I'd recommend to start abstract the different ways of refactoring. Like fix code by implementing a method or something like that. We need to provide the helpers for it, but not whole implementations, that's a topic for the concrete extensions (for sublime or whatever)
So we agree on making a community and try to harmonize our efforts.
First steps would be that I finish the rewrite, so the extension is working as before again and then we can split the core parts out.

Yeah, sounds good.
How long do you think it will take you to finish the rewrite?
In the mean time, it might make sense to begin a discussion in the community and start inviting people to that discussion

Well, depends heavily on the spare time I got to work on it. But at least two weeks or so. I'm nearly at feature parity but well :-) it needs time.
For the other topic, absolutely! We should start invent the creators of the other extensions and bring them on board.

Alright, yesterday I was @ microsoft (switzerland) and had a cool talk with johannes rieken (developer with microsoft)
Actually there is a plan to get some extensions into the ts-server (the part that parses the files etc.) much like you can write extensions for the roslyn compiler.
So instead of pulling my hair of with further rewriting the whole extension, I'll wait for the ts-server part and try to hook into the ts server after they released the feature.
This will produce a much more cleaner extension since not both extensions need to parse everything.
(fyi: @ricklove )


ci: Add misssing update

Update package database before trying to install.

While you're at the CI pipeline: Do we also want to add the tag name to the build artifacts uploaded to the release like this:
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index 8708731..f6c9751 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -84,7 +84,7 @@ jobs:
         with:
           repo_token: ${{ secrets.GITHUB_TOKEN }}
           file: build-${{ matrix.name }}/src/mavlink-routerd
-          asset_name: mavlink-routerd-glibc-${{ matrix.name }}
+          asset_name: mavlink-routerd-glibc-${{ matrix.name }}-$tag
           tag: ${{ github.ref }}
           prerelease: ${{ !startsWith(github.ref, 'refs/tags/v') }}
           overwrite: true
@@ -121,6 +121,7 @@ jobs:
         with:
           repo_token: ${{ secrets.GITHUB_TOKEN }}
           file: build/src/mavlink-routerd-musl-x86-64
+          asset_name: mavlink-routerd-musl-x86-64-$tag
           tag: ${{ github.ref }}
           prerelease: ${{ !startsWith(github.ref, 'refs/tags/v') }}
           overwrite: true

Otherwise: LGTM

I don't really like to have different names. I'd rather provide a proper per-distro .deb/.rpm package and hopefully integrate in a few package managers.
At the very least this should be better planned when we are doing the next release.

Thanks for the review. I'm going ahead and merging this to unblock CI.

It was just an idea and I understand the issue with changing file names (as I have some ansible roles, which try to download binaries from GitHub releases automatically). So let's keep it as it is.


Rework label colors

Introduce --color-label-fg, --color-label-bg and --color-label-hover-bg, decoupling the label styles from other color variables. I've set the colors so that non-interactive labels like on tabs are dark-on-light on light theme, which imho looks better than previous light-on-dark.
In the screenshot below, the leftmost label has hover, the second one has active.

Active color on light theme seems a bit too dark, I will tweak it.


Add a HasData property for RSJobs

Technically, the data is always going to be available in an RSJob unlike PSJobs when you call Receive*Job but recent changes will now turn HasMoreData to $False when calling Receive-RSJob to show that there is no more data to present. Adding HasData would still show that the data still resides after calling Receive-RSJob.

After some thought, I think this will be more confusing than useful for people to look at even though it isn't in the default view. If there is feedback that would support adding this property, then I will reconsider adding it.


Autocompletion fails if -cp is defined in --each

If the active hxml defines the classpaths using --each, these will not be accounted for on the completion server.

Sounds more like an issue with the haxe compiler as the atom plugin is not changing any -cp for code completion.

Yeah, seems like an issue with the completion server. I'll close this here.


Add testing for Django 2.1 and 2.2, and Python 3.7

@jwhitlock @edmorley Any updates on that PR ?

@Anton-Shutik Hi! I no longer use memcached at all, and don't have access to this project (#55).


feat(lint): add commit lint

Checks if the commit message is meeting project standards
Checks there's no eslint error/warning on the commited files

issue: #4

Nice! Works like a charm when I've tested it!

Awesome, seems to work well congrats :)


Post release automated changes for eventgrid releases

Post release automated changes for azure-eventgrid

API change check
API changes are not detected in this pull request.

5.1.1 already in main


Salsa is weird around assigning twice to the same member

Testing #2218
typescript@next version 1.9.0-dev.20160126
function Person(age) {
    if (age >= 18) {
        this.canVote = true;
    } else {
        this.canVote = false;
    }
}

This issue was moved to Microsoft/TypeScript#6645


Add atomic icon

Oh, cool, I wanted to add an atom icon a while back, but my design was always too dense because of the 6-fold rotational symmetry, and since I didn't think it could work (i.e. still be recognisable as an atom) with 4-fold symmetry, I didn't even try. What a bummer, it very clearly does work. 😅
One thing though, I think we should go for a perfectly symmetric version (this also solves the issue of the <2px gap between the atom core and the electron cloud):

I think we should go for a perfectly symmetric version

@karsa-mistmere Do you mean make the electrons orbit at a 90° angle to each other? (they’re currently ~45°…)

@karsa-mistmere Do you mean make the electrons orbit at a 90° angle to each other? (they’re currently ~45°…)

I mean like this (having 4-fold rotational symmetry instead of just 2-fold):

@karsa-mistmere Also, a couple of alternates…

We don't support fills, so there's that. 😅
Not sure about the alternate design you pushed, I'd more likely think of that as orbiting planets not as an atom.

We don't support fills

They aren’t fills 😉 (those are just 2 strokes…)

They aren’t fills 😉 (those are just 2 strokes…)

That's kind of even worse, since we do want to keep support for customizable stroke width. :)

They aren’t fills 😉 (those are just 2 strokes…)

That's kind of even worse, since we do want to keep support for customizable stroke width. :)

I see, makes sense… Just the top row is relevant then… Could be renamed as orbit and moved to a different PR…?


Mraa 1.0

Getting ready for small mraa API changes in 1.0.
Note alot of these are pretty nasty conversions, there's alot of i2c helper functions that aren't needed in UPM that do no error checking etc I left them as is.

The MRAA rename of Spi::write_word to Spi::WriteWord needs to be fixed in UPM as well.

Merged.  We can work to get the rest of the error checking for the mraa calls in at a later date.


Equality does not swallow errors

Fixes #9283
Pull Request Description
42 == (Error.throw "foo") now correctly returns an Error rather than False
Important Notes
The error was in the wrong usage of the org.enso.interpreter.dsl.AcceptsError DSL annotation.
Checklist
Please ensure that the following checklist has been satisfied before submitting the PR:

[x] The documentation has been updated, if necessary.
[x] Screenshots/screencasts have been attached, if there are any visual changes. For interactive or animated visual changes, a screencast is preferred.
[x] All code follows the
Scala,
Java,
and
Rust
style guides. In case you are using a language not listed above, follow the Rust style guide.
All code has been tested:

[x] Unit tests have been written where possible.
[x] If GUI codebase was changed, the GUI was tested when built using ./run ide build.

Could you please also remove the workaround that was added because of the bug?

Could you please also remove the workaround that was added because of the bug?
It should be enough to revert this commit: 32f876d

@radeusgd Reverted in 805785dfcba47fb109cb5d13eaa845ac9c08b1c5


Multiple matching routes

After reading the documentation, I'm not clear on what would happen if an incoming request matches the routes associated with multiple frontends. Is it possible to set up some priority scheme among frontends?
The use case I'm thinking of is having one frontend with a set of path regexps and then having a second "fallback" frontend that matches everything else.
It's not clear from the docs how this might be accomplished.

My use-case was similar to yours, and I spent a lot of time thinking about specificity and priority. The problem for me was priorities change, are difficult to infer and difficult to manage. Specificity is worse still - looking at two regex's, it is very difficult, if not impossible, to define which one is more specific.
Since my use-case was WAY simpler, all I needed was a way to capture all unmatched requests and send them to one default route.
Here's a snippet we use - follow the middleware writing pattern:
func GetRegistry(nsqdendpoints []string, selfaddress string) (*plugin.Registry, error) {
r := plugin.NewRegistry()
specs := []*plugin.MiddlewareSpec{

	connlimit.GetSpec(),

	ratelimit.GetSpec(),

	rewrite.GetSpec(),

	cbreaker.GetSpec(),

	trace.GetSpec(),
}

if notFoundMiddleware, err := custommiddleware.New(); err == nil {
	r.AddNotFoundMiddleware(notFoundMiddleware)
}

for _, spec := range specs {
	if err := r.AddSpec(spec); err != nil {
		return nil, err
	}
}
return r, nil

}

@archisgore Thank you for that info. Looking at the source a bit, it's apparent that it simply executes the first matching route (stored in order of insertion). So we can prioritize (in a hackish way) by controlling the order of rule insertion.
It would be nice if this were documented somewhere ("Order of frontend insertion is significant"). It also would be great to have some additions to the routing language syntax: mailgun/route#8, mailgun/route#9.

Yes, that's fair. Rather than add it to the routing language, I would prefer it if it were part of the frontend's structure that assigned each frontend a priority with an explicit contract that, two frontends with the same priority can be in arbitrary order.
Put concisely,
Each fronted struct will have:
type engine.Frontend struct {
//some stuff
priority int
}
And on any frontend modification (upsert/delete), we do:
unstableSort(frontends)
About routing library, I'm going to open a new issue to discuss other ideas I have around it.

I'm making this request in route: https://github.com/mailgun/route/pull/10
This is to allow us to rapidly run some trial-errors by plugging in variants of the routing library and test cases. Thanks to how go works, we can't easily fork vulcan/route/etc. and run it properly without replacing all import paths in thousands of files. By making it an interface, it'll allow me to work on various features like priorities, OR operator, and so forth.


Update to use new builder system

There's a new builder system as described in the main base16 repo.
I've got it working in my own repo, here.
Though, that repo uses a different melpa recipe, it could easily be changed to generate all files in the main dir (update the template config to use . as opposed to build for the directory)
This is what I'm using with quelpa:
(base16-theme :fetcher github :repo "belak/base16-emacs" :files ("*.el" "build/*.el"))

I would also be willing to maintain this if you don't have the time or aren't interested any more.

This has been resolved


Validation error on Log Analytics creation

Bicep version
run bicep --version via the Bicep CLI, az bicep version via the AZ CLI or via VS code by navigating to the extensions tab and searching for Bicep
Bicep CLI version 0.2.328 (a13b032755)
Describe the bug
A clear and concise description of what the bug is vs what you expected to happen
I have a script that was running for a few months then about 3 weeks ago begin giving the following error:
InvalidTemplateDeployment - The template deployment 'baseCluster' is not valid according to the validation procedure. The tracking id is 'dfd1aa64-206a-4631-bdd7-32d66de71a6a'. See inner errors for details.
GetLogAnalyticsWorkspaceError - Provisioning of resource(s) for container service base156-aks in resource group base156-EastUS-rg failed. Message: Unable to get log analytics workspace info. Resource ID: /subscriptions/2159f493-f4d2-4f96-ad4d-a9f6ae4ee050/resourceGroups/base156-EastUS-rg/providers/Microsoft.OperationalInsights/workspaces/base156-la. Details: Category: ClientError; Code: ResourceNotFound; SubCode: ResourceNotFound; Message: Unable to retrieve log analytics workspace. Please resolve the issue below and try again. If resource is intentionally deleted to stop monitoring, please also disable monitoring addon by following doc: https://aka.ms/aks-disable-monitoring-addon. If resource is deleted by mistake, please re-create it by following doc: https://aka.ms/new-log-analytics, and enable new workspace resource id by following doc: https://aka.ms/aks-enable-addons. Resource ID: /subscriptions/2159f493-f4d2-4f96-ad4d-a9f6ae4ee050/resourceGroups/base156-EastUS-rg/providers/Microsoft.OperationalInsights/workspaces/base156-la. Error details: autorest/azure: Service returned an error. Status=404 Code="ResourceNotFound" Message="The Resource 'Microsoft.OperationalInsights/workspaces/base156-la' under resource group 'base156-EastUS-rg' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix".; InnerMessage: ; Dependency: Microsoft.OperationalInsights/workspaces; AKSTeam: RP; OriginalError: autorest/azure: Service returned an error. Status=404 Code="ResourceNotFound" Message="The Resource 'Microsoft.OperationalInsights/workspaces/base156-la' under resource group 'base156-EastUS-rg' was not found. For more details please go to https://aka.ms/ARMResourceNotFoundFix"; Retriable: false. Please recreate or unlock the log analytics workspace before proceed the last operation. For more details about how to create and use log analytics workspace,  please refer to: https://aka.ms/new-log-analytics. Details:

This is a resource that is being created in the template and then referenced later for the la info for the cluster.  Even adding an explicit dependson does not resolve the issue.
Expected:
For the template to pass validation.
To Reproduce
Steps to reproduce the behavior: just rerun my script
Additional context
Add any other context about the problem here.
Link to the script that worked on the date uploaded: https://github.com/cwash05/aks/tree/main/baseCluster
some changes need to be made to make it run now.
in the aksdeploy.sh script change
line 168:  comment out
#"EnableOIDCIssuerPreview"
line 216 change to
kubernetesVersion=$(az aks get-versions --location $location --query "values[?isPreview==false].version | sort(@) | [-2]" --output tsv)
in the baseCluster.bicep file
add
servicePrincipalProfile:{
clientId: 'msi'
}

@stephaniezyen I have also noticed that once some time has passed between running the scripts, like 24 hours, the first time it runs it returns the following error:
InvalidTemplateDeployment - The template deployment 'baseCluster' is not valid according to the validation procedure. The tracking id is '216ebd0e-d773-4d1d-8ce7-2c7dd419b997'. See inner errors for details.
InvalidParameter - Provisioning of resource(s) for container service base342-aks in resource group base342-EastUS-rg failed. Message: Required parameter servicePrincipalProfile is missing (null).. Details:

is there any way to use the tracking id to get more info? then on subsequent attempts it will through the
InvalidTemplateDeployment - The template deployment 'baseCluster' is not valid according to the validation procedure. The tracking id is 'a59c71bc-ce95-4df1-8c79-1ae2ee608635'. See inner errors for details.
GetLogAnalyticsWorkspaceError - Provisioning of resource(s) for container service bas336-aks in resource group bas336-EastUS-rg failed. Message: Unable to get log analytics workspace info. Resource ID: /subscriptions/2159f493-f4d2-4f96-ad4d-a9f6ae4ee050/resourceGroups/bas336-EastUS-rg/providers/Microsoft.OperationalInsights/workspaces/bas336-la. Details: Category: ClientError; Code: ResourceNotFound; SubCode: ResourceNotFound

error
not sure what has changed but this was working fine back in May.


Http adapter : Finch Integration

In order to gracefully integrate with Finch we should provide appropriate Endpoint instances that allow Freestyle programs to be used as returning values properly interpreting to A => Future[Output[B]] or A => Output[B] from which endpoints can be generated. https://finagle.github.io/finch/user-guide.html#outputs
In an ideal scenario a user would simply import freestyle.http.finch.implicits._ and automatically embed a Freestyle program like so:
val bids: FreeS[F, Output[Bids]] = ???
val e = get(/) { bids }

This feature will allow user to define purely functional programs with Freestyle whose resulting values are transparently returned in Http Responses. Once this feature is implemented appropriate documentation should go under Integrations -> Http -> Finch

Added in #124.


docs: rename and fix typos in benchmarking

fix typos
rename files in order (https://aneoconsulting.github.io/armonik-docs-theme/guide/content-directory#filename)
rework headers levels for a better semantic

@pmilaneo pour info !


Library crash with Enchiridion 2 and Agricraft's 'Agricultural Journal'

I've been play testing mods together for a modpack I'm putting together and i very quickly ran into an issue. I had just added Enchiridion 2 and was having a look through of the features specifically the library. I noticed that the agricraft 'agricultural journal' was preloaded into the library so i decided to click it and got this crash http://pastebin.com/Au1XuAEw
I figured it had to do with the way the agricraft book updates when you put it in an analyzer, so to test my theory i reopened my instance grabbed the book itself in creative and opened it, no problem. Then I opened the library again and opened the agricraft book from the library, no problem just as i suspected now that i had opened the actual book. So then I grabbed an analyzer and a seed, put the book and seed in the analyzer, pulled the book out after the analyzer finished, opened agricraft book via the library and got another crash also as i suspected as the book had now updated with new seed information that was previously undiscovered (http://pastebin.com/SJVKdiGL). I'm pretty sure i can continue duplicating the crash until i run out of seeds to analyze. Hope you can help as I would really like to use your mod to help players along in my modpack because i need an easy way of explaining the changes and progression.
-SpiteSuicide

When I added the agricraft book to the library by default, I had never actually played agricraft before. (I have extensively now). It's probably best if you just take it out of the library. With the way it works, it's not suited to being in there.

I assume i can do that in the config somewhere?

Yea, just looks in the library_books.json and remove the parts about the agricraft book, try not to break the json :P

Sweet thanks. Saw the Thaumnomicon in there will that have the same issue as the agricraft book?

Testing that one seems to be fine, but I don't think the research in it, gets updated.

It does but probably not in the same way. I think i will remove it anyway just in case. Thanks for the swift replies.

Is there a way we can have a blacklist for books like this that actually break, maybe with the option to configure it for books like Thaumnomicon?


Fixed regex

Replaced // by | sed

The script needs updating, should be aligned with https://github.com/OCR-D/ocrd_olena/blob/master/ocrd-olena-binarize. Tracking in #3.


String: Support partial match with Get Lines Matching RegExp

Current regular expression is using '^%s$' and re.match, this is not what the user pretend, although the name of the Keyword may lead to confusion (if so we need a Get Lines Containing RegExp).
Below is my proposed patch, based in BuiltIn.Should Contain RegExp:
--- C:\Python27\Lib\site-packages\robot\libraries\String_orig.py
+++ C:\Python27\Lib\site-packages\robot\libraries\String.py
@@ -250,8 +250,8 @@
String` if you do not need full regular expression powers (and
complexity).
"""
-        regexp = re.compile('^%s$' % pattern)
-        return self._get_matching_lines(string, regexp.match)
+        regexp = re.compile('%s' % pattern)
+        return self._get_matching_lines(string, regexp.search)
 def _get_matching_lines(self, string, matches):
     lines = string.splitlines()

The PR #1836 is now ready for final review. Added option exact_match True by default to Get Lines Matching RegExp. Could not write a better example, because RIDE was altering [ ] to a link marker.

exact_match=True is a good solution. It can be added to other regexp keywords later if there's a need. PR #1836 also looks good (except that it contains 21 commits most of which are merges).
If you @HelioGuilherme66 are willing to fix the issues I pointed out in the PR, we can still get this into RF 2.9. Our plan is to get beta 2 our already on Wednesday and have all code changes done this week so that we could have first release candidate already early next week.

This looks useful and ready enough to be added tentatively to RF 2.9 scope.

I'm currently merging PR #1836. While reviewing it for the last time, I started to think it would be better to use partial_match=False than exact_match=True. It is generally easier to pass true values than false values, and it is also a bit easier to explain that partial matching can be enabled with partial_match argument. I'll change the behavior after I've merged the PR locally.

I manually squashes PR #1836 in 4c178d399c39aa35d0bfefbf96a9aba26a52ac76 and did some enhancements in 02fe31f6fd0fc4fc73dbcfeaf706121804eb97b9. I'll reopen this issue so that @jussimalinen can review the final implementation, especially docs, of the enhanced Get Lines Matching Regexp keyword.
Thanks for the issue and the PR @HelioGuilherme66! I hope you can also review the changes and comment here if you think something could still be improved.

Looks good!


Move log_send into libkb so mobile can use it

@patrickxb
I thought I merged https://github.com/keybase/client/pull/2821 into master, but I didn't.
This actually merges it (and rebases it into a single commit)
It's the same code, I just cherry-picked each of those 4 commits

retest this please

Ok, LGTM (again 😄)


GH-2813 Maven lifecycle mapping errors when importing into Eclipse

Signed-off-by: Richard Eckart de Castilho<EMAIL_ADDRESS>GitHub issue resolved: #2813
Briefly describe the changes proposed in this PR:
Added lifecycle mapping xml formatting maven plugin for Eclipse (disable plugin in Eclipse)

PR Author Checklist (see the contributor guidelines for more details):

[x] my pull request is self-contained
[ ] I've added tests for the changes I made (not applicable - change to POM)
[x] I've applied code formatting (you can use mvn process-resources to format from the command line)
[x] I've squashed my commits down to one or a few meaningful commits
[x] every commit message starts with the issue number (GH-xxxx) followed by a meaningful description of the change
[x] every commit has been signed off

Ideally we would actually merge this into master, rather than develop, but it's not critical right now.


Task Model

name string
description string
completed boolean
related_url string
has_many :sponsor_tasks
has_many :sponsors, :through => :sponsor_tasks

Assuming merge request is accepted and closing


MJAR-263 Add test case for order in jar

Added a test for https://github.com/apache/maven-jar-plugin/pull/52.
Following this checklist to help us incorporate your
contribution quickly and easily:

[ ] Make sure there is a JIRA issue filed
for the change (usually before you start working on it).  Trivial changes like typos do not
require a JIRA issue.  Your pull request should address just this issue, without
pulling in other changes.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Format the pull request title like [MJAR-XXX] - Fixes bug in ApproximateQuantiles,
where you replace MJAR-XXX with the appropriate JIRA issue. Best practice
is to use the JIRA issue title in the pull request title and in the first line of the
commit message.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[x] Run mvn clean verify to make sure basic checks pass. A more thorough check will
be performed on your pull request automatically.
[x] You have run the integration tests successfully (mvn -Prun-its clean verify).

If your pull request is about ~20 lines of code you don't need to sign an
Individual Contributor License Agreement if you are unsure
please ask on the developers list.
To make clear that you license your contribution under
the Apache License Version 2.0, January 2004
you have to acknowledge this by using the following check-box.

[ ] I hereby declare this contribution to be licenced under the Apache License Version 2.0, January 2004

[ ] In any other case, please file an Apache Individual Contributor License Agreement.

@michael-o
It fails on my mac and on the mac of my colleague. Doesn't fail on my windows machine.
Hopefully it is reproducible on other macs, too.

Let me try this

Cannot make it fail on UFS and UFS. Asked @cstamas to try. I don't have access to a Max.

Regarding the failing test
Running post-build script: /home/runner/work/maven-jar-plugin/maven-jar-plugin/target/it/MJAR-263-order-in-jar/verify.groovy
Artifact[en.json] in the wrong order compared to Artifact[it.json]

That means that it.json was processed before en.json

This just has been confirmed by @cstamas. ls -f shows the FS order. @hboutemy I am still shocked why we have missed this ordering issue...

confirm failed on:
Apache Maven 3.8.6 (84538c9988a25aec085021c365c560670ad80f63)
Maven home: /usr/local/Cellar/maven/3.8.6/libexec
Java version: <IP_ADDRESS>, vendor: Homebrew, runtime<EMAIL_ADDRESS>Default locale: en_GB, platform encoding: UTF-8
OS name: "mac os x", version: "12.6", arch: "x86_64", family: "mac"

ls -f -1 src/it/MJAR-263-order-in-jar/src/main/resources/
.
..
default-configuration.properties
it.json.xml
de.json
excluded-file.txt
en.json
it.json
en.json.xml
fr.json
fr.json.xml
de.json.xml

unzip -l target/it/MJAR-263-order-in-jar/target/maven-jar-plugin-test-mjar-263-01-99.0.jar
Archive:  target/it/MJAR-263-order-in-jar/target/maven-jar-plugin-test-mjar-263-01-99.0.jar
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  09-28-2022 15:12   META-INF/
       90  09-28-2022 15:12   META-INF/MANIFEST.MF
        0  09-28-2022 15:12   foo/
        0  09-28-2022 15:12   foo/project003/
        0  09-28-2022 15:12   META-INF/maven/
        0  09-28-2022 15:12   META-INF/maven/org.apache.maven.plugins/
        0  09-28-2022 15:12   META-INF/maven/org.apache.maven.plugins/maven-jar-plugin-test-mjar-263-01/
      785  09-28-2022 15:12   default-configuration.properties
     1014  09-28-2022 15:12   it.json.xml
        6  09-28-2022 15:12   de.json
      875  09-28-2022 15:12   excluded-file.txt
        6  09-28-2022 15:12   en.json
        6  09-28-2022 15:12   it.json
     1014  09-28-2022 15:12   en.json.xml
        6  09-28-2022 15:12   fr.json
      543  09-28-2022 15:12   foo/project003/App.class
     1014  09-28-2022 15:12   fr.json.xml
     1034  09-28-2022 15:12   de.json.xml
     2079  09-28-2022 15:11   META-INF/maven/org.apache.maven.plugins/maven-jar-plugin-test-mjar-263-01/pom.xml
       91  09-28-2022 15:12   META-INF/maven/org.apache.maven.plugins/maven-jar-plugin-test-mjar-263-01/pom.properties

OK, this IT is invalid and the issue as well. We do sort and you missed to set <project.build.outputTimestamp>2019-10-02T08:04:00Z</project.build.outputTimestamp> in the IT POM. @slawekjaranowski Can you retry with the property?

With:
+
+  <properties>
+    <project.build.outputTimestamp>2019-10-02T08:04:00Z</project.build.outputTimestamp>
+  </properties>
+

Pass.
unzip -l target/it/MJAR-263-order-in-jar/target/maven-jar-plugin-test-mjar-263-01-99.0.jar
Archive:  target/it/MJAR-263-order-in-jar/target/maven-jar-plugin-test-mjar-263-01-99.0.jar
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  10-02-2019 08:04   META-INF/
       90  10-02-2019 08:04   META-INF/MANIFEST.MF
        0  10-02-2019 08:04   foo/
        0  10-02-2019 08:04   foo/project003/
        0  10-02-2019 08:04   META-INF/maven/
        0  10-02-2019 08:04   META-INF/maven/org.apache.maven.plugins/
        0  10-02-2019 08:04   META-INF/maven/org.apache.maven.plugins/maven-jar-plugin-test-mjar-263-01/
        6  10-02-2019 08:04   de.json
     1034  10-02-2019 08:04   de.json.xml
      785  10-02-2019 08:04   default-configuration.properties
        6  10-02-2019 08:04   en.json
     1014  10-02-2019 08:04   en.json.xml
      875  10-02-2019 08:04   excluded-file.txt
      543  10-02-2019 08:04   foo/project003/App.class
        6  10-02-2019 08:04   fr.json
     1014  10-02-2019 08:04   fr.json.xml
        6  10-02-2019 08:04   it.json
     1014  10-02-2019 08:04   it.json.xml
     2200  10-02-2019 08:04   META-INF/maven/org.apache.maven.plugins/maven-jar-plugin-test-mjar-263-01/pom.xml
       91  10-02-2019 08:04   META-INF/maven/org.apache.maven.plugins/maven-jar-plugin-test-mjar-263-01/pom.properties
---------                     -------
     8684                     20 files

Thanks for the help, sorry for startling you...


Question: How to expose generated localizations outside of a module from the CLI?

I might be missing some documentation regarding this. I noticed that the default access controls are set to internal. Is there a way to change this to public (from the CLI), or should we consider implementing a feature to enable this? Thanks!

This is the script that runs the package when needed:
swift run --package-path "$XCSTRINGS_TOOL_PATH" xcstrings-tool generate \
    "$LOCALIZATIONS_DIR/Localizable.xcstrings" --output "$OUTPUT_FILE"

Solved:
XCSTRINGS_TOOL_ACCESS_LEVEL=PUBLIC swift run --package-path "$XCSTRINGS_TOOL_PATH" xcstrings-tool generate \
    "$LOCALIZATIONS_DIR/Localizable.xcstrings" --output "$OUTPUT_FILE"

Looks like you found it already 👍 For future reference, there is a help page that you can reference too:
$ xcstrings-tool generate --help

USAGE: xcstrings-tool generate <inputs> ... --output <output> [--access-level <access-level>] [--development-language <development-language>] [--verbose]

ARGUMENTS:
  <inputs>                Path to xcstrings String Catalog file
        You can also pass multiple file paths to the same Strings Table. For example, a path to Localizable.strings as
        well as Localizable.stringsdict. An error will be thrown if you pass inputs to multiple different Strings Tables.

OPTIONS:
  -o, --output <output>   Path to write generated Swift output
  -a, --access-level <access-level>
                          Modify the Access Control for the generated source code (values: internal, public, package)
  -d, --development-language <development-language>
                          The development language (defaultLocalization in Package.swift) used when filtering legacy
                          .strings and .stringsdict files from the input paths
  -v, --verbose
  --version               Show the version.
  -h, --help              Show help information.


How to fetch details of single transaction ?

I want to fetch details of a single transaction only through the hash / id of the transaction. I need details like sender address, fee amount, no of confirmations and timestamp ? Please help.

You need something that keeps the history of the state of the blockchain, have a look at cardano-db-sync, ogmios or if you are looking for a hosted solution blockfrost.io.

You need something that keeps the history of the state of the blockchain, have a look at cardano-db-sync, ogmios or if you are looking for a hosted solution blockfrost.io.

I tried most of the stuff.
While building cardano-db-sync, I am getting a number of errors like DNSSubscriptionError, MuxError.
I tried running the postgrest in cardano-rosetta docker, but that too is failing.
cardano-rosetta has /search/transaction indexer API, which is still not implemented.
cardano-wallet provides individual transaction information, for that you need to provide wallet-id. Which we do not have if the transaction is from external sources.

Closing this. If this is still relevant please reopen.


No PTS after filter at frame 0!

Hi @rlaphoenix I'm trying to run VSGAN (4x-UltraSharp model) while watching video file using MPV. Here is the script:
import vapoursynth as vs
from pathlib import Path
import os
from vsgan import ESRGAN
core = vs.core

clip = video_in
clip = vs.core.resize.Bicubic(clip, format=vs.RGBS, matrix_in_s='709')
esrgan = ESRGAN(clip, device="cuda")
esrgan.load(os.path.abspath(os.getcwd())+ "\\4x-UltraSharp.pth")
esrgan.apply()
clip = esrgan.clip
clip = vs.core.resize.Bicubic(clip, format=vs.YUV420P8, matrix_s="709")
clip.set_output()

However, it gives me error when outputing the log from mpv
[   1.786][d][cplayer] Run command: vf, flags=73, args=[operation="toggle", value="vapoursynth=\"C:\\\\Users\\\\allan\\\\mpv\\\\script.vpy\""]
[   1.786][v][user_filter_wrapper] Setting option 'file' = 'C:\\Users\\allan\\mpv\\script.vpy' (flags = 0)
[   1.786][d][global] user path: 'C:\\Users\\allan\\mpv\\script.vpy' -> 'C:\\Users\\allan\\mpv\\script.vpy'
[   1.786][v][vapoursynth] using 32 concurrent requests.
[   1.831][v][vf] User filter list:
[   1.831][v][vf]   vapoursynth (vapoursynth.00)
[   1.831][d][vo/direct3d] Accepted image format: yuv420p
[   1.831][v][vo/direct3d] Accepted rendering methods for format='yuv420p': StretchRect=0x32315659.
[   1.832][d][vo/direct3d] Accepted image format: uyvy422
[   1.832][v][vo/direct3d] Accepted rendering methods for format='uyvy422': StretchRect=0x59565955.
[   1.832][d][vo/direct3d] Accepted image format: nv12
[   1.832][v][vo/direct3d] Accepted rendering methods for format='nv12': StretchRect=0x3231564e.
[   1.832][v][vo/direct3d] Rejected image format: bgr24
[   1.832][d][vo/direct3d] Accepted image format: bgr0
[   1.832][v][vo/direct3d] Accepted rendering methods for format='bgr0': StretchRect=0x16.
[   1.832][v][vo/direct3d] Rejected image format: rgb0
[   1.832][d][vo/direct3d] Accepted image format: rgb565
[   1.832][v][vo/direct3d] Accepted rendering methods for format='rgb565': StretchRect=0x17.
[   1.833][d][global] config path: 'fonts' -/-> 'C:\Users\allan\AppData\Roaming/mpv/fonts'
[   1.833][d][global] config path: 'fonts' -/-> 'C:/Users/allan/mpv/fonts'
[   1.833][d][global] config path: 'fonts' -/-> 'C:/Users/allan/mpv/mpv/fonts'
[   1.833][d][osd/libass] ASS library version: 0x1600000 (runtime 0x1600000)
[   1.833][v][osd/libass] libass API version: 0x1600000
[   1.833][v][osd/libass] libass source: commit: a2b39cde4ecb74d5e6fccab4a5f7d8ad52b2b1a4
[   1.834][v][osd/libass] Shaper: FriBidi 1.0.12 (SIMPLE) HarfBuzz-ng 4.3.0 (COMPLEX)
[   1.834][d][global] config path: 'subfont.ttf' -/-> 'C:\Users\allan\AppData\Roaming/mpv/subfont.ttf'
[   1.834][d][global] config path: 'subfont.ttf' -/-> 'C:/Users/allan/mpv/subfont.ttf'
[   1.834][d][global] config path: 'subfont.ttf' -/-> 'C:/Users/allan/mpv/mpv/subfont.ttf'
[   1.834][d][global] config path: 'fonts.conf' -/-> 'C:\Users\allan\AppData\Roaming/mpv/fonts.conf'
[   1.834][d][global] config path: 'fonts.conf' -/-> 'C:/Users/allan/mpv/fonts.conf'
[   1.834][d][global] config path: 'fonts.conf' -> 'C:/Users/allan/mpv/mpv/fonts.conf'
[   1.834][v][osd/libass] Setting up fonts...
[   1.834][v][osd/libass] Using font provider directwrite (with GDI)
[   1.834][v][osd/libass] Done.
[   1.838][v][osd/libass] fontselect: (Source Sans Pro, 400, 0) -> ArialMT, 0, ArialMT
[   1.840][v][vf] [vapoursynth] 1920x1080 nv12 bt.709/bt.709/bt.1886/limited/display SP=1.000000 CL=mpeg2/4/h264
[   1.840][i][autoconvert] Converting nv12 -> yuv420p
[   1.840][v][swscale] using 16 threads for scaling
[   1.848][v][swscale] Using zimg.
[   1.854][d][vapoursynth] initializing...
[   3.337][d][vapoursynth] initialized.
[   3.340][w][cplayer] Audio device underrun detected.
[   3.542][d][cplayer] Run command: vf, flags=64, args=[operation="del", value="0"]
[   3.542][w][cplayer] Option vf-del: -del is deprecated! Use -remove (removes by content instead of by index).
[   3.542][d][vapoursynth] destroying VS filters
[  13.652][d][vapoursynth] returning error on reset/uninit
[  13.652][d][vapoursynth] returning error on reset/uninit
[  13.652][d][vapoursynth] returning error on reset/uninit
[  13.652][d][vapoursynth] returning error on reset/uninit
[  13.652][d][vapoursynth] returning error on reset/uninit
[  13.652][d][vapoursynth] returning error on reset/uninit
[  13.652][d][vapoursynth] returning error on reset/uninit
[  13.652][d][vapoursynth] returning error on reset/uninit
[  13.652][d][vapoursynth] returning error on reset/uninit
[  13.652][d][vapoursynth] returning error on reset/uninit
[  13.653][d][vapoursynth] returning error on reset/uninit
[  13.653][d][vapoursynth] returning error on reset/uninit
[  13.653][d][vapoursynth] returning error on reset/uninit
[  13.653][d][vapoursynth] returning error on reset/uninit
[  13.653][d][vapoursynth] returning error on reset/uninit
[  13.653][d][vapoursynth] returning error on reset/uninit
[  13.653][d][vapoursynth] returning error on reset/uninit
[  13.653][d][vapoursynth] returning error on reset/uninit
[  13.653][d][vapoursynth] returning error on reset/uninit
[  13.653][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  13.654][d][vapoursynth] returning error on reset/uninit
[  15.000][e][vapoursynth] No PTS after filter at frame 0!

My Vapoursynth is:
VapourSynth Video Processing Library
Copyright (c) 2012-2022 Fredrik Mellbin
Core R59
API R4.0
API R3.6
Options: -
My mpv player is downloaded from https://sourceforge.net/projects/mpv-player-windows/files/64bit/

I won't consider this an issue because it doesn't seem to be an error with VSGAN, not that I can tell anyway. This sort of input is also not really supported. It isn't going to play anywhere near realtime anyway, so I don't seen the point.
The whole No PTS after filter at frame 0 doesn't seem to be a problem with VSGAN's underlying code, but a snowball of problems that happened when trying to load video_in from mpv.
This issue is effectively asking for MPV input support, which I will not do.


Not generating C++/CLI interface class from C++ interface

Brief Description
Given a C++ interface like the one below
class IShape {
public:
  virtual ~IShape();
  virtual void move_x(distance x) = 0;
  virtual void move_y(distance y) = 0;
  virtual void rotate(angle rotation) = 0;
  //...
};

CppSharp will still generate a class, not an interface class.
OS: Windows / OS X / Linux (include version and/or distro)
Windows 10
Used headers
CppSharp.h
Used settings
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using CppSharp;
using CppSharp.AST;
using CppSharp.Parser;
using GenerateBindings;
using CppSharp.Generators;
using System.IO;
using CppSharp.Passes;
namespace GenerateBindings
{
    class Library : ILibrary
    {
        public void Postprocess(Driver driver, ASTContext ctx)
        {
        }
        public void Preprocess(Driver driver, ASTContext ctx)
        {
            ctx.IgnoreHeadersWithName("wglext.h");
            ctx.IgnoreHeadersWithName("qikmath.h");
            ctx.RenameNamespace("qgameengine", "QuadrionEngine");
        }
        public void Setup(Driver driver)
        {
            string path = Directory.GetCurrentDirectory();
            Console.WriteLine(path);
            var options = driver.Options;
            //driver.ParserOptions.AddDefines("QGAMEENGINE_EXPORTS");
            //driver.ParserOptions.AddDefines("QENGINE_EXPORTS");
            //driver.ParserOptions.AddSourceFiles(@"C:\Users\jonth\Documents\Quad2012\projects\qengine\src");
            //driver.ParserOptions.AddSourceFiles(@"C:\Users\jonth\Documents\Quad2012\projects\qgameengine\src");
            driver.ParserOptions.AddIncludeDirs(@"C:\Users\jonth\Documents\Quad2012\projects\qengine\include");
            driver.ParserOptions.AddIncludeDirs(@"C:\Users\jonth\Documents\Quad2012\projects\qgameengine\include");
            driver.ParserOptions.AddIncludeDirs(@"C:\Users\jonth\Documents\Quad2012\ext\GL");
            driver.ParserOptions.AddSystemIncludeDirs(@"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include");
            driver.ParserOptions.AddSystemIncludeDirs(@"c:\Program Files (x86)\Windows Kits\8.1\Include\um");
            driver.ParserOptions.AddSystemIncludeDirs(@"c:\Program Files (x86)\Windows Kits\8.1\Include\shared");
            options.GeneratorKind = GeneratorKind.CLI;
            options.LibraryName = "QuadrionEngine";
            options.Headers.Add(@"C:\Users\jonth\Documents\Quad2012\projects\qgameengine\include\qcomponent.h");
            options.OutputDir = "ManagedBindings";
            options.CompileCode = true;
        }
        public void SetupPasses(Driver driver)
        {
        }
    }
}

Because C++ has no explicit constructs for interfaces I can see why it would have an issue detecting them as interfaces. Is there a possible workaround I can use to force the C++/CLI code that's generated to make them class interfaces?

Given the name of the original C++ class/interface, I assume you do not want a class at all - just an interface. This cannot happen automatically because, as you correctly noted, C++ has no notion of interfaces. What we can do is add a new feature to allow users to manually adjust certain classes to be interfaces instead. In the mean time, if the C# generator works for you, you could switch to that because if your interfaces happen to be used in multiple inheritances, the C# generator is going to detect them and add interfaces to complement your classes. The only minor problem you're going to have is that your interfaces will start with "II" instead of just "I", for example - IIShape.

Given the name of the original C++ class/interface, I assume you do not want a class at all - just an interface.

Correct.

In the mean time, if the C# generator works for you, you could switch to that because if your interfaces happen to be used in multiple inheritances, the C# generator is going to detect them and add interfaces to complement your classes.

I haven't tried to use the C# generator yet. Is it still able to call back into the native code? I ask because my plan is to instance the CLR within C++, load in a .NET assembly that references the C++/CLI assembly and instance a class that-way but due to the nature of these scripts I need to be able to marshal in both directions.

The only minor problem you're going to have is that your interfaces will start with "II" instead of just "I", for example - IIShape.
That's not a major issue to me, definitely something that can be fixed by just changing up the naming conventions in the C++ code, or adding a step in the generator.

Yeah this should be relatively easy to implement. There are a couple ways to do it.

You could add a new pass, analogous to CheckStaticClass (see https://github.com/mono/CppSharp/blob/master/src/Generator/Passes/CheckStaticClass.cs) that will check if the class is an interface with some heuristics, for example if it only contains pure virtual methods) and switch the class to be an interface.

Extend the CheckMacrosPass pass (see https://github.com/mono/CppSharp/blob/master/src/Generator/Passes/CheckMacrosPass.cs) with a new CS_INTERFACE that also changes to the class to be an interface.

In Preprocess change the class manually to be an interface (using the Type property in class, which would take a ClassType.Interface value in your case.

It should be quite easy to do it, if you want to give it a try.

By the way, it should be possible to replace your manual VS / Windows SDK header setup with the ParserOptions.SetupMSVC(VisualStudioVersion) method. If it doesn't work, let us know.


Huge gap between slides

When I add a breakpoint, there is a huge gap between 2 slides below 1280px. I'm trying to add a container to fix it and it looks like it works at first, but when I resize it below 1280, I can see how somewhere at around 1281px 3 shrinked slides appear for a second and only then 2. So basically adding a container messes the responsiveness up and I can't fix the gap. If I remove max-width: 23.75rem; from the card element (which is a slide), then each card becomes too wide and compensates the gap, but it looks ugly.

template:
<template>

                        <ItemCard
                            :recipe="recipe"
                            :pending="storeRecipe.pending" />

</template>

slider options:
const sliderOptions = {
    all: {
        slidesToShow: 3,
        slidesToScroll: 1,
        slideGap: '2rem',
        loop: false,
        transitionDuration: 300,
        transitionTimingFunction: ease,
    },
    '(width <= 1280px)': {
        slidesToShow: 2,
    },
    '(width <= 800px)': {
        slidesToShow: 1,
    },
};

container:
@media (width <= 1280px) {
    .slider-container {
        width: 100%;
        max-width: 800px;
    }
}

@michaelprys please create a sandbox and link it here so I can debug it

@MananTank Thank you for the response. Here's the reproduction: StackBlitz Reproduction. Please, open preview so you can use devtools.
I set the max-width of 24.75rem for a card in ItemCard.vue, otherwise the card would look too wide when there's 1 slide only. You can find blaze-slider config in ItemSwiper.vue.
Issues:

As you can see I set two breakpoints - 1200px and 801px. If you resize the window around 1200-1201px you'll notice a bug where 3 slides shrink quickly and only then turn into 2 slides, if you resize back there's a big gap that appears for a second as well.
On <= 800 where there's only 1 slide, if you try to flip the slide you'll notice a huge gap. But again, if you remove the max-width from card in ItemCard.vue, the gap disappears, but the card is going to look wide and ugly.

Also, I couldn't find the pagination styles, so I decided to make a custom one. Are there any prepared styles that I can use for pagination and arrows? There was some in your demos, but I couldn't find them in node_modules.

@MananTank Hi! Did you manage to fix it? I want to test it badly.


move context

I believe we should move the context to this folder so that https://didcomm.org/messaging/v2 will resolve the context file. You currently need to navigate to https://didcomm.org/messaging/contexts/v2/

Is this just for the simplicity of the URL, or is there another reason?


cannot rename a variable

Type: Bug
either using F2 shortcut or through a menu.
Throws "IndexError: list index out of range"
Extension version: 2024.9.1
Windsurf version: Windsurf 1.94.0 (d33d40f6cd3a4d7e451b22e94359230a4aa8c161, 2024-11-27T21:27:37.168Z)
OS version: Darwin arm64 24.1.0
Modes:

System Info

Item
Value

CPUs
Apple M1 Pro (10 x 2400)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okskia_graphite: disabled_offvideo_decode: enabledvideo_encode: enabledwebgl: enabledwebgl2: enabledwebgpu: enabledwebnn: disabled_off

Load (avg)
6, 5, 5

Memory (System)
16.00GB (0.12GB free)

Process Argv

Screen Reader
no

VM
0%

Please can you list the extensions used
Ie what extension are you using to get the language capabilities
Jupyter doesn’t provide such functionality, it’s generally provided by some other extension

@DonJayamanne
Here it is:
evidence.sqltools-bigquery-driver
ms-toolsai.datawrangler
ms-azuretools.vscode-docker
donjayamanne.githistory
github.codespaces
github.vscode-pull-request-github
ms-toolsai.jupyter
ms-toolsai.vscode-jupyter-cell-tags
ms-toolsai.jupyter-keymap
ms-toolsai.jupyter-renderers
ms-toolsai.vscode-jupyter-slideshow
yzhang.markdown-all-in-one
ms-python.pylint
ms-python.python
ms-python.debugpy
mechatroner.rainbow-csv
ms-vscode-remote.remote-containers
ms-vscode-remote.remote-ssh
ms-vscode-remote.remote-ssh-edit
ms-vscode-remote.remote-wsl
ms-vscode-remote.vscode-remote-extensionpack
ms-vscode.remote-explorer
ms-vscode.remote-server
buenon.scratchpads
mtxr.sqltools
gruntfuggly.todo-tree
redhat.vscode-yaml

I've tried extension bisect and it failed on step 1 when all extensions are disabled. So I'd say its not the extensions.

Please can you disable all extensions except for

Jupyter and Python extension and try this again.
Also please can you list the versions.

@DonJayamanne I appologize for the confusion.
I have posted the issue in a wrong place.
The problem I have is in Windsurf only. In VSCode it works OK.


Double/decimal value don't appear into the Model Schema

Hi, I don't know how to "reopen" a ticket, so I'll create a new one:
Hi, double or decimal value appear in Model of "Data Type" as a "number", but doesn't appear in "Model Schema".
Check the attach screen capture, see the longitude and latitude:

Where are you using the long/lat? In a function? class?
Can you share the function/class signature?

sure, this is the class
<DataContract()>
Public Class clsGeo
Private _longitude As Double
Private _latitude As Double
Private _derniere_mise_a_jour As String
<DataMember()>
Public Property longitude As Double
    Get
        Return _longitude
    End Get
    Set(value As Double)
        _longitude = value
    End Set
End Property

<DataMember()>
Public Property latitude As Double
    Get
        Return _latitude
    End Get
    Set(value As Double)
        _latitude = value
    End Set
End Property

<DataMember()>
Public Property derniere_mise_a_jour As String
    Get
        Return _derniere_mise_a_jour
    End Get
    Set(value As String)
        _derniere_mise_a_jour = value
    End Set
End Property

End Class

Hi JFDionne
This is an issue with swagger UI
Later I'll release an update to SwaggerWcf with an updated dist of Swagger UI
Thanks
Abel

updated SwaggerWcf to 0.1.12 with new dist of Swagger UI
can you check if it fixes this issue?
Thanks
Abel

working! thank :)

glad to know


[e2e] eg release upgrade test

Tests eg upgrades - ensuring zero-downtime during the upgrade.
We want to ensure that the complete helm deployment is upgradable (Including helm template changes).
Direction:

Begin with the removal of the existing EnvoyGateway version using Helm uninstall.
Proceed to install the most recent stable release, or an alternate specified version if determined by the last_version_tag environment variable.
Introduce a minimal traffic load to ensure uninterrupted routing to an already deployed backend.
Update the EnvoyGateway to the latest main version.
Validate that both the upgrade and service connectivity were seamlessly maintained without disruptions.

Which issue(s) this PR fixes:
https://github.com/envoyproxy/gateway/issues/1713

I'm thinking should use a seprated test suite?

I'm thinking should use a seprated test suite?

Please share your feedback on the overall approach :)
If possible lets execute the tests at least once via the Continuous Integration system, as I'm uncertain about the completeness of local testing. If everything functions as expected, we can then move forward with restructuring this into a dedicated test suite

I'm thinking should use a seprated test suite?

Probably a good idea, as this may in the future depend on features like graceful drain that we will be enabled with a dedicated EnvoyProxy, as discussed #2839. Also, the install/uninstall/upgrade may be have side effects to other tests if this test is not executed in isolation after the main suite.

Please share your feedback on the overall approach.
If possible lets execute the tests at least once via the Continuous Integration system, as I'm uncertain about the completeness of local testing. If everything functions as expected, we can then move forward with restructuring this into a dedicated test suite

Sorry Alex, didn't notice that the CI was off for this. Sure, I enabled it now.

/retest

@alexwo  the code looks good added some minor comments, thanks for getting this in into v1.0 !

@alexwo the code looks good added some minor comments, thanks for getting this in into v1.0 !

Absolutely!  :)

This looks good, there are many similarities between the PRs you and I wrote about the Helm library, maybe we need a way to make this part of the code reusable in egctl/e2e!  ❤
@alexwo

This looks good, there are many similarities between the PRs you and I wrote about the Helm library, maybe we need a way to make this part of the code reusable in egctl/e2e! ❤ @alexwo

Sure, I can check if we can maybe make it reusable.

This looks good, there are many similarities between the PRs you and I wrote about the Helm library, maybe we need a way to make this part of the code reusable in egctl/e2e! ❤ @alexwo

Sure, I can check if we can maybe make it reusable.

This looks good, there are many similarities between the PRs you and I wrote about the Helm library, maybe we need a way to make this part of the code reusable in egctl/e2e! ❤ @alexwo

Sure, I can check if we can maybe make it reusable.

Grateful! It looks like the egctl install/egctl uninstall I wrote relies more heavily on the Helm library part, maybe I can extract it into the utils package so that it can share functionality!

/retest

/retest

/retest

/retest

/retest


feat: add build.keepIndexHtml plugin option

Closes #70.
vite-ssr build removes index.html from the client bundle to prevent serving it by mistake in an SSR app.
However, there may be use cases where index.html should be preserved in the client build (e.g. when using server side routing to selectively use SSR for a subset of routes).
Let's provide a plugin option build.keepIndexHtml so that a user can keep index.html in the client bundle if desired.

@Xenonym Thank you for also adding docs! Will be released soon.


Use gfx::Canvas

It would be super convenient to use Canvas for initialization and drawing, since it replaces 3 parameters at once. Almost all of the gfx demos (as well as gfx_scene and stuff) are using Canvas now. However, using it for your example may require porting it to piston-window.

@kvark Will use of Canvas in library APIs make it less flexible?

What I want is just some additional functions to work with Canvas, so it's not going to cut off any flexibility. Besides, the example code would be much cleaner.
Regards,
Dzmitry

On Apr 16, 2015, at 10:19, Sven Nilsen<EMAIL_ADDRESS>wrote:
@kvark Will use of Canvas in library APIs make it less flexible?
—
Reply to this email directly or view it on GitHub.

@kvark Yeah, that would be nice. Do you think that piston-window should use Canvas? I was wonder whether APIs using Canvas works with those without it and vice versa.

I believe piston-window and Canvas are made for each other.
APIs for the Canvas are not backwards compatible, so they need to be built on top of lower level interfaces, which operate with devices or factories directly.
Regards,
Dzmitry

On Apr 16, 2015, at 10:43, Sven Nilsen<EMAIL_ADDRESS>wrote:
@kvark Yeah, that would be nice. Do you think that piston-window should use Canvas? I was wonder whether APIs using Canvas works with those without it and vice versa.
—
Reply to this email directly or view it on GitHub.

@kvark Thanks for the info!

Trying to get this working, don't think they are playing together quite nicely yet.
Looks to me like piston_window::Gfx should be replaced with gfx::Canvas? Otherwise I'm not sure how to to get a Canvas and a PistonWindow at the same time.

I'll try whipping up a PR for PistonWindow trying this ...


does mosn support the mirror in virtual service's HTTPRoute

does mosn support the mirror in virtual service's HTTPRoute

I have found the pr, mosn has support this feature .


Trouble with the scaffolding

I try an build in VS Code with react for a custom widget. I run @azure/api-management-custom-widgets-scaffolder package However, I keep getting blocked by this: subscriptions//resourceGroups//providers/Microsoft.ApiManagement/service/

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

ID: f7ef2e67-b903-a9fe-f0de-50e8072cf3e2
Version Independent ID: 758487d9-5b70-5eb3-800b-abd5f08f3590
Content: Add custom functionality to the Azure API Management developer portal - Azure API Management
Content Source: articles/api-management/developer-portal-extend-custom-functionality.md
Service: api-management
GitHub Login: @dlepow
Microsoft Alias: danlep

Found it... It is the Overview .json view


Support optional types when providing an explicit key.

I noticed that optional types work when using ObservableUserDefault without metadata, but fail to extract type information when a key is provided along with an optional type. This is important because providing keys is necessary for backwards compatibility, while most of our user defaults are optional. Relatedly, it would be nice if the api allowed optional defaultValue and store arguments to match the current AppStorage apis.
Successful
@ObservableUserDefault
@ObservationIgnored
public var lastViewed: Date?

Error
@ObservableUserDefault(.init(key: "LastViewedKey", defaultValue: nil, store: .standard))
@ObservationIgnored
public var lastViewed: Date?

The error is of the message Generic parameter 'DefaultValue' could not be inferred.
Attempting to provide type hinting gives a different error:
Error with hinting
@ObservableUserDefault(.init(key: "LastViewedKey", defaultValue: nil as Date?, store: .standard))
@ObservationIgnored
public var lastViewed: Date?

The error message of the above is '@ObservableUserDefault' unable to extract the required values from the argument
Thanks for the macro!

Thanks for pointing that put. Updated.


Type com/facebook/react/modules/core/JavascriptException not present

Description
This happens on both debug and release variants using the commands react-native run-android and react-native run-android --variant=release respectively.
However, when I run the same run commands on the Android emulator, everything runs fine, even the release build.
I also asked a StackOverflow question

What I've tried so far:

rm -r node_modules
yarn cache clean
react-native unlink, react-native link
./gradlew clean
Allowing permission for app to display popup window

Notes:

USB debugging enabled
Install via USB enabled
Verify apps over USB disabled

From the stack trace, my guess is that there was some error loading JSC on my phone or something.
Reproduction Steps and Sample Code

Get a MIUI phone.
react-native run-android.
Error occurs.

Additional Information

React Native version: 0.43.3
Platform: Android
Development Operating System: macOS
Dev tools: Gradle 2.14.1

Hi there! This issue is being closed because it has been inactive for a while.
But don't worry, it will live on with Canny! Check out its new home: https://react-native.canny.io/feature-requests/p/type-comfacebookreactmodulescorejavascriptexception-not-present


Add commitizen

closes #50

Deploy preview for calpa ready!
Built with commit d140aa15532142d4dff984d8cf8ee562217dd13c
https://deploy-preview-52--calpa.netlify.com


Feature Request: Plugin support

I'd love to have possibility of creating my own warden env commands like warden env-flush or warden env-reinit with files located in my ~/.warden/ directory.
This way I'm able to adjust the system exactly to my needs.
Also that would be great to have an option for adding my own environment variables like
M2COACH_FEATURE=1 and then create m2coach.feature that is included into warden env generation.

Closely related to #64; specifically the idea outlined in this comment: https://github.com/davidalger/warden/pull/64#issuecomment-573112736


176 bidding pallet intergrate share distributor pallet

Call share distributor from bidding pallet
Added complementary functions in housing fund to manage unreservation fund and purchase operation
Updated Onboarding::do_buy() with housing fund to manage fund unreserved for the purchase in Housing Fund
Updated Share_Distributor::create_virtual() with housing fund purchase process to keep transaction history and stay up to date
Updated tests to cover the updates

I don't see any modification of Share_Distributor::create_virtual() as stated in the PR manifest: are you still working on it?

No, but the change wasn't onboarded i the commit. Now you should see it.

Codecov Report

Merging #178 (9e22410) into main (b613c4a) will increase coverage by 1.34%.
The diff coverage is 96.01%.

@@            Coverage Diff             @@
##             main     #178      +/-   ##
==========================================
+ Coverage   76.81%   78.16%   +1.34%
==========================================
  Files          49       49
  Lines        4124     4378     +254
==========================================
+ Hits         3168     3422     +254
  Misses        956      956

Impacted Files
Coverage Δ

pallets/bidding/src/mock.rs
85.71% <ø> (+7.14%)
:arrow_up:

pallets/housing_fund/src/lib.rs
91.11% <ø> (+1.11%)
:arrow_up:

pallets/onboarding/src/lib.rs
88.79% <ø> (ø)

pallets/voting/src/lib.rs
79.62% <75.00%> (ø)

pallets/housing_fund/src/functions.rs
86.72% <83.78%> (-1.59%)
:arrow_down:

pallets/bidding/src/lib.rs
85.06% <84.00%> (+5.96%)
:arrow_up:

pallets/bidding/src/tests.rs
99.79% <100.00%> (-0.21%)
:arrow_down:

pallets/housing_fund/src/structs.rs
100.00% <100.00%> (ø)

pallets/housing_fund/src/tests.rs
100.00% <100.00%> (ø)

pallets/onboarding/src/functions.rs
88.31% <100.00%> (+0.15%)
:arrow_up:

... and 6 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


[core] Refactor snapshot record history

fix #781
Purpose
Refactor the snapshot recording method of Paimon, and add the TableMetadata object.
Why do we need this change?
First of all, a linear history can enable us to achieve some advanced features, such as branching. Secondly, relying on the file system management mode is unfriendly, especially for object storage. We should try to avoid using List\Rename and other operations that are very expensive on object storage. Finally, this is conducive to our transaction management.
Tests
API and Format
Documentation
Add a parentId field to the Snapshot object to record its ancestor relationship, and make the snapshot record a linear chain.
Snapshot:

filed
type

parentId
Long
The parent snapshot id

TableMetadata :

filed
type

version
Integer
the version of table metadata

last-updated-ms
Long
Update time of the latest snapshot

properties
Map

current-snapshot-id
Long
the latest snapshot id

snapshots
List
A collection of all valid snapshots

The new way will have a file named METADATA_LATEST , which records the latest snapshot id. The new snapshot will be saved in a file prefixed with metadata-, each file will contain all the valid snapshot sets.
-rw-rw-r-- 1 dev dev 696  4月 11 14:44 metadata-1
-rw-rw-r-- 1 dev dev   1  4月 11 14:44 METADATA_LATEST

How to parse the new version of the snapshot?
Add SnapshotManagerV2 to parse TableMetadata , which extend from SnapshotManager (this class has been refactored into an abstract class, and the original one is renamed to SnapshotManagerV1).
Some key points:

If the table version is older, it will be upgraded to a new version table when SnapshotManagerV2 is initialized. On this point, we can also upgrade it to a new version table on the commit action.
There is a logic in SnapshotManagerV2 to determine whether the table will be parsed by SnapshotManagerV1 (old version table, no TableMetadata).

SnapshotManagerV2 and SnapshotManagerV1?
Both SnapshotManagerV2 and SnapshotManagerV1 extend from SnapshotManager, and when SnapshotManagerV2 parses an older versions table, it will use SnapshotManagerV1's method instead.
Compatibility
SnapshotManagerV2 itself cannot parse old tables, but I added a judgment logic in almost every public method of it. If this logic thinks that the target table should be parsed by V1, then it will use V1 instead.
When to upgrade the table?

upgrade the table when SnapshotManager is initialized;

upgrade it when submitting a new snapshot;

provide a tool by Paimon to let developers manually upgrade.

So there is a trade-off here. Because paimon is currently in the incubator and is still in the early stage, I think we don’t need to worry too much about compatibility.

Thanks @hililiwei !  I have two comments:
Compatibility
Maybe we can have a compatible way to finish this. For example, a snapshot has parent id, parent id can be exists, none or null, three types. If it is exists, find its parent. If it is none, it should be root snapshot. If it is null, it is a old version, its parent is snapshot id - 1.
When should we finish this?
There is currently no benefit to just modifying this behavior, we need to wait until we need it, such as when we need to support git-like features, and we decide to do it.

@JingsongLi Sorry for the late reply.

Maybe we can have a compatible way to finish this. For example, a snapshot has parent id, parent id can be exists, none or null, three types. If it is exists, find its parent. If it is none, it should be root snapshot. If it is null, it is a old version, its parent is snapshot id - 1.

This solution is indeed relatively small modification, compatibility is also very good. I also thought of using a similar method at first. But I chose a more complex method, because I wanted to avoid using traditional file system management methods such as list/rename to manage metadata.
I will try to update the PR with this way.

When should we finish this?
There is currently no benefit to just modifying this behavior, we need to wait until we need it, such as when we need to support git-like features, and we decide to do it.

Yes, when we try to introduce git-like features, we need to finish it. But more than that, the new way of explicitly specifying parent snapshot id helps us better use paimon on object storage.

@JingsongLi I added the ParentId field and modified the related methods.

@hililiwei Very thanks for your investigation.
Now that the scene is not yet clear, we will consider this change in the future.


Looking for new maintainers

Hey folks!
I intend to step down as the maintainer of this repository shortly. I'm off to new adventures and would like to be able to focus on this new direction going forward.
Unfortunately, I'm the only active maintainer here, so it's critical that we find someone to replace me. If anyone reading this is interested in becoming a maintainer, please post here or contact me privately, as you prefer. I'm also happy to stay on for a bit, to assist in the transition.
cc @mvertescher (original author of this crate, and the other member in the @stm32-rs/stm32f7 team)
cc @systec-ms (most active contributor recently)
cc @adamgreig (chief of stm32-rs)

Thanks for all your hard work here and good luck with Fornjot!

Hello, I am wondering if this might be a good way for me to "jump in the deep end" with embedded rust.  I'm new to rust, but well experienced with embedded (see website). I started learning rust a couple of months ago, initially covering the basics on the desktop, and then to embedded.  I have been working with the stm32f7xx-hal on a Nucleo-F767ZI.
Can you describe the HAL maintainer role and responsibilities, and the relationship to the embedded-rust wg and embedded-hal teams?

Hey @darryln, thank you for your interest!

Can you describe the HAL maintainer role and responsibilities

Well, there is no formal definition. I'd say, the maintainers most important job is to keep the project running, so it can keep being of use to people. Sometimes people run into limitations and submit a pull request to fix those limitations. In the absence of any factors that make that a bad idea, I think a maintainer's responsibility is to get that pull request merged, so that person can keep using the project.
I'm busy, and haven't been using this HAL myself for a long time. That gives me limited resources to fulfill that maintainer role, so I've been leaning heavily on contributors to make things work. I look over a pull request to see if anything jumps out as wrong (if so, I leave a comment). If I don't have time to check stuff against the reference manual, I ask the contributor how confident they are about their change. If I don't have time to test it, I ask how well they tested it.
If they express doubt in either of those, I slap on a help wanted tag, and leave a comment making it clear that we need help figuring this out. If later someone jumps in and says "this is okay", then I merge. If that doesn't happen for a while, I might still merge. Better to keep things moving. At least it works for that contributor, and if it breaks anything else, that can be fixed later. Hopefully whoever notices will open an issue (that you can tag with help wanted, if necessary) or open a pull request. Open source is for everyone, and by everyone.
If you have the wherewithal to do proper reviews and testing, maybe even develop a strong vision for where the project ought to go, all the better. Lots of maintainers are way more perfectionist than I am, but I think perfectionism is something you need to earn by being able to act on it (with reviews, testing, guidance, or fixing it yourself). If you can't do that, it's way better to keep things moving, than to let pull requests pile up for lack of resources.
Everyone can write code, review, test, and guide people to a proper solution. But your exclusive power as a maintainer is to press the "merge" button. That makes it the most important part of the job.

and the relationship to the embedded-rust wg and embedded-hal teams?

For me, very little these days. I used to be way more involved in the community, back when I did project work in the embedded Rust space for a living. I hang around the Rust Embedded and stm32-rs channels on Matrix. Following those to stay up to date would be ideal, but just being there so people can ping you, if there's a reason to, is already a good thing.
It certainly wouldn't hurt to follow a few key repositories (like rust-embedded/wg, embedded-hal, stm32-rs) on top of that, but it's not critical for being a maintainer here. If there's something that needs to happen here due to a change there, someone who cares can come over and submit an issue or pull request. Again, open source is for everyone, by everyone.

I hope my little essay here was helpful :smile:
Let me know, if you have any more questions.

@hannobraun
@systec-ms
It's a very nice essay, and I appreciate the detail.
I'm looking into everything you mentioned, and it will be some days before I'm up to speed, but at this point, I'm intrigued.  I ain't scared, but could be suffering from Dunning-Kruger haha. :-)
Meanwhile, questions...

At the bottom of the CI actions I see "test", what does that do, exactly?
What proportion of issues here are caused by upstream changes (embedded-hal, stm32-rs, cortex-m) vs local bugs or feature adds?
embedded-hal is currently at 1.0.0-alpha.6, who is doing gap analysis?
-You guys know about Linaro LAVA? It's their CI system that builds and downloads embedded linux images 24/7 to about a gazillion SBCs. Is anybody doing that for stm32-rs?

What proportion of issues here are caused by upstream changes (embedded-hal, stm32-rs, cortex-m) vs local bugs or feature adds?

Looking at the list of merged pull requests, the majority of changes are local. Upstream changes generally don't cause issues in this project, unless an upstream project (accidentally) ignores semantic versioning (or rather, the version of it implemented by Cargo). I can't remember when/if that last happened.
New upstream versions might cause issues for users, if they use this HAL together with other libraries that have already upgraded to newer versions. In the ideal case, that will result in that user submitting a pull request with a dependency upgrade here.

embedded-hal is currently at 1.0.0-alpha.6, who is doing gap analysis?

I'm not completely sure I understand what gap analysis means in this context, so please tell me, if my reply doesn't make sense. @systec-ms has started upgrading this HAL in #157. There's also some discussion in there about possible approaches.

where does probe-rs fit into the embedded rust ecosystem?

probe-rs is a critical piece of infrastructure that was readily adopted within the community as it became available, because everyone was really tired of OpenOCD. That this repository still contains OpenOCD configuration, but no configuration for cargo-embed (a probe-rs "frontend") or probe-run (a project based on probe-rs) speaks to the sub-optimal maintenance status of this repository.
If I had had the time to do actual development here, instead of just coordinating contributors, throwing out the OpenOCD/GDB config and replacing it with one of those other options would have been the first thing I did (as the mandatory prerequisite for whatever else I was going to do :grin:).

@hannobraun thanks and also good success with Fornjot.
Sorry for my late reply (@systec-ms private account here), I've been thinking about whether or not to sign up as a new maintainer, but haven't come to a conclusion yet.
I'm interested, but not sure if I'm ready for it.
The next half year I will write my thesis, so my time will probably be limited. I made my previous contributions here during my internship semester. So my own development contributions will also be reduced and it will initially come down to me looking at PR and merging.
Also, I just started Rust 5 months ago.

I'm not completely sure I understand what gap analysis means in this context, so please tell me, if my reply doesn't make sense. @systec-ms has started upgrading this HAL in #157. There's also some discussion in there about possible approaches.

There is also https://github.com/stm32-rs/stm32f4xx-hal/pull/388 from @burrbull, where you could certainly borrow some things ;).
By the way, if you would become a maintainer here, would you be part of the stm32-rs orginization or how would that work?

Just for remind:
Main matrix group: https://matrix.to/#/#rust-embedded:matrix.org  Meetings each Tuesday 19 UTC
stm32 matrix group: https://matrix.to/#/#stm32-rs:matrix.org

@hannobraun thanks and also good success with Fornjot.

Thank you!

I'm interested, but not sure if I'm ready for it.
The next half year I will write my thesis, so my time will probably be limited. I made my previous contributions here during my internship semester. So my own development contributions will also be reduced and it will initially come down to me looking at PR and merging.
Also, I just started Rust 5 months ago.

The decision is ultimately yours, of course. I would just recommend not to be intimidated by the role. As I explained above, I've been leaning heavily on contributors for a while now, and my successors doing the same would be a lot better than leaving the repository unmaintained.
Of course, the ideal maintainer would know the hardware inside out, develop a strong vision for the project, and work tirelessly to realize that vision. I've never been that ideal maintainer (at least around here, certainly tried in other projects :grin:), and you wouldn't have to be either.
Most of what's required is the willingness to invest some time and focus. From a technical perspective, you're definitely ready (and given your recent experience working on this HAL, probably more so than me).

By the way, if you would become a maintainer here, would you be part of the stm32-rs orginization or how would that work?

Yes, you'd be invited to the stm32-rs organization (probably by @adamgreig; I don't think I can do that). By default, your membership would be private (at least I think that's how GitHub orgs still work), so you could choose if you want to be visible to non-members on the organization page.
In addition, Adam or me would add you the the @stm32-rs/stm32f7 team. That would give you all the technical access needed to maintain this repository and publish new versions of stm32f7xx-hal on crates.io.
stm32-rs is a very loose organization. There are no obligations for members that I'm aware of.

embedded-hal is currently at 1.0.0-alpha.6, who is doing gap analysis?
I'm not completely sure I understand what gap analysis means in this context, so please tell me,

'gap analysis' = tasks/effort required to meet the embedded-hal 1.0.0 spec.

@systec-ms has started upgrading this HAL in #157.

I agree with your comment about creating a branch for embedded-hal 1.0.0-alpha.

If I had had the time to do actual development here, instead of just coordinating contributors, throwing out the OpenOCD/GDB config and replacing it with one of those other options would have been the first thing I did (as the mandatory prerequisite for whatever else I was going to do grin).

Same. I almost got it working today. probe-run worked perfectly, whereas the vsix was able to flash but doesn't seem to handle bp and stepping reliably.  I asked for help on #probe-rs:matrix.org.

Hi,
I haven't had a lot of experience with Rust at the moment, and still struggling with some complex traits/macro stuff that we can find in those HALs, but definitely willing to learn more in the future.
Maybe having a few new maintainairs coming along at the same time could be nice, so they could discuss about the best solutions together will they get more confortable at the maintainer's job.
I could help with that, but wouldn't be very confident to do the job alone.

Thanks @hannobraun!
I'm around to help with any permissions issues so please don't feel you have to sort anything out on that front.
Perhaps @maximeborges @darryln and @oyren would be interested in helping maintain it together? Let me know and I can sort out team access.

Perhaps @maximeborges @darryln and @oyren would be interested in helping maintain it together? Let me know and I can sort out team access.

Would works for me!

I do not have special knowledge of this hardware but if you are interested, I can join as maintainer here at least to do some reviews and keep the ball rolling.
I would rather serve as bridge to embedded-hal/ewg and bring more of a high-level software engineering perspective.

I've made the new team members maintainers in @stm32-rs/stm32f7 (I was the only maintainer in that team previously) and have left the team. I've also unwatched this repository, but feel free to ping me, if you need me for anything!
Thanks everyone, and good luck with the project!


Project Euler - Problem #5 Solution

Added a solution to Project Euler Problem #5 (https://projecteuler.net/problem=5)
Finds the prime factors of all numbers from 1 to 20 and merges them into a single list. The product is 232,792,560 which is the correct answer.
Also for reference, running combinedPrimeFactorisation 10 returns 2520 which is the answer given in the link above for the first multiple of all numbers from 1 to 10.

Thanks for contributing!


Formalize Project Naming Conventions

In recent PRs to k/website, @sftim has raised concerns about our choice to use "Gateway API" instead of "The Gateway API". We have not formally documented that decision or had detailed discussion about that preference. This issue intends to be a place for discussion and eventually documentation of our decision here.

For the record, I believe our name is confusing because we both call the project "Gateway API" and have a resource within that project that is named "Gateway". In Kubernetes, we often refer to an API using the following pattern: "The EndpointSlice API". As such, I interpret "The Gateway API" as referring to the Gateway resource. On the other hand, "Gateway API" is meant to be a broader term that refers to the project as a whole, and not just the Gateway resource.

(could turn this issue into a GitHub Discussion)

We need a way to talk about the API kind “Gateway” and the family of APIs that this project has produced - ideally, in a way that helps people tell the two meanings apart.


Getting Availability Start Time from Shaka Player

Have you read the FAQ and checked for duplicate issues:
Yes
What version of Shaka Player are you using:
2.1.2
I've been looking for a way to get the Availability Start Time (AST) back from Shaka for the manifest it has parsed, I saw this previous discussion from 2015 https://groups.google.com/forum/#!topic/shaka-player-users/FkBdCt8mOIU Is parsing the manifest outside of Shaka the best way to get the AST?
In my case I'm being provided a stream that contains multiple items in succession and I know when each item starts/ends. If I know the AST and current position I can determine which item in the stream is currently playing and display information about it to the user.
A method on the player would be helpful to me, but I'm not sure if that is something worthwhile for others.

There is no way to get this currently, but it's easy to add.


nix: init

Add a flake.nix for building the package as well as a dev shell for easy hacking :)
~Depends on #7~

LGTM


Issue when changing sources in an ended event

Hello all,
We've been hitting a strange issue with the latest MediaElement.js (4.2.10) at https://github.com/airsonic/airsonic/pull/1080 that we can't seem to resolve, and we'd appreciate some help.
The following sequence of events seems to work for HTML5 MediaElement, but not with MediaElement.js. For me, this fails in Firefox (67/68) only, not on Chromium (75).

Set src, then call load() and play() for a first MP3 stream.
In the ended event handler, do the same for a second MP3 stream.

Step 2 appears to buffer the second stream correctly, but playback never starts, and the console shows AbortError: The fetching process for the media resource was aborted by the user agent at the user's request.:

I've managed to put together a short reproduction case at https://github.com/fxthomas/mediaelement-test-aborterror.

I think I've managed to track down the root cause of this issue. I updated the test repo with some more info about it!

I've dug a bit into it, and managed to track the introduction of that particular pause call back to 33080d6b5b563e4d9e7b78dc443ecb26c4f49a6d (yup, that's old). That does not tell me a lot, unfortunately...
It seems that calling pause() should be unnecessary when we're in the ended event (the stream should have already finished playing), but maybe I'm missing something.
Is it possibly needed by a renderer (in which case, which one?) or does it trigger UI updates (in which case, can we decouple them from calls to pause())?
I'll continue to dig, maybe I'll find something.

Any success with this one ?

Well, holidays prevented me from working on this, but I'm back :wink:
After doing some more investigation in the internals of the MEJS player, I found out that our (in Airsonic) initialization order was a bit unusual. In particular, we were adding events to the MEJS player before it was fully initialized, and our event handlers were carried over once MEJS had finished its full initialization.
I believe that https://github.com/airsonic/airsonic/pull/1254 fixes the issue completely on our side, and I'm not certain it should even be considered a bug on MEJS's part (since technically we were using it somewhat wrong).

It might be detecting added event handling during initialization to warn that something is wrong, or at least document it somewhere :)

Ok IIUC, there is no issue in MediaElement ... closing ..


Improv: check pre-requesites

check if

zsh
wget
curl
git
are available and fail the setup if not

this might be as easy as running a which zsh wget curl git and checking if the output has all of them at the trailing side of each line.

rather, the exit code of the which command can be used.


fix(plugin-search): fix hotkey when clicking any element on page (fix #746)

@meteorlxy I am not sure why the original one force the target to be body, but clicking any anchor element or even clicking a haeding or paragrah, will cause the next keypress has a target of that element, so the hotkey actually only works after refreshing page with no action (except scrolling) now. And I think that's not the right behavior.
If you are worrying about people may use the s key for something, we may add ctrl key to the default hot key.

That's migrate directly from v1

Rebuild with #831


The Vulnerabilities field is to small.

When scanning node:8 I get this error:
 /usr/local/bundle/gems/mysql2-0.4.10/lib/mysql2/client.rb:120:in `_query': Mysql2::Error: Data too long for column 'vulnerabilities' at row 6: UPDATE `tags` SET `tags`.`vulnerabilities`

I don't think its a good idea to store then in one field. But thats another issue.

I remember that we avoided this by reducing the amount of data being stored. Maybe we should make the column larger...

I don't think its a good idea to store then in one field. But thats another issue.

👍

I don't think its a good idea to store then in one field. But thats another issue.

Moved this idea into #1669.


Showing "Camera failed to start" when try to export this scene to other project

Hi,
Thanks for sharing this code, It is very useful.
I build it separately and works fine on my HoloLens.
But, when I try to use PhotoManager in another project which is using MRTK it shows me the text of "Camera failed to start" on my Hololesnse.
Any suggestions?

I'm glad you find it useful :)
Please make sure that the WebCam capability is checked. Also, there are apparently some versions of Unity where the PhotoCapture API does not work as indented.
I hope this helps in resolving your issue.

This issue is not with the Unity version as I have also tried the whole project separately and it had worked fine.
Yes, I have also enabled all required capabilities in my manifest.
But somehow I have solved this issue by deleting all other assembly files and folder except Asset and project settings from my project and now it's working fine.
Thanks, @JannikLassahn  for your help.


TB Penetration doesn't default to false

@CCraigen reports that TB penetration isn't defaulting to false in presets like it should.  Needs investigation.

Fixed in 0a5469c9b5abeaae7fbed8d16ed2a303ad982ecf.


Add unit test via codeception in Yii 2 application

Please add some unit test in this repo and also mention how to run the tests.

Hello, I want to do it.

@fabiananillo  sure. Also visit https://hacktoberfest.digitalocean.com if you haven't yet. for an easy chance to win a T-Shirt :)


Support https and redirects

This PR drops support for lazy-loading arrays over http and adds support for https and 3xx redirects.  The lazy-loading is a nice idea, but not useful in its current state and something we should revisit later when we have the time.
Resolves #965

Submitted an issue here for improving this: https://github.com/asdf-format/asdf/issues/973


⚠ Avatar API Endpoint has degraded performance

In 5dcbfcb, Avatar API Endpoint (https://avatar.roblox.com/v1/avatar-rules) experienced degraded performance:

HTTP code: 200
Response time: 1567 ms

Resolved: Avatar API Endpoint performance has improved in e051766 after 8 minutes.


Merge pull request #98 from unepwcmc/feat/#71/responsive-styling

ICCA team is happy to the responsive mobile feature

It was already merged to master.
meant to merge it to develop and then master but merged to master first by mistake
https://github.com/unepwcmc/icca-registry/pull/98


Adding a flag to enable source maps in the web app

This adds an optional flag to enable source maps for debugging purposes when building and serving the web app. The source maps only seem to work with Chrome right now.
With Jake:
jake sourceMaps=true

With the CLI:
pxt serve -include-source-maps

I also removed the rootDir option we were specifying in a few of our tsconfig.json files because it wasn't doing anything (it only has an effect when used with outDir http://www.typescriptlang.org/docs/handbook/compiler-options.html)

Hi @riknoll, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Richard Knoll). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

@riknoll Thank you!

No problem


Add tests to check for core cluster manager cancellations

This should not be merged until the problem has been resolved.

Cool stuff! :) We should have more like this 👌

Closed in favor of #269


Fix sporadic CI failures

(from HackMD list)

The sporadic failure is caused as follows:

Initial placement is completed (where spec has no preferredCluster)
The test case for "Should not failover to Secondary (WestManagedCluster) till PV manifest is applied" starts and changes the cloned placement rule
DRPC is reconciled again, and as clone placement points to west, and there is no preferred cluster in the spec, the workload starts getting placed to the west cluster

The above caused the failure in the tests.
The potential fix for the same is to not look at cloned placement rule if user placement rule is already placed. IOW,

Initially userPl is empty and filled with a clone placement rule determined preferred cluster
On further clone placement rule changes, and any forced/timed DRPC reconciliation should not change the user placement rule decision

This is fixed (for known CI failures) with #197