FStar.All.ML not found when using an FStar.* module that uses the ML effect

M.fst
module M
open FStar.N

FStar.N.fsti
module FStar.N
val f: unit -> unit

$ fstar.exe --universes M.fst
\FStar.N.fst(2,15-2,19) : Error
Name "FStar.All.ML" not found

The problem comes from the order in which dependencies are processed. When depending on FStar.N.fsti, FStar.N.fsti is processed before FStar.All.fst. When depending on N.fsti, N.fsti is processed after FStar.All.fst.
One can argue that one shouldn't add new modules in the FStar namespace, but some libraries (e.g. FStar.String) already trigger this bug.

Thanks.
Actually, I remember you said you were going to change this behavior before (probably on Slack). I'll fix FStar.String and maybe other libraries accordingly and then close this.

Thanks!

I'm surprised that these haven't been caught by the regression suite. If you can add the files you fix in the Makefile for ulib/ that would probably be helpful


Implement GROUP BY

Details

Add support for aggregate relation (producer, consumer, tests)
Modify function extension from absolute function anchor (reference) to relative anchor to avoid ambiguous anchor (id) between ScalarFunction operators and AggregateFunctions

The functions are registered as function_anchor and name pairs

This looks great. Thanks @nseekhao. I left some minor code style comments.

Thank you for the feedback, @andygrove. All comments are addressed.


The impact of this change appears to be more widespread than first
thought.

This reverted all of it - it should only have reverted the last commit in the PR

Really? When I look at this in github it only appears to revert the change in convert_String.


Fix code scanning alert - Token-Permissions

Tracking issue for:

[x] https://github.com/patware/febedb/security/code-scanning/74

well, it does say "content: read" doesn't it ?


[Quickstarts Repo] provide Quickstart preview functionality

Problem: a contributor has no easy to preview a quickstart development.

Requires all teams to consider the approach
Sounds like a pretty complex problem
There are architecture discussions and changes we have to consider.

Key functionality

need to preview the external experience and how it will look on the external site
need to preview the internal experience and how it will look on the internal site
need a way to validate will install

What is being discussed for architecture around this @aswanson-nr ?

@jpvajda does this also include validating the components like dashboard, docs? or just the site and the experience?

closing as this is becoming an epic.


Rails 5

I wanted to suggest upgrading Helpy to Rails 5, or at least get a conversation started about it.
I've been keeping track of our progress getting to the upgrade at GitLab, figured you may find all my notes useful :)
Some notes based on a quick look through your Gemfile:

Devise needs to be upgraded to 4.0+
quiet_assets can be replaced by a sprockets-rails config option now (wait until Rails 4.2.7 for that, though)
Rspec will need to be updated to 3.5.0
acts-as-taggable-on is a blocker at the moment
kaminari should be updated to 0.17.0
route_translator needs to be upgraded to 5.0.0
sass-rails needs 5.0.5
globalize needs a new version released

Lots of information on upgrading those gems, etc. is available in the issue I linked above. This project looks awesome, kudos!
Best,
Connor

Thanks Connor,  your tracking of this is really appreciated.  I have been tracking Globalize since thats a really big blocker for us to go to Rails 5.  I plan to start an official branch where we can start to work out the upgrade.

:+1: to my knowledge we're the largest open source Rails app and have somehow managed to not fall behind on Rails releases, so I figured it'd be useful to track the progress in-depth for everyone else to learn from :)
Feel free to ping me if you run into any problems, I might be able to help - or at least know to look out for the problem in GitLab!

Great - thanks for kicking this off, @connorshea.
@scott it may be worth setting up a GitHub milestone for this. Until then, I'll track the related PRs here:
#230 - Update 'rails' and dependencies to 4.2.7

As you can see, I set up a milestone.  I will start to tick off these PRs as time allows.  Most hopefully most will go in fairly easily.

@scott @olliebennett with Devise you can just update to 4.0 for now, which has Rails 5 support and just a deprecation warning for the omniauth change.
See https://github.com/plataformatec/devise/pull/3985

You'll also need to upgrade the Gemfile to use at least Ruby 2.2.2 (right now it's 2.2.1), I'd recommend the latest patch release in the 2.2 series.

Thanks @connorshea

Also worth looking at rails5-spec-converter gem, because this change may cause a lot of deprecation warnings otherwise.

Also with regards to Devise, here's how we fixed the deprecation warnings: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/5331

After a bit of sleuthing it also looks like you'll need to upgrade devise_invitable for Devise 4.1/4.2 support, though 4.0 is fine on the current version: https://github.com/scambra/devise_invitable/blob/master/CHANGELOG


Pull request and issue templates

We're getting some action on Polaris again! So I wanted to add a few other Github niceties to make things a bit easier to maintain.
Just created some pretty basic issue and pull request templates to hopefully provide some helpful guidance for those wanting to contribute or file issues. I also added some Github guidance that had been useful.
https://help.github.com/articles/about-issue-and-pull-request-templates/
Some samples of what it looks like

What happen @Tiberriver256? These are great!


services should never return transport level errors

The CS3 API adopted the grpc error codes from the google grpc status package. It also separates transport level errors from application level errors on purpose. This allows sending CS3 messages over protocols other than GRPC. To keep that seperation, the server side must always return nil, even though the code generation for go produces function signatures for rpcs with an error return property. That allows clients to clearly distinguish between transport level errors indicated by err != nil the error and application level errors by checking the status code.

I would merge this to master as well! @ishank011 ?


[Feature Request] PageView support

Some of the grids in my app can be opened into a PageView.
When the end of the pageview is reached, new data should be loaded and the grid should be also updated with that data.
Using the pagingcontroller with the grid should be easy enough, and triggering an update from somewhere else should also work.
Could we get support for pageviews? I assume the PagedSliverBuilder is a vertical scroll view, and not suitable for this task.

Hi @clragon .
Do you have any screenshots of the kind of layout you're trying to achieve?
Thank you

Hi @EdsonBueno ,
This is the kind of layout I would like:

this package can easily provide loading indicators for grid views, but since my grid view can also be viewed as a page view, it would be nice to have some kind of support for page view pagination etc...
especially since both views are linked and use the same data.
I would understand if this is not the goal of this package though.

Thank you for the diagram @clragon .
Please, try replacing your PageView with a PagedListView with the following properties:
scrollDirection: Axis.horizontal,
physics: const PageScrollPhysics(),

I'm closing this due to inactivity, but feel free to continue the discussion.
Thank you

hi @EdsonBueno,
I have looked at the approach with PageScrollPhysics but my app also makes use of PageControllers function to be notified when the page is changed or to animate to / jump to specific items, which doesn't seem to be possible here.

any work around for this ?

hey @EdsonBueno
i think i have same feature request.
i am developing kind of tiktok; where each media take full height.
Pageview is the right widget for the task, but it will be awesome to have goodness from infinite_scroll_pagination with pageview..

Hey guys,
I'll look on adding that to the package in the future, I'm just not sure when I'll have the time for that.
In the meantime you have two solutions:

Use PagedListView this way. The problem is you won't be able to use PageController to programmatically jump to specific items.
Try creating a PagedPageView using this method. It shouldn't be hard. @clragon mentioned he was worried this solution is only suitable for vertical scroll, but that isn't true.

Hey guys,
I'll look on adding that to the package in the future, I'm just not sure when I'll have the time for that.
In the meantime you have two solutions:

Use PagedListView this way. The problem is you won't be able to use PageController to programmatically jump to specific items.
Try creating a PagedPageView using this method. It shouldn't be hard. @clragon mentioned he was worried this solution is only suitable for vertical scroll, but that isn't true.

@EdsonBueno In case of List and Grid, we could use the AppendDelegate thing to append the list to the end. In case of Page, its not an implementation of scrollbox and yet it is made by a scrolllistener which rendering a child inside a Viewport. So say putting PageView directly under the completedListingBuilder will not give you the same effect for Page.


Follow up to work that added refresh buttons to editors from the Variable Explorer

This is a series of tasks that I think we should address after merging PR #21312:

Make editors inherit from SpyderWidgetMixin and use its API to build actions, menus and toolbars. I think that's important because those widgets are quite complex now, so if we plan to add more functionality to them in the future, it'd be nice if we could do it in a more structured way. And using that API could help with that.
Review the Dataframe editor toolbar and context menu ordering. I think that toolbar could see a bit love to look a bit better. We can talk about it here.
Remove checkboxes in Dataframe editor and add those as buttons to its toolbar.
Fix margin and alignment of buttons in all editors. Specifically:

There's too much margin between the content area and the buttons.
Buttons are not aligned to the right of the content area, which makes the layout look odd.

Make Object explorer toolbar look similar to the toolbars shown in the other editors.

@jitseniesen, could you take care of this one?

@jitseniesen, could you take care of this one?

I will have a look at it.

@ccordoba12 I thought a bit about this and there is a fair amount of stuff to talk about.

Make editors inherit from SpyderWidgetMixin and use its API to build actions, menus and toolbars. I think that's important because those widgets are quite complex now, so if we plan to add more functionality to them in the future, it'd be nice if we could do it in a more structured way. And using that API could help with that.

The API of SpyderWidgetMixin stores the menus and toolbars in a global registry. I don't understand what that is good for. I'm afraid that this is actually harmful, because it means that there will always be a reference to the menus and toolbars so they will never be garbage collected, which probably means that the editors themselves and the data stored in them will also not be garbage collected (though I did not look in the details).
Can somebody explain what the reason is for storing everything in a global registry as this is something that I have wondered about before.
I actually thought about having all the editors inherit from a base class. Currently the implementations are all different and this would unify and simplify the code, and longer term allow us to add an API for plugins to add editors for other types. But I decided that this would be too much work for 6.0.

Review the Dataframe editor toolbar and context menu ordering. I think that toolbar could see a bit love to look a bit better. We can talk about it here.

Remove checkboxes in Dataframe editor and add those as buttons to its toolbar.

Currently, the toolbars and context menus of the different editors look as follows:

Array editor:

Context menu: Copy
Toolbar: Copy, Edit, Set format, Resize columns, Toggle background, Refresh

Collections editor:

Context menu: Edit, Copy, Paste, Rename, Remove, (Save array), separator, Insert, (Insert above), (Insert below), Duplicate, separator, View with object explorer, (Plot), (Histogram), (Show image), separator, Resize rows, Resize columns
Toolbar: same as context menu, and also Refresh at the end
The items between parentheses are only shown for suitable variable types

Dataframe editor:

Context menu: Edit, Copy, Remove row, Remove column, separator, Insert above, Insert below, Insert before, Insert after, Duplicate row, Duplicate column, separator, Convert to (bool, complex, int, float, str), separator, Resize row, Resize column, separator, Refresh
Toolbar: same as context menu, except for "Convert to"
Buttons at the bottom: Set format, Resize, Toggle background, Toggle column min/max

Object explorer:

No context menu
Toolbar: Show callables, Show special attributes, Refresh, Options menu (for toggling visibility of columns)

So there is definitely some room for improvements. Any specific suggestions?

Fix margin and alignment of buttons in all editors. Specifically:

There's too much margin between the content area and the buttons.
Buttons are not aligned to the right of the content area, which makes the layout look odd.

I assume that you are talking about the buttons at the bottom ("Save and close" and "Close"). I will copy the spacing from the Python Path dialog and see how that works out.

Make Object explorer toolbar look similar to the toolbars shown in the other editors.

Okay.

The API of SpyderWidgetMixin stores the menus and toolbars in a global registry. I don't understand what that is good for.

It's done to easily get access to a menu by its id from any other plugin or widget that inherits from SpyderWidgetMixin.

I'm afraid that this is actually harmful, because it means that there will always be a reference to the menus and toolbars so they will never be garbage collected, which probably means that the editors themselves and the data stored in them will also not be garbage collected (though I did not look in the details).

I agree that for the Variable Explorer editors that's not going to allow Python to garbage collect them after they are closed. To solve this and keep using the SpyderWidgetMixin API, I propose to add a register kwarg to create_menu and create_toolbar to avoid registering them if requested.

I actually thought about having all the editors inherit from a base class. Currently the implementations are all different and this would unify and simplify the code, and longer term allow us to add an API for plugins to add editors for other types. But I decided that this would be too much work for 6.0.

Ok, no problem.

So there is definitely some room for improvements. Any specific suggestions?

I think @CAM-Gerlach can help you to review and decide on a nice ordering for actions in toolbars and menus, which could involve adding separators for the Dataframe toolbar because it has too many actions.
So, please talk to him about that.

I assume that you are talking about the buttons at the bottom ("Save and close" and "Close"). I will copy the spacing from the Python Path dialog and see how that works out.

Correct.

There's too much margin between the content area and the buttons.

@ccordoba12 I see in pathmanager.py that you use addSpacing((-1 if MAC else 2) * AppStyle.MarginSize) for the spacing between the content area and the buttons at the bottom. Is that something to use here too? I don't understand the correction for Mac, but I don't have one to test with.

Is that something to use here too?

Yes, I think that's a good idea.

I don't understand the correction for Mac, but I don't have one to test with.

Mac adds by default too much space between the content area and the buttons below it. So, we don't need to add more space (as it's necessary on Windows and Linux, hence the 2 * AppStyle.MarginSize), but remove a bit of it (that's the reason for -1 * AppStyle.MarginSize there).

Make editors inherit from SpyderWidgetMixin and use its API to build actions, menus and toolbars

@ccordoba12 I did not notice this before but SpyderWidgetMixin does not have an API for toolbars because it does not inherit from SpyderToolbarMixin: https://github.com/spyder-ide/spyder/blob/df5c5bd4a50d79591dee9b39968b26382bc130a9/spyder/api/widgets/mixins.py#L618-L625
I am going to change this and add SpyderToolbarMixin as a base class of SpyderWidgetMixin; please let me know if that is wrong.

I am going to change this and add SpyderToolbarMixin as a base class of SpyderWidgetMixin;

@jitseniesen, that's a good idea, thanks for thinking about it.

please let me know if that is wrong.

I quickly looked at the other classes from which SpyderWidgetMixin inherits and there shouldn't be problems with adding SpyderToolbarMixin to it as another parent.

General thinking
Categories

Context menu for actions that depend on the currently-selected cell, row or column, etc.
Toolbar for non-context-specific actions, toggleables and common actions not easily accessible via other existing means (keyboard, shortcuts, etc)
Options ("hamburger") menu for uncommon actions and infrequently-changed options and settings

Priorities

Ensure each menu has the options appropriate for its purpose
Reduce overlap of items between the three, where justified by the above
Attempt to better balance the number of entries between menus, where practical

List of recommended changes

Since it is the only button present for every editor and is probably one of the most common buttons users will click, as well as being something that applies to the whole object and always enabled rather than a specific item and disabled iwthout a selection, I suggest moving the Refresh button to first in the toolbar.
Place always-enabled global actions before (and in a separate group from) context-specific, default-disabled local actions in toolbars

Array editor

Add Edit to context menu (after Copy), since it applies to an individual item just like Copy
Remove Copy and Edit from toolbar, since they are context-specific, already in the context menu and can be easily triggered via existing means (mouse clicks and keyboard shortcuts)

Collections editor

Remove Resize Rows and Resize Columns from context menu as they are not context-specific are present on the toolbar
Change Save array to just Save, to match the wording of others and avoid confusion in nested arrays
Change context menu ordering to Copy Paste Rename Edit [Save] | Insert above Insert below Duplicate Remove | ... for more logical grouping and ordering
Remove highly context-sensitive, basic/typically expected and already easily triggerable (keyboard shortcut, mouse click) items in first group from toolbar (copy, paste, rename and edit)
Re-order toolbar to place the global, always-enabled toggles (Refresh, Resize rows, Resize columns) first, and then follow the revised order of the context menu

DataFrame editor

Similar changes as in collections editor
Remove Refresh inexplicably present in context mneu

Object Explorer

No additional changes (besides moving Refresh)

Final recommended arrangement
Array editor

Context menu: Copy Edit
Toolbar: Refresh Set format Resize columns Toggle background

Collections editor

Context menu: Copy Paste Rename Edit [Save] | Insert above Insert below Duplicate Remove | View with object explorer [Plot] [Histogram] [Show image]
Toolbar: Refresh Resize rows Resize columns | Insert above Insert below Duplicate Remove | View with object explorer [Plot] [Histogram] [Show image]

DataFrame editor

Context menu: Copy Edit | Insert above, Insert below, Insert before Insert after, Duplicate row Duplicate column Remove Row Remove Column | Convert to (bool, complex, int, float, str)`
Toolbar: Refresh Resize rows Resize columns | Insert above, Insert below, Insert before Insert after, Duplicate row Duplicate column Remove Row Remove Column`

Object explorer

No context menu
Toolbar: Refresh Show callables Show special attributes
Options menu: Column visibility toggles

@CAM-Gerlach Thanks for your clear and well-reasoned suggestions. They all make sense to me so I implemented them in the PR. There are a couple of further details (which I perhaps should have discussed before submitting the PR)
Firstly, the dataframe editor currently has four buttons in the bottom left of the dialog window: Format, Resize, (toggle) Background color and (toggle) Column min/max. The first is already in the toolbar. Consistency with the array editor means that the second and third should also go in the toolbar, so that it becomes: Refresh Set format Resize rows Resize columns Toggle background Insert above Insert below Insert before Insert after Duplicate row Duplicate column Remove Row Remove Column (the bold items are added compared to your comment).
I did not know what to do with the last button, Column min/max. In the end, I added an option menu with just that one item, because I think it is rarely used and I could not think of a good icon for it. The argument against is that we now have an option menu with just one item, which looks a bit silly.
Secondly, you indicated separators in the toolbar. Are these supposed to be visible in the UI? I don't know where in Spyder we use separators in the toolbar.
Thirdly, in the Variable Explorer pane itself, the Refresh button is not at the front of the toolbar. Should I move it there?

BTW, for others following, I had updated the above comment to incorporate @jitseniesen 's feedback and further adjustments following discussion with @ccordoba12 , @jitseniesen and @conradolandia . Specifically, here's a changelog:

Added the namespace browser (Variable Explorer main pane) and its recommended menus and changes
Moved the Refresh option, and other display-related options, to float to the right side of the toolbar instead of being on the left, to be more consistent with general UI expectations and with the top-level namespace browser (Variable Explorer)
Added and adjusted the positions of the Format, Background color, Column min max and resize options in the array editor and other relevant toolbars


Allow for multi-select and operations on selected extensions in sidebar panel

Type: Feature Request
I think it would be a good idea to allow users to select multiple extensions by holding either shift or ctrl and left clicking two or more extensions, similar to how one can select multiple files in the Windows file explorer and perform operations on them (e.g. uninstalling or disabling/enabling the selected extensions). Or at least let that be an option the user can set in their preferences.
VS Code version: Code - Insiders 1.93.0-insider (4849ca9bdf9666755eb463db297b69e5385090e3, 2024-09-04T13:13:15.344Z)
OS version: Windows_NT x64 10.0.27695
Modes:

/duplicate


Error 0xc0000409

I keep getting message on Windows Phone 8.1 project:

XXX has exited with code -1073740791 (0xc0000409).

randomly when connected to rtsp stream. I am using version from @6649f4b commit. I have read that this code is connected with registry issues (not sure if it's the same for mobile) - but it only occurs when playing stream, after updating FFmpegInterop and ffmpeg.

Ok I think I found something. When I set forceVideoDecode to true on this one camera I get said message. I did some research and it's fault is buffer overflow. So It's possible that while tring to decode high resolution video it fails? I did not notice that error when forceVideoDecode is set to false but I dot get stream.

It apperas that the bug was connected with audio packets error that has been fixed in @67a29ba


Only enable NSCoding-related runtime name warnings with Objective-C interop

Minor follow-on work for rdar://problem/32118614.

@swift-ci please smoke test and merge


Do not throw new Error()

https://github.com/kohsuke/github-api/search?utf8=✓&q="new+Error"&type=
In general, this seems to be a bad idea.  See also comments in https://github.com/jenkinsci/ghprb-plugin/pull/570. This PR for the GHPRB plugin is left with the dilemma of catching throwable because there's no other choice since this API throws java.lang.Error.
A quote from java.lang.Error javadoc:

An Error is a subclass of Throwable that indicates serious problems that a reasonable application should not try to catch.

Instead, consider throwing IllegalStateException.

Care to file a PR for it?

Well, even IllegalStateException is not ideal, checked exceptions would be better. But it requires introducing new APIs

Yeah, I don't mind filing.  I was going to bed last night so filed it before forgetting.

Looks like PR has been filed.


Bugfix/amaroc 681 double layers

Description:
This PR does two things in order to resolve #107

Introduce minimum separation to grouping step.
Change the layer separation criterion from mean altitude to base altitude.

Some refactoring was necessary to achieve the above
[] Split up metarize method to separate creation of df, layer height calculation, layer amount calculation and creation of METAR codes.
[] make the two minimum separation parameters global parametes instead of layering parameters.
[] move the base height calculation to a utility function.
Error(s) fixed:
#107
Checklists:

[ x] New code includes dedicated tests.
[x] New code has been linted.
[ ] New code follows the project's style.
[ ] New code is compatible with the 3-Clause BSD license.
[x] CHANGELOG has been updated.
[ ] AUTHORS has been updated.
[ ] Copyright years in module docstrings have been updated.

@fpavogt The PR is now almost ready for review and if you want you can start with it whenever you feel like. The only thing I still plan to add, is a unit test for the group splitting on Monday (now it's only tested via the scientific tests). I went for a "minimum effort" refactoring of metarize, given our planned deployment to DEPL next week. Basically, the metarize method is chunked into components that seemed logically to me. These are then wrapped in private methods and called inside metarize. On top of that I can use these methods for the group separation. It's not the most elegant solution but it avoids most unnecessary calculations.

Sometimes there are named parameters without a type specification. Perhaps these could be added (where helpful), along with the pydoc that @fpavogt mentioned?

Thanks for catching it! I added the type hints, where they were still missing. I wonder if we could configure a linter to catch that automatically. If you know @fpavogt let me know, otherwise I'll check tomorrow.

I wonder if we could configure a linter to catch that automatically. If you know @fpavogt let me know, otherwise I'll check tomorrow.

Sorry @regDaniel, I've got no clue on this.

I wonder if we could configure a linter to catch that automatically. If you know @fpavogt let me know, otherwise I'll check tomorrow.

Sorry @regDaniel, I've got no clue on this.

Ok I found two things:

We can enforce using type hints by passing --disallow-untyped-defs to mypy.
We do not use mypy in the actions workflow. Sorry, I was implicitly assuming we use it already and I would strongly encourage us to do so.  Those are not necessarily bugs but we need to fix this, I'll address the most severe ones now and open an issue for the rest. @loforest if we fix typing errors at a later stage, can we deliver a patch release without CN?

I wonder if we could configure a linter to catch that automatically. If you know @fpavogt let me know, otherwise I'll check tomorrow.

Sorry @regDaniel, I've got no clue on this.

Ok I found two things:

We can enforce using type hints by passing --disallow-untyped-defs to mypy.
We do not use mypy in the actions workflow. Sorry, I was implicitly assuming we use it already and I would strongly encourage us to do so.  Those are not necessarily bugs but we need to fix this, I'll address the most severe ones now and open an issue for the rest. @loforest if we fix typing errors at a later stage, can we deliver a patch release without CN?

These might be two other ways to do it:

Can we add the type hints check to the list of errors after --restrict E here? https://github.com/MeteoSwiss/ampycloud/blob/develop/.github/workflows/CI_pylinter.yml
In pysteps they use pre-commit hooks to block developers from pushing code that is not formatted properly (it might work also for checking type hints): https://github.com/pySTEPS/pysteps/blob/master/.pre-commit-config.yaml

We will likely do another ampycloud release during 2024, e.g. to improve the residual ceiling false alarms when the ceilometers are inside FG (if possible). We will include in the same release the type hints checks as Standard Change (Software Refactoring). It is too much overhead to do a Standard Change CN only for this, but if in case there are no new features for a while, we might consider to do just a software refactoring CN.

I wonder if we could configure a linter to catch that automatically. If you know @fpavogt let me know, otherwise I'll check tomorrow.

Sorry @regDaniel, I've got no clue on this.

Ok I found two things:

We can enforce using type hints by passing --disallow-untyped-defs to mypy.
We do not use mypy in the actions workflow. Sorry, I was implicitly assuming we use it already and I would strongly encourage us to do so.  Those are not necessarily bugs but we need to fix this, I'll address the most severe ones now and open an issue for the rest. @loforest if we fix typing errors at a later stage, can we deliver a patch release without CN?

These might be two other ways to do it:

Can we add the type hints check to the list of errors after --restrict E here? https://github.com/MeteoSwiss/ampycloud/blob/develop/.github/workflows/CI_pylinter.yml
In pysteps they use pre-commit hooks to block developers from pushing code that is not formatted properly (it might work also for checking type hints): https://github.com/pySTEPS/pysteps/blob/master/.pre-commit-config.yaml

We will likely do another ampycloud release during 2024, e.g. to improve the residual ceiling false alarms when the ceilometers are inside FG (if possible). We will include in the same release the type hints checks as Standard Change (Software Refactoring). It is too much overhead to do a Standard Change CN only for this, but if in case there are no new features for a while, we might consider to do just a software refactoring CN.

Thanks for your answers.
1.1. yep that would be an option. But we can also invoke mypy directly in the actions workflow. Personally I am always in favor of using as little wrapper scripts as possible. The standard tools (mypy, pylint) are anyways invoked in good IDEs if you have them in your dev environment.
1.2. I'm not in favor of pre-commit hooks as you then have to make sure that they behave exactly the same as the linting done in you pipeline and in my experience, this is a non-trivial task which needs quite a bit of regular maintenance. For me it's ok to do these checks on the level of the CI/CD pipeline exclusively. If devs do not use a proper IDE/ do not run the linters locally, they'll have to do more fixing once they try to open merge requests.
2. Ok thanks, I guess it could go in a separate release together with some tuning maybe?


[5.6] [Blade] Error using @json Blade helper

Laravel Version: 5.6.26
PHP Version: 7.2.7
Database Driver & Version: -

Description:
@json blade helper breaks json on template:
Steps To Reproduce:
It works:
<canvas data-chart-datasets="{{ json_encode([
    [
        'label' => 'Value',
        'data' => $list->pluck('sum')->toJson()
    ],
    [
        'label' => 'Quantity',
        'data' => $list->pluck('count')->toJson()
    ]
]) }}"></canvas>

It works:
<canvas data-chart-datasets="@json([
    [
        'label' => 'Value',
        'data' => $list->pluck('sum')->toJson()
    ],
    [
        'label' => 'Quantity'
    ]
])"></canvas>

Generated compiled view:
<canvas data-chart-datasets="<?php echo json_encode([
    [
        'label' => 'Value', 'data' => $list->pluck('sum')->toJson()
    ], [
        'label' => 'Quantity'
    ]
]) ?>"></canvas>

It fails:
<canvas data-chart-datasets="@json([
    [
        'label' => 'Value',
        'data' => $list->pluck('sum')->toJson()
    ],
    [
        'label' => 'Quantity',
        'data' => $list->pluck('count')->toJson()
    ]
])"></canvas>

Generated compiled view:
<canvas data-chart-datasets="<?php echo json_encode([
    [
        'label' => 'Value', 'data' => $list->pluck('sum')->toJson()
    ], [
        'label' => 'Quantity') ?>"></canvas>

Regards!

This comment on PR #23655, may be relevant.

@devcircus these comment is about to parse json_encode additional parameters.
I think that if @json helper method can only parse some PHP code, should be on docs https://laravel.com/docs/5.6/blade
Thanks anyway.

Care to update update the @json regex? That's quite complicated.
If you will check the sample from the docs itself, it is simply a variable passed in, but if you will build your own array inside the json directive, the you should just use raw json in the first place or pass in the array before under the directive.
@php
$arr = [
    [
        'label' => 'Value',
        'data' => $list->pluck('sum')->toJson()
    ],
    [
        'label' => 'Quantity',
        'data' => $list->pluck('count')->toJson()
    ]
];
@endphp

<canvas data-chart-datasets="@json($arr)"></canvas>

Move your data construction into your controller or responses.

@tillkruss I'm actually doing. I only was reporting a bug.
Thanks anyway.

Based on the link I posted earlier and many other discussions over the past several years, regarding other blade helpers, this is a known limitation of blade. Fortunately there's a simple workaround.

Yes @devcircus, it's not a problem about the blade helpers limitations.
It's only a comment about if should be documented on docs to avoid to use complex code on it.

Anyway, closed case :P

In that case, the docs are open source as well. I'll see about sending a PR, or if you know how you'd like to word it, go ahead and send one.

Since this bug won't get fixed anytime soon, the workaround for those interested is to overwrite the @json blade directive. Here is a quick implementation you can put in your AppServiceProvider if you plan to use the same json_encode() arguments globally:
Blade::directive('json', function($expression){
  return "<?php echo json_encode($expression, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_AMP | JSON_HEX_QUOT) ?>";
});

Here is an alternative fix:
In helpers:
<?php
function split_arguments($expression){
    $tokens = token_get_all("<?php $expression");
    array_shift($tokens);
    $arguments = [''];
    $p = [
        '()' => 0,
        '[]' => 0,
        '{}' => 0,
        '``' => 0,
    ];
    foreach ($tokens as $token){
        switch ($token){
            case '(':
                $p['()']++;
                break;
            case ')':
                $p['()']--;
                break;
            case '[':
                $p['[]']++;
                break;
            case ']':
                $p['[]']--;
                break;
            case '{':
                $p['{}']++;
                break;
            case '}':
                $p['{}']--;
                break;
            case '`':
                $p['``'] = !$p['``'];
                break;
            case ',':
                if(!array_sum($p)){
                    array_unshift($arguments, '');
                    $token = '';
                }
                break;
        }
        if(is_string($token)){
            $arguments[0] .= $token;
        } else {
            $arguments[0] .= $token[1];
        }
    }
    return array_reverse($arguments);
}

In service provider:
<?php
Blade::directive('json', function ($expression){
    $args = split_arguments($expression);
    if(count($args) < 2){
        $args[]= '15';
    }
    if (count($args) < 3){
        $args[]= '512';
    }
    return "<?php echo json_encode($args[0], $args[1], $args[2]) ;?>";
});

Result:
Psy Shell v0.9.9 (PHP 7.1.23 — cli) by Justin Hileman
>>> Blade::compileString('@json([1, 2, 3, 4, 5])');
=> "<?php echo json_encode([1, 2, 3, 4, 5], 15, 512) ;?>"


Complicated TPT model, throws error once relationships are created > 1 layer deep

R4ND3LL,
I am attempting to migrate a largeish db model which is TPT heavy. Many years ago I forked the code for EF power tools and wrote a lot of T4 template code to handle all of the inheritance generation, removing navigation properties and properties implemented in base classes, up to three layers deep. I was about to do the same now that the project is moving to EF Core 7 from EF6 when I saw your conversation with Erik regarding your tool and how it worked. I spent a few hours trying out various features and got the model where I would like it and then started adding in support for base types after my initial testing showed it worked flawlessly.
As soon as I started getting into the more complicated TPT scenarios (example below), I started getting the following error:
A key cannot be configured on 'XXXXXX (Dictionary<string, object>)' because it is a derived type. The key must be configured on the root type 'YYYYYYY (Dictionary<string, object>)'. If you did not intend for 'YYYYYYY (Dictionary<string, object>)' to be included in the model, ensure that it is not referenced by a DbSet property on your context, referenced in a configuration call to ModelBuilder, or referenced from a navigation on a type that is included in the model.
The scenario in question is one used throughout the database:
Table 1.0 w/discriminator
Table 1.1, 1.2, 1.3 w/FK to and computed persisted column of discriminator
For each of Table 1.1 - 1.3, potentially further breakdown (i.e. Table 1.1.1, Table 1.1.2 and even Table <IP_ADDRESS>)
The model works fine (ignoring performance for a moment) and has worked fine in EF6 for over six years. I tried to replicate the existing EF6 model, which does not have navigation properties on any of the TPT tables through their PK other than at the root Table 1.0 level except for those that are unique to it by marking them as "Not mapped" in the GUI and re-running the scaffold but so far to no avail. I am going to grab the source on Monday to debug but wanted to shoot this message over in case there was something fundamental that I am missing as I am new to EF Core but have extensive experience in EF6.
It is worth noting that there is no EDMX at play here, this is just the ef scaffold command running.

In TPT, the base entity should have its primary key mapped normally, but for each derived type, the corresponding primary key should be checked "not mapped" in the EFR rule editor.  (or in the json file: "NotMapped": true ).   That seems to be specifically what the error is complaining about.
To streamline this configuration, I may force the killing of primary keys on derived types, as well as the FKs that usually exist between the tables in the hierarchy.
If you can mock up a small database table scenario that replicates the error, I'd be happy to script it in and test it.

Thank you for the offer. I am going to give it another shot tomorrow. The one thing I noticed is that "IsKey" is not checked for any tables, TPT or otherwise, if I create a new json file by running scaffold with the Design package in the project. Is this expected behavior?

I am seeing the same behavior with the sample database I created today.  Fairly simple TPT, removed composite keys for enforcement of derived tables w/persisted computed keys. Vehicles -> Cars | Trucks -> Sports Cars or Family Cars | Light Duty Trucks or Heavy Duty Trucks.
TPTRepro.zip

I looked at the source for a few minutes last night and something jumped out at me so on a hunch I gave it a quick test while on a call. If I do not reuse the primary key name (VehicleId) in all derived tables, levels 2-N (the example database is TPT three levels deep), other than needing to flag the keys as not mapped, it produces the expected classes, each extending its base has as expected (i.e. LightDutyTruck -> Truck -> Vehicle). However, in my experience, most TPT models preserve the naming convention of the based table's PK throughout the derived table meaning VehicleId is present in all layers. The change I made was to rename the columns in all derived tables to match the concrete table name (for Light Duty Truck the PK was renamed from VehicleId to LightDutyTruckVehicleId and the PK in Truck was renamed from VehicleId to TruckVehicleId). This might be at the root of everything I am seeing on the real database as the base tables PK name is persisted throughout every level of the model.

Thanks for the sample.  I reproduced and fixed the issue on build v1.2.33.
I setup the TPT hierarchy in the rules file (see attached) for the truck side only.
Nothing major you have to configure. Just set the following annotation for Vehicle:
Relational:MappingStrategy = TPT
And ensure the derived types have "Vehicle" as the base type, or what ever is appropriate for deeper levels..
When scaffolding, EFR will now automatically ignore FK relations within the TPT hierarchy, which is what is causing the error.
Vehicle data loaded as expected during my testing.
Let me know if you have any further issues.
Vehicles-rules.zip

@R4ND3LL ,
It appears to have solved the initially reported condition, thank you! I am going to grab the previous version because I am fairly certain I am seeing regression on another, though I might be confusing the results with the tests I was performing with Erik's tool.
Using your configuration file, without any changes, I see the following class being generated for Trucks:
namespace TPT_Repro.Models;

public partial class Truck : Vehicle
{
    public int TruckTypeId { get; set; }

    public string TruckNote { get; set; } = null!;

    public virtual TruckType TruckType1 { get; set; } = null!;
}

Which correctly extends Vehicle and omits the PK VehicleId as desired. However the name of the navigation property TruckType1 is caused by the relationship between Vehicle and TruckType. The way we have historically solved this is by setting a namespace at the various TPT levels so instead of namespace TPT_Repro.Models;, this would be namespace TPT_Repro.Models.Vehicles.Trucks;. I am fairly confident that changing the namespace was working in the previous release but setting the namespace on the schema is having no impact on the generated classes. The json for Trucks is as follows
"Schemas": [
    {
      "SchemaName": "Trucks",
      "IncludeUnknownTables": true,
      "IncludeUnknownViews": true,
      "IncludeUnknownFunctions": false,
      "TableRegexPattern": "^(.*)$",
      "TablePatternReplaceWith": "$1Entity",
      "Namespace": "TPT_Repro.Models.Vehicles.Trucks",
      "Entities": [...]
      ...

but the schema remains TPT_Repro.Models on all generated classes. Is this regression or am I misremembering it working?

the Namespace property has never had any effect on scaffolded entities.  Perhaps EF Power Tools has a similar property and does something with it.  EFR extends on EF Core's native scaffolding features by plugging into their design-time services.  As such, EF Core only takes a single namespace argument up front and uses that when outputting all entity files.  This area is fairly closed off, from an extension/override perspective.
That said, there should be no real reason the nav prop cant be generated as  "TruckType".  I'll start a new issue for that and have a look.

Issue of entities involved in inheritance receiving unexpected navigation property names has been resolved in EFR Design package v1.2.36


[Feature Request] taesd VAE (distilled VAE)

"taesd is tiny, distilled version of a stable diffusion vae."
Image generation results for this vae (showcased on their github) looks nearly identical, maybe having this supported in stable-diffusion-cpp this could increase generation speed.
Github: https://github.com/madebyollin/taesd

I've taken a look, and it appears that the VAE model structure differs from the original. I'll find some time to study whether corresponding support needs to be added.

By the way, I believe the speed bottleneck is not in the VAE image generation phase but rather in the UNet sampling phase.

Now with LCM support, VAE is not ~50% of the time (on my cpu).

@leejet The operation that consumes the most memory in the VAE is im2col, up to 1 GB for a 512 x 512 image and 2 GB for a 512 x 768 image. I am considering a way to split the input into chunks and merge them in the output.

here they are talking about tiled-decoding https://github.com/madebyollin/taesd/issues/8

@leejet I have been working since yesterday on implementing this autoencoder, but for some reason, I'm getting a somewhat over-saturated image. I don't know what I have wrong.
https://github.com/FSSRepo/stable-diffusion.cpp/tree/taesd-impl
AutoEncoderKL (compute buffer: 1664 MB):

TinyAutoEncoder (compute buffer: 416 MB):

@FSSRepo do you know if your model has VAE finetuning?

IDK

@FSSRepo in any case, good job :) the speed improvement and low memory is insane.

@FSSRepo in any case, good job :) the speed improvement and low memory is insane.

I have not yet checked if there is memory fragmentation since many operations are repeated, so memory usage could be improved


Add spacer between map scale -value and -unit for better readability

The current default, eg. 100km is very hard to read. 100 km would be much better.
See the example:
http://openlayers.org/en/v3.1.1/examples/scale-line.html
In contrast to Google maps (scale at bottom right)
https://maps.google.com/
The OL3 default scale is very hard to read, with the value and unit immediately connected.
Maybe also add a class, so they can be styled differently?

You are right, a space would really improve the readability. Do you want to work on a PR for this? This would be a good opportunity to get started, please see: https://github.com/openlayers/ol3/blob/master/CONTRIBUTING.md

I would like to, but i am short on time.
So anyone who wants, go ahead...

Just added a simple space.
Thought about instead (or better additionally) adding a span, to allow different styling between value and unit:
-  var html = count + suffix;
+  var html = count + ' ' + suffix + '';

but someone once said, code only if it's needed by someone.

Closed with #3124


Blank Space in File Name

Aims to Fix issue: https://github.com/hotosm/oam-catalog/issues/116
Please Review if the changes made here help in handling the issue of "uploading files with spaces in their names" in oam-catalog.

@AnkitaKhurana thanks, reviewing this today!

@AnkitaKhurana quick bump here to look at fixing the conflicts and the comment from @sharkinsspatial

@sharkinsspatial Can we get a quick review and then we'll get this merged?


docs/getting-started-guides/rkt: Update rktnetes documentation for 1.3

Update the user guide and known issues for rktnetes in the 1.3 release.
Suppress https://github.com/kubernetes/kubernetes.github.io/pull/672 and https://github.com/kubernetes/kubernetes.github.io/pull/697
cc @kubernetes/sig-rktnetes @erictune @s-urbaniak @joshix

@googlebot Both @euank and I (@yifan-gu) have signed cla under coreos.com

@yifan-gu am I the person that you intended to assign? I have no context on the rktnetes setup.

@yifan-gu LGTM, make sure we're okay with the 1.9 version and feel free to apply LGTM and merge it

LGTM :+1: just some nits

Getting back to this one.

LGTM other than the above nits. We might also want to bump the rkt version to v1.9.1 if that's released before this is merged :)

Think I've addressed all the comments. PTAL @s-urbaniak @tmrts @euank Thank you guys!

LGTM pending the rkt release link not being broken (we can't even be certain it'll be a patch release yet really).

Adding Tech Review LGTM per @euank , @pwittrock feel free to override.

I will take @euank's lgtm

Updated and squashed.

Why it's saying I am not signing cla?

Since @euank is offline, I am going to squash his commits as well as the google bot is complaining about cla.

@pwittrock Thanks for having a look
@yifan-gu Thanks for the quick turnaround, the commit squash, the CLA bot fix, and the PR in general. Merging.

@johndmulhausen Thank you!


Check if path is a Resolver before decorating it

When you prepend or append view paths, you can choose to do so with either a path (which may be looked up on the file system) or an instance of ActionView::Resolver which will then know how to do the lookup. We should not wrap ActionView::Resolver instances in an EmptyTemplateResolver.
I’m not sure where/whether to add a spec.
cc @pixeltrix (related to #1535)

/cc @pixeltrix is this actually something we want?

I pushed another commit, which moves the type check into the EmptyTemplateResolver initializer. Its superclass ActionView::FileSystemResolver has a type check in the initializer for when path is a Resolver instance, so I guess the subclass should have the same.
Is super("") an acceptable approach?
@pixeltrix Your opinion would be very welcome.

@bquorning ok, I have some questions. Is this to solve the performance regression? If so, can you provide a benchmark which shows if this is faster? If not, does this fix some regression that was introduced? If so, can you provide a spec or other example for that case?

@samphippen I meant to fix a regression. After #1535, it is no longer possible to call e.g. prepend_view_path with a Resolver instance.
I’m not really sure where to add the spec.

@bquorning could you write a spec literally anywhere in spec/ and push it up. Once I see it I can likely advise on where it should end up.

The best thing to do is what we do in ActionView::PathSet - only typecast if it's a String or a Pathname. This means changing the _path_decorator method to this:
def _path_decorator(path)
  case path
  when Pathname, String
    EmptyTemplateResolver.new(path.to_s)
  else
    path
  end
end

That should minimise the risk of any breakage by us messing about with the internals.
@samphippen we fixed the performance regression in 3.4.2 AFAIK - if there's another please point me to it.

:+1: thanks @pixeltrix, @bquorning can you update the implementation to follow @pixeltrix's advice. Thanks!

Hmm, I don’t agree @pixeltrix. If the point is (as @JonRowe mentioned earlier) to nullify view rendering, then my custom resolver (here: path) needs to be wrapped in a resolver similar to EmptyTemplateResolver. My resolver will know how to find the template (like your super call in find_templates), but the templates found should still be handled with an EmptyTemplateHandler. Right?

On the other hand, the current EmptyTemplateResolver probably solves more than 99% of the use cases. Let’s assume that users who prepend with a custom Resolver class are able to fix this problem themselves (perhaps using a null resolver), I’m fine with the suggested solution.

PR updated & rebased.

@bquorning I still think it'd be good to get a spec for this. If in doubt, just make a new spec file in the spec/ directory. Let me know if you need any other help with that :smile:

@bquorning I think burdening rspec-rails with the responsibility of nullifying the rendering of all custom template resolvers is a bit much to ask :smile:
One possible option would be to look at somewhere else to nullify the rendering - I'll see if there's somewhere we can hook in.

I’ve tried reading RSpec’s specs for Example and ExampleGroup, in order to add a spec to your controller_example_group_spec. But I cannot figure out how to get a before hook to be run. And I guess it’s the before block in ViewRendering we want to test.
I’ve pushed what I’ve got so far.

To write a spec for this you need to do whatever behaviour causes a Resolver to be passed down to this method, hooks are irrelevant for that.

While it would be nice to have spec coverage this change, I cannot seem to wrap my head around it. Testing a test framework is very meta :-)

@samphippen If I remove EmptyTemplates#prepend_view_path or EmptyTemplates#append_view_path from view_rendering.rb, all current specs still pass. You’re asking me to write specs for an untested feature, and I have no idea where to start.
view_rendering worked for me before #1535, and it works for again after the change in this PR. Any change of merging it without test coverage?

I don't think that's a good idea, I'm convinced this breaks the default usage which is no view rendering.

I'm convinced this breaks the default usage which is no view rendering.

How come? Isn’t the default usage to prepend with a Pathname or String?

How come? Isn’t the default usage to prepend with a Pathname or String?

This isn't accessed directly, but by your controllers when specs are setup so we don't know what we'll receive, but we know we want to return an EmptyTemplateResolver so as to nullify the lookup, this is the direct opposite. I worked up #1557 as an alternative which skips the check added by changing the superclass of the resolver.

… we know we want to return an EmptyTemplateResolver so as to nullify the lookup, this is the direct opposite.

It is not. An EmptyTemplateResolver is still used for default usage. But if prepending/appending a custom resolver, yes, it is not nullified – following @pixeltrix’ advice:

I think burdening rspec-rails with the responsibility of nullifying the rendering of all custom template resolvers is a bit much to ask

I’ll take a look at #1557.

By the way, the specs added in #1557 are all passing on this branch.

It is not. An EmptyTemplateResolver is still used for default usage. But if prepending/appending a custom resolver, yes, it is not nullified.

Which is an undesired change in the behaviour.

By the way, the specs added in #1557 are all passing on this branch.

Yes, the specs were regression checks to ensure errors weren't raised, it's actually quite hard to test this in isolation and I don't want to pollute the features for regression checks.

Closing in favour of #1557.


Order of execution of Pipelineruns if concurrency is defined

Currently we don't have any order in which we execute pipelinerun if
user has defined concurrency
we should have some order may be alphabetical or some other way so that user can control
based on requirement

done alphabetically in https://github.com/openshift-pipelines/pipelines-as-code/pull/1071


Add entity hider plugin

Allows the user to hide players, npcs and projectiles. The plugin is disabled by default, and when enabled, friends, clan mates and attackers are by default always visible.
It does not support hiding any objects, because I don't think we should hide elements that cannot be walked through, as you cannot walk through these even though they are hidden, which might look like a bug to some users.
It does not remove minimap dots because this turned out to be not that easy to do. Player#hidden and NPCComposition#isMinimapVisible do indeed remove the dots when set to their hidden state, but they also hide the 3D part of the player/npc at the same time, making it so you can't easily separate minimap hiding and game hiding.
Closes #636

👀 👌🏻

Beautiful.


Remove trim_start_matches targeting '.'

Use a custom method for trimming '/' or "./" that doesn't change ".foo"
into "foo".
Fixes https://github.com/spkenv/spk/issues/1036

I thought this was a problem internal to Manifest and made the new private method there, but then found that spfs-vfs has the same bug.


HTTP Status code 509 is unknown

Expected Behavior
Hello,
HTTP status code 509 is show as "Unknown" in Insomnia. This status code means "Bandwidth Limit Exceeded" (https://http.dev/509)

Insomnia v2023.3.0
Actual Behavior
HTTP status code 509 is show as "Unknown"
Reproduction Steps

Call a REST service that returns http 509 status

Is there an existing issue for this?

[X] I have searched the issue tracker for this problem.

Additional Information
No response
Insomnia Version
2023.3.0
What operating system are you using?
Windows
Operating System Version
Windows 10
Installation method
downloaded from insomnia.net
Last Known Working Insomnia version
No response

Our list is based upon https://developer.mozilla.org/en-US/docs/Web/HTTP/Status#server_error_responses
According to wikipedia 509 is an Unofficial code, used only in apache web server/cPanel


Migration tool complaining that SDK does not enable NNBD when trying to migrate flutter

Following a tip from @a14n, I tried to migrate flutter using the following steps:
cd ~/tmp
mkdir flutter
cd flutter
wget https://storage.googleapis.com/flutter_infra/releases/dev/linux/flutter_linux_1.19.0-3.0.pre-dev.tar.xz
tar xvJf flutter_linux_1.19.0-3.0.pre-dev.tar.xz
cd flutter
export PATH="`pwd`/flutter/bin:$PATH"
cd ../flutter/packages/flutter
flutter pub get
dart migrate --skip-pub-outdated

This produced the error message:
Bad state: Analysis seems to have an SDK without NNBD enabled.

This shouldn't be possible, since the SDK unfork has already happened, so Flutter's SDK should have NNBD enabled.

Looks unrelated to Flutter. As soon I try dart migrate on a package with at least 1 dart file I get the error above. It only work in empty dir (which is quite easy to migrate :D)

@a14n what SDK version are you using? What command?
We can migrate non-flutter packages well.
I haven't updated the ticket, but there are two issues for flutter. One is that sky_engine was not unforked. The other is that the package allow list is not working for sky_engine.
Aside from those issues, we currently know of nothing preventing migration of non-flutter packages, and that would be a P0 for us!

BTW, https://dart-review.googlesource.com/c/sdk/+/150169 added support to analyzer for allowed_experiments.json in sky_engine.

@MichaelRFairhurst I also tested on master branch of the dartSDK on flutter_goldens_client that has only simple dependencies:
flutter/packages/flutter_goldens_client$ dart --version
Dart VM version: 2.9.0-edge.249cb9c974e13177fe5f76b390e2569ece79185f (be) (Fri Jun 5 01:41:23 2020 +0000) on "linux_x64"
flutter/packages/flutter_goldens_client$ dart migrate --skip-pub-outdated
Migrating /home/aar-dw/perso/dev/dart/flutter/flutter/packages/flutter_goldens_client

Generating migration suggestions... /[                                                                                [-----------------------------------------------------                                                                                ]
Bad state: Analysis seems to have an SDK without NNBD enabled.

Do you have any local changes to flutter_goldens_client etc?
I could not reproduce. I checked out that exact revision of the SDK. My flutter repo is at ab68721a5da013dff6a08854bdba5e1f3206f9cf.
~/projects/dart/flutter/packages/flutter_goldens_client λ ~/projects/dart/sdk/out/ReleaseX64/dart-sdk/bin/dart migrate --skip-pub-outdated
Migrating /home/mfairhurst/projects/dart/flutter/packages/flutter_goldens_client

Generating migration suggestions... /[
No analysis issues found.
[-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------]

View the migration suggestions by visiting:

  http://localhost:43839/home/mfairhurst/projects/dart/flutter/packages/flutter_goldens_client?authToken=HCn5fd3OUww%3D

Use this interactive web view to review, improve, or apply the results.

When finished with the preview, hit ctrl-c to terminate this process.
^C
~/projects/dart/flutter/packages/flutter_goldens_client ~/projects/dart/sdk/out/ReleaseX64/dart-sdk/bin/dart --version
Dart VM version: 2.9.0-edge.249cb9c974e13177fe5f76b390e2569ece79185f (be) (Fri Jun 5 01:41:23 2020 +0000) on "linux_x64"

I really don't know what is going on. I don't have any local changes in flutter_goldens_client.
Didn't you see the error with the following commands:
git clone https://github.com/flutter/flutter.git
cd flutter
export PATH="$PWD/bin:$PATH"
flutter update-packages
cd packages/flutter_goldens_client/
dart migrate --skip-pub-outdated

I get:
$ dart migrate --skip-pub-outdated
Migrating /home/a14n/tmp/flutter/flutter/packages/flutter_goldens_client

Generating migration suggestions... /[                                                                                [------------------------------------------------------------------------                                                                                ]
Bad state: Analysis seems to have an SDK without NNBD enabled.

In a empty dir the migration starts correctly:
#in flutter/ with the same $PATH
mkdir mydir
cd mydir
dart migrate --skip-pub-outdated

outputs:
Migrating /home/a14n/tmp/flutter/flutter/mydir

Generating migration suggestions... /[
No analysis issues found.
[------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------]

View the migration suggestions by visiting:

  http://localhost:45625/home/a14n/tmp/flutter/flutter/mydir?authToken=T5QBdShtluk%3D

Use this interactive web view to review, improve, or apply the results.

When finished with the preview, hit ctrl-c to terminate this process.

Once the link opened I tried to add an empty lib/a.dart file and click on Rerun from sources . I get the following error:
#0      NullabilityMigrationImpl._sanityCheck (package:nnbd_migration/src/nullability_migration_impl.dart:196:7)
#1      NullabilityMigrationImpl.prepareInput (package:nnbd_migration/src/nullability_migration_impl.dart:143:5)
#2      NonNullableFix.processUnit (package:nnbd_migration/src/front_end/non_nullable_fix.dart:225:19)
#3      _FixCodeProcessor.runFirstPhase.<anonymous closure> (package:nnbd_migration/migration_cli.dart:807:21)
#4      _FixCodeProcessor.processResources (package:nnbd_migration/migration_cli.dart:764:30)
<asynchronous suspension>
#5      _FixCodeProcessor.runFirstPhase (package:nnbd_migration/migration_cli.dart:796:11)
<asynchronous suspension>
#6      MigrationCli._rerunFunction (package:nnbd_migration/migration_cli.dart:588:29)
#7      NonNullableFix.rerun (package:nnbd_migration/src/front_end/non_nullable_fix.dart:254:24)
#8      PreviewSite.rerunMigration (package:nnbd_migration/src/preview/preview_site.dart:326:41)
#9      PreviewSite.handlePostRequest (package:nnbd_migration/src/preview/preview_site.dart:185:15)
#10     HttpPreviewServer._handlePostRequest (package:nnbd_migration/src/preview/http_preview_server.dart:94:23)
#11     HttpPreviewServer._handleServer.<anonymous closure> (package:nnbd_migration/src/preview/http_preview_server.dart:104:15)
#12     _RootZone.runUnaryGuarded (dart:async/zone.dart:1384:10)
#13     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:357:11)
#14     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:285:7)
#15     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:784:19)
#16     _StreamController._add (dart:async/stream_controller.dart:655:7)
#17     _StreamController.add (dart:async/stream_controller.dart:597:5)
#18     _HttpServer._handleRequest (dart:_http/http_impl.dart:2874:19)
#19     new _HttpConnection.<anonymous closure> (dart:_http/http_impl.dart:2629:19)
#20     _RootZone.runUnaryGuarded (dart:async/zone.dart:1384:10)
#21     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:357:11)
#22     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:285:7)
#23     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:784:19)
#24     _StreamController._add (dart:async/stream_controller.dart:655:7)
#25     _StreamController.add (dart:async/stream_controller.dart:597:5)
#26     _HttpParser._headersEnd (dart:_http/http_parser.dart:393:19)
#27     _HttpParser._doParse (dart:_http/http_parser.dart:739:15)
#28     _HttpParser._parse (dart:_http/http_parser.dart:323:7)
#29     _HttpParser._onData (dart:_http/http_parser.dart:852:5)
#30     _RootZone.runUnaryGuarded (dart:async/zone.dart:1384:10)
#31     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:357:11)
#32     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:285:7)
#33     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:784:19)
#34     _StreamController._add (dart:async/stream_controller.dart:655:7)
#35     _StreamController.add (dart:async/stream_controller.dart:597:5)
#36     _Socket._onData (dart:io-patch/socket_patch.dart:2020:41)
#37     _RootZone.runUnaryGuarded (dart:async/zone.dart:1384:10)
#38     _BufferingStreamSubscription._sendData (dart:async/stream_impl.dart:357:11)
#39     _BufferingStreamSubscription._add (dart:async/stream_impl.dart:285:7)
#40     _SyncStreamControllerDispatch._sendData (dart:async/stream_controller.dart:784:19)
#41     _StreamController._add (dart:async/stream_controller.dart:655:7)
#42     _StreamController.add (dart:async/stream_controller.dart:597:5)
#43     new _RawSocket.<anonymous closure> (dart:io-patch/socket_patch.dart:1556:33)
#44     _NativeSocket.issueReadEvent.issue (dart:io-patch/socket_patch.dart:1052:14)
#45     _microtaskLoop (dart:async/schedule_microtask.dart:41:21)
#46     _startMicrotaskLoop (dart:async/schedule_microtask.dart:50:5)
#47     _runPendingImmediateCallback (dart:isolate-patch/isolate_patch.dart:118:13)
#48     _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:169:5)

I just tried in a Docker container the same commands I tried in my previous comment  and it seems to work. So it looks like I have something on my host that completely mess up the migrate command. :-(

I think I found the cause of this issue.
On my machine I have several Dart versions (particullarly the last stable release and another one packaged with flutter). In don't remember why I needed it but I have a DART_SDK environment variable that was pointing to the last stable version (2.8.x). It looks like this env var causes the issue. Removing it make the migration tool start.
It is disturbing because I used a dart executable from flutter and I didn't expect those interaction with the var env DART_SDK.

I think I found the cause of this issue.
On my machine I have several Dart versions (particullarly the last stable release and another one packaged with flutter). In don't remember why I needed it but I have a DART_SDK environment variable that was pointing to the last stable version (2.8.x). It looks like this env var causes the issue. Removing it make the migration tool start.
It is disturbing because I used a dart executable from flutter and I didn't expect those interaction with the var env DART_SDK.

Ok, the explanation with the DART_SDK environment variable makes sense.  When the analyzer (and hence the migration tool) sees this environment variable, it assumes that its usual mechanism for locating the SDK won't work, so it just blindly uses the SDK from the environment variable :)

It could have helped to see a log (in verbose mode) indicating the use of this DART_SDK.
I think you can close this issue.
Thanks for your help.

Yeah, a log entry would be nice.  I'm not going to close it yet, because I still want to verify that the repro I initially found (at the top of the bug report) has been fixed.  I'll follow up hopefully later today.

After discussion with @MichaelRFairhurst we believe this is all fixed now; leaving open for a bit as a reminder to create a log entry.

The warning is now submitted, closing


[GHSA-fq6h-4g8v-qqvm] CKEditor4 Cross-site Scripting vulnerability caused by incorrect CDATA detection

Updates

Affected products

Comments
ckeditor is also a Composer package

Hi there @jacekbogdanski! A community member has suggested an improvement to your security advisory. If approved, this change will affect the global advisory listed at github.com/advisories. It will not affect the version listed in your project repository.
This change will be reviewed by our Security Curation Team. If you have thoughts or feedback, please share them in a comment here! If this PR has already been closed, you can start a new community contribution for this advisory


Add slint language server for .slint files

https://slint-ui.com/ has the details to the language and LS implementation.
The binary is called slint_lsp (which is also the name in nvim-lspconfig), so I would like to keep that here as well.

Cool!! I'm however getting the following error when trying to run the binary on an Ubuntu 20.04 machine (x64):
./slint-lsp: error while loading shared libraries: libQt5Core.so.5: cannot open shared object file: No such file or directory

Those libraries are taken from the system and not part of the linux tarball. So I guess you just do not have those installed?

One sec, give a a chance to test:-)

Ok, works for me again, now using PATH! Thanks for the patch putting me on the right track!


distributed server in orientdb-community-2.1.9

I am trying to set up a distributed server so my coworkers and I can share the same databases. I am using the orientdb-community-2.1.9 out of the box (no new databases or anything) and following the instructions: run dserver.sh on one of the nodes (zestar), scp the orientdb_community folder to another machine(empire), run dserver.sh on the second machine with dserver.sh still running on the first. For some reason the second machine thinks it's the first, so it's not adding itself as a new node. Everything 100% vanilla, no changes to hazelcast.xml or any of the other xml's in the config directory. When I go into orientdb-server-config.xml on the second machine and change the nodeName from zestar to empire (it was zestar because I scp'ed the whole orientdb_community) i get an error:
---------- [OHazelcastPlugin]
2016-01-28 11:33:25:077 INFO  [empire] Saving distributed configuration file for database 'GratefulDeadConcerts' to: /Users/ioana/Downloads/orientdb-community/databases/GratefulDeadConcerts/distributed-config.json [OHazelcastPlugin]
2016-01-28 11:33:25:087 INFO  [empire] found no previous messages in queue orientdb.node.empire.GratefulDeadConcerts.request [OHazelcastDistributedMessageService]
2016-01-28 11:33:25:566 INFO  [empire] Publishing online status for database empire.GratefulDeadConcerts... [OHazelcastDistributedDatabase]
2016-01-28 11:33:25:591 INFO  [empire] received new status empire.GratefulDeadConcerts=ONLINE [OHazelcastPlugin]
2016-01-28 11:33:25:595 INFO  [empire] class 'sung_by', creation of new local cluster 'sung_by_empire' (id=-1) [OHazelcastPlugin]
2016-01-28 11:33:25:719 SEVER [empire] error on creating cluster 'sung_by_empire' in class 'sung_by':  [OHazelcastPlugin][empire] Error on starting distributed plugin
com.orientechnologies.orient.server.distributed.ODistributedException: Error on creating cluster 'sung_by_empire' in class 'sung_by'
	at com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.installLocalClusterPerClass(OHazelcastPlugin.java:1631)
	at com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.installDbClustersForLocalNode(OHazelcastPlugin.java:1300)
	at com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.loadDistributedDatabases(OHazelcastPlugin.java:1441)
	at com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.startup(OHazelcastPlugin.java:187)
	at com.orientechnologies.orient.server.OServer.registerPlugins(OServer.java:979)
	at com.orientechnologies.orient.server.OServer.activate(OServer.java:346)
	at com.orientechnologies.orient.server.OServerMain.main(OServerMain.java:41)
Caused by: com.orientechnologies.orient.server.distributed.ODistributedException: Quorum cannot be reached because there are no nodes available
	at com.orientechnologies.orient.server.hazelcast.OHazelcastDistributedDatabase.calculateQuorum(OHazelcastDistributedDatabase.java:369)
	at com.orientechnologies.orient.server.hazelcast.OHazelcastDistributedDatabase.send2Nodes(OHazelcastDistributedDatabase.java:119)
	at com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.sendRequest(OHazelcastPlugin.java:367)
	at com.orientechnologies.orient.server.distributed.ODistributedStorage.command(ODistributedStorage.java:333)
	at com.orientechnologies.orient.server.distributed.ODistributedStorage.addCluster(ODistributedStorage.java:1334)
	at com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.addCluster(ODatabaseDocumentTx.java:1291)
	at com.orientechnologies.orient.core.metadata.schema.OClassImpl.createClusterIfNeeded(OClassImpl.java:2108)
	at com.orientechnologies.orient.core.metadata.schema.OClassImpl.addCluster(OClassImpl.java:1074)
	at com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.installLocalClusterPerClass(OHazelcastPlugin.java:1624)
	... 6 more
~~~~~~~~~~~~~~~~~~~~~~~~~~~
I am running Darwin Kernel Version 15.3.0 RELEASE_X86_64 x86_64 on both computers.

Thank you in advance!

This has been already fixed in last 2.1.x.


Budget progress bars

Needs testing

Thanks again! Release coming soon to help test these.

Thank for working on the feature!
I just did some testing on 085db9b0ca74de1e4741 in chrome and have a bug report below. I didn't observe any console output.
Goal Progress

Does not have any effect, CSS is not changed. Tested with all 3 types of goals.

Pacing Progress

Date line is drawn correctly.
No bar demonstrating how far into the month the spending is is drawn, I checked the CSS and it is just drawing the bar, see the code below copied from the inspector:

linear-gradient(to right, white 0%, white 57.5645%, rgb(207, 213, 216) 57.5645%, rgb(207, 213, 216) 58.0645%, white 58.0645%, white 100%)

Selecting the category sets the text color to white, causes the Category, Budgeted and Activity to disappear. This color change should be overruled.

Not we are removing the use of coloration to demonstrate which rows are selected, but I think this is okay since the checkboxes are sufficient for this purpose

Pacing on name column and goals on budgeted

Goals seems to have not effect.
Similar to 4 above. Selecting the row creates a whit block over the name field, clearly contrasting with the dark blue highlight of the rest of the row. The text and row color changes should be overruled.


Sent messages are rendered as markdown

On the 0.5.0 release,

renders as:

And more generally, markdown is rendered in what the user types. However, ChatGPT does not interpret input as Markdown as far as I know, so it might make sense to display messages coming from the user as plain text entirely?

It seems simple to fix this. If you change the part of the chatbox.py file as below
...
from rich.text import Text
...
    @property
    def markdown(self) -> Markdown:
        return Markdown(self.message.content or "")

    @property
    def text(self) -> Text:
        return Text(self.message.content or "")

    def render(self) -> RenderableType:
        if self.message.type == "human":
            return self.text
        else:
            return self.markdown
...

There are three types of messages: human, ai, and system.
I confirmed that the input was rendered as text and the output was rendered as markdown.

However, I cannot judge whether it makes sense. The code may become complicated, but it will also be possible to choose whether to render the user's input as markdown or text.

This has been fixed in 1.0.0


Check forked process calls for success during app installation.

Check the exit code of forked subprocess to ensure that issues actually propagate up
and that the installation process does not simply proceed despite errors, e.g., during
the installation of dependencies.

@yakutovicha After this is merged we can make one final release that supports aiida-core 1.x, and then with the next release we only support AiiDA 2.x.

@yakutovicha Do you want me to create the release?

@yakutovicha Do you want me to create the release?

yes, please go ahead


Early Stop Implementation

Early Stop Implementation.
The implementation is changed to the following:
backpropagation(
    # Required parameters
    network,                     # the neural network instance to train
    training_set,                # the training dataset
    test_set,                    # the test dataset
    cost_function,               # the cost function to optimize
    # Optional parameters
    ERROR_LIMIT=1e-3,                           # Error tolerance when terminating the learning
    max_iterations=(),                          # Regardless of the achieved error, terminate after max_iterations epochs. Default: infinite
    batch_size=0,                               # Set the batch size. 0 implies using the entire training_set as a batch, 1 equals no batch learning, and any other number dictate the batch size
    input_layer_dropout=input_layer_dropout,    # Dropout fraction of the input layer
    hidden_layer_dropout=hidden_layer_dropout,   # Dropout fraction of in the hidden layer(s)
    print_rate=1000,                            # The epoch interval to print progression statistics
    save_trained_network=False,                 # Whether to ask the user if they would like to save the network after training
    early_stop=()
)

Where early_stop = () would be not to do early stop.
Otherwise the number must be an integer, which will mean the number of epochs as tolerance, it means that if the tendency of the Error of the test set has increased for more than the giving tolerance epochs, then stop the training.
I have examples and plots and analysis on the optimal value for early stop should you want to add some to the documentation page.
Posible Issues and TODO things:

The algorithm writes a variable in each epoch and performs a comparison even if the early stop is not required... It may affect (very little impact anyway) the performance.
The algorithm prints print "[training]   Converged to error bound (%.4g) with error %.4g." % ( ERROR_LIMIT, error ) which I think will not be the case if early stop was applied.

Why () and not None?

Sorry my delay, it was a busy day.
I tried to copy the previous structure... the data goes as the max_iterations  parameter. It's just a "no max iterations = ()" and then an unsigned int... (same as the early_stop idea)
But that's the only reason... Personally, under other circumstances, I'd like the None  idea better but I thought to make it similar to the existing code.


Translate challenge and fix references

Standardize informal treat.
Refactor text to fix grammar.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
#XXXXX

Thanks!


It shouldn't be possible to "outline" an outline url

Triggering Outline Me from an page from outline.com shouldn't be possible, since it will make an "invalid" article redirecting to https://outline.com/https://outline.com/article-url.

Solved for both chrome and firefox in 69ac2bc85eb17539da5689b190588bb2955725e4.


xAxis type=time, Is there a way to set time format language?

Version
4.3.0
Steps to reproduce
Any xAxis time type example can be use
What is expected?
An option to set time format language. I want to set it to ES-es (dd-mm-yy)
What is actually happening?
Time format is mm-dd-yy (US-en).

Maybe you can use xAxis.axisLabel.formatter.

Yes, it currently doesn't support intelligent label formatting like giving a result of each day when passing {MM-DD-YY}. This feature needs further discussion.

Probably we should support formatter of time axis to support different time duration. For example, formatter: [formatterWithinADay, formatterWithinAMonth, ...].

What about formatter: function(value, index, formatSuggestion) {} ?
formatSuggestion would be strings like hour_minute_second, month_day_hour_minute, year_month_day. Consider it whatever the format current auto-label-formatter mechanism produces. User function receives it as a suggestion and either applies or not.

Hello, any updates on this?

Hello, any updates on this?

5.0 has supported it https://echarts.apache.org/zh/option.html#xAxis.axisLabel.formatter

5.0 has supported it https://echarts.apache.org/zh/option.html#xAxis.axisLabel.formatter

@pissang Thank you! The problem is that the "formatter" function is not "smart": it just takes the value and formats it. While the original default formatter would format depending on the zoom / min-max. So yes, you can change the format at your will, but only for one "level" of time,  which literally breaks the chart for you in most cases.

@pissang Thank you! The problem is that the "formatter" function is not "smart": it just takes the value and formats it. While the original default formatter would format depending on the zoom / min-max. So yes, you can change the format at your will, but only for one "level" of time,  which literally breaks the chart for you in most cases.

@maliayas Sorry I pasted the wrong doc. The doc for 5.0 is https://echarts.apache.org/next/en/option.html#xAxis.axisLabel.formatter, Which has a description of multi-level formatter.

@maliayas Sorry I pasted the wrong doc. The doc for 5.0 is https://echarts.apache.org/next/en/option.html#xAxis.axisLabel.formatter, Which has a description of multi-level formatter.

Perfect, thanks @pissang !

Perfect, thanks @pissang !

Hello, a formatter used with this syntax formatter: '{yyyy}-{MM}-{dd}\n{HH}:{mm}' as specified in the documentation does only show the date correct, the time is always shown as 00:00. Any information on this issue? I think it is related to the change discussed in this topic


Server fails to start (JPA Starter - Tomcat)

APPLICATION FAILED TO START

Description:
The bean 'scopedTarget.reindexWriter', defined in class path resource [ca/uhn/fhir/jpa/reindex/job/ReindexEverythingJobConfig.class], could not be registered. A bean with that name has already been defined in class path resource [ca/uhn/fhir/jpa/reindex/job/ReindexJobConfig.class] and overriding is disabled.
Action:
Consider renaming one of the beans or enabling overriding by setting spring.main.allow-bean-definition-overriding=true
06-Aug-2021 10:00:11.858 SEVERE [main] org.apache.catalina.startup.HostConfig.deployWAR Error deploying web application archive [/usr/local/tomcat/webapps/ROOT.war]
This seems to be related to: https://github.com/hapifhir/hapi-fhir/commit/f5dfc3a5ed05329b7d7c0cd89227204705cca277
@fil512  @michaelabuckley
Version: 5.5.0 PRE-8
OS: Docker / Kubernetes

I got the same error. Will prepare PR

nice


Add find and sort to DG and fix UG bugs

Add find command to DG
Add sort command use case to DG
Fixes update to edit in UG
Cleanup some spelling mistakes

#92

Coverage drop is unrelated


can we use remote MYSQL

thanks for your great work.
we are using your project for a long time.
but recently we want to separate the web and db.
we've tried many node, and even larged the connect time, but always get Mysql connect not available   notice when refresh the pages.
is there any solution?
thanks

Please provide logs. There must be an error.

No activity. Please reopen if the problem still persists.


[CMS / Map] Clicking on markers filters sidebar only once; doesn't reset

When you click a marker on the map, it filters the stories that are associated with that marker. This is the correct and desired behavior.
However, when you click somewhere on the map afterward, in so doing closing the marker popup, the stories remain filtered to that marker.
Optimally, it should reset the stories at that point.
To reproduce this:

Click on a marker (opening the popup and filtering stories)
Click anywhere on the map

Actually, it seems that it's a somewhat bigger issue: clicking on a marker filters the sidebar only once.
If you click a second marker afterwards, it doesn't filter the stories associated with that marker either.

I noticed just now that once you start interact with the sidebar again, like scrolling up and down or clicking on the story, it filters as per the desired behavior. But until you do that, it stays with the previous marker's content.


Unisharp\Laravelfilemanager\LaravelFilemanagerServiceProvider::class, NOT FOUND on live server but works locally.

And provide the followings :

Laravel version : 5.5.33
Package version : 1.8

works perfectly locally on my machine, as soon as i put on live server i get this error on whole site.

any ideas would be greatly appreciated

any idea to fix it
this is my problem on my localhost!

sorry for the late reply @1razzaghi.
Make sure you have the aliases and providers in config/app
and then make sure you update composer on the live server.
You also need the config file for file manager by running
php artisan vendor:publish --tag=lfm_config
php artisan vendor:publish --tag=lfm_public
The missing config file was my issue.

Remove "unisharp/laravel-filemanager": "~1.8" and install it again


What is the license of this code?

Hi,
I was just wondering what the license of this code is. I didn't find any LICENSE.md or similar in the project.
Thanks for this wonderful benchmark dataset!

Hey @psteinb ,
Ah yes indeed I forgot to add the license, I'll fix that.
The license is MIT
Cheers


feat: submodule implementation

Description
Implementation of the aws-kms submodule of the encryption-at-rest module.

LGTM. One thought I had. If the user specifies this multiple times, then maybe: mongodbatlas_cloud_provider_access_authorization mongodbatlas_cloud_provider_access_setup Needs to be conditional? I think mongodbatlas_cloud_provider_access_setup can only be done once per project.
However, if it is specified multiple times, maybe it is easier for the user to use the resources directly 🤔

If the user defines several times the module, wouldn't they share the same tfstate? If so, I guess the setup resource would not be re-created because it uses the same project id.

LGTM. One thought I had. If the user specifies this multiple times, then maybe: mongodbatlas_cloud_provider_access_authorization mongodbatlas_cloud_provider_access_setup Needs to be conditional? I think mongodbatlas_cloud_provider_access_setup can only be done once per project.
However, if it is specified multiple times, maybe it is easier for the user to use the resources directly 🤔

If the user defines several times the module, wouldn't they share the same tfstate? If so, I guess the setup resource would not be re-created because it uses the same project id.

@rubenVB01 nice! Thank you for testing this.