Support fast clean up of missing and unneccessary const keywords on save in the Dart LSP

Problem
Users feel pestered by having to add and remove the const keyword when iterating on Flutter code. This seems like something their IDE should handle for them and while there are automated fixes that still feels like too much work for something that should be as seamless as formatting code on save.
There is an existing fixAll on save option in VSCode but it isn't for all users as some fixes are harmful to run on save. For example, remove unused import.
Proposal
Add an enabled by default option in the Dart VSCode plugin that only applies a safe subset of Dart fixes on file save.
Subset:

prefer_const_constructors
fix for removing invalid const
prefer_generic_function_type_aliases
avoid_init_to_null
avoid_return_types_on_setters
avoid_returning_null_for_void
avoid_single_cascade_in_expression_statements
prefer_collection_literals
slash_for_doc_comments
unnecessary_new
unnecessary_string_escapes
use_function_type_syntax_for_parameters
sort_child_properties_last (?)
use_full_hex_values_for_flutter_colors
unnecessary_parenthesis (?)

Prior art
Enable fix on save for Dart in VSCode:
"[dart]": {
        "editor.codeActionsOnSave": {
            "source.fixAll": true
        },
       // ...
    }

Fyi @DanTup @bwilkerson

One thing I noticed with source.fixAll on, is that it isn't recursive: If I have this:
Foo foo = const Bar();

And I hit save, it converts it to:
final Foo foo = const Bar();

(and I'm not sure why it picked final instead of const)
And it still has a warning about the extra const.  Then if I hit save again, it converts it to:
const Foo foo = Bar();

It should go straight to the end.

@jacob314

Add an enabled by default option in the Dart VSCode plugin

Do we really want to do this by default? We don't enable format-on-save by default, so something that alters code on-save would be surprising to me. I also think it might also not be obvious to users what's happening or how to disable it (especially since VS Code does a terrible job with language-specific configuration defaults - they're almost invisible to users which often causes complaints that we're ignoring a users preferences).

that only applies a safe subset of Dart fixes on file save.

My understanding was that the fixAll command (which is the same as "dart fix") was intended to be "safe". If we don't think it is, I wonder if we should remove fixes like "remove unused import" from it rather than adding another fix-all-like action. VS Code/LSP have first-class support for "fix all" but there is only one, so we may end up with a well-known "fix all" and then another "fix all" that is Dart-specific which I think would be confusing - something discussed a bit in https://github.com/Dart-Code/Dart-Code/issues/4446).
If "remove unused imports" is the only problematic fix, it's already another well-known action in VS Code, and the user can explicitly add it to run on-save (like fixAll). So if we removed it from fixAll users that want it could still opt-in to it.
@gspencergoog

One thing I noticed with source.fixAll on, is that it isn't recursive

That's correct, there's an open issue about this at https://github.com/dart-lang/sdk/issues/47968. It's a little more complex supporting here than in dart fix because we need to produce edits that can be applied in a single step (we can't give VS Code a sequence of edits).

An alternative to enabling by default ("configurationDefaults" - which is fairly invisible) is to add it to our recommended settings that we prompt to write on first run. These settings are written into the users settings JSON which is more visible than configuration defaults. We could re-trigger the settings prompt for existing users when we make significant changes to it like this.

Do we know what our adoption rate is for the recommended settings?
I'm not advocating making this as more of a default than formatOnSave but instead aligning adoption with existing adoption of formatOnSave as much as practical.

Do we know what our adoption rate is for the recommended settings?

I don't, although around 65% of users have format-on-save enabled and I suspect a good number got it from accepting the recommended settings. Although, "accepting" recommended settings is just a one-time copy, so making changes wouldn't automatically apply them to those users.

but instead aligning adoption with existing adoption of formatOnSave as much as practical.

Would it be reasonable to include some of these things in the Format operation (so it also runs with format-on-save)? I think it would be confusing to have some other "set" of changes that can be run on save ("format" and "fix all") but perhaps some of the very obvious things (like removing unnecessary const) wouldn't be completely out of place as part of formatting?
Or perhaps some configurability for Fix All would help here? I know some users would like to apply some fixes on-save that might not be the single obvious fix (which I believe is the current intention of dart fix), and perhaps having the option to control this would also allow for suppressing some fixes (such as removing unused imports)?
I don't know if it's useful, but we also know when code actions are running on-save, so if we wanted to skip "remove unused imports" for a fix-all-on-save but include it for a manual invocation, we could (although, I think this could also be confusing unless it was something the user specifically opted-in to by choosing some fixes to be applied only when run manually).

There is an existing fixAll on save option in VSCode but it isn't for all users as some fixes are harmful to run on save. For example, remove unused import.

Do we have an idea of how many fixes are currently included in fix-all-on-save that users might not like? Is it only removing unused imports, or are there others?

Chatted briefly with @jacob314 about this and I think we should avoid adding some third on-save mechanism (which would be Dart-specific, unlike the current format-on-save/fix-on-save) but instead make the existing "fix all" command work better here with some configurability.
For example we could add something to analysis_options.yaml allowing fixes to be configured to always run, never run, or run only when manually invoked (or on-save):
fixes:
  "quickfix.convert.toSuperParameters": true # ("always"?) - always fix with "fix all"
  "quickfix.convert.toSuperParameters": false # ("never"?) - never fix with "fix all"
  "quickfix.convert.toSuperParameters": command # (?) -  fix only when "fix all" is manually invoked
  "quickfix.convert.toSuperParameters": save # (?) - fix only when "fix all" is invoked on-save

We could default things like removing unused imports to on-command (or some better name) so that running fix-all-on-save is a "safer" than just running all fixes we support, but users could still opt-in to running the others.
This could also eventually support enabling specific fixes users want that aren't part of the "safe dart fix" set (it's possible to do this today by just listing each of them as code-actions-on-save in VS Code, but it's much slower because each fix is its own round-trip to the server).
Once we have what we think are a safe set to run on-save, we could consider adding fix-all-on-save to Recommended Settings, and re-prompting users about them. We could also prompt them (from the server) the first time they explicitly run "Fix All" about being able to run it on-save with a link to a page on the Dart website about these options.
Interested in others thoughts on this.

I have a concern here. I believe that files are saved for several different reasons. Sometimes is automatic (either by preference setting or because the run command saves everything), sometimes it's because a user feels more comfortable having changes saved to disk, and sometimes because the user is done making edits. Some users will be happy to have fixes applied in all of those cases, some one subset of cases or another, and some never.
I'm not advocating for any particular solution (and I'd actively advocate against any solution that was complex enough to handle all possible combinations). Whatever solution we come up with, I want users to have just enough control without having too many controls.
What I am saying is that 'save' might not always mean 'ready to have fixes applied'. As a result, I'm skeptical that associating this behavior (a large scale fix operation) with save is the right thing to do.
I'm just speculating, but I wonder whether it might not be better to have some kind of 'cleanup' command that will apply fixes, sort members, format files, and any other kind of cleanup operations that we come up with in the future as a single command. I wouldn't mind having a keyboard shortcut for cleanup (or cleanup and save) that was distinct from the save command. I wonder whether that would satisfy the need we're trying to solve here.

I'm just speculating, but I wonder whether it might not be better to have some kind of 'cleanup' command that will apply fixes, sort members, format files, and any other kind of cleanup operations that we come up with in the future as a single command. I wouldn't mind having a keyboard shortcut for cleanup (or cleanup and save) that was distinct from the save command. I wonder whether that would satisfy the need we're trying to solve here.

To me, this doesn't seem a long way from what we have today with the "Fix All" command, if we added some configurability. If we had config for fixes as described above and format + sort members were options you could enable, then we could use the built-in "Fix All" command in VS Code (and VS Code's existing functionality for running it on save if you wanted) rather than introducing some new Dart-specific command (which I suspect if we did without configurability, users might quickly ask for customised versions of that cleanup).
If we really don't want to use "fix all" (eg. because we want that to do "everything", but users want to fix trivial things like consts on-save), we could also consider including some of those trivial fixes as part of formatting. I'm sure there are already formatters that do things like inserting semicolons during format, so I wonder if us adding/removing consts and other trivial things would be that surprising?

... we could also consider including some of those trivial fixes as part of formatting.

The formatter can't adjust the use of const because doing so requires semantic information that the formatter doesn't have.
But even if it could, I'm not convinced that it would be the right thing to do. While I understand the convenience argument, I believe that it's confusing to users to have multiple tools that all perform some subset of fixing code. Having a tool that applies multiple smaller tools is fine (for example, to satisfy the "fix everything in one step" journey), but users shouldn't have to ask themselves a question like "Which tool do I use to apply this kind of fix?". There should be one tool that fixes problems in the code and a different one that makes non-whitespace changes. (There's a school of thought that says that some changes, like adding or removing trailing commas, is equivalent to a whitespace change. Not sure how I feel about that one.)

The key problem I want us to solve is to get to a state where most users automatically run fixes to add and remove const and sort imports on save. For everything else I'm happy with the path that will confuse users least.
I would be ok with this is branded as "code cleanup on save", "safe fixes on save", or just a default filtered list of fixes to apply on save.
Some prior art is this feature is referred to as "code cleanup on save" in Visual Studio.
https://devblogs.microsoft.com/visualstudio/bringing-code-cleanup-on-save-to-visual-studio-2022-17-1-preview-2/
Note that for this feature users can customize which fixes are applied on save and that code formatting isn't treated as anything more than just another one of the categories of fixes that can be applied.
I do worry we think of dart format as being more separate from dart fix due to the org chart of the Dart team. Yes it provides 100% safe fixes but we have other 100% safe fixes as well.

Some prior art is this feature is referred to as "code cleanup on save" in Visual Studio.

VS Code has the equivalent (using editor.codeActionsOnSave), though the UI for settings in VS Code is primitive by comparison, which is somewhat concerning.
One of the differences between "code cleanup on save" and what we're talking about is that dart fix is much coarser grained than what "code cleanup on save" supports. We've been discussing various approaches to allow the finer-grained control, but I'm not sure we know what granularity users want to have.
@InMatrix I wonder whether you might have some feedback on what granularity is optimal here?

I do worry we think of dart format as being more separate from dart fix due to the org chart of the Dart team. Yes it provides 100% safe fixes but we have other 100% safe fixes as well.

We have a goal to increase the separation of the two by removing the fix support from the formatter and moving it into dart fix. The reason for that goal isn't the org chart, it's usability. I (and others, I think) believe that it will be easier for users if there's one tool that fixes their code rather than having to learn multiple tools to run in order to get all of the fixes.

This question has probably been discussed elsewhere, but I was wondering how much adding those const keyword actually helps improve performance. If dart fix can reliably inserting or removing const for the user, why can't the complier do that under the hood?

Note that for this feature users can customize which fixes are applied on save and that code formatting isn't treated as anything more than just another one of the categories of fixes that can be applied.

Giving users sufficient control is important, since modifying the substance of the code on each save can make users more nervous than modifying its formatting, which won't alter what the code gets compiled into. We might also need to check how undo would work in this case. If that works well, it would allow users to slowly build confidence in this feature and eventually let it be part of their workflow.

We might also need to check how undo would work in this case.

I tried an experiment, and it appears that there's a separate entry on the undo stack for each of the actions enabled by editor.codeActionsOnSave. That means that the user has to undo the last action before undoing the next to last actions, etc. all the way back to the first.
Not sure what that means in terms of having finer-grained or coarser-grained actions on the list.

The compiler doesn't do it under the hood because we are worried it would be surprising to users as it isn't obvious which things are const or not. If all users used IDEs for everything we should have the IDEs show the implicit const keywords in the IDE making the behavior clear. Essentially the motivation for a auto fix based workflow is to get that same experience where const is automatically added and removed while preserving clarity outside of IDEs and in code review tools.

But if adding const when possible is always safe, and can only result in performance improvements, why can't the compiler convert things to const when possible the way it inlines things?  Basically: why would I care if something were "automatically" const or not if it can only result in improvements? I can see the case for explicit const still existing, so I can have the compiler complain if something can no longer be const, but an implicit const seems fine to me.
If there are cases where adding const can cause performance regressions, then of course the current setup makes sense, but also makes me doubt whether turning on the lint or automatically applying the fix is a good idea.

I don't have an opinion on the const issue, but even if we solved that another way there are a number of other fixes noted at the top of this issue that we'd probably still want to address (so perhaps it's worth splitting the const question into its own issue?).
Another possibility I thought of while discussing with @jacob314 today was:

add a new fix source.fixAll.simple - "Fix Simple Issues" (or some other name.. trivial? something that indicates it's a small subset of the main one)
document clearly on the website how "simple fixes" differs from "fix all" (either by noting the things excluded from "simple fixes" that are in the full set, or an explicit list of what's included in simple fixes)
when guiding users to enable fix-all-on-save, use source.fixAll.simple

Unlike one of my earlier suggestions, I think we could do this without having to let the user configure them (between on-save/explicit invocations) and without any of the behaviour being surprising.
I'm not totally stoked about a second "fix all" command, but given all the other options considered, it feels like the simplest (both in terms of implementation, and ability for the user to understand it).
I think users still have a desire to run additional fixes on-save that aren't in the normal "dart fix" set and this doesn't address that, but they can already do that today by listing them explicitly in "codeActionsOnSave" even if it does have some slight quirks (multiple undo steps, slightly worse perf from many server round trips).
Thoughts?

I kind of liked the idea of a separate configuration that defined the set of fixes that fixAll applied. It felt like the equivalent to being able to define your own analysis_options.yaml for your project that customizes how you liked to be guided. And it also scales better to more fixes, since it wouldn't have the multiple undo/round trip problems.
You could still have the source.fixAll.simple, though: it would just use a predefined set instead of a configured set, similar to the way we have defined the flutter_lints package to have a set of recommended lints.

I do like the idea of allowing users to configure this, but:

I don't know if the additional complexity is justified (I don't know how many people would use it) - although I do know that some users would like to choose fixes to include that dart fix currently doesn't include (because the bar for being on by default for dart fix may be more strict and users own preferences)
I feel like it might not be obvious to users why the default behaviour of fix-all-on-save and fix-all-from-palette are different. We can certainly document this, but it might not be an obvious/easy thing for users to find and it might just seem like a bug (whereas a command named "Fix simple issues" or similar is self-describing, and gives the user terms to search for to find the exact list if they'd like).

I think if we're going to let users configure them, the previous suggestion of just using the single command and configuring whether fixes run never/always/only-manual-invocations is probably better than introducing a second command though, because having two commands that can be configured makes the names/distinction a little less clear.
I think we could always start with the simpler option and later "upgrade" if it's clear there's demand (by making the on-save version match what we had in "simple" by default, and then either aliasing source.fixAll.simple to do the same, or having Dart-Code detect when users are using that and prompt them to change it to source.fixAll and a link to some notes about the change).

Re: configurability. We can create a sensible default list of fixes and then allow the user to customize that list. One thing that can help communicating what happens on save is to print messages when fixes are auto-applied on save, just like what we do for hot reload on save. The message can potentially include a link to a configuration file/UI.

We do need to be careful about "upgrading". For example, if we decide to have a default list of fixes that are run when there's no configuration, and adding a configuration would override the defaults, then users could lose functionality when they're trying to add new fixes to the list if they don't know all of the default values that need to be included in order to achieve parity. That could be frustrating.
And there's another aspect to configurability that we haven't discussed: discoverability. There isn't currently any user friendly list of the fixes that they could potentially add to the list. We would need to have a way for users to know what they can add to the list and what specifically each item will actually do, but that list might be large. If we limit the list to the 15 in the original comment, then that's not too bad. If we open it up to everything then we'd likely have on the order of 250-300 items for users to choose between. I'm not arguing against doing something to solve this problem, just pointing out another consideration.

... some users would like to choose fixes to include that dart fix currently doesn't include ...

Just curious, but do we have concrete asks, or is this more of a general request?

We do need to be careful about "upgrading". For example, if we decide to have a default list of fixes that are run when there's no configuration, and adding a configuration would override the defaults, then users could lose functionality when they're trying to add new fixes to the list if they don't know all of the default values that need to be included in order to achieve parity. That could be frustrating.

I had in my mind that the user configuration would just layer on top. I think this is how lints work. For example if the defaults were:
fixes:
  - fix_one: never
  - fix_two: always
  - fix_three: manual

Then if the user configured:
fixes:
  fix_one: always

Then they should still have the same defaults from fix_two/fix_three.

And there's another aspect to configurability that we haven't discussed: discoverability. There isn't currently any user friendly list of the fixes that they could potentially add to the list.

Also similar to lints, I think we could have auto-complete of the available fixes. We could also complete them with their default values (eg. insert - "fix_one: never" when the user completes the fix_one option). This is what VS Code does with its settings and I find it quite useful.

and what specifically each item will actually do

If we have some descriptions in the server, we could expose these in hovers and/or the documentation shown with completions.
(note: I'm not specifically arguing for the configuration option over something simple, but I think we could probably provide a decent experience if we did).

... some users would like to choose fixes to include that dart fix currently doesn't include ...

Just curious, but do we have concrete asks, or is this more of a general request?

A bit of both. I recall responding to quite a few requests for specific fixes not working in codeActionsOnSave, and also comments about how it doesn't run "all fixes". Generally I direct people to open issues in the SDK with specific fixes that are not currently included in "dart fix").
I have generally assumed that the items missing from that set are usually because they're subjective (or there are multiple possible fixes and we don't know what the user would want), but it's certainly possible that in most cases they're just not implemented but could be.
I had a quick search in the Dart-Code repo and couldn't find many (it's possible some requests were in the Dart-Code Discord, or also possible I'm just failing to find the because GitHub search isn't brilliant), but here are some:

https://github.com/Dart-Code/Dart-Code/issues/4458 - add all missing imports (this one is a little tricky because there could be multiple)
https://github.com/Dart-Code/Dart-Code/issues/4009 - sort pub packages in pubspec (this one has a lint so probably is just missing a fix implementation rather than being deliberately excluded)
https://github.com/Dart-Code/Dart-Code/issues/3696 - this one is quite general ("I applied flutter_lints to an old project and more than 200 problems appeared. dart fix didn't fix them for me") but has a few examples
https://github.com/Dart-Code/Dart-Code/issues/3575 - fixes from plugins (this one also likely also more complex)

It seems like the only contentious fix might be "remove unused imports" in which case full configurability might be necessary. To keep things simple for now, I propose we:

exclude "remove unused imports" from running when the source.fixAll command is trigged by save
(manually running the "Fix All" command from the VS Code command palette will still include it)
document how you can have both "fix all" and "remove unused imports" run on-save if you'd like to keep the same behaviour that you get today (this will be done by explicitly listing the "remove unused import" fix ID in editor.codeActionsOnSave)
once this has shipped in stable SDKs, add fix-all-on-save to the recommend settings we prompt users about on first run
add a flag that allows us to re-prompt to use recommend settings when there are significant changes (such as this one)

Any other opinions or objections/concerns? (if not, I may proceed in this way)

This change has landed, so using fix-all-on-save will no longer strip unused imports.
If you want the original behaviour (to fix up imports on save), the best way is to additionally run source.organizeImports on save:
"editor.codeActionsOnSave": {
	"source.fixAll": true,
	"source.organizeImports": true
}

@DanTup What about the unused_element lint? When I create a widget via vscode snippet it always include the key parameter however when I save it removes the key parameter because its currently not in used (which is expected because I am just creating the widget) but I will later need to use it which is very annoying to have to go back and forth.
Is there no way to disable auto fix for a certain lint?

@Mayb3Nots there isn't, however this was reported in https://github.com/Dart-Code/Dart-Code/issues/4655 and I have an open change to exclude the remove-unused-parameter fix when running on-save too.


Support for QueryString

I made an implementation, but I can not do the merge, because I do not know how to test in Apache, and I do not have the time.
is my suggestion for this functionality.
Replace in method: getDirectoryAndFileNames()
$segments = explode('/', ltrim($request->getPathInfo().$request->getQueryString(), '/'));
and use in nginx
 try_files $uri $uri/ /page-cache/$uri$query_string.html/index.php?$query_string;

Query strings don't always signify a unique endpoint (primarily the utm ones), which makes including the query string in the cache key very impractical.


Mobile - Add warning not support IOS <16.4

Describe the task
Add warning not support IOS <16.4
Content: https://www.notion.so/subwallet/SubWallet-Th-ng-b-o-d-ng-h-tr-cho-c-c-phi-n-b-n-iOS-16-4-9ac837a7e9db4229a6bf28a5bd9d9b13?pvs=4#a64dd409ec5d4d509a92bb24505ecab8
Expect: Show warning on ios < 16.4

Version test: https://www.diawi.com/qrcode/link/EbFaHZ
Device test: IP 8+
IOS version: 15.8

[ ] Navigate incorrect when click button Update now

Version test: v1.1.80(431)
Device test: IP 6s, IP 13
Validation passed

Install/Upgrade version

Show warning on IOS < 16.4
https://github.com/user-attachments/assets/77a444d2-f6ae-476b-97b2-6916a57dde95

Check UI, Hyperlink, navigate on popup

Re-check on IOS >=16.4


[BUG] Progress losts when tab is closed/refreshed

Describe the bug
All the progress of the test gets lost when we click on the back button in the mobile browser or reload/close the tab on the desktop browser.
To Reproduce
Steps to reproduce the behavior:

Go to Arito website
Start a test
Press back button/close tab/reload
All progress is lost!

Expected behavior
We should either save the progress somehow or at least add an ask before closing the dialogue box so that the progress loss can be prevented in case of the tab is closed/reloaded mistakenly by the user.
Desktop (please complete the following information):

Ubuntu
Brave Latest
Latest Version of app

Smartphone (please complete the following information):

Samsung
Chrome browser
Latest App version

Using Localstorage would be an easy way to persist the state through reloads, I could submit a PR later if you want

@kiosion Can you do that without having any negative effects?
If so then please go ahead!
Try to tinker with the code a bit and then tell me if you are confident with that and I will assign you this issue happily 😄
Happy Contributing! 😊

@prakhartiwari0 was issue resolved? I see that it's still open. Could you please let me know.

@prakhartiwari0 was issue resolved? I see that it's still open. Could you please let me know.

Yup it is still open John

I've noticed it isn't assigned to anybody so I'll make a PR right now.

@prakhartiwari0 was issue resolved? I see that it's still open. Could you please assign it to me so I can make changes further

@prakhartiwari0  - This problem is not there right? I can see the warning before closing the web app. Can you close the issue if done?


RFC: Run the metadoc CLI using sbt-launch

I mostly created this PR to showcase an alternative way to run the CLI from sbt.
Pros: No magic classpath setup to handle Scala versions
Cons: A bit more verbose when run after a clean

I am not convinced this is better than what sbt-metadoc does currently. If I'd change anything then it's to use the coursier API directly instead of sbt library management. I've had bad experiences relying on custom configurations, it seems to always fail for some random people's builds.
In fact, I just realized right now that we may be able to publish metadoc-cli for 2.10 since it doesn't depend on scalameta, it only uses langmeta which is cross-built for 2.10. Using metadoc-cli directly from sbt-metadoc would avoid the whole need for this classloading business.

Yes, that would simplify a lot. Let's close this one.
On Sep 26, 2017 02:45, "Ólafur Páll Geirsson"<EMAIL_ADDRESS>wrote:

I am not convinced this is better than what sbt-metadoc does currently. If
I'd change anything then it's to use the coursier API directly instead of
sbt library management. I've had bad experiences relying on custom
configurations, it seems to always fail for some random people's builds.
In fact, I just realized right now that we may be able to publish
metadoc-cli for 2.10 since it doesn't depend on scalameta, it only uses
langmeta which is cross-built for 2.10. Using metadoc-cli directly from
sbt-metadoc would avoid the whole need for this classloading business.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/scalameta/metadoc/pull/72#issuecomment-332102385, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAAg4U7ynBTXdSF68sIS8dTpFDp--Ka6ks5smJ2egaJpZM4PZ_o3
.


Update a docstring and add missing APIs.

This is a follow-up of #466 and some doc fixes.

Codecov Report

Merging #471 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #471   +/-   ##
=======================================
  Coverage   93.17%   93.17%
=======================================
  Files          29       29
  Lines        3780     3780
=======================================
  Hits         3522     3522
  Misses        258      258

Impacted Files
Coverage Δ

databricks/koalas/frame.py
94.87% <ø> (ø)
:arrow_up:

Continue to review full report at Codecov.

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


"The parent is missing." error when sending HTTP request with string body

Describe the bug
"The parent is missing." error when performing HTTP request with string body (required for x-www-form-urlencoded)
Version
1.0.1
Browser

[x] Electron distribution
[ ] Chrome
[ ] Safari
[ ] Firefox
[ ] Edge

OS

[ ] macOS
[x] Windows
[ ] Ubuntu

To Reproduce
Steps to reproduce the behavior:

Create a new HTTP request
Set method: "POST"
Set a url
Set the body as string and write something. For example, "this is the body"
Run the bot
When the bot will try to run this action, the bot will write "The parent is missing." in the chat

Expected behavior
Run the HTTP Request
Screenshots

Additional context

hello @hraz-msft - we will investigate this today. thank you!

@hraz-msft could you try to use GET? I've checked in the msgraph doc, we should use GET instead of POST for this API. https://docs.microsoft.com/en-us/graph/api/user-get

@luhan2017 Yes, you are correct. This URL is for the screenshot, it is not the actual URL that I use.
The issue is that sending POST request with string code (no matter to which URL or Body) the request fails

I also have this experience when trying to get an Auth token for D365CE... using both get and post.

@hraz-msft @rhalaly @triciasinclair Thanks for reporting this issue. I've got what you mean. This is a bug in the botbuilder-dotnet httprequest body handling logic. @zidaneymar will help to prepare a fix on this, and we will keep you posted.

Fixed in PR:https://github.com/microsoft/botbuilder-dotnet/pull/4064

Closed in PR:https://github.com/microsoft/botbuilder-dotnet/pull/4064

@zidaneymar I still didn't see it's working nightly build of 6/16 still has this issue

@hraz-msft , could you please try the nightly build of 6/17 or 6/18, it should be included there.

hi, i encountered an error "The parent is missing" when i try to make a POST http method. My aim is to get the token but its not working. Please refer to the link.
https://docs.microsoft.com/en-us/graph/auth-v2-user
Current Bot Framework Composer Version (Please see image ref. below):

@samaroj We didn't include the sdk fix in the composer electron app for now. could you try to do the following steps to migrate this issue?

go the runtime config page -> Use Custom Runtime
go the runtime folder under your bot update the sdk packages (replace 4.9.3 with 4.10.0-preview-200627-141514 in every csproj file)
And try to start your bot again.

Please let me know if it still not works.

@samaroj We didn't include the sdk fix in the composer electron app for now. could you try to do the following steps to migrate this issue?
1. go the runtime config page -> Use Custom Runtime

2. go the runtime folder under your bot update the sdk packages (replace 4.9.3 with 4.10.0-preview-200627-141514 in every csproj file)
   And try to start your bot again.

Please let me know if it still not works.

Thank you, @luhan2017. I'm trying this now.

@samaroj We didn't include the sdk fix in the composer electron app for now. could you try to do the following steps to migrate this issue?
1. go the runtime config page -> Use Custom Runtime

2. go the runtime folder under your bot update the sdk packages (replace 4.9.3 with 4.10.0-preview-200627-141514 in every csproj file)
   And try to start your bot again.

Please let me know if it still not works.

Hi @luhan2017 it works. I only update the packages on the .WebApp csproj file.

i'm not sure if this is issue i'm gonna share is related to this thread. Already fixed the "The parent is missing" error by updating the preview packages. Then i have now this issue. Please refer to the link:
Bot Framework Emulator Output: https://ibb.co/qdrjXWG
Bot Framework Composer Output: https://ibb.co/mb9sxSj
based on the error i don't have "grant_type in the request body" but I already have it on my HTTP request body on the Composer.

It now works for me as well. Thanks all!

@samaroj do you have grant_type as a parameter in the body?

@samaroj do you have grant_type as a parameter in the body?

yup. but it gets an error

i can see the initial values but not grant_type. I ask because I have the below value and it works.
client_id=[clientid]&username=[userid] &password=[password]&grant_type=password&resource=[resource]&client_secret=[clientsecret]

i can see the initial values but not grant_type. I ask because I have the below value and it works.
client_id=[clientid]&username=[userid] &password=[password]&grant_type=password&resource=[resource]&client_secret=[clientsecret]

i see you use delegated permission. i'm using application permission.

IT WORKS! and still using the application permission. What i did is instead of adding the "Content-Type": "application/x-www-form-urlencoded" to the Headers, i put the application/x-www-form-urlencoded to the Content type textbox.

upon checking the JSON output from the Bot Framework Emulator, if you don't indicate you content type on the textbox, the Content-type is set automatically to "application/json"

If you indicate it, this will look like this,


Shader flickering in 4.4-dev4

Tested versions
Reproducible in 4.4 dev4, not reproducible in 4.3 stable and 4.4 dev3
System information
Godot v4.4.dev4 - Windows 10.0.19045 - Multi-window, 2 monitors - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3060 (NVIDIA; <IP_ADDRESS>94) - AMD Ryzen 5 1500X Quad-Core Processor (8 threads)
Issue description
I am applying a shader to a Line2D node. The shader is a Voronoi edge shader based on https://iquilezles.org/articles/voronoilines/ and https://www.shadertoy.com/view/ldl3W8
The rendering method is Forward+
Before 4.4 dev4 it looks correct:

On 4.4 dev4 rapid flickering has appeared:

Steps to reproduce
Open the MRP with 4.4 dev4 and observe the issue. I have noticed that the static (non-animated) version where the regions do not move works - you can see it by commenting out lines 29 and 49, both are:
point = 0.5 + 0.5*sin(TIME * frequency_road + 6.2831*point);
so perhaps the issue is with this calculation
Minimal reproduction project (MRP)
shader_bug.zip

I get the same behaviour in dev3 and dev4, in both cases it is the same as what you have in dev4

Okay, I tracked down the issue. You have undefined behaviour in your shader, so its basically random what the GPU will end up doing.
The float d = dot(0.5*(mr+r), normalize(r-mr)); line introduces a division by 0 since r is the same as mr
You need to handle the case where r and mr are the same. How you do that will depend on what you want your shader to do. But simply setting d to 1.0 when r and mr are the same is enough to fix your MRP.


[Merge Conflict Fix] port 'Master nightly CI fix ' to compatible

This is autogenerated Pull Request for porting #15770 to compatible

!ci-build-me

!ci-build-me

!help-merge-me

Hello, @dkijania 1 new  created to help you port this change to compatible. Please follow steps to resolve conflict for each mainline branch. PRs will be created automatically after you push merge to porting branches
develop
git fetch && git checkout port/_port/_master_nightly_test_to_compatible_to_develop && git merge port/_master_nightly_test_to_compatible

Resolve conflict and then
git push

Porting branch #15776 to resolve conflict with develop created. Please merge it in order to solve conflict between head of this PR and develop

!ci-build-me


Implement Second Search and its test

Implement second search method and its test

[ ] Implement the second search method.
[ ] Write unit tests.


Damaging Terrain

Created Damaging Terrain prefab.

Description
 I created a damaging terrain game object and a prefab for it,
Related Task
 https://app.clickup.com/t/8678tff10
Testing
 I tested the damaging terrain with the goon and the player. It will only damage the player if it is not placed by the player and will damage the goon if placed by the player.

Screenshots (if appropriate):

looks good!


Fix ParseAPTConfigFolder when sources.list is missing

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


[Reporting bug] Tests that passed on retry are not being reported accurately

I noticed an issue in Bluepill version 5.10.0 that supports Xcode 13. In a successful execution, 11 tests are reported to have failed. But the execution was successful because those tests passed on retry. Usually when tests pass on retry it should be reported accordingly in 0-test-report.html, which doesn’t seem to be the case in this execution. This might be an edge case specific to the latest version. I will try to get more details or a test case to reproduce this.

I saw similar behavior, and the root cause was a small bug in the collation of test results: https://github.com/MobileNativeFoundation/bluepill/pull/515
Are you seeing invalid XML files created in any of your executions? If an execution produces a Junit XML file that isn't a valid XML document (which we were seeing when a simulator failed to boot; the file contained just the string "NO LOG: JUnitReporter"), other (perfectly valid) test reports would be treated as invalid, and not merged into the final combined report.

True. I see the executions where this did happen and I see how it could skip the subsequent reports that might be perfectly valid. Thanks for the fix.

@jschear Your PR(https://github.com/MobileNativeFoundation/bluepill/pull/515) might fix this issue. I will resolve this issue after verifying.

This doesn't seem to be fixed. I'm using 5.11, and I see results for each individual attempt in the xml, so if a test fails, retries, and then passes, I still have a failure in the output. There's an old open PR to add a flag for this here: https://github.com/MobileNativeFoundation/bluepill/pull/467
...and one comment even mentions making it the default behavior, but that doesn't seem to have happened.


Fix clipping

Sometimes the robot loses parts of itself or manages to fall through things. We should fix this.

I haven't seen any other clipping issues with the robot since #72 so will close this


 If it can't be done to prevent src to go into the package, I would love to learn the rationale for it as it's not obvious to me beyond the convenience of having access to the src files.

This doesn't make sense to me - users do consume the src directory when using require to require specific files to include the minimum JS in their applications, this would be a major breaking change.

Ah, that makes sense. I was thinking about this from a completely different angle and just consumption out of the dist directory itself. I see your point. Thank you, @wesleycho.


Debug-mode panic on arithmetic overflow in huffman.rs:95:21

Found by the decode_still fuzzer. Testcase:
crash-6e515dd2b891121ce5a51385c0730f4a21bf2efe.webp.gz
thread '<unnamed>' panicked at image-webp/src/huffman.rs:95:21:
attempt to add with overflow

Tested on commit c7b77cb57afafda6327f1f0826d8f4961b8bdaa2

No more issues without debug-mode checks after 1 billion executions! :tada:
I'll re-run the fuzzer with debug mode checks now.

No more issues on decode_still fuzz target after 100 million executions with debug assertions enabled.

All clear on the decode_animated target after 200 million executions as well.


Test Issue

...

test

test

This works great

fjksdfj

fjfklsdfj

fasdfd

fjksdfj

/bounty $50

/bounty $50

/bounty $50

/bounty $50

/bounty $5

/bounty $5

/bounty $5

/bounty $5

/bounty $5

/bounty $5

/bounty $5

/bounty $5


Tome adept

Automate the Tome Adept RK +1 to attack benefit

This hooks on the RK check result to apply an effect for the RK benefit.
The effect uses a TokenMark rule to mark the target of the RK check.
The FlatModifier remains on the Tome item like it is now, but uses the
mark in the predicate to trigger on the right attack.  The hook code
will automatically set the TokenMark's uuid to the RK check's target's
uuid.

The effect expires at the end of the turn.  If an expired effect is
present, the RK will replace it with a new one.  An unexpired check
means this is the first RK in the turn and the effect isn't updated.

It's not automated yet that the effect goes away after an attack against
the RK target.  That needs to hook on attack rolls.

If someone wants the Tome Adept RK attack bonus, but didn't do the RK
roll with the macro, they can just drag the effect onto their actor and
it'll mark the current target or let them pick one.

If the first RK check of the turn is not acually the Tome Adept free
check, e.g. they skipped it, then decided to do a check mid-turn, then
the bonus shouldn't apply.  It'll get added anyway.  Just right-click
the effect to make it go away.

I thought about adding a dialog the RK macro, "Is this the Tome Adept
free check?" But that's more clicks to use that just removing the effect
in the rare case it's wrong.

Will rebase after other two PRs.


First day of the week is not Monday for current week

When I click "Open this week" on Sunday a new week is created.
Expected behaviour: week starts on Monday, so when I open this week on Sunday it should be the same week, and new week only on Monday.

Duplicate of #128?


how about banning clients before the mandatory version ?

The mandatory version <IP_ADDRESS> was released on 2016 November 2.
Any client that didn't update yet, is very likely on their own fork, and thus the danger of losing coins is very high.
After more than 3 weeks, ca. 10% still run old wallets, and we have NOT this feature yet:
https://github.com/gridcoin/Gridcoin-Research/issues/114
It'd be drastic to make a new version (where connections of old versions are declined), but:
at least those users would notice something wrong + they might look what it was caused by.
Missing those 10% hurts the network.
It should be also verified that exchanges have all upgraded

I think the mandatory updates should be automatically applied with an option to opt out (or the other way around).
I hang out on IRC, listen to the podcast and read up on reddit, yet I managed to miss the update until the day before release. I can only imagine how many people just have their wallet running somewhere without staying in the loop.

I agree with Erkan that something needs to be done to ensure that Mandatory Updates are indeed mandatory.
Whilst it may be something that will make some users unhappy, presently it does seem to be the only solution.
Without the ability to contact the user thru email, because of the spam laws and the wallet having no communication facility we do face users losing coins and degrading the network.

Just a few comments:

We did notify the exchanges before the mandatory.  We have a system in place with exchanges now, where we ask them to disable the wallet Before the mandatory block passes.
The Windows code automatically upgrades windows users by default, unless they set the key autoupgrade=false.  We cant really force linux, as so many different distros require distinct scripts to upgrade the runtime files so they need to grab the rpm or run the bash script manually.
The wallet does have a feature already in it, to force an upgrade to all platforms for mandatorys.  Basically, if I increment the network version, it puts all the old clients on their own network IE severing them.  In this version, we deliberately didnt, as its mandatory to require signed por blocks after 725000 (IE the only valid blocks are signed now).  So another words its not really hurting us with 10% missing their coins are going to dissapear and restake.
The wallet does already have a Message feature but we tend to not use it as in the past cryptocointalk updates were so frequent, however, that sounds like something we should use to reach people who arent on cryptocointalk! I agree.

Rob


drivers: flash: stm32 ospi: fix prescaler

Original computation seems to be based on QSPI that has prescaler range [0, 255].
However, OSPI clock prescaler has a different value range [1, 256].
Adapt prescaler computation to valid OSPI domain and add min value assert.

@FRASTM adapted. The rest seems to use [1; 256]


Standardize linting and formatting

Note: This PR only impacts openfl.experimental namespace, and should be a non-breaking change.
Changes:

Sorted imports using isort
Formatted files using black
Linted using flake8

Configuration for isort and black is included in pyproject.toml. flake8 continues to use setup.cfg
For future development:

Lint using ./shell/lint.sh
Format using ./shell/format.sh

Yes, this PR is for non-breaking formatting changes. namex will impact API surface, and may impact project structure. That will be for a future PR.

@psfoley Added relevant ignores in setup.cfg
Could not get rid of F821 without invoking other warnings. noqa: # does not seem to work with multi-line code.
How does ModelHeader and TensorProto not throw an error when code reaches there? The error is valid, no definitions for those are imported anywhere in the file.

Fixed imports in the entire openfl.experimental interface.


Improve MAVEN build Performance

Maven allows you to run the compiler as a separate process by setting <fork>true</fork>. This feature can lead to much less garbage collection and make Maven build faster. This project has more than 1000 source files. We can consider enabling this feature.
Maven can recompile only the classes that were affected by a change. This feature is the default. We can activate it by setting <useIncrementalCompilation>true</useIncrementalCompilation>.
=====================
If there are any inappropriate modifications in this PR, please give me a reply and I will change them.

Hi,
It looks good except it update the PDF used for the blob tests, that is unrelated, would accept it without that file updated.
Regards

Closing this for lack of feedback


[Event Request] Codeunit 9520 - OnAfterCheckValidEmailAddress

#1758 has been wrongfully closed.
In codeunit 9520 "Mail Management", function CheckValidEmailAddresses indeed has the OnBeforeCheckValidEmailAddress publisher. (it should have been named OnBeforeCheckValidEmailAddresses instead)
However, function ValidateEmailAddressField calls CheckValidEmailAddress directly, so an additional OnAfterCheckValidEmailAddress would allow us to call ValidateEmailAddressField and add a custom regex mail validation via the new publisher.

When will this be available? I've checke the latest BC16.1 but there's no sign of a OnAfterCheckValidEmailAddress:


ESM / moduleResolution node16 support

As suggested in https://github.com/sindresorhus/got/issues/2051#issuecomment-1259401339 I changed my moduleResolution to be node16.
And I get this error:
src/utils.ts:4:47 - error TS7016: Could not find a declaration file for module 'hpagent'. '/home/maxim/google-api-typings-generator/node_modules/hpagent/index.mjs' implicitly has an 'any' type.
  Try `npm i --save-dev @types/hpagent` if it exists or add a new declaration (.d.ts) file containing `declare module 'hpagent';`

4 import {HttpProxyAgent, HttpsProxyAgent} from 'hpagent';

Project: https://github.com/Maxim-Mazurok/google-api-typings-generator/blob/master/src/utils.ts#L4
Workaround:

Change exports in hpagent/package.json to be "exports": "./index.js",
Use patch-package: npx patch-package hpagent --exclude 'nothing'

Patch:
TODO: Remove this after this is fixed: https://github.com/delvedor/hpagent/issues/94
diff --git a/node_modules/hpagent/package.json b/node_modules/hpagent/package.json
index b9800c2..44c7f8c 100644
--- a/node_modules/hpagent/package.json
+++ b/node_modules/hpagent/package.json
@@ -4,13 +4,7 @@
   "description": "A ready to use http and https agent for working with proxies that keeps connections alive!",
   "main": "index.js",
   "types": "index.d.ts",
-  "exports": {
-    ".": {
-      "require": "./index.js",
-      "import": "./index.mjs"
-    },
-    "./*": "./*.js"
-  },
+  "exports": "./index.js",
   "scripts": {
     "test": "standard && NODE_EXTRA_CA_CERTS=test/fixtures/certs_unit_test.pem ava -v test/*.test.js && tsd",
     "test-ci": "standard && ava -v test/*.test.js && tsd"

fixed with pr #95


More set algorithms

Added algorithm 2 and 3 from [godefroid1996]

Codecov Report

Merging #4 (d804bdc) into master (e161f53) will increase coverage by 1.50%.
The diff coverage is 96.89%.

@@            Coverage Diff             @@
##           master       #4      +/-   ##
==========================================
+ Coverage   93.47%   94.97%   +1.50%
==========================================
  Files          16       20       +4
  Lines         827      975     +148
==========================================
+ Hits          773      926     +153
+ Misses         54       49       -5

Impacted Files
Coverage Δ

mdptools/graph.py
90.29% <89.47%> (ø)

mdptools/mdp.py
94.69% <90.32%> (-1.21%)
:arrow_down:

mdptools/utils/highlight.py
97.14% <91.66%> (+0.67%)
:arrow_up:

mdptools/utils/utils.py
88.63% <95.23%> (-4.42%)
:arrow_down:

mdptools/__init__.py
100.00% <100.00%> (ø)

mdptools/model/commands.py
96.03% <100.00%> (+1.14%)
:arrow_up:

mdptools/model/state.py
91.07% <100.00%> (+0.68%)
:arrow_up:

mdptools/model/transition.py
95.18% <100.00%> (-0.06%)
:arrow_down:

mdptools/search.py
100.00% <100.00%> (ø)

mdptools/set_methods/__init__.py
100.00% <100.00%> (ø)

... and 9 more

Continue to review full report at Codecov.

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


String values in Wikidata statements and terms should be trimmed automatically

Describe the bug
Currently, the Wikidata extension shows warnings when strings have leading or trailing spaces. These warnings should be removed and the strings should be trimmed by default.

Possibly this should trim any non-printing characters rather than just spaces?

@ostephens I'm not sure about non-printable characters, maybe they indicate some underlying encoding problem? I don't know, I haven't encountered the problem very often.

You maybe correct - I've seen issues with invisible characters in Wikidata labels (e.g. I had to do an edit to remove a unicode control character at d https://www.wikidata.org/w/index.php?title=Q42307623&direction=prev&oldid=744504811)  - but the issue wasn't introduced by an OpenRefine edit afaik


Fix an error that occurs during Definition

The following error message always appears on the output of vs code when I select [go to definition] or [show definitions] with the file of my project in editor pane.
/app/lib/language_server/project.rb:15:in `find_definitions': undefined method `refs' for nil:NilClass (NoMethodError)
	from /app/lib/language_server/definition_provider/ad_hoc.rb:12:in `call'
	from /app/lib/language_server.rb:139:in `each'
	from /app/lib/language_server.rb:139:in `flat_map'
	from /app/lib/language_server.rb:139:in `block in <module:LanguageServer>'
	from /app/lib/language_server.rb:45:in `block in run'
	from /vendor/bundle/2.3.4/gems/language_server-protocol-0.4.0/lib/language_server/protocol/transport/stdio/reader.rb:27:in `read'
	from /app/lib/language_server.rb:34:in `run'
	from /app/exe/language_server-ruby:8:in `<top (required)>'
	from bin/language_server-ruby:8:in `load'
	from bin/language_server-ruby:8:in `<main>'

I think it happens because my project directory is out of scope.
That seems good to me adding the project root directory to the load path in the initialization process.
What do you think?

@steiley
Thank you for your reporting!
How do you boot the lang server?
In my thought, the server should be added to your project's Gemfile.

@mtsmfm
Thank you for your response!
Sorry to fogat to tell youI that I use VS code(version 1.17.2).
I installed the language server in a local ruby environment.
The language server is booted by vscode-ruby-lsc.
I added to my project's Gemfile after receiving your advice.
But the same error occurs.
Is there anything else I must do?

@mtsmfm
Thank you for your response!
Sorry to forget to tell you that I use VS code(version 1.17.2).
I installed the language server in a local ruby environment.
The language server is booted by vscode-ruby-lsc.
I added to my project's Gemfile after receiving your advice.
But the same error occurs.
Is there anything else I must do?

@steiley
Sorry, my repos lack many documentation 💦
Could you change ruby-lsc.commandWithArgs?
https://github.com/mtsmfm/vscode-ruby-lsc#ruby-lsccommandwithargs
Like following:
{
    "ruby-lsc.commandWithArgs": [
        "bundle", "exec", "language_server-ruby"
    ]
}

In my thought, the lang server will be booted via bundler as same as your application.

@mtsmfm
I changed ruby-lsc.commandWithArgs as you suggested
But the result was the same.
A project directory isn't parsed unless this project root directory is added to $LOAD_PATH.
It seems that there is no point to add that to $LOAD_PATH.
I want to use the Definition for rails development.
For exampe contoller A(/rails_root/app/controllers/a.rb) use model B(/rails_root/app/models/b.rb) in a.rb.
In that case I want to jump from a.rb to b.rb using the Definition.
Actucally it is not supposed to be.
That case may be not included in your assumption.
I hope I can do this if possible.

Sorry for the inconvenience.
Adhoc definition provider still has some bugs so I've added --experimenatal-features flag and disabled it in default.
Close this PR for now but I'm happy if you sent me the code/project you opened at the time.


outdated downloads data

It seems the data for downloads and other metrics are not showing the latest data.
https://api.npms.io/v2/package/tailwindcss shows downloads data for the 15th of December with a count of 0.

@DanielRuf a package is only analyzed once publish or once every 15 days.

Please compare it to the tachyons package which has fresh data.
Is this infomation written somewhere?

Also 0 downloads for the given day seems to be wrong imo.

It’s written here: https://github.com/npms-io/npms-analyzer/blob/master/docs/architecture.md#observers
The exact time is not specified because it’s configurable and might change to accommodate the growth of the registry without having more machines to run the analyzer.

The number of downloads is 0 for the first day but it shows non 0 for the subsequent range of days. We just use the npm API to fetch the downloads count. If you feel that is wrong, either we are reading it’s info in a wrong manner or the API response is already incorrect. Please debug and leave the feedback here.

It’s written here: https://github.com/npms-io/npms-analyzer/blob/master/docs/architecture.md#observers

Thanks.
Well, let's see what happens after the 30th. Would have been good to find the info on the website.

I guess the downloads are reset for new releases but do not incorporate the downloads of the previous releases on the same day (think about projects with lock files which use previous versions).

https://api.npmjs.org/downloads/point/2017-12-26/tailwindcss
https://api.npmjs.org/downloads/point/2017-12-27/tailwindcss
daily is the previous day so the data of the current day always gives 0.

https://github.com/npm/download-counts#data-source

@bcoe I guess this changed from the most recent API changes that you made?

It seems stars, issues (and deps) seem to be wrong for angular, angularjs and so on or what name is used for angular core?

the same happens to react (https://api.npms.io/v2/package/react) the github property is completely  missing from the response, could this be the reason?

same for dependentsCount

@DanielRuf a package is only analyzed once publish or once every 15 days.
react was analyzedAt 2019-09-03T02:39:30.064Z . more then a month ago: https://api.npms.io/v2/package/react


[JCLOUDS 2.1.0] Remove special naming rules for Azure

The Azure ARM provider now supports the standard naming convention with dashes in the names.
Tested by deploying a three-tier app to azure using current jclouds master.
Merge only after switching to jclouds-2.1.0.
/@cc @drigodwin

:) oops


[ML] Update changelog to include added dependencies

Description
#28624 adds new dependencies on azure-mgmt-resource. This PR updates the changelog to reflect that
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[ ] Pull request includes test coverage for the included changes.

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


To/from core type functions moved to property.cpp

Dropping this for now. Will be fixed when going to monorepo.


only compatible with python2?

I am on a linux distro that sets python3 rather than it's old version as default. Was confused why it wasn't running properly -
Traceback (most recent call last):
  File "./nodemcu-uploader.py", line 6, in <module>
    from nodemcu_uploader import main
  File "/home/agauniyal/projects/nodemcu-uploader/nodemcu_uploader/main.py", line 76
    print 'sources', sources
                  ^
SyntaxError: Missing parentheses in call to 'print'

should probably add some info saying only compatible with python2

I had the exact same problem.
This requirement should clearly be documented, and the script should verify its requirements and provide with a meaningful error message if that fails.
A Python 3 version of the script would ne nice, too.

Got it working in Python 3.6. At least it can upload and do raw verification. But it fails in about 8 times of 10 with different garbage in response from ESP, but I think it's hardware problems :).
If someone is interested in it, I can make a PR.

@saintcrawler Yes please, most systems are defaulting to python3 atm so it would be a good change. I'll make some time to test it as well.

@agauniyal You can test it now

closed with bca98f6a44c970fdb0a6974acdb4732d876788c6 but it's not yet published in pypi


maybe use forEach and look into replacing the var to const or let

https://github.com/Sophievanderburg/get-inspired/blob/73a37390fb75a97071fca1645a9b3cdb7ea2fa5f/modules/forms.js#L28

Got another issue with the same comment. Fixed it now :)


Add table of competitions

Hi, I really love this tool as I can instantly see if the comp is worth attending or even registering to.
The last feature that I miss here is having a table of competitions with its predicted wprs, so I can look through it and compare competitions.
I know that this would be harder to implement as you would have to scrape through the competition hosting sites, gather the dates when the comp takes a place, update the forecast regularly and then remove the comp from the list after it took a place. But maybe for a start have something like a table, sorted by forecasted wprs which comes from the links users input into the tool (something similar to recent queries)
Do you think this is achievable?

This would either involve caching or serious scraping. I'll think about it.
I wanted to not cache too much, so that if someone gets confirmed at a comp you see the now correct result immediately.
In the meantime: There is a currently hidden stats page that gives you some information: https://wprs-forecast.org/stats
I'll come back to this thread if I have some more time or a good idea. Thanks for your feedback!

There is now a recent queries table on the home page.


Closes #2 - Adds GKE Autopilot to infrastructure

Adds GKE autopilot to infrastructure deployment, along with helper scripts to build and deploy the services

Ok,  fixed those. I've opened #40 to track workload identity. #3 tracks the load generators on GKE.
Also, I opened #39 as per the discussion around broken project APIs + Terraform.


Segmentation fault (core dumped) when use startJVM

Enviroment

Ubunto 16.04
Python 3.6
JPype1 (0.6.2)
Java - openjdk version "1.8.0_131"

There is some error in startJVM.
I don't know what is the problem. need advice
>>> import jpype
>>> jpype.startJVM(jpype.getDefaultJVMPath())
Segmentation fault (core dumped)

Enviroment
Ubunto 16.04
Python 3.5.2
JPype1 (0.6.2)
Java - openjdk version "1.8.0_131"

There is some error in startJVM.
I don't know what is the problem. need advice
>>> import jpype
>>> jpype.startJVM(jpype.getDefaultJVMPath())
Segmentation fault (core dumped)

Ubunto is currently shipping a broken Kernel that does not support a JVM.   This is a  known issue.  They should be shipping a revised kernel soon.
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1699772


SquidMass spotlight and series powered by :octopus:

@yangwao before merge please add to netlify env
SUBSQUID_ENDPOINT=https://app.gc.subsquid.io/beta/rubick/004/graphql

:zap: series insight are using subsquid
:construction: Spotlight is still broken
:zap: working spotlight, but bad sorting
:bug: fixed ordering on spotlight by rank
:calculator: collectionSeriesList now takes limit parameter
:bug: series table relies on subsquid endpoint

Thank you for your contribution to the KodaDot NFT gallery,
we really appreciate your contribution!
PR type

[x] Bugfix
[x] Feature
[ ] Refactoring

Before submitting this PR, please make sure:

[ ] Your code builds clean without any erros or warnigns
[ ] You've posted screenshot of demonstrated change in this PR
[ ] Merged recent default branch, main and you have no conflicts
[ ] Didn't break any original functionality

Optional

[ ] You've tested it on mobile
[x] Are there any edge cases? Name if any
EDGE: #1663

The build failed because SUBSQUID_ENDPOINT is not defined

yup let's try


Benchmarking the impact of removing US based machines

To benchmark the impact of removing GCP machines that are deployed in the US geographical zone as there is additional cost incurred for continuously running these machines.
The impact can be measured by using the dev deployment.
If there are no major impacts, we can shut down these.

There is a health check endpoint in the API that I need to change so it skips any possible cache, this way it could be used for measuring networking parameters.

Tasks:

[] Promote Open Targets Platform development deployment to stable machines
[] Take networking metrics on API health check endpoint from US and EU
[] Expand the deployment to US region
[] Repeat the networking metrics on API health check endpoint from US and EU
[] Compare both metrics

We are taking a more straight forward approach on this, so the process, as depicted here, doesn't apply any more.


ci: Fix jest memory usage in CircleCI

Using the runInBand option prevents jest from parallelizing tests, using more memory.
The ci option just causes the tests to fail when there are outdated snapshots, which doesn't affect us much now but it may in the future.

@JoshuaKGoldberg it's probably easier to just make circle more parallel


Chrome unit test fails on newly clean build (mock.tzDate) (Expected '12/31/1969' to match '1970')

Do you want to request a feature or report a bug?
Bug
What is the current behavior?
Unit Test suite fails on Chrome at test #5146
What is the expected behavior?
All test should pass on a clean build.
I've just cloned the '/angular/angular.js' (Version 1.5.1), build it without errors and with the clean build when run the preloaded unit tests with grunt (grunt test:unit) it throws the same error mentioned by @wagnerfrancisco when tests Chrome.
(All the test PASS except this one)
$ grunt test:unit
Running "shell:npm-install" (shell) task
:-) npm dependencies are looking good!

Running "tests:jqlite" (tests) task
17 03 2016 23:06:54.565:WARN [watcher]: All files matched by "/home/cgarcia/Documents/angular.js/src/angular.bind.js" were excluded.
17 03 2016 23:06:54.651:INFO [karma]: Karma v0.13.19 server started at http://localhost:9876/
17 03 2016 23:06:54.660:INFO [launcher]: Starting browser Chrome
17 03 2016 23:06:55.564:INFO [Chrome 49.0.2623 (Linux 0.0.0)]: Connected on socket /#3JfmMhoSkySvkvFcAAAA with id 98102530
Chrome 49.0.2623 (Linux 0.0.0) ngMock TzDate should fake getLocalDateString method FAILED
	Expected '12/31/1969' to match '1970'.
	Error: Expected '12/31/1969' to match '1970'.
	    at .<anonymous> (/home/cgarcia/Documents/angular.js/test/ngMock/angular-mocksSpec.js:35:39)
Chrome 49.0.2623 (Linux 0.0.0): Executed 5146 of 5146 (1 FAILED) (21.706 secs / 21.783 secs)
Warning: Karma test(s) failed. Exit code: 1 Use --force to continue.

Aborted due to warnings.

Reproducable: Always
Browser: Chrome 49.0.2623
Operating System: Ubuntu 15.10 (Wily Werewolf)
steps to reproduce:
1)Clone the repository of Angular.js
git clone https://github.com/angular/angular.js.git

2)Building & Testing
Have node v 0.12.4 pre-installed
Have java version 1.8.0_74 pre-installed
Install Grunt & Bower:
npm install -g grunt-cli
npm install -g bower

# Add the main AngularJS repository as an upstream remote to your repository:
git remote add upstream "https://github.com/angular/angular.js.git"

# Install node.js dependencies:
npm install

# Install bower components:
bower install

# Build AngularJS:
grunt package

3)Running the Test Suite
grunt test:unit

The piece of code that runs this test is:
(/angular.js/test/ngMock/angular-mocksSpec.js)
    it('should fake getLocalDateString method', function() {
      //0 in -3h
      var t0 = new angular.mock.TzDate(-3, 0);
      expect(t0.toLocaleDateString()).toMatch('1970');

      //0 in +0h
      var t1 = new angular.mock.TzDate(0, 0);
      expect(t1.toLocaleDateString()).toMatch('1970');

      //0 in +3h
      var t2 = new angular.mock.TzDate(3, 0);
      expect(t2.toLocaleDateString()).toMatch('1969');
    });

and the code that is referenced:
(/angular.js/src/ngMock/angular-mock.js)
/**
 * @ngdoc type
 * @name angular.mock.TzDate
 * @description
 *
 * *NOTE*: this is not an injectable instance, just a globally available mock class of `Date`.
 *
 * Mock of the Date type which has its timezone specified via constructor arg.
 *
 * The main purpose is to create Date-like instances with timezone fixed to the specified timezone
 * offset, so that we can test code that depends on local timezone settings without dependency on
 * the time zone settings of the machine where the code is running.
 *
 * @param {number} offset Offset of the *desired* timezone in hours (fractions will be honored)
 * @param {(number|string)} timestamp Timestamp representing the desired time in *UTC*
 *
 * @example
 * !!!! WARNING !!!!!
 * This is not a complete Date object so only methods that were implemented can be called safely.
 * To make matters worse, TzDate instances inherit stuff from Date via a prototype.
 *
 * We do our best to intercept calls to "unimplemented" methods, but since the list of methods is
 * incomplete we might be missing some non-standard methods. This can result in errors like:
 * "Date.prototype.foo called on incompatible Object".
 *
 * ```js
 * var newYearInBratislava = new TzDate(-1, '2009-12-31T23:00:00Z');
 * newYearInBratislava.getTimezoneOffset() => -60;
 * newYearInBratislava.getFullYear() => 2010;
 * newYearInBratislava.getMonth() => 0;
 * newYearInBratislava.getDate() => 1;
 * newYearInBratislava.getHours() => 0;
 * newYearInBratislava.getMinutes() => 0;
 * newYearInBratislava.getSeconds() => 0;
 * ```
 *
 */
angular.mock.TzDate = function(offset, timestamp) {
  var self = new Date(0);
  if (angular.isString(timestamp)) {
    var tsStr = timestamp;

    self.origDate = jsonStringToDate(timestamp);

    timestamp = self.origDate.getTime();
    if (isNaN(timestamp)) {
      throw {
        name: "Illegal Argument",
        message: "Arg '" + tsStr + "' passed into TzDate constructor is not a valid date string"
      };
    }
  } else {
    self.origDate = new Date(timestamp);
  }

  var localOffset = new Date(timestamp).getTimezoneOffset();
  self.offsetDiff = localOffset * 60 * 1000 - offset * 1000 * 60 * 60;
  self.date = new Date(timestamp + self.offsetDiff);

  self.getTime = function() {
    return self.date.getTime() - self.offsetDiff;
  };

  self.toLocaleDateString = function() {
    return self.date.toLocaleDateString();
  };

  self.getFullYear = function() {
    return self.date.getFullYear();
  };

  self.getMonth = function() {
    return self.date.getMonth();
  };

  self.getDate = function() {
    return self.date.getDate();
  };

  self.getHours = function() {
    return self.date.getHours();
  };

  self.getMinutes = function() {
    return self.date.getMinutes();
  };

  self.getSeconds = function() {
    return self.date.getSeconds();
  };

  self.getMilliseconds = function() {
    return self.date.getMilliseconds();
  };

  self.getTimezoneOffset = function() {
    return offset * 60;
  };

  self.getUTCFullYear = function() {
    return self.origDate.getUTCFullYear();
  };

  self.getUTCMonth = function() {
    return self.origDate.getUTCMonth();
  };

  self.getUTCDate = function() {
    return self.origDate.getUTCDate();
  };

  self.getUTCHours = function() {
    return self.origDate.getUTCHours();
  };

  self.getUTCMinutes = function() {
    return self.origDate.getUTCMinutes();
  };

  self.getUTCSeconds = function() {
    return self.origDate.getUTCSeconds();
  };

  self.getUTCMilliseconds = function() {
    return self.origDate.getUTCMilliseconds();
  };

  self.getDay = function() {
    return self.date.getDay();
  };

  // provide this method only on browsers that already have it
  if (self.toISOString) {
    self.toISOString = function() {
      return padNumberInMock(self.origDate.getUTCFullYear(), 4) + '-' +
            padNumberInMock(self.origDate.getUTCMonth() + 1, 2) + '-' +
            padNumberInMock(self.origDate.getUTCDate(), 2) + 'T' +
            padNumberInMock(self.origDate.getUTCHours(), 2) + ':' +
            padNumberInMock(self.origDate.getUTCMinutes(), 2) + ':' +
            padNumberInMock(self.origDate.getUTCSeconds(), 2) + '.' +
            padNumberInMock(self.origDate.getUTCMilliseconds(), 3) + 'Z';
    };
  }

  //hide all methods not implemented in this mock that the Date prototype exposes
  var unimplementedMethods = ['getUTCDay',
      'getYear', 'setDate', 'setFullYear', 'setHours', 'setMilliseconds',
      'setMinutes', 'setMonth', 'setSeconds', 'setTime', 'setUTCDate', 'setUTCFullYear',
      'setUTCHours', 'setUTCMilliseconds', 'setUTCMinutes', 'setUTCMonth', 'setUTCSeconds',
      'setYear', 'toDateString', 'toGMTString', 'toJSON', 'toLocaleFormat', 'toLocaleString',
      'toLocaleTimeString', 'toSource', 'toString', 'toTimeString', 'toUTCString', 'valueOf'];

  angular.forEach(unimplementedMethods, function(methodName) {
    self[methodName] = function() {
      throw new Error("Method '" + methodName + "' is not implemented in the TzDate mock");
    };
  });

  return self;
};

//make "tzDateInstance instanceof Date" return true
angular.mock.TzDate.prototype = Date.prototype;
/* jshint +W101 */

I want to contribute to the angular.js project but I'm not sure if this is a legit problem to work on
sorry if the post is too long :).

Another reference to the same problem.
https://github.com/angular/angular.js/issues/3033

Unit tests fail on chrome #3033

Unit tests fail when run in Australia #5017

Local fail on master on one of date filter tests #4218

date filter not adding appropriate + / - sign for 'Z' timezone offset resulting in invalid ISO 8601 #1532
Perhaps related ...

fix it :D

@cesardariogarcia, could you test if #14285 fixes the issue for you (it does for me locally when setting my locale settings to Australia/Sydney).
You can grab the files from here.

Sure I will give it a try later today.

@gkalpak #14285 indeed Fixed the issue.
So i guess this will work while the browsers mantain the differences over their pre-DST time implementation.
Thanks gkalpak, greetings.
The results:
cgarcia@NSL-CGARCIA:~/Documents/<EMAIL_ADDRESS>grunt test:unit
Running "shell:npm-install" (shell) task
:-) npm dependencies are looking good!

Running "tests:jqlite" (tests) task
21 03 2016 10:05:47.284:WARN [watcher]: All files matched by "/home/cgarcia/Documents/<EMAIL_ADDRESS>were excluded.
21 03 2016 10:05:47.438:INFO [karma]: Karma v0.13.22 server started at http://localhost:9876/
21 03 2016 10:05:47.453:INFO [launcher]: Starting browser Chrome
21 03 2016 10:05:48.415:INFO [Chrome 49.0.2623 (Linux 0.0.0)]: Connected on socket /#Rg4v4jJk5nSfsS72AAAA with id 62592696
Chrome 49.0.2623 (Linux 0.0.0): Executed 5146 of 5146 SUCCESS (37.022 secs / 35.887 secs)

Running "tests:jquery" (tests) task
21 03 2016 10:06:30.410:WARN [watcher]: All files matched by "/home/cgarcia/Documents/<EMAIL_ADDRESS>were excluded.
21 03 2016 10:06:30.566:INFO [karma]: Karma v0.13.22 server started at http://localhost:9876/
21 03 2016 10:06:30.580:INFO [launcher]: Starting browser Chrome
21 03 2016 10:06:31.976:INFO [Chrome 49.0.2623 (Linux 0.0.0)]: Connected on socket /#sY97bLstuc8edHPqAAAA with id 89191529
Chrome 49.0.2623 (Linux 0.0.0): Executed 5158 of 5158 SUCCESS (38.564 secs / 37.469 secs)

Running "tests:jquery-2.1" (tests) task
21 03 2016 10:07:15.059:WARN [watcher]: All files matched by "/home/cgarcia/Documents/<EMAIL_ADDRESS>were excluded.
21 03 2016 10:07:15.128:INFO [karma]: Karma v0.13.22 server started at http://localhost:9876/
21 03 2016 10:07:15.136:INFO [launcher]: Starting browser Chrome
21 03 2016 10:07:15.952:INFO [Chrome 49.0.2623 (Linux 0.0.0)]: Connected on socket /#uBXyhlqfRhwmZz0UAAAA with id 14286701
Chrome 49.0.2623 (Linux 0.0.0): Executed 5158 of 5158 SUCCESS (35.925 secs / 34.926 secs)

Running "build:scenario" (build) task
>> File build/angular-scenario.js created.

Running "build:angular" (build) task
>> File build/angular.js created.

Running "build:loader" (build) task
>> File build/angular-loader.js created.

Running "build:touch" (build) task
>> File build/angular-touch.js created.

Running "build:mocks" (build) task
>> File build/angular-mocks.js created.

Running "build:sanitize" (build) task
>> File build/angular-sanitize.js created.

Running "build:resource" (build) task
>> File build/angular-resource.js created.

Running "build:messageformat" (build) task
>> File build/angular-message-format.js created.

Running "build:messages" (build) task
>> File build/angular-messages.js created.

Running "build:animate" (build) task
>> File build/angular-animate.js created.

Running "build:route" (build) task
>> File build/angular-route.js created.

Running "build:cookies" (build) task
>> File build/angular-cookies.js created.

Running "build:aria" (build) task
>> File build/angular-aria.js created.

Running "build:promises-aplus-adapter" (build) task
>> File tmp/promises-aplus-adapter++.js created.

Running "tests:modules" (tests) task
21 03 2016 10:07:57.554:INFO [karma]: Karma v0.13.22 server started at http://localhost:9876/
21 03 2016 10:07:57.576:INFO [launcher]: Starting browser Chrome
21 03 2016 10:07:58.732:INFO [Chrome 49.0.2623 (Linux 0.0.0)]: Connected on socket /#pzNJeMKRTvVyMw4MAAAA with id 62530143
Chrome 49.0.2623 (Linux 0.0.0): Executed 760 of 760 SUCCESS (6.538 secs / 6.262 secs)

Done, without errors.


Goals

Make goals app,  CRUD and filtering for it.

Front has a few bugs.

due date from, due date to filtering forms work vice versa. They should be swapped.
outdated deadline works incorrect. It should be highlighted for yesterday's date.
Comment ordering for Recently modified  value works vice versa. The most recent comments should be on top.

Can't search by category list. search_fieldsshould be added

great thanks!

Front has a few bugs.
1. `due date from`, `due date to` filtering forms work vice versa. They should be swapped.

2. outdated deadline works incorrect. It should be highlighted for yesterday's date.

3. Comment ordering for `Recently modified ` value works vice versa. The most recent comments should be on top.

Done! I needed to correct the  frontend sources. Oh, that React!

Search by category list added.
Frontend bugs fixed.

Search by category list added.
Frontend bugs fixed.


fix(IMAGEMAGICK extension): implement building extension for PHP 8.0 from source

Description
We need to build the ImageMagick extension from sources due to the latest version, that supports PHP 8.0 has not been released to PECL.
Closes #2861
Motivation and Context
It allows to use ImageMagick extension with PHP 8.0 (not tested well though :( ).
Types of Changes

[x] Bug fix (non-breaking change which fixes an issue).
[x] New feature (non-breaking change which adds functionality).
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected).

Definition of Done Checklist:

[x] I've read the Contribution Guide.
[ ] I've updated the documentation. (refer to this for how to do so).
[x] I enjoyed my time contributing and making developer's life easier :)

fix #2850

The PECL Imagick package now supports PHP 8
Should we change it back?


Multiple task with same name bug

Having multiple task with same name, created at different time, produces a bug.
It creates multiple entries of version in task_recorder. they above code will check, whether similar file exists or not

@mamidinilesh would you mind elaborating a little more on the bug you're seeing?  Do you mean to say that rake after_party:status lists the same job twice?

Hey @theSteveMitchell I've just seen this happen to me version (1.11.2)
To reproduce you need to generate 2 tasks with the same name. I did the first one months ago, ran it and all went well back then. Months later I needed a similar task, and gave it the same name (accidentally). When I rake after_part:run the last task it re-ran the previous version although there was an entry in the task_records table (from months ago).
Final outcome in the task_records table is the inclusion of 3 timestamps: the first one, a duplicate of the first one, and the new one.

@manuca Thanks for the details. I'll merge once we can get a passing CI

merged to #71 and fixed lint errors there.


Email Functions

All emails are coming from<EMAIL_ADDRESS>this will need to be changed to the DNS suffix in the future


fixes large text limit

closes #99

Thank you for your contribution. Fixed in https://github.com/phin05/discord-rich-presence-plex/commit/cc03fbbf8b052f646ff9d9e895753591b45eba90 / v2.10.0.


Remove a leftover bower file

Is there any reason this file is still needed?

Guess the failures answer that question! 😀

Actually I think our tests are broken... Getting the same errors on a branch that should have unrelated changes. :thinking:


can't create project with title > 50 chars

hello,
it seems that project_id return false when name is over 50 chars ? In database, projects name is a varchar with a max lenght of 255 chars.
from kanboard import Kanboard

kb = Kanboard("http://localhost/jsonrpc.php", "jsonrpc", "your_api_token")
project_id = kb.create_project(name="My project over 50 chars")

There is a validation rule to limit the title to 50 chars:
https://github.com/kanboard/kanboard/blob/master/app/Validator/ProjectValidator.php#L31
This value could be bumped to 255


Change dependencies

Monotorrent is dropped. I am changing the project to use OctoTorrent but this is also a dead project.
We need to find another dependency to manage torrent downloads. I found this MonoTorrent fork witch is more up to date: https://github.com/claudiuslollarius/monotorrent.
What do you guys think?

The @claudiuslollarius one is a break-changer.


DPad and L-Axes Not Centered

https://gofile.io/d/ZvTIdx
As you can see in this video above, the Windows game controller settings seems to have calibrated the controller perfectly. But in XOutput, I've followed the instruction but only the R-Axes seems to be centered. Sorry, I'm a newbie.
Thanks.
Here I also pasted the settings.json: https://pastebin.com/enV2Ejv3

Do you still have this issue?


Fix bulk of Jiu huan dao and remove Nine-ring sword

Closes https://github.com/foundryvtt/pf2e/issues/13919

This will probably require a migration to handle specialization, etc.


Permalink Control

I don't think that this should just be part of the application itself. The OL framework should provide best practises for GIS related standards, which IMHO also includes permalink url shortcuts. V 2.x had also this feature, is there a good reason to keep it seperated and to force devs to code their own implementation?

I don't think that this should just be part of the application itself. The OL framework should provide best practises for GIS related standards, which IMHO also includes permalink url shortcuts. V 2.x had also this feature, is there a good reason to keep it seperated and to force devs to code their own implementation?

I think there is a good reason: there are many ways to implement permalinks. For example, the map state may be encoded in the query part of the URL, or in the hash part of the URL (after the # sign). Also, one may want to use the history API, or think that it does not make sense that forward/backward buttons navigate through the map history. There are many different use-cases. So I don't think OpenLayers 3 can/should have an opinion on the way the map state should be encoded in the URL and, more generally, on the way permalinks are created and behave.
See http://openlayers.org/en/master/examples/permalink.html for an example.

It's true, as you write there are a lot of ways to accomblish this features. So customization is a must.
BUT I see also good reasons to include a ready-to-use feature for permalinks:

interoperability - e.g. you can easily share views across multiple plattforms as a lot of OSM pages with OL v2 do
it saves time for people not that familar with JS coding
it was included in v2.

I agree with @elemoine. The OL2 permalink dates from the early days of web mapping, when maps were much simpler than they are now. OSM still has a simple model, with just a couple of tile layers, no vectors, and not much 'map state' to store. It now uses Leaflet, though this doesn't provide a permalink either; its link share is site-specific. You're assuming that all maps have such a simple structure, but an OL3 map can have layers with different opacity/visibility/brightness/etc; it can have numerous vector layers, which may be clustered, have different styling, and/or be labelled; the vector data may be volatile, in which case you probably want some kind of caching or storage rather than a link. How much of all this you want to reproduce when sharing maps is going to be application-specific, and probably impossible to define in a simple link anyway. Personally I use a JSON object to store map definitions.


Please generate the configuration options by GreptimeDB version

What problem does the new feature solve?
There are two documents for the configuration file options, one on the documentation website, the other on Github. When an option is updated, we need to manually copy the description of the option from Github to the website, which is unnessessary.
What does the feature do?
Can we generate the configuration options on Github by GreptimeDB version? For example, change the config location from /config/config.md to /config/v0.x/config.md?
Then we can just add a link in the website to guide users to read the options on Github, which saves the effort of manually copying and checking.
Implementation challenges
No response

@zyy17 I think so.
Could we change the release CI to generate the specific configuration for the release version? And keeps all these versions in repo config folder.

We don't need to store all those version under /config. We can just use github tags for them, like https://github.com/GreptimeTeam/greptimedb/blob/v0.8.2/config/config.md

Thanks @sunng87 for the great answer! And we no longer need to develop this feature.


Invalid map optimization result in unreliable subscript resolution

Version: 1.6.1
Code:
var document = Document.CreateDefault("{[x: 42][0]}");
var context = Context.CreateCustom(new Dictionary<Value, Value> { ["x"] = 0 });

return document.DocumentOrThrow.Render(context);

Expected result:
"42"
Actual result:
string.Empty
Description:
Document optimizer performs invalid optimization of maps with non-constant indices and constant subscript. In the example above, it will assume map doesn't contain a value at index 0 while variable x can take this value at render time, making the assumption wrong.

Fixed in d5078d836f153c4283eff1c4cc608d376f77fd37.


Moving API keys to .env and updating the process of project setup includes getting API keys at firebase in README.md

Hey Aman, Pls assign this issue to me.
Thank You!

Hey Aman, Pls assign this issue to me.
Thank You!

work on it!
must attach before & after screenshot in PR!


add custom template option for typeahead

Angular1 ui-bootstrap typeahead has support for custom template. Can you add this?
The example is here:
https://angular-ui.github.io/bootstrap/#/typeahead

This is pretty crucial for me.


fix: cargo-make task search pattern

Small fix for #130. TOML accepts all characters as key.

LGTM thanks!


docs(essentials-tutorial): Handle URL /:postId edge case for EditPostForm

name: :memo: Documentation Fix
about: Fixing a problem in an existing docs page - handling case when postId in the URL is not matching ids for posts slice (EditPostForm component)
Checklist

[ x ] Is there an existing issue for this PR?

No issue opened related to that issue.

[ x ] Have the files been linted and formatted?

What docs page needs to be fixed?

Section: Creating an Edit Post Form, Adding authors for posts
Page: Redux Essentials - Part 4: Using Redux Data

What is the problem?
EditPostForm.js will throw an exception if the postId in the URL does not match the id of the data in the slice posts in the store.
Additionally, there is not need for if statement in docs section "Adding authors for posts" (canSave is validating post addition).
What changes does this PR make to fix the problem?
Modifies the code snippet that handles the edge case of an incorrect id and includes a short description.
I assume this involves changes to the tutorial source code (Codesandbox, Tutorial repository).

This is really just a toy example, so handling a remote edge case is really outside the scope of the article. It just makes it more complex to understand.


Tahmid's Work

I believe this is the most up to date branch but am not 100% sure. If not it seems like it is still a very good portion of Tahmid's work from the year.

Upon further review I am losing some confidence. Theres a bunch of little stuff that doesn't make sense or isn't noted in the log book


Feature request to include a search bar for projects in the Substrate ecosystem

With over 150 projects in this page, from a user's perspective, it is quite strange to perform a keyword search on the browser in order to find a certain project. I would recommend a search bar with keyword-based filters so that users can easily find relevant teams in gaming, wallet projects, zero-knowledge etc.
https://substrate.io/ecosystem/projects/

Thanks for the suggestion @joshuacheong, we're currently working on projects page revamp, will add search UI addressing this!

A search feature has now been implemented on the page: https://substrate.io/ecosystem/projects/


docs: emojimon tutorial (part 2)

A continuation of #360  (we merged early in prep for a workshop)
TODO

[ ] better image sizing
[ ] add more images
[ ] update mud
[ ] is there a better option for "collapsed" code in code blocks? currently using … but I don't love it
[ ] refactor using new react hooks
[ ] move moveTo and moveBy helpers to some sort of api export rather than within hooks

[ ] change useMovement to be just useKeyboardMovement
[ ] same with join game

[ ] move solidity SingletonID into initial commit

[ ] PR to mud to do this ~everywhere?

[ ] move loading screen into initial commit?

[ ] start project with black bg and white text?

[ ] use new init lib pattern instead of init system?
[ ] step 5: update to import { BoolComponent } ... instead of importing everything
[ ] step 8: check that we can use this encoding/decoding approach (using string only in the schema type)
[ ] step 8+: update terrain rendering to use grid instead of absolute/relative position? though we'll need position context for the encounter animation, so maybe it's fine
[ ] step 7.2: wrap coord in join optimistic rendering?
[ ] step 9: obstruction check in join optimistic rendering?
[ ] use tailwind-animate for appear-in transitions?
[ ] wire up snapshot service for quicker initial sync
[ ] step 10.5: move hasPlayer conditional to an earlier step?
[ ] step 10.6: move system call + call stream into "api" pattern, have it return a result type we can use to update the toast
[ ] step 10.7: should we use tx.wait() or system call stream to resolve the toast? wondering if tx.wait() is slower than the ECS update, which means the toast would still be "running away" even after the encounter screen is dismissed

Going to call this good enough. I need to move on to something else for a bit! Will come back to this and address TODOs (easier to iterate now that something is up there).


Slider visibility & variable typo corrected

The visibility of the sliders Keep Unmasked Blur and both of the BG Remove is wrong when the web page gets (re)loaded. This is now corrected. Its is more a cosmetic issue than a bug.
I just want to mention that openOutpaint is the best tool for in/outpaint, I still use it a lot. Keep up the good work!

#277: variable typo fixed

easily absolutely merged with my thanks <3


Problem when exporting to excel laravel 5.6

Good day, I am generating some reports to be exported to excel, I use https://laravel-excel.maatwebsite.nl/3.0/
I wanted to know if there is a way to export a view in a specific cell, that is, for example A8.
My class to export:
$ obj = Accounts :: whereBetween ('created_at', [$this->dstart, $this->dend]) -> orderby ('id', 'DESC') -> get ();
return view ('modules.reports.accounts.excel-template', [
'account' => $ obj
]);
My controller:
return Excel :: download (new AccountsExport ($request->per, $request->dstart, $request->dend), 'account-reports.xlsx');
It should be noted that I am new to this, thanks greetings.

If you are using a view you can create a table and put the value you want in the cell that would match with A8.


Added program of checking given string is palindrome or not

Description
enter here if you have any details
Program Name - Check if the String is a Palindrome
Issue No.- #225

Type issue number after hash(#)

Checklist(self check)

[No ] Yes, this task assigned to me.
[Yes ] My code follows the style guidelines(Clean Code) of this project
[ Yes] I have performed a self-review of my own code
[Yes ] My Filename is in camelCase format
[ Yes] I have added Problem statement, Problem link in file.

Thanks for making contributions


'Create a Bot' screenshot doesn't match current state

Categories, names, are all different.

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

ID: 1f1718fa-0745-3fee-6ef5-18e36b61fabf
Version Independent ID: fd9ef97f-4540-e624-d459-c076e94a50ad
Content: Create a bot with the Bot Builder SDK for .NET - Bot Service
Content Source: articles/dotnet/bot-builder-dotnet-sdk-quickstart.md
Service: bot-service
Product: bot-framework
GitHub Login: @Kamrani
Microsoft Alias: kamrani

will be fixed in next publish


Prompt to enter database credentials inside component errors

In the query viewer, we show a link to the settings menu to make it easier to add database credentials as soon as you realize they're missing. It would be nice to have the same link come up inside components errors of the same type:

Hey @hughess ! I can pick this up. Would you assign it to me?

Thanks @nidhi-kala!

Closed by #643


Modernize codebase

Drop Bower support
Add ES module support
Use StandardJS
Update dependencies

Also add tests to get us to 100% code coverage


Add async advancedOption

To enable async/await: https://docs.scala-lang.org/sips/async.html

I found fix in another PR, I'll include it

Sorry for the delay @andrzejressel! I made one change - I found that -Xasync was added in Scala 2.13.3 so I added that as the lower version bound for async.
The binary compatibility conversation above is important but it's not relevant to @andrzejressel's PR so let's merge this!
I think we can offer a better bincompat story in the next release series by making ScalacOptions private[davidgregory084] and bump to 0.4.0 - does that make sense @armanbilge?


Update main.c

bufs[0].len has to be set to 1, if not spi_write don't work for the read_id and the disable of the write protect

See https://github.com/zephyrproject-rtos/zephyr/actions/runs/156363572


Add a link to site root to the top navigation

Sorry for the PR spam - those are the changes I made on my fork and i just wanted to give something back ;-)
Thanks for your great work!

I don't think any helpful changes could be considered spam, thanks for the input!

I don't think any helpful changes could be considered spam, thanks for the input!


Use reflection to find CultureInfo.GetCultures

Closes #2349

Copied the msbuild binaries under dotnet CLI and manually checked that the method gets called right.

@cdmihai  Thank you!


Sidenav changes

Remove sidenav hover
Have icon mode and full mode only
Default to full mode
Move burger icon into the side nav header
Remove the icon logo

Codecov Report

Merging #154 into v2-master will increase coverage by 0.03%.
The diff coverage is 87.5%.

@@              Coverage Diff              @@
##           v2-master     #154      +/-   ##
=============================================
+ Coverage      53.28%   53.31%   +0.03%
=============================================
  Files            846      846
  Lines          22129    22137       +8
  Branches        3752     3754       +2
=============================================
+ Hits           11791    11803      +12
+ Misses         10338    10334       -4


feat(PL-2418): add !local tag annotation

This PR adds !local annotations for values that should be locked, but should not have their structure promoted across environment boundaries.

@silphid Added an idempotency check to the test cases! good idea!