OCPBUGS-22973: Support object-templates-raw for config policies

ACM has support for object-templates-raw that was backported to 2.7, so we should support it in TALM as well

Changing templates to placeholder can cause errors down the line in the process (precaching version for example), especially since we don't do any validation on these values (precaching might try to pull placeholder:placeholder image). Also the information that TALM wants might be in a template block, and we are removing that template block. So depending on where the templates are some features (I thinkg precahing and approving install plans) might work or might not work. We need to document this somehow and let users know.

Changing templates to placeholder can cause errors down the line in the process (precaching image and version for example), especially since we don't do any validation on these values (precaching might try to pull placeholder:placeholder image). Also the information that TALM wants might be in a template block, and we are removing that template block. So depending on where the templates are some features (I think precaching and approving install plans) might work or might not work. We can try to see if the information we need from objects are in templates and if so reject the policy, or ignore them and let user know that some feature won't work with templates.

It is possible there could be some problems that come from this as there are effectively infinite use cases for these templates. Though I don't think this will be a problem currently because we are only checking the stripped templates for compliance type and status fields. The actual policies being created in ACM still have all the templating

I might be wrong but doesn't this function get called on the stripped templates policies?
https://github.com/openshift-kni/cluster-group-upgrades-operator/blob/e50b230571cc99217ba79c081df0399096ad6087/controllers/precache.go#L124

I can confirm after testing that this is a problem

I am not sure we can support precaching with raw templates then since I don't think we have any way to resolve the templating?

Yes, I think same goes for subscriptions.
User can override precahing values with PrecachingCR.
I think we can document that if the user wants to use these feature they should not use templates.

Yes, I think same goes for subscriptions. User can override precahing values with PrecachingCR though. I think we can document that if the user wants to use these feature they should not use templates.

I had to account for template usage in both precaching and in upgrade validaiton but I think the current solution (most recent commit) will cover all cases

/unhold

/lgtm

/approve

/cherry-pick release-4.14

/cherrypick release-4.14


ImportError: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found

There is an error when import constriction on Ubuntu system with python.
Environment:
Ubuntu 18.04
python 3.7, 3.8, 3.9

+1
I run the following lines on Google Colab:
!pip install --upgrade constriction bumpy
import constriction

, which results in the same error:
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-1570388c3690> in <module>()
      1 get_ipython().system('pip install --upgrade constriction bumpy')
----> 2 import constriction

ImportError: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.29' not found (required by /usr/local/lib/python3.7/dist-packages/constriction.cpython-37m-x86_64-linux-gnu.so)

---------------------------------------------------------------------------

Thank you for reporting and sorry for getting back to you this late. This should be fixed as of version 0.2.1, which now follows best practices when compiling python extension packages for linux.
Running the following on Google Colab now works:
!pip install constriction~=0.2.1  # (no need to explicitly mention numpy anymore it's a dependency now)
import constriction

Please feel free to reopen if you're still experiencing an issue.


components pluggable to Galaxy?

Would be worth exploring how to make components we could plug to visualise outputs from Galaxy?

Hello All - sorry to hijack the github issue but I find github to be the best way to reach out to developers :).
We are trying to put together an application for the Google Summer of Code for "the Galaxy community" and have been collecting ideas here - https://wiki.galaxyproject.org/Develop/GSOC/2015Ideas. I am trying to focus on collaborations with other projects and gathering a diverse group of mentors. So if there is any chance that someone here has a good idea for a project that bridges BioJS and Galaxy (or BioNode and Galaxy) and is willing to be a mentor please add the idea here https://wiki.galaxyproject.org/Develop/GSOC/2015Ideas. Even if you can just lay out an exciting idea but cannot mentor - please let us know and we can try to find someone to mentor from the Galaxy core team.
I am sure the BioJS project will put forth a much stronger application to the GSOC - but nonetheless if there is anything I can do to help - please don't hesitate to let me know (jmchilton@gmail.com). Regardless of which project umbrella it falls under I would love to see a GSOC student building strong ties between these projects.

For the protocol:

Regardless of which project umbrella it falls under I would love to see a GSOC student building strong ties between these projects.

Yes we share this opinion and the BioJS team is equally interested in proposing this as a project for the 2015 GSoC and we have continued the discussion off thread.


add for-user-id to virtual account requests

According to API doc, for-user-id is to be added to http header,
indicating the sub account to use

GetAvailableBanks should also have this parameter, but changing function signature has bigger impact, so leaving it to the official team.

Hi @wwwjfy , thank you for your contributions! We'll take a look at this

Thanks


Allow specifying more than once deviceName

Per the following issue: https://github.com/k0kubun/xremap/issues/44
xremap automatically remaps all detected keyboards if a device is not specified. To remap a mouse, its name must be specified in the --device argument. To remap a mouse and keyboard, you specify --device more than once. Looking at this flake, it appears we only have the option to specify a single --device. If this option were a list of devices instead, or there were an option like deviceNames (plural) that was a list, we could specify multiple devices.

deviceName predates the mouse feature, so I have an excuse for painting myself into a corner :)
I think the approach would be:

Add deviceNames (nullOr list of strings)
Deprecate "deviceName" in favor of deviceNames
In a couple of xremap releases completely remove deviceName

Meanwhile extraArgs could be used as a workaround


iOS bottomsheet angular backgroundColor is undefined when binded

Which platform(s) does your issue occur on?

iOS
iOS 12+
emulator or device. What type of device? iPhone XR

Please, provide the following version numbers that your issue occurs with:

CLI: (run tns --version to fetch it) latest all everything

Please, tell us how to recreate the issue in as much detail as possible.
Describe the steps to reproduce it.
xml
<StackLayout class="bottom-sheet-layout" [backgroundColor]="CURRENT_THEME === APP_THEMES.DEFAULT ? '#ffffff' : '#202125'">

This block: https://github.com/Akylas/nativescript-material-components/blob/master/src/bottomsheet/bottomsheet.ios.ts#L183
this will run and produce undefined in the bottomsheet.ios file when it's checking for value of backgroundColor. Removing the [] binding of the value works as expected.
Wrapping the bottomsheet.ios code checking backgroundColor value in a timeout fixes the problem but don't like it 😄. I'm going with a local fork for now with this for angular because I need to support theming at runtime for various modes. I'll poke around on it a few more and see if something comes up as potential solution for angular apps.

What's even stranger about this is that the actual view in the template will be styled correctly. However, the bottomsheet.view native background color will not be set because when the if check runs the this.backgroundColor is undefined when bound via [backgroundColor].

@bradmartin  have to look at this but I think it had to do with safe area. I think we need to tell the view.(the purple one) to expand o n bottom safe area

IDK, I don't think that's it. Maybe that's a solution but the face that backgroundColor is undefined without the timeout makes me think it's an execution issue with angular parsing the template AFTER the plugin show process has ran the bottom sheet backgroundColor check.
Make any sense?

Because that bottom area that is white in my screenshot is the bottomsheet.view.backgroundColor, so it seems the plugin runs it's check on the template and it's undefined then NS is correctly applying the backgroundColor of the layout of my component when it shows and has been loaded.

I think the backgroundColor being undefined is because is using the style.backgroundColor.ios as default, but the property backgroundColor in the style is undefined I had the same issue with the bottom-navigation-bar component.

That really doesn't make sense to me. It's only undefined when binded in the template. If hardcoded it's not. So it's timing related with how angular (or NS) evals the angular template with the correct bound value. Which is why a timeout causes it to not be undefined.

@ViewChild("modal") modal: ElementRef;

this.modal.nativeElement.viewController.view.backgroundColor = new Color(
      this.modal.nativeElement._style.backgroundColor
    ).ios;


How do I build this repo so it can be loaded as an unpacked extension

Hi there,
I've been maintaining a similar extension that leverages YAAW and AriaNg. I'm glad to find a kindred spirit who's been diligent in pushing the downloading experience to the next level.
Just wondering how I can build your repo to generate an unpacked extension so I can dabble in this further. It'd be nice if a series of steps can be documented. Thanks.

To keep it simple, I made this extension as a buildless project. You could just load it from soure code in chrome after deleting un-related github files: "_config.yml".  If you're familar with chrome extension development, it will be very easy for you to get invovled.

Cool beans. Thanks mate.

BTW, what does _config.yml do then if it's not part of the build-less project? Thanks.

github files: "_config.yml"

You can get answer from my last reply. 🙃

Right, site generator configs for GitHub Pages. 👌


Self-Setup should check/provide WinMerge and the required WinMerge.ini

WinMerge is a basic requirement. Its startup options are provided through an ini file which sets "ignore case" and "ignore empty lines". The only choice to manage this within the Self-Setup service process is to write it as a PrivateProfile file.
The availability of WinMerge is yet not checked but should together with a download link for German and English version.

The self-setup process writes a WinMerge.ini file with the options required for CompMan. When WinMerge is used by a CompMan service the first time WinMerge adds all the remaining default values to the ini file.


Clicked share, nothing happened.

Link share stopped working without any error in UI. When I went to the debug console, it said that the share limit was reached.

Congrats on being the first person to hit this limit!  We have them coded in the function here:
https://github.com/tarasglek/chatcraft.org/blob/main/functions/api/share/[[user_id]].ts#L55-L69
Currently it's 10 shares in a 24 hour period, but this might be too low.
Also, we must have a bug (should be showing some error info in the UI, but clearly we aren't):
https://github.com/tarasglek/chatcraft.org/blob/26e4b153f652751f344f7089aec3f01e17e90e79/src/components/ShareModal.tsx#L48-L62

i think we have a lot of cases where we should errors in Toasts that blink quickly and disappear...we have a similiar situation if openai aborts a message mid-stream

i think we have a lot of cases where we show errors in Toasts that blink quickly and disappear...we have a similar situation if openai aborts a message mid-stream

Could have error toasts not auto-close?  Might be annoying, not sure.  We could also dump errors into the chat, but I think that's going to be annoying in a different way (forcing you to clean up errors from your chat).

I think having them show up as a moral equivalent of alert() would be fine..errors are rare. Having in them in chat log is probably ok too.


Bridge User Interface

Summary

RFCs:  $\emptyset$.
Categories: protocol-units.

Bridge Service User facing Interface
Changelog
adds to the protocol-units/bridge the interface frontend
Testing
Outstanding issues

I don't think we should be putting user interfaces into movement core and I wouldn't consider a user inerface a protocol-unit. I think it would be nice to have a seperate repo for org build dapps and UI's @l-monninger, what do you think?


Allow Rack :untraced_endpoints to include Regexp

FYI the test failure here (rdkafka) looks unrelated to the changes in this PR.

Hi @johnnyshields! Thanks for re-requesting a review on this PR. We're slowly trying to catch up on PRs that've been open for a long time.
@ahayworth, @fbogsany, @robertlaurin  - Have your concerns been resolved?

cc @open-telemetry/ruby-contrib-approvers and @open-telemetry/ruby-contrib-maintainers - please take a look if you're able!

Adding some additional work to this PR.
This instrumentation now defaults to using Rack::Events as opposed to the classic middleware and will also need to be updated to support this option.
https://github.com/open-telemetry/opentelemetry-ruby-contrib/tree/main/instrumentation/rack#rack-middleware-vs-rack-events


Add licensecheck lint to CI and add missing licenses

For the most part, addlicense handles the file types that we care about. It also doesn't handle some files that we (AFAICT) don't want license headers in: .md and .mlir files, e.g. However, it doesn't handle some files for which we may want license headers: .bazel, some .in files, .pdll and .td. I think it's debatable whether or not we want license headers in the following: .bazelignore, .bazelrc, .bazelversion, .gitignore, .clang-format, and these are also not handled by addlicense.
For .bazel, .pdll and .td, I will see if I can contribute to addlicense to handle those. For .in files (e.g. lit.site.cfg.py.in), I think whether or not we want a license actually depends on what the "true" type of the file is (e.g. .py). Supporting that would likely require additional changes to addlicense. Actually, I think it would be great if addlicense had some kind of extensibility mechanism (https://github.com/google/addlicense/issues/50).
Anyway, although imperfect I think on the whole this should help us catch missing licenses in a lot of cases we care about.
Inspired by https://github.com/openxla/stablehlo/pull/1928

LGTM! I agree that PR is useful on its own  irrespective of the file tyeps left out.

I think it's debatable whether or not we want license headers in the following: .bazelignore, .bazelrc, .bazelversion

Some of the these add licensing requirements are coming from integration presubmit checks (which runs internally). For example  https://github.com/openxla/stablehlo/pull/1074/files add missing copyright tags to bazel* files. That could be seen as an motivation.

Ah good to know, thanks! Maybe I can add those to addlicense too in a follow-up.


Add more options for the NLOpt solver

https://nlopt.readthedocs.io/en/latest/NLopt_Algorithms/
We only use SUBPLEX for now.
BOBYQA seems to work too (i.e. passes the tests)
COBYLA fails the tests, but could maybe work too with some tweaks.
Global optimisation may work too if bounds are set on all parameters.
This discussion also relates to #86

This now needs more documentation and testing. Seems to be working OK.


elasticsearch: changed domains for all formulae

Elasticsearch have changed domain names. The old download URLs no longer work. Changing the host inside the URLs seems to make them work again.

Thanks for the PR! Looks good. One nit with the https:// link and I'm cool with this. If you wanted to change all the SHA1 sums in the url block to sha256 I certainly wouldn't object, but it's not mandatory.

Updated! :-)

Merged in https://github.com/Homebrew/homebrew-versions/commit/b4137aabb62c662c48823b68d218fe34eb54454a. Thanks for your contribution to Homebrew, we appreciate it! :smiley_cat:


WFLY-14314 Ensure java.net.* ProtoStream marshallers generate valid protobuf messages

https://issues.redhat.com/browse/WFLY-14314
Requires https://github.com/wildfly/wildfly/pull/13909

@rhusar Please review

@rhusar Please review

Closing to rebase on WFLY-14359.

Closing to rebase on WFLY-14359.


Duplicated tab should be next to original tab

Currently the duplicated tab is added on the far right, IMO it should be next to the original tab.

We have a setting for that! You can find it here:

Let me know if I misunderstood you. 🙂

When was that setting added? My 1.15 doesn't have it.
Also, duplicated tabs should be created next to the one being duplicated, while new tabs should be created after the last tab. How would that work?


https://mruby.org/docs/api/ is missing Object, possibly others

good: https://mruby.org/docs/api/FalseClass.html
bad: https://mruby.org/docs/api/Object.html
it is listed as the superclass all over the sidebar, but isn't in the sidebar

mruby's generation of documentation for Ruby class modules relies on third-party projects.
https://github.com/sagmor/yard-mruby
However, the last update was over 7 years ago.


Backport "Increase BootstrappedOnlyCompilationTests timeout" to LTS

Backports #19868 to the LTS branch.
PR submitted by the release tooling.
[skip ci]

No regressions detected in the community build up to lts-19921.
Reference


Can't use my compiler

An unexpected error occurred that requires a reload of this page.
The workbench failed to connect to the server (Error: connection record disposed by ConnectionHub: {
"errorMessage": "Failed to start VS Code Remote server.",
"originalErrorType": "",
"errorCode": -1,
"errorType": "GenericError",
"stack": "Error: Failed to start VS Code Remote server.\n at [CODESPACE_URL]\n at [CODESPACE_URL]\n at [CODESPACE_URL]\n at [CODESPACE_URL]\n at d ([CODESPACE_URL]\n at a ([CODESPACE_URL]"
} $1 $1)

Could you please open a discussion at http://gh.io/ghcs-feedback?


fix compiler error when property is numeric (in future parser)

split into integer/float in specs can go away but i don't trust puppet being very coherent in future.
vendor/gems in .gitignore mainly there for convenience, it is default path bundler install suggests.

Thanks!

Cool, now test passes with FUTURE_PARSER=yes. I guess we should start testing the code against Puppet 4.


Refactor nonOptionalTextToPatterns

After PR #221, the method nonOptionalTextToPatterns in LicenseCompareHelper has a complexity of 89 which is far to high.
I wasn't able to come up with a clean way to refactor the method into several static methods.
There are a couple alternative approaches:

Create a separate non-static class to parse the license templates and create the patterns
Change the FilterTemplateOutputHandler to output the actual regex for the license - e.g. construct the regex as the template is being filtered and create 2 methods getStartRegex(int numWords) and getEndRegex(int numWords)

The first option (separate class dedicated to converting license templates and/or fragments of license templates into regexes) seems like a good option to me.  It might be useful to someone independent of the LicenseCompareHelper, and is probably a lot easier to test too.

Fixed with PR #224


[Enhancement] Speakers tab

I think we should display Speakers in Grid instead of list.
There are couple of points why I am suggesting displaying speakers in grid. One of the important point is, by displaying in list, we are not utilizing screen space. Another point is if we will display it in grid then we would be able to display bigger profile pic.

Yeah, this makes sense.
@PareshMayani do you have some ui mocks which you would like to follow for implementing this?

I am not good at photoshop. Instead let me share a design in development directly!

@the-dagger @mariobehling check the awesomeness directly into the action :)

I have removed Designation and Country from the display, let me know if I should keep!

Please keep Designation and Country.


Add tags to input samplesheet

To allow for a more flexible way to group samples into various report, we'll adopt a tag system, rather than using specific columns (such as lane and group).
Relates to https://github.com/nf-core/seqinspector/issues/16

I like this tag system


feat(tests): API level boundary tests for ConfigDefinition

Description

The tests/unit_tests is modularized based on functionalities.
All the test cases related to ConfigDefinition functions are further modularized in tests/unit_tests/config_definition with each of CRUDL operations in the format test_<operation-name>.py .
Edge cases for l_config_definition.py is added as validate_list_params(). (app/utils/validations.py)

Related Issue

[X] Link to the related issue (if applicable) #13

Type of Change

[X] Bugfix
[X] New Feature
[X] Documentation

Checklist

[X] Code follows the project style guidelines
[X] Tests have been added/updated
[X] All tests pass

@coderabbitai review


Open file/folder not working.

Bug description
Open file/folder command not working
To Reproduce

Install and configure which key extension
Press <spc> f f
Error: command workbench.action.files.openFileFolder not found

Expected behavior
Should show a panel for opening files/folders.
Screenshots

Comments
Ideally, I think vscode should be providing this command. Maybe it has been removed from new versions of vscode.
I am on Linux.

This is because there isn't a cross environment built-in command to open file. In VSpaceCode, we bundled a third party file opener to solve this. In which-key, we are not going to have default bindings that depend on any third party extensions, so I fixed it by adding an extra command in which-key to get around this issue by doing try-catch. (For the record, we probably shouldn't add command not related to the core functionality to which-key. In this case, this is to get around the built-in issue. I see it as a little bit of an exception)

Released v0.8.4 that fixed this.


feat: upgrade docker image to py38 and add support for py39

SUMMARY
With Python 3.10 right around the corner (2021-10-04) and multiple performance improvements when going from 3.7 to 3.8 (see Python Speed Center benchmark summary below), we should move to 3.8 and start preparing for transitioning to 3.9. This PR bumps the official image from Python 3.7 to 3.8 and adds support for Python 3.9. CI is also bumped from 3.7 to 3.8 (btw, tox was already confgured with basepython = python3.8), and dual tests for 3.7 and 3.8 are replaced with 3.8 and 3.9.
Performance benchmark
On most benchmark tests, 3.8 (blue) performs slightly better than 3.7 (orange):

TESTING INSTRUCTIONS
Test locally that everything works as expected
ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Required feature flags:
[ ] Changes UI
[ ] Includes DB Migration (follow approval process in SIP-59)

[ ] Migration is atomic, supports rollback & is backwards-compatible
[ ] Confirm DB migration upgrade and downgrade tested
[ ] Runtime estimates and downtime expectations provided

[ ] Introduces new feature or API
[ ] Removes existing feature or API

Opened a task on Apache Infra to bump required tests: https://issues.apache.org/jira/browse/INFRA-22377


Link to pypa docs for pip installation instructions

Right now the Readme has a lot of information about installing pip, this can be replaced with a link to https://pip.pypa.io/en/latest/installing.html

e1311fc892bbcca6486e91e43bca4c6927f40156


Various fixes to Clang for use with myria-web

File output fixes, types fixes, others...

Coverage decreased (-0.03%) to 89.52% when pulling a4f714dabb661b73bd3f108aefb16b0dc2bb3f7b on clang-fixups into cb28c649fcfb8f26e3729d23c5511bf92cfc50ae on master.


smoke_catalina_startup_ios failing on device disappearing?

See the logs from the dashboard. The tree is closed on this failure.

2020-09-30T12:45:14.772340: stdout: [ +265 ms] No devices found with name or id matching 'e7184ae5fe05c2ea2ad4654ac70b4ba19c92f2c6'
2020-09-30T12:45:15.062096: stdout: [ +289 ms] "flutter run" took 7,602ms.
2020-09-30T12:45:15.068402: stderr: [   +4 ms]
stderr:            #0      throwToolExit (package:flutter_tools/src/base/comm

We can find the device with
flutter@flutter-devicelab-mac-12 agent % idevice_id -l
e7184ae5fe05c2ea2ad4654ac70b4ba19c92f2c6

And the infra-dialog XCUITest executed successfully. So the error is mysterious, I will try rebooting the device.

Rebooting worked.


Build Greenplum from source

This commit builds the latest Greenplum Database from source rather than using PPA's distribution which drops older versions of GPDB.  It also installs the file_fdw extension to be able to test foreign table support.

@kokosing Back at you for another review. Thank you!

Looks like CI failed with running out of memory. I guess S3 may be our only option. Is there a bucket available to upload the build?

I guess S3 may be our only option. Is there a bucket available to upload the build?

Please prepare a package and I will post it somewhere? Is this going to be a tar.gz with all the compiled binaries? Please try to capture a script to produce this tar.gz file so in case one wants to update it then there will be an easy way to do so.

Please prepare a package and I will post it somewhere? Is this going to be a tar.gz with all the compiled binaries? Please try to capture a script to produce this tar.gz file so in case one wants to update it then there will be an easy way to do so.

How about a separate Dockerfile at prestodev/gpdb-6-build to build the tar.gz? It could then be ran via docker run and then someone could copy the binary out?  It could be included as part of the CI build with a test (tar.gz was built) if you'd like.

It could be included as part of the CI build with a test

don't you get a same issue as before with that?

Separate docker file is fine

It could be included as part of the CI build with a test

don't you get a same issue as before with that?

Ha, yeah. Good point :)

@kokosing I was looking around and came across Debian packages that are released by GPDB.  These should work for our needs!

The make -j is probably causing the memory issue since it uses unlimited parallelism. Try using a small fixed number.

@kokosing Ready for another look!

Merged, thanks!


[google_sign_in_web] Migrate to null-safety

This PR migrates the google_sign_in_web package to null-safety.
It also adapts the integration tests to the latest style (same as url_launcher_web) to conform with the latest best practices.
(Mockito mocks have been removed in favor of Fakes.)
Testing

All integration_tests pass with minimal-to-no changes to them.
Tested manually with the google_sign_in example app in localhost.

Pre-launch Checklist

[x] The title of the PR starts with the name of the plugin surrounded by square brackets, e.g. [shared_preferences]
[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide and the C++, Objective-C, Java style guides.
[x] I listed at least one issue that this PR fixes in the description above.
[ ] I added new tests to check the change I am making or feature I am adding, or Hixie said the PR is test exempt.
[x] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy.
[x] I updated CHANGELOG.md to add a description of the change.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I signed the CLA.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

Is the * Packages dependent on a pre-release of another package should themselves be published as a pre-release version. If this package needs google_sign_in_platform_interface version 2.0.0-0, consider publishing the package as a pre-release instead. annoying publishable?

Narrator: It was...

Yep, "you're using a prerelease SDK" and "you're using a prerelease package" are different warnings, and we deliberately only ignore the first.

Published https://pub.dev/packages/google_sign_in_web/versions/0.10.0


custom block crashes the categories

The categories in pxt-adafruit (or makecode.adafruit.com) crash when I try to create a new custom block using the add button in the custom.ts with the following code:
namespace gesture {

    //% block
    function asdf() {

    }

}

Try adding export on that function declaration.
Get Outlook for iOShttps://aka.ms/o0ukef

From: Majeed Kazemitabaar<EMAIL_ADDRESS>Sent: Thursday, June 22, 2017 1:13:21 PM
To: Microsoft/pxt
Cc: Subscribed
Subject: [Microsoft/pxt] custom block crashes the categories (#2338)
The categoriesin pxt-adafruit (even on live makecode.adafruit.com) crash when I try to create a new custom block in the custom.ts with the following code:
namespace gesture {
//% block
function asdf() {

}

}
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FMicrosoft%2Fpxt%2Fissues%2F2338&data=02|01|jhalleux%40microsoft.com|87fe32006bfe4136f44408d4b9ab22cd|72f988bf86f141af91ab2d7cd011db47|1|0|636337592037609277&sdata=K%2B2lux%2BO8pTfVoofAUDTrzbRpPTR7%2FyBHb8cqpcVngw%3D&reserved=0, or mute the threadhttps://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAD-4KeMLzhKJUZuWX5ri1_VYoWov4YX9ks5sGsrhgaJpZM4OCyfQ&data=02|01|jhalleux%40microsoft.com|87fe32006bfe4136f44408d4b9ab22cd|72f988bf86f141af91ab2d7cd011db47|1|0|636337592037609277&sdata=%2F5qms9xp3ydJ%2FmKofR83zt1ybf39nUJsJlivkbPrcMk%3D&reserved=0.

Yep, it worked.
Thanks


chore: squash

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

GitHub release
v3.0.0

Your semantic-release bot :package::rocket:


replace distutils for python 3.12

Python 3.12 has removed distutils: https://docs.python.org/3.12/whatsnew/3.12.html#removed

FWIW, this fixes #1246, and is the same fix as #1247.  Be nice to see one of them accepted soon!

FWIW, this fixes #1246, and is the same fix as #1247. Be nice to see one of them accepted soon!

It would be nice to see anything accepted soon!

Any chance to merge this?

@scorphus can you please take a look at this?
This is probably the biggest issue thefuck has today making it difficult to install it on modern systems (also given that distutils can be also missing even on python3.11: https://bugs.launchpad.net/ubuntu/+source/thefuck/+bug/1875178). Python 3.12 is default on many systems today: Ubuntu 24.04, Debian Sid, homebrew.
And it can be solved with 2 just lines of code.


Diagonal

Issue Id you have worked upon -
Zigzag traversal of Matrix #92
Briefly explain your program logic -
Firstly the order of the matrix is entered and then the elements one by one ,which are stored. Then the elements are printed according to the diagonal order using "for loop".
Screenshots(Attach 2 screenshots of your own input and output) -

Checklist:
Eg - If your code follow the below guidelines. Kindly change [] to [x]
All the conditions should be fulfilled for considering your code for merging -
[x] I have mentioned the question as comment in my solution file.
[x] My code follows the guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code.
[x] My code gives the correct output.
[x] I confirm that I have not copied the code from anywhere. In case its found that I have copied I can be banned from the repository.
[x] I affirm that I strictly follow contributing guidelines and code of conduct.

@SarthakKeshari sir, please review this, thank you..

@Ln11211,
Kindly add a few more comments in between thinking about explaining it to a beginner who might be visiting your code.

@SarthakKeshari sir, ok, I'll do it right away...

@SarthakKeshari sir, done , can you please check now ?, do let me know if you need any more additions to the code...


Minor change

@alkohli,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot


Include tanzu-to-go workshop content in end-to-end automated tests

Feature Request
The solution engineering team is running a workshop that includes TCE. It exists at https://github.com/Tanzu-Solutions-Engineering/tanzu-to-go-workshop.
I've not personally dug into this repo, but bringing up the suggestion to consider whether there's a good hook for us to test our releases against this work/process.
So in summary, first step would be to look at the project and see if there's value in partnering here.

Thanks for bringing this up @joshrosso ! We'll explore the https://github.com/Tanzu-Solutions-Engineering/tanzu-to-go-workshop repo 😄


Fix for issue where a signed cert and self signed cert can both exist

init-openssl.sh creates both RSA and EC self-signed certificates. When using a properly signed certificate of only one type (RSA or EC) the init-openssl.sh script will still generate the self-signed version of the other certificate type. This results in some requests to Postfix returning the self-signed cert rather than the signed cert.
This pull requests modifies init-openssl.sh to prevent the generation of self-signed certificates if either type of certificate already exists. If a certificate does exist it also checks for missing certificates and then uses sed to comment out the appropriate smtpd_tls_cert_file/key lines in main.cf.
When both or neither certificates are present it functions as it currently does.

 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.

Hello @nickwest , thank you very much for your improvement of the better compatible with CA settings!
I'd like to merge this PR after it gets at least one approval from the community so that we can make sure it works as expected.
P.S. add an unit test will be highly appreciated.
Have a great day!

Hi @huan, I added a couple unit tests as requested. They verify that when both EC and RSA certs are present they share the same CN, domains, and are either both self signed or both CA signed. This ensures that regardless of which certificate is used the result will be equal.
The already present TLS tests will continue to verify that connections will work regardless of certificate matching and validity. Those tests also verify that having a single cert (the case prior to PR #51) is working properly.
If @Czocher is available they'd probably be a good reviewer/approver since this touches their work in PR #51 where EC certs were introduced.
I also see that PR #36 could introduce custom paths for certs. The unit tests in my PR do not account for that currently and would need to be changed if that PR is merged.

Hi @nickwest I'm available but I don't have access to any proper production environment at the moment to try to deploy and test it. I can have a look at the code though.


python provider: support mysql backends for django

Fixes https://github.com/railwayapp/nixpacks/issues/483 / https://github.com/railwayapp/nixpacks/issues/488 by providing the dependency required by the mysqlclient python package.
Tested building the example linked in https://github.com/railwayapp/nixpacks/issues/488 (🙏 ) locally and running the resulting container against a test PlanetScale DB. Assuming it works the same for a generic MySQL/MariaDB server.

This is awesome! Can you please add a test + example app that uses Django and mysql. For tests, I think we should have

Unit test in the Python provider to check that is_using_mysql works
Generate plan test (generated automatically) to check that the build plan contains the correct package (https://github.com/railwayapp/nixpacks/blob/main/CONTRIBUTING.md#snapshot-tests)
Docker run test to check that the container can be built and run if it uses MySQL (can see how the Postgres Django test works)


CIP-0095 | Promote CIP and update links

Updated to reflect author's new email address
Added implementer
Updated links throughout to reflect core cardano code moving to Intersect
Updated Acceptance Criteria
Updated Path to Active
Updated CIP status to active in line with updated Acceptance Criteria

@rphair
I am also thinking about changing the name of this CIP, from Governance to Conway.
as this not only supports the governance model within the Conway Ledger era, but also the other features (treasury donations, etc.)
thoughts?

@Ryun1 I think this is a good idea: being specific about Conway for this one-time migration and using Governance for regular processes that are instituted for the long term.


fix: use $() to precompute clang version

Fix clang_version does not expand as expected. This fix is sub-product of previous curl compression patch (#1550).
One can verify the correctness of the patch from the following snippet
#!/bin/bash

fxy() {
    echo "${1#v}" and "${2#v}"
}

g() {
    echo "h"
}

echo $(fxy g h)
echo $(fxy "$(g)" h)

You are welcome. I really stuck for a while on curl_use_compression before I figure out that nvm_curl_version is not expanded at all 😅. so I knew there is similar situations on clang_version.


PageForm hook up onClickAdditionalAction prop.

This modifies the PageForm component to support a secondary button along with the default Submit and Cancel buttons in the PageForm and any actions associated with it.

Closing in favor of using additionalActions prop.


Split WithVolumeMount into two seperate methods

WithVolumeMount is mixing two different concepts: named volumes and bind mounts. They should probably be seperated into two methods.
Mentioned in https://github.com/dotnet/aspire/issues/1132 and https://github.com/dotnet/aspire/issues/837
Suggestion for usage:
var database = builder.AddPostgresContainer("database")
    .WithBindMount("../../data/database/data", "/var/lib/postgresql/data") // currenty equal to VolumeMountType.Bind
    .WithVolume("volume-name", "/var/lib/postgresql/data") // currenty equal to VolumeMountType.Named

What if the volume path for every aspire component had a default value for each resource (redis, postgres, rabbitmq, etc...)? And, you would only need to specify the name by default and the path was an optional parameter. With the approach that I am describing, the devs wouldn't need to look and figure out the volume path for containers but could change it if they wanted to.
builder.addPostgresContainer().withvolumemount("postgresVolume");
builder.addRabbitmqContainer().withvolumemount("rabbitmqVolume");
builder.addrediscache().withvolumemount("rabbitmqVolume", "");

@josephaw1022 I think you are describing https://github.com/dotnet/aspire/issues/837

@stbau04  You're right. I misread it initially.

@mitchdenny, I think that would be interesting. I am curious exactly that would mean? Do you mean having them be independent of container creation and having more 1-1 mapping of methods to volume functionality? Or do you have something else in mind?
Not related in the sense that it's not directly related to volumes specifically, but I do think it relates to this
https://github.com/dotnet/aspire/discussions/1575
as it pushes the ball towards the existing principles in place with kubernetes and containers.

Probably we should wait for https://github.com/dotnet/aspire/pull/1521 and then see if this issue is still necessary

Tagging for offsite because we need to figure out what we are doing in the app model around volumes and how that translates to deployment.


undefined local variable or method admin_plugins_contact_form_admin_forms_path for CameleonCms::AdminController

I'm migrating version1x to 2.
On my development, everything is working great. But in my production, this error comes up. Sometimes when I logged in admin panel, it would show this error but sometimes not.
I looks up my routing path on production.
this path helper exactly on my routing path, so I have no idea what it's going on here.
admin_plugins_contact_form_admin_forms GET        /admin/plugins/contact_form/admin_forms(.:format)                       plugins/contact_form/admin_forms#index
NameError: undefined local variable or method `admin_plugins_contact_form_admin_forms_path' for #<CamaleonCms::AdminController:0x007f9816e8d5e0>
... 85 non-project frames
1
File "/home/ubuntu/apps/ws_blog_production/shared/bundle/ruby/2.2.0/bundler/gems/camaleon-cms-050ec914f080/app/apps/plugins/contact_form/contact_form_helper.rb" line 77 in contact_form_admin_before_load
2
File "/home/ubuntu/apps/ws_blog_production/shared/bundle/ruby/2.2.0/bundler/gems/camaleon-cms-050ec914f080/app/helpers/camaleon_cms/hooks_helper.rb" line 43 in block in _do_hook
3
File "/home/ubuntu/apps/ws_blog_production/shared/bundle/ruby/2.2.0/bundler/gems/camaleon-cms-050ec914f080/app/helpers/camaleon_cms/hooks_helper.rb" line 39 in each
4
File "/home/ubuntu/apps/ws_blog_production/shared/bundle/ruby/2.2.0/bundler/gems/camaleon-cms-050ec914f080/app/helpers/camaleon_cms/hooks_helper.rb" line 39 in _do_hook
5
File "/home/ubuntu/apps/ws_blog_production/shared/bundle/ruby/2.2.0/bundler/gems/camaleon-cms-050ec914f080/app/helpers/camaleon_cms/hooks_helper.rb" line 25 in block in hooks_run
6
File "/home/ubuntu/apps/ws_blog_production/shared/bundle/ruby/2.2.0/bundler/gems/camaleon-cms-050ec914f080/app/helpers/camaleon_cms/hooks_helper.rb" line 24 in each
7
File "/home/ubuntu/apps/ws_blog_production/shared/bundle/ruby/2.2.0/bundler/gems/camaleon-cms-050ec914f080/app/helpers/camaleon_cms/hooks_helper.rb" line 24 in hooks_run
8
File "/home/ubuntu/apps/ws_blog_production/shared/bundle/ruby/2.2.0/bundler/gems/camaleon-cms-050ec914f080/app/controllers/camaleon_cms/admin_controller.rb" line 76 in admin_before_hooks

are you using?
gem "camaleon_cms", github: 'owen2345/camaleon-cms', branch: "moduler"

seems like I type something wrong. Now the problem was solved. Thanks. 👍

great!


Feature request: support for InMail messages

Hi,
It would be great if the bridge could support InMail messages.

The bridge already does support InMail. If there are specific messages that aren't working, please include bridge logs relevant to the failed message.

Hi @sumnerevans, I reached the support because I did see empty chats when someone invites me on LinkedIn (with a message) or sends me an InMail and I got the following answer:

Ah. That is an inmail. InMail Messages will not show up in Beeper unless another message is sent. - G

And, indeed, I never see the messages which were part of an invites nor I see the first InMail sent to me. That’s why I opened this feature request. Is it expected?

That is a Beeper-specific bug which has been fixed and will be deployed soon. This tracker is for issues specific to the LinkedIn bridge and should not be used for Beeper support issues, we have separate tracking for those issues internally at Beeper.


Update clarabel to v0.9.0

This updates clarabel to v0.9.0 which crucially includes a fix that makes it work on WASM.

If we decide to add support for wasm, then we need at least one test for the wasm build in our CI. Otherwise someone will break wasm compatibility later.
for the clarabel version update: no problem

Thanks!

@calintat do you remember what error you were experiencing when running wasm?


No highlighting with slonik sql.type and inline zod schema

Hi! Awesome plugin. I was setting up slonik on a project and noticed that the highlighting doesn't work when I use slonik's sql.type with a custom inline zod schema.
Highlights:
const schema = z.object({ num: z.number() });

sql.type(schema)`
  SELECT 1 as num
`;

Doesn't highlight:
sql.type(z.object({ num: z.number() }))`
  SELECT 1 as num
`;

Hi @mgreenw, thanks for the report. I have not figured out a way to solve this issue after trying a couple of times back in the spring of this year, and could use help. If i recall correctly, this issue is one of knowing when the SQL template actually begins and is not part of the code in the schema definition. there are also limitations with multiple lines in textmate grammars possibly at play. but again, i could be wrong and there may be a clean solution i'm just not aware of
I'm unable to find it at the moment, but there is a discussion or github issue somewhere about this problem and the collaborators opted to just avoid inlining their schema definitions


fix: incorrect type reference

Deploy Preview for js-primer ready!
Built with commit 3fe517de54a924ac4a9ea49265bc8db0644ed72d
https://deploy-preview-1322--js-primer.netlify.app

Thanks! Nice Catch!


Replication completely resets on timeout

Replicating skimdb, last_seq is: 11803 (6.92%)
Replicating skimdb, last_seq is: 12003 (7.04%)
Replicating skimdb, last_seq is: 12203 (7.16%)
Replicating skimdb, last_seq is: 12403 (7.27%)
Replicating skimdb, last_seq is: 12603 (7.39%)
Replicating skimdb, last_seq is: 12803 (7.51%)
Replicating skimdb, last_seq is: 13003 (7.63%)
Replicating skimdb, last_seq is: 13203 (7.74%)
error during replication with skimdb
{"status":503,"name":"pound_service_unavailable","message":"Database encountered an unknown error"}
Replicating skimdb, last_seq is: 1 (0%)
Replicating skimdb, last_seq is: 2 (0%)
Replicating skimdb, last_seq is: 200 (0.11%)
Replicating skimdb, last_seq is: 401 (0.23%)
Replicating skimdb, last_seq is: 601 (0.35%)
error during replication with skimdb
{"status":503,"name":"pound_service_unavailable","message":"Database encountered an unknown error"}
Replicating skimdb, last_seq is: 1 (0%)
Replicating skimdb, last_seq is: 2 (0%)
Replicating skimdb, last_seq is: 200 (0.11%)
Replicating skimdb, last_seq is: 401 (0.23%)
Replicating skimdb, last_seq is: 601 (0.35%)
Replicating skimdb, last_seq is: 801 (0.47%)
error during replication with skimdb
{"status":503,"name":"pound_service_unavailable","message":"Database encountered an unknown error"}
(node) warning: possible EventEmitter memory leak detected. 11 listeners added. Use emitter.setMaxListeners() to increase limit.
Trace
    at PouchDB.addListener (events.js:160:15)
    at PouchDB.once (events.js:185:8)
    at new Changes (/Users/remy/.nvm/v0.10.38/lib/node_modules/local-npm/node_modules/pouchdb/lib/changes.js:41:6)
    at PouchDB.AbstractPouchDB.changes (/Users/remy/.nvm/v0.10.38/lib/node_modules/local-npm/node_modules/pouchdb/lib/adapter.js:680:10)
    at getChanges (/Users/remy/.nvm/v0.10.38/lib/node_modules/local-npm/node_modules/pouchdb/lib/replicate/replicate.js:332:23)
    at /Users/remy/.nvm/v0.10.38/lib/node_modules/local-npm/node_modules/pouchdb/lib/replicate/replicate.js:376:9

It seems to have reset after around 7%...

Doesn't seem to be linked to the event listeners, but the 503 causes the replication to reset. I'm not sure if that's normal or not...
More logs:
Navigate to http://localhost:16984/_utils for the Fauxton UI.

Replicating skimdb, last_seq is: 1 (0%)
Replicating skimdb, last_seq is: 2 (0%)
Replicating skimdb, last_seq is: 200 (0.11%)
Replicating skimdb, last_seq is: 401 (0.23%)
Replicating skimdb, last_seq is: 601 (0.35%)
Replicating skimdb, last_seq is: 801 (0.47%)
Replicating skimdb, last_seq is: 1001 (0.58%)
Replicating skimdb, last_seq is: 1201 (0.7%)
Replicating skimdb, last_seq is: 1401 (0.82%)
Replicating skimdb, last_seq is: 1601 (0.93%)
Replicating skimdb, last_seq is: 1801 (1.05%)
Replicating skimdb, last_seq is: 2001 (1.17%)
Replicating skimdb, last_seq is: 2201 (1.29%)
Replicating skimdb, last_seq is: 2401 (1.4%)
Replicating skimdb, last_seq is: 2601 (1.52%)
Replicating skimdb, last_seq is: 2801 (1.64%)
error during replication with skimdb
{"status":503,"name":"pound_service_unavailable","message":"Database encountered an unknown error"}
Replicating skimdb, last_seq is: 1 (0%)
Replicating skimdb, last_seq is: 2 (0%)
Replicating skimdb, last_seq is: 200 (0.11%)
Replicating skimdb, last_seq is: 401 (0.23%)
Replicating skimdb, last_seq is: 601 (0.35%)
Replicating skimdb, last_seq is: 801 (0.47%)
Replicating skimdb, last_seq is: 1001 (0.58%)
Replicating skimdb, last_seq is: 1201 (0.7%)
error during replication with skimdb
{"status":503,"name":"pound_service_unavailable","message":"Database encountered an unknown error"}
Replicating skimdb, last_seq is: 1 (0%)
Replicating skimdb, last_seq is: 2 (0%)
Replicating skimdb, last_seq is: 200 (0.11%)
Replicating skimdb, last_seq is: 401 (0.23%)
Replicating skimdb, last_seq is: 601 (0.35%)

I think the reason the replication is resetting is because the target database is read-only. We have a longstanding issue where we need to write _local checkpoints to the remote database in order to keep track of our progress in replicating from that database.
As for the EventEmitter warning, that's definitely a bug that I thought we had fixed awhile ago. Filed: https://github.com/pouchdb/pouchdb/issues/4093

If the database is read only then we should fallback to just relying on the local checkpoint (https://github.com/pouchdb/pouchdb/blob/master/lib/replicate/checkpointer.js#L101) as long as the error we get back is as expected, is that changing somehow?

There's definitely something super wrong.
I left local-npm running and it go to 100%, then when restarting and catching up with changes it randomly drops back down to zero:
...
Error: ETIMEDOUT
error during replication with skimdb
Error: ETIMEDOUT
error doing logger.info() on https://skimdb.npmjs.com/registry
Error: ETIMEDOUT
Replicating skimdb, last_seq is: 175769 (98.82%)
Replicating skimdb, last_seq is: 175771 (98.83%)
error during replication with skimdb
Error: ETIMEDOUT
error doing logger.info() on https://skimdb.npmjs.com/registry
Error: ETIMEDOUT
Replicating skimdb, last_seq is: 1 (0%)
Replicating skimdb, last_seq is: 2 (0%)
Replicating skimdb, last_seq is: 200 (0.11%)
Replicating skimdb, last_seq is: 401 (0.22%)
Replicating skimdb, last_seq is: 402 (0.22%)
Replicating skimdb, last_seq is: 403 (0.22%)
Replicating skimdb, last_seq is: 601 (0.33%)
Replicating skimdb, last_seq is: 602 (0.33%)
Replicating skimdb, last_seq is: 603 (0.33%)
...

Based on the output it seems like you are not using the latest version. Could you update to 1.4.2 and try again?

 I opened a PR and then never merged it. I'll publish 1.4.3 right now.

Should be fixed by https://github.com/nolanlawson/local-npm/pull/41, please reopen if it's not.

Sorted.
I've seen all of the view docs in pouch, is it possible to query this local-npm using those desig docs? i.e. find all the modules that depend on semver for instance?

Yeah, that's actually a really neat idea. In the Fauxton UI (http://localhost:16984/_utils) I can see a ton of secondary indexes that are already in that _design/app ddoc, but since it's a replicated CouchDB, you can also add whatever design docs you want, and then query them.
As a test, I did this:
curl http://localhost:16984/skimdb/_design/by_maintainer -X PUT -H 'Content-Type: application/json' --data-binary '{"_id":"_design/by_maintainer","views":{"by_maintainer":{"map":"function (doc) {\n  if (doc.maintainers) {\n    for (var i = 0; i < doc.maintainers.length; i++) {\n      var email = doc.maintainers[i].email;\n      if (email) {\n        emit(email);  \n      }\n    }\n  }\n}"}},"language":"javascript"}'
curl<EMAIL_ADDRESS>
The secondary index is slow to build, but it works! Prints out:
{"total_rows":203396,"offset":0,"rows":[{"key":"nolan@nolanlawson.com","id":"add-cors-to-couchdb","value":null},{"key":"nolan@nolanlawson.com","id":"blob-util","value":null},{"key":"nolan@nolanlawson.com","id":"chord-magic","value":null},{"key":"nolan@nolanlawson.com","id":"couchdb-harness","value":null},{"key":"nolan@nolanlawson.com","id":"debug-websql","value":null}]}

For querying modules that depend on semver, I guess you would need to emit all dependency versions or maybe just emit if any version numbers start with a ^ or a ~. The Fauxton UI is actually pretty nice for editing these kinds of ddocs; highly recommended.


DataConvertible protocol, remove NSData references

DataConvertible is an easy way to get from number types to Data and back. It could apply to UnsignedIntegers as well, but we already had the capability built in to them without the need for an optional initializer, so UnsignedIntegers actually don't technically conform to the protocol, although they have something very similar.
And I'd also like to remove all the NSData conveniences we built. I think everyone should have migrated to using Data by now. If this is too extreme to remove so much, I can hold off on that.

retest this please

Are you cool not having a testpoint to exercise ip_int8Value? It's a pretty thin wrapper around .to() so I wouldn't be crushed if it's not exercised, but figured I'd point it out.

let's see how this one goes, but in the future, I think we should experiment with deprecating some versions before removing.

@bob yeah might as well test it. Just added that.


Should handle unexpected streaming errors

The module does not handle unexpected errors happened in the middle of the file streaming. This happens ~4% of the times on 3G networks (last time I checked).
A good example on how to handle them can be found here: https://github.com/expressjs/multer/blob/80ee2f52432cc0c81c93b03c6b0b448af1f626e5/lib/make-middleware.js#L134
        parser.on('error', function (err) {
          pendingWrites.decrement()
          abortWithError(err)
        })

Currently, it looks like the module crashes the node.js process. (I do not have proofs of this though.)

I have found it very challenging to verify uploads aborted by the client work ok. Some time ago I spent the better part of a week trying to workout a way to reliably test a disconnection and decided it was too difficult. If you or anyone else could work out a way to do so it would be a really big help!
Client aborted uploads have been manually tested (using large files and network throttling in Chrome dev tools) to fail gracefully, although I can't rule out something has changed or was missed.
Errors must be listened for on every upload file stream, or they will be uncaught and crash your server. Are you sure that is not the case?

I'll see what I can do. Seems doable by mocking the request object passed to the processRequest() function.

Here is an issue for adding tests for client aborted requests: https://github.com/jaydenseric/apollo-upload-server/issues/79.

An easy way to cause a crash is to do an upload mutation with a GraphQL error in the query (ask for a field that does not exist or something). The GraphQL server rejects the request as soon as it validates the query, and disconnects before all the uploads resolve causing FileStreamDisconnectUploadError: Request disconnected during file upload stream parsing..
At least thats what happens with graphql-api-koa (I don't use Apollo server anymore).


ProjectSettings.set_initial_value() does not set a setting's default value when queried via get_setting()

Godot version
4.0.dev (8f6cba3a4)
System information
Fedora 34, GeForce GTX 1080 (NVIDIA 495.46)
Issue description
ProjectSettings.set_initial_value() does not set a setting's default value when queried via get_setting(). This likely happens because the setting is not persisted to project.godot when its value is equal to the default. One way to address this would be to always save custom settings' values to project.godot, even if they are equal to the default value.
I'm not sure whether this is a bug or design decision. Either way, this should be documented in the class reference. See https://github.com/godotengine/godot-docs/issues/5497#issuecomment-1006771969 where I originally mentioned this.
Steps to reproduce

Create an editor plugin.
In the plugin main script's _enter_tree() function, define a new project setting: https://github.com/Calinou/godot-photo-mode-demo/blob/5029be379192d736d34d270f1c7696f19ec6de29/addons/photo_mode/plugin.gd
In another script, get the project setting's value: https://github.com/Calinou/godot-photo-mode-demo/blob/5029be379192d736d34d270f1c7696f19ec6de29/addons/photo_mode/photo_mode.gd#L238-L244
The initial value is not returned if the value is not saved to project.godot. This occurs if the value is not changed from its default. The setting defined here defaults to true, but null will be returned (and converted to false with bool()) if the setting is not persisted to project.godot.

Minimal reproduction project
https://github.com/Calinou/godot-photo-mode-demo
I can make a more minimal reproduction project if needed.

I'm kinda sure this is a bug. with current behavior, custom settings that equal to default values will lost after reloading the project. This makes custom settings less usable in a sense.

For whatever it's worth, this is also an issue in Godot 3.5.1, especially the part about custom settings that are equal to their default will be lost after reloading/exporting the project.

Any custom settings should be persisted in project.godot regardless. Though, looking through project_settings.cpp, I don't think  that there's a way to determine if the setting is custom or something that the editor sets/gets by default.

It is already implied, but i want to point out that has_setting will return false if the setting has the default value.
Which is not what you would expect, especially as the setting is visible in the Godot GUI.

For whatever it's worth, this is also an issue in Godot 3.5.1, especially the part about custom settings that are equal to their default will be lost after reloading/exporting the project.

Holy cow I just spent too long thinking I was going crazy wondering why my custom project settings were disappearing whenever I would call "set_initial_value", but if I omitted that call, they would show up after closing the game and opening project settings again.

I decided to look more into it and this is what I found.
I created three settings, one empty by default, one overridden in the project settings dialog, and one with a non-empty default value. The settings are retrieved correctly when they're defined in the EditorPlugin and read in the editor. Below is the log output when I try to read them in EditorPlugin._ready():
Editor: trying to read settings defined in the editor plugin
empty:
overridden: Overridden value
default: Default value

When I try to read these same values from a running scene started from the editor with F6, the overridden value is retrieved correctly while the other two can't be found and thus return null:
Runtime: trying to read settings defined in the editor plugin
empty: <null>
overridden: Overridden value
default: <null>

Now, when I create the project settings at runtime in the running project, using the same code as I used in the editor plugin, and try to read the values after that, they're finally retrieved correctly:
Runtime: trying to read settings defined at runtime
empty:
overridden: Overridden value
default: Default value

Since EditorPlugin doesn't run in exported projects, there is no chance for it to create the settings it creates while running in the editor. This isn't a problem for overridden settings because they can be found in the project.godot file. It IS a problem for anything that isn't stored in the project file, like default values that are never overridden.
Here is the MRP I created to test this.
I see several ways to fix this, the two most practical ways being...

Store all custom settings in the project.godot file, regardless of whether they're the defaults or not. This makes the project file more crowded and might involve changing how the project manager detects overridden settings and resets defaults.

Change the docs to document this pitfall and suggest putting custom settings creation into a separate script that is called from both EditorPlugin and some autoloaded script at the beginning of the game. No changes have to be made to the Godot source. You could argue that some settings are relevant at editing time only and aren't needed at runtime. These can be safely created in the EditorPlugin class only. Anything that needs to be available in the editor and in exported games should be handled like I just described.

I just ran into this issue too, took me some time find out this was the cause.
I'm wondering how common this is though. I would have been fine personally if this was clearly documented somewhere. I can make a PR for this if this is the way we want to go.
I don't think writing all settings to the project.godot file is a good ideas (as you said, it would make it much more crowded and we might need to touch other areas of the code too).
Then there's still the option to make a system to track which settings are added by users. We could maybe make a new PROPERTY_USAGE_CUSTOM flag which identifies such properties? That way we would have a way to identify which ones need to always be saved.

The way it sounds is that if a ProjectSetting exists at all, it is accessible in a @tool context but only ones written to project.godot are accessible at runtime. If the issue is project.godot getting too large, is it the right place to store settings? Having settings just only exist in certain contexts does not feel like the answer here.
How is one supposed to write an Addon that utilizes settings both in editor and at runtime that may be left at default?

I was just wondering why when I set ProjectSettings.set_initial_value but don't modify the default value, ProjectSettings.get_setting returns null.
Based on my exploration and testing, I found that the behavior of the Editor and the Game (Runtime) is different when initializing ProjectSettings.
In ProjectSettings.cpp, set_initial_value  is actually statically encoded, so as long as ProjectSettings is initialized, the settings defined internally will definitely be correctly initialized. No matter the Editor or the Game, they will both fully initialize ProjectSettings, so there will be no issues with the built-in settings.
https://github.com/godotengine/godot/blob/0bcc0e92b3f0ac57d4c4650722f347593a258572/core/config/project_settings.cpp#L1100C1-L1120C2
However, EditorPlugin is different. EditorPlugin will only _enter_tree in the Editor. It enters the EditorNode.
When running in Game mode, Godot will not execute the _enter_tree of EditorPlugin, because there is no editor.
However, as Godot developers, especially plugin developers, we tend to register our plugin settings in _enter_tree (this is a consensus and is considered a standard practice) and then clean up our plugin settings in _exit_tree.
@tool
extends EditorPlugin

var setting_name = "test/my_setting"

func _enter_tree():

	ProjectSettings.set_setting(setting_name,"hello")
	ProjectSettings.add_property_info(
		{
			name=setting_name,
			type=TYPE_STRING,
			hint_string=""
		}
	)
	ProjectSettings.set_initial_value(setting_name, "hello")
	ProjectSettings.set_as_basic(setting_name, true)
	ProjectSettings.save()

func _exit_tree():
	ProjectSettings.clear(setting_name)

This results in our _enter_tree  of plugin not being executed when Game is running, and naturally, our set_initial_value will not be executed either.
extends Control

func _ready():
	printt("test/my_setting", ProjectSettings.get_setting("test/my_setting"))

Got null.
Godot Engine v4.2.1.stable.custom_build.f9cf98f8e - https://godotengine.org
Vulkan API 1.3.260 - Forward+ - Using Vulkan Device #0: NVIDIA - NVIDIA GeForce RTX 4090

test/my_setting	<null>

If we do like this.
@tool
extends EditorPlugin

static func register_settings():
	var setting_name = "test/my_setting"
	ProjectSettings.set_setting(setting_name, "hello")
	ProjectSettings.add_property_info(
		{
			name=setting_name,
			type=TYPE_STRING,
			hint_string=""
		}
	)
	ProjectSettings.set_initial_value(setting_name, "hello")
	ProjectSettings.set_as_basic(setting_name, true)
	ProjectSettings.save()

func _enter_tree():
	register_settings()

And call register_settings in main scene.
extends Control

func _ready():
	preload ("res://addons/my_plugin/plugin.gd").register_settings()
	printt("test/my_setting", ProjectSettings.get_setting("test/my_setting"))

Hey, we get it.
Godot Engine v4.2.1.stable.custom_build.f9cf98f8e - https://godotengine.org
Vulkan API 1.3.260 - Forward+ - Using Vulkan Device #0: NVIDIA - NVIDIA GeForce RTX 4090

test/my_setting	hello

Summar
Is this a bug?
It's a bit tricky to define because there's no mention in the official documentation that EditorPlugin will handle user-defined settings.
The practice of handling custom settings for Plugins in _enter_tree and _exit_tree is something employed by community developers.
And EditorPlugin is not created when the game is running as there is no editor scene tree, the plugin cannot enter the editor scene tree so it's not created in the first place. This results in _enter_tree ``_exit_tree not being executed during game runtime.
However, I believe that EditorPlugin should handle custom settings, it's reasonable to expect so.
As for the direction of modifications for this BUG, my personal views are:

Let EditorPlugin be created even when the game is running. As long as EditorPlugin can execute _init, then we can do something inside here. The inability to enter the editor scene tree is not a problem. But this may lead to the plugin's settings being added to ProjectSettings before the plugin is activated.

Or add some static virtual methods for EditorPlugin for users to override (like the example above). This allows the game engine to traverse the plugins to execute these static virtual methods for runtime initialization without instance it.

Hello! I'm facing the same issue now. And to add more feedback, the settings was added to the ProjectSettings visual editor, but when I restart the engine, the stuff is vanished. So I think we should maybe persist the only the custom settings to the Godot.project, even if it's the default value. For the editor one it's not a problem because the default value are set by the engine but for custom one it's not good


signing message

Tasks :

[ ] manage pod keys

[x] ontologies

https://w3id.org/security : Proof, VerificationMethod, proofValue
http://www.w3.org/ns/auth/cert : PrivateKey, PublicKey, key

[x] create keys :
Schnorr alg and secp256k1 elliptic curves ( key is 64 bytes length). more recent tan ECDSA on same elliptic curve and shorter keys
[x] Keys URI :

publicKey  podStorage/profile/keys/publicKey.ttl => :me cert:PublicKey string.
privateKey podStorage/settings/keys/privateKey.ttl /settings/ is discovered from WebID preference fle => :me cert:PrivateKey string.
PodStorage is discovered using :

pim: storage from webID document with a priority to rootWebid in case of multiple pim:storage
pim:storageDescription linkHeaders (Solid protocol V.10)
and if none parsing recursively the webID URI for pim:Storage link Headers

[x] secure keys with READ only on key resources and acl:default Read on key container
[ ] Add comment in triples : # These are cryptology keys used by apps.
[x] repair publicKey keeping private key
[ ] add key type description ? SS256 + SHA256 ? where ? JWT  or JWS ?
[ ] a WebID could have multiple key/keyPairs. Through Subject or Graph ? - Actually it is Graph based

[x] default object message (id, date created, content, maker)
replacedBy, deleted and threads are not included. These should link to new signed things
This is not actually the case for deleted

[x] chat channel

[x] see https://github.com/SolidOS/chat-pane/pull/100

must be Append only for authenticated users
ReadWrite for chat creator (owner)

[ ] index.ttl : ReadWrite for authenticated agents and owner

[ ] sign and verify object message. Should cover Threads

[x] simple message
[x] edit message : replacedBy => sign new msg + verify same maker
[ ] deleted message => verify the triple with a second signature or create a new thing.
and verify same maker. There is actually an optional parameter
[x] links to new messages. Not needed

[ ] UI

[ ] UI signed message with verify = false
[ ] UI for unsigned message

[ ] tests

[ ] push key management in solid-logic ?

[ ] documentation

ontology
Looking for an ontology to describe keys (privateKey, publicKey), and may be keyType (asymetric RS256, SHA256)

https://www.w3.org/ns/auth/cert
https://oeg-upm.github.io/devops-infra/ontology/certificate/index-en.html

 # privateKey resources
 :me cert:privateKey "string" # in a resource READ only for the owner

 # publicKey resources
 :me cert:publicKey "string"; # in an other resource Read only for everybody

 # key discovery
   :me cert:keyPair a type:RS256;
   :me cert:keyPair a hash:SHA256;
   :me cert:privateKey URI;
   :me cert:publicKey URI;

optional functions

chat members  (Append Only)

automatic : add proof to old unsigned messages ?

owner/managers functions (Append only, able to change to Write authorization)

on demand : remove deleted messages ?
Even not displayed, the deleted messages are readable.
Deleting messages definitely make them not restorable, we may encode/decode them with an owner/managers symmetric key
chat member has changed privateKey : on demand remove invalid chat members signature and rebuild a valid signature

:me solid:pubkey keyString # keystring is 64 char hex string
:me solid:privkey keyString # keystring is 64 char hex string

Or some variant of this
In general, lower case hex strings are most common in implementations

@timbl @angelo-v @megoth
Working chat with thread and signed messages.
Tested with NSS. Needs following PRs

https://github.com/linkeddata/rdflib.js/pull/638
https://github.com/linkeddata/rdflib.js/pull/633 or 636 see detail in issue https://github.com/linkeddata/rdflib.js/issues/631
#550
https://github.com/SolidOS/chat-pane/pull/103


Yomani ml terminal connected but payment result error

Payment service provider
Monri
Payment terminal
Yomani ml
Communication Logs
No response
More information
12:07:59.116 INF Portalum.Zvt.TcpNetworkDeviceCommunication ConnectAsync - IpAddress:<IP_ADDRESS>, Port:5001
12:07:59.153 INF Portalum.Zvt.TcpNetworkDeviceCommunication Connected
12:07:59.264 DBG Portalum.Zvt.TcpNetworkDeviceCommunication Receive - 00-00-00-3E-56-45-52-7C-41-50-50-20-31-39-2E-34-36-2E-36-39-7C-4D-4F-44-45-4C-20-59-6F-6D-61-6E-69-20-32-7C-53-45-52-49-41-4C-20-30-30-30-38-31-39-35-36-41-35-38-42-7C-36-32-33-35-30-32-36-32-7C-31
12:07:59.268 ERR Portalum.Zvt.ZvtClient ProcessData - Apdu data part corrupt
12:07:59.268 ERR Portalum.Zvt.ZvtClient DataReceived - Unprocessable data received 00-00-00-3E-56-45-52-7C-41-50-50-20-31-39-2E-34-36-2E-36-39-7C-4D-4F-44-45-4C-20-59-6F-6D-61-6E-69-20-32-7C-53-45-52-49-41-4C-20-30-30-30-38-31-39-35-36-41-35-38-42-7C-36-32-33-35-30-32-36-32-7C-31
12:08:05.777 INF Portalum.Zvt.ZvtClient PaymentAsync - Execute with amount of:3,14
12:08:05.778 DBG Portalum.Zvt.ZvtClient SendCommandAsync - Send command to PT
12:08:05.779 DBG Portalum.Zvt.TcpNetworkDeviceCommunication SendAsync - 06-01-07-04-00-00-00-00-03-14
12:08:05.895 INF Portalum.Zvt.TcpNetworkDeviceCommunication Disconnected
12:08:05.896 INF Portalum.Zvt.TcpNetworkDeviceCommunication DisconnectAsync
12:08:05.899 ERR Portalum.Zvt.ZvtClient SendCommandAsync - Failure on send command: NoDataReceived

Hi,
Connection successful but transaction result return Error with No Data Received message. Am I missing some configuration?
Thanks.

Are you sure that your provider uses the ZVT protocol - usually it is used in Germany and Austria.

Actually, I am not sure. I did not integrate epos terminal device before. Device will use in Croatia. I should ask first zvt protocol is supported or not.
Thanks for fast response.
Regards.


socket-LB: Terminate pod netns connections to deleted service backends

Extension of https://github.com/cilium/cilium/pull/25169 to terminate connections to deleted service backends in pod network namespaces.
Testing:
Manually tested with starting a pair of UDP server and pod applications, and deleted the service backend.
$ k get pods -o wide
NAME          READY   STATUS    RESTARTS   AGE    IP             NODE          NOMINATED NODE   READINESS GATES
client        1/1     Running   0          163m   <IP_ADDRESS>   kind-worker   <none>           <none>

$ kubectl exec -it server -- iperf3 -s -p  5010
-----------------------------------------------------------
Server listening on 5010 (test #1)
-----------------------------------------------------------
Accepted connection from <IP_ADDRESS>, port 42620
[  5] local <IP_ADDRESS> port 5010 connected to <IP_ADDRESS> port 35150

time="2024-06-28T20:53:54Z" level=debug msg="handling udp connections to deleted backend <IP_ADDRESS>:5010" subsys=service
time="2024-06-28T20:53:54Z" level=info msg="socket {35150 5010 <IP_ADDRESS> <IP_ADDRESS> 0 [297562409 0]}" subsys=datapath-sockets
time="2024-06-28T20:53:54Z" level=debug msg="Destroyed socket: {35150 5010 <IP_ADDRESS> <IP_ADDRESS> 0 [297562409 0]}" subsys=datapath-sockets
time="2024-06-28T20:53:54Z" level=info msg="Forcefully terminated sockets" errors="<nil>" failed=0 filter="{<IP_ADDRESS> 5010 2 17 0x4584220}" subsys=datapath-sockets success=1

Fixes: https://github.com/cilium/cilium/issues/27300
Forcefully terminate stale connections in pod network namespaces that are connected to deleted service backends when socket-lb is enabled, and allow pod applications to re-connect to active backends.

/test

/test

/test

/test

/test

/test

/test

/test

Fixed up rebase.

/test

I see there's open discussion threads, feel free to drop the label when those are resolved.

LGTM. So w/r/t #25169 we took an approach where we don't necessary join the host mount ns, but just mount in the namespace dir stead?

#25169 resolved the issue in the root netns. This PR resolves the issue for pod network namespaces by mounting the netns dir so that the agent can terminate stale sockets in the pod network namespaces.

There's still two threads that should be resolved in GitHub UI before we merge, but it seems tentatively like the content of those threads is resolved. I'm fine with following up with a commit to document the capabilities dependency in the YAML after this PR.

/test

Does this fix https://github.com/cilium/cilium/issues/28820?


Validation of ResponseModel?

Is it possible to validate that ResponseModel is what's returned? Hoping I've missed something obvious in the docs: I see query, body, and form, along with the ability to generate response_many.
Extending the sample app.py a tiny bit:
from typing import Optional
from flask import Flask, request
from pydantic import BaseModel

from flask_pydantic import validate

app = Flask("flask_pydantic_app")

class QueryModel(BaseModel):
  age: int

class ResponseModel(BaseModel):
  id: int
  age: int
  name: str
  nickname: Optional[str] = None

# Example 1: query parameters only
@app.route("/", methods=["GET"])
@validate()
def get(query: QueryModel) -> ResponseModel:
  age = query.age
  if age > 10:
      return {'asdf': False}. # This should NOT be a valid response
  return ResponseModel(
    age=age,
    id=0, name="abc", nickname="123"
    )

Now querying and getting a response that doesn't match the expected ResponseModel:
❯ curl 'http://localhost:5000/?age=1'
{"id":0,"age":1,"name":"abc","nickname":"123"}
❯ curl 'http://localhost:5000/?age=100'
{"asdf":false}

Was hoping that there was a way to ensure that an invalid response schema couldn't be returned. Any pointers?

Hey, you would expect the error to be raised on runtime? I think mypy should catch this issue. Do you use some kind of static type checker?


load_repository() does not load correctly Targets objects of delegated roles

Description of issue:
When a repository is loaded from the filesystem by repository_tool.load_repository(), delegated roles' objects are missing from the delegating role.
Steps to reproduce:
Create a longer chain of delegations, for example delegate to hashed bins (the same issue applies to any other delegation):
repository.targets.delegate('unclaimed', [public_unclaimed_key], [])
repository.targets('unclaimed').delegate_hashed_bins([], [public_bins_key], 32)
repository.mark_dirty(['00-07', '08-0f', '10-17', '18-1f', '20-27', '28-2f',
   ...: ...   '30-37', '38-3f', '40-47', '48-4f', '50-57', '58-5f', '60-67', '68-6f',
   ...: ...   '70-77', '78-7f', '80-87', '88-8f', '90-97', '98-9f', 'a0-a7', 'a8-af',
   ...: ...   'b0-b7', 'b8-bf', 'c0-c7', 'c8-cf', 'd0-d7', 'd8-df', 'e0-e7', 'e8-ef',
   ...: ...   'f0-f7', 'f8-ff', 'root', 'targets', 'snapshot', 'timestamp', 'unclaimed'])
repository.writeall()

Check the length of the delegations:
In [6]: len(repository.targets._delegated_roles)
Out[6]: 33
In [7]: len(repository.targets('unclaimed')._delegated_roles)
Out[7]: 32

Load the created repository from disk:
repository = load_repository('repository')
In [5]: len(repository.targets._delegated_roles)
Out[5]: 33

In [6]: len(repository.targets('unclaimed')._delegated_roles)
Out[6]: 0

repository.targets('unclaimed').add_target_to_bin('t1', 32)
Error: unclaimed does not have a delegated role 60-67

Current behavior:
Loaded delegated roles' objects are missing from the delegating object if the role is not the top-level 'targets' role.
Expected behavior:
After loading from filesystem, the delegated roles are added to the delegating role's _delegated_roles list.

Excellent work, @sechkova! Out of curiosity I just compared tuf.roledb._roledb_dict before and after reloading using below snippet. Looks like the issue you describe above only exists in the repository_tool metadata model and not in the roledb metadata model.
However, there seem to be other minor inconsistencies. :/ I'll post more about it later.
# following repository.writeall() from above snippet  (probably taken from the tutorial) ...
import tuf.roledb
import copy, pprint, dictdiffer, operator # NOTE: dictdiffer is 3rd-party
from tuf.repository_tool import *
# Backup roledb (state after constructing metadata)
roledb_dict_backup = copy.deepcopy(tuf.roledb._roledb_dict)
tuf.roledb.clear_roledb()

# Re-populate roledb from files on disk
repository = load_repository(repository._repository_directory)

# Diff them using 3rd-party dictdiffer tool and pretty print
diff_results = dictdiffer.diff(roledb_dict_backup, tuf.roledb._roledb_dict)
pprint.pprint(sorted(diff_results, key=operator.itemgetter(0)))

# Check https://dictdiffer.readthedocs.io/ for docs about the format of the result

Out of curiosity I just compared tuf.roledb._roledb_dict before and after reloading using below snippet. Looks like the issue you describe above only exists in the repository_tool metadata model and not in the roledb metadata model.

Yes, exactly, what I described is concerning the "class-based" metadata representation. Roledb metadata is loaded (mostly) correctly in this case.

This was resolved in #1052


Add code lenses to definitions showing amount of references

This seems to fail for structure definitions (though not for the structure's fields), and I haven't tested it a lot. It may also make sense to exclude type class instance definitions, since they're usually only used implicitly?
To make the code lenses clickable seems to require editor-specific code responding to the Command in the CodeLens. (Here is how rust-analyzer names its show-references code lens command)
I'm not entirely sure whether the definition itself should count as a reference. I think it makes more sense not to count it, but VSCode includes it when displaying references (note the 3 references code lens above VSCode's References (4)):

Finally, VSCode doesn't seem to update the code lenses immediately after a workspace/codeLense/refresh notification, but requires some sort of re-render of the file (e. g. switching to another file and back). I haven't yet tried to figure out how to fix this, or how other LSPs handle this situation, but it can get annoying quickly when editing structs/inductives.

I'm not entirely sure whether the definition itself should count as a reference. I think it makes more sense not to count it

I agree (and would assume other language servers do the same). The confusing display really is VS Code's fault.

Personally I find it extremely annoying to show the references as code lenses.  They clutter the editor and don't show any information I couldn't very easily get otherwise.  At the very least this needs a configuration option.  (For comparison, the typescript language server also has such a configuration setting, that defaults to off.  The python extension doesn't even have that option and never shows code lenses for references.)

An Option, to be passed in by the editor extension, seems sensible. Rust analyzer has a pretty thorough set of options, defaulting to off except for trait impls/typeclass instances.

A Lean.Option, to be passed in by the editor extension, seems sensible.

There is also the initializationOptions field and the workspace/configuration request in LSP.

Ah, that probably makes more sense.

The OmniSharp code lenses, which are the ones featured in the VS Code docs, seem to default to on. As for usefulness, I will have to give it a try in practice, but I assume the intention is to give you information that you might otherwise not have looked up. A small helper function that for example ends up with 1 or even 0 references after a refactoring is suspicious and one might want to take a look at whether it should be eliminated.

A general issue with showing code lenses (and other highlighting) from ilean data is that it will be out-of-date and incorrect most of the time while editing.  (If you insert a line, then all references below will be on the wrong line.)

Do you mean because of the information the watchdog has or because of when & how VS Code updates lenses? Currently new ilean information is sent to the watchdog whenever the file is completely elaborated, but we were thinking about splitting this into incremental updates after each command.

Currently new ilean information is sent to the watchdog whenever the file is completely elaborated

Yes, that's the issue I was worried about.

but we were thinking about splitting this into incremental updates after each command.

Just make sure you're not sending the whole ilean every time, like we do with the diagnostics. :-)

but I assume the intention is to give you information that you might otherwise not have looked up.

That's a very weak justification for a disruptive change.  Anyhow, I tried to find issues documenting a rationale for enabling/disabling references code lenses in the vscode repo but couldn't really find anything.  The commit introducing the references code lens did not help me understand their purpose either: https://github.com/microsoft/vscode/pull/18205

Heh, there is no motivation in https://github.com/rust-analyzer/rust-analyzer/issues/5836 either except for a few hearts and thumb-ups. Then I guess we'll just have to evaluate individually whether we find it useful enough to turn on :) .

The reason for structs not working is that the <struct>.mk definition appears on the same line as the struct's definition itself, even though it isn't actually present in the source file directly. The LSP server then detects two definitions on the same line and doesn't display a lens since it would be ambiguous what the lens refers to.

Constructors look like an interesting (but not unique) edge case. We definitely want clicking on RefInfo.mk references to go to the RefInfo declaration. Should it also be included in the references window though? One potential solution is to not store RefInfo.mk as an entity on the ilean level at all but immediately identify it with RefInfo.

Personally I find it extremely annoying to show the references as code lenses. They clutter the editor and don't show any information I couldn't very easily get otherwise. At the very least this needs a configuration option.

I agree with Gabriel -- this effectively doubles the vertical space used by inductives and structures, and the same information can be easily obtained via 'find references'. I think code lenses do have their use cases:

give you information that you might otherwise not have looked up

Indeed this sounds like what we really want, but with the proviso that the information be usually actionable, ideally appearing together with an associated code action. For example, it's not really helpful to know that a definition has 5 or 6 references, but it could be helpful to know it has 0, i.e. it's dead code. However this is usually shown as a lint (i.e. a squiggly) in other languages (e.g. Rust), so does not imo justify a code lens. I would be okay with exposing this behind an off-by-default flag.

The way vscode handles code lens updates is a bit weird, so getting them to update properly when the file is changed is not easy.
First of all, vscode usually only resolves code lenses visible in the editor (or at least near the visible area?). It leaves a space for other code lenses so the editor doesn't jump around too much though.
After changing a file, vscode seems to re-request and then re-resolve the code lenses automatically. Also, when switching to a file (or re-focusing the editor), it seems to re-request and re-resolve the code lenses. However, it doesn't seem to react to workspace/codeLens/refresh (from what I can tell, still testing)? There seems to be the assumption that code lenses resolved after an edit notification must immediately resolve according to the new file state, and vscode only seems to update code lenses after an action by the user.
Because of the asynchronous nature of the FileWorker elaboration, it would maybe make sense to delay codeLens/resolve requests until the worker has found the corresponding definition again, or until it has reached the end of the file and ensured that there exists no corresponding definition (at which point a workspace/codeLens/refresh would definitely be necessary).
At the moment, I think the reference code lenses should be disabled by default, as the jank while editing is annoying, but enabling them after editing or while browsing the code might be useful to some.

I'll close this for now because there is opposition and some technical hurdles to enabling it by default, and we don't support any kind of configuration yet. But we should revisit this in the future.


Issue using angular 4

Hello i using you very good component but have a question when run de command npm start i get this error
ERROR in Error: Metadata version mismatch for module C:/wamp64/www/FMA/app/node_modules/ngx-smart-modal/ngx-smart-modal.d.ts, found version 4, expected 3, resolving symbol AppModule in C:/wamp64/www/FMA/app/src/app/app.module.ts, resolving symbol AppModule in C:/wamp64/www/FMA/app/src/app/app.module.ts, resolving symbol AppModule in C:/wamp64/www/FMA/app/src/app/app.module.ts
    at Error (native)
    at syntaxError (C:\wamp64\www\FMA\app\node_modules\@angular\compiler\bundles\compiler.umd.js:1729:34)
    at simplifyInContext (C:\wamp64\www\FMA\app\node_modules\@angular\compiler\bundles\compiler.umd.js:25118:23)
    at StaticReflector.simplify (C:\wamp64\www\FMA\app\node_modules\@angular\compiler\bundles\compiler.umd.js:25130:13)
    at StaticReflector.annotations (C:\wamp64\www\FMA\app\node_modules\@angular\compiler\bundles\compiler.umd.js:24558:41)
    at _getNgModuleMetadata (C:\wamp64\www\FMA\app\node_modules\@angular\compiler-cli\src\ngtools_impl.js:138:31)
    at _extractLazyRoutesFromStaticModule (C:\wamp64\www\FMA\app\node_modules\@angular\compiler-cli\src\ngtools_impl.js:109:26)
    at Object.listLazyRoutesOfModule (C:\wamp64\www\FMA\app\node_modules\@angular\compiler-cli\src\ngtools_impl.js:53:22)
    at Function.NgTools_InternalApi_NG_2.listLazyRoutes (C:\wamp64\www\FMA\app\node_modules\@angular\compiler-cli\src\ngtools_api.js:91:39)
    at AotPlugin._getLazyRoutesFromNgtools (C:\wamp64\www\FMA\app\node_modules\@ngtools\webpack\src\plugin.js:207:44)
    at _donePromise.Promise.resolve.then.then.then.then.then (C:\wamp64\www\FMA\app\node_modules\@ngtools\webpack\src\plugin.js:443:24)
    at process._tickCallback (internal/process/next_tick.js:109:7)

But if i remove the dependeci injeccion of your module before npm start, this complile ok, if i put the dependencies of your module after to compile (npm start) all is ok. I have no idea what happend
This is my package.json
  "name": "fma",
  "version": "3.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@amcharts/amcharts3-angular": "^1.5.0",
    "@angular/animations": "^4.4.4",
    "@angular/cdk": "^2.0.0-beta.11",
    "@angular/common": "^4.2.4",
    "@angular/compiler": "^4.2.4",
    "@angular/core": "^4.2.4",
    "@angular/forms": "^4.2.4",
    "@angular/http": "^4.2.4",
    "@angular/material": "^2.0.0-beta.11",
    "@angular/platform-browser": "^4.2.4",
    "@angular/platform-browser-dynamic": "^4.2.4",
    "@angular/router": "^4.2.4",
    "angular-datatables": "^4.4.0",
    "core-js": "^2.4.1",
    "datatables.net": "^1.10.16",
    "datatables.net-dt": "^1.10.16",
    "hammerjs": "^2.0.8",
    "jquery": "^3.2.1",
    "ngx-smart-modal": "^5.0.0",
    "ngx-toastr": "^6.4.0",
    "rxjs": "^5.4.2",
    "zone.js": "^0.8.14"
  },
  "devDependencies": {
    "@angular/cli": "1.4.3",
    "@angular/compiler-cli": "^4.2.4",
    "@angular/language-service": "^4.2.4",
<EMAIL_ADDRESS>"^1.10.6",
    "@types/jasmine": "~2.5.53",
    "@types/jasminewd2": "~2.0.2",
    "@types/jquery": "^3.2.13",
    "@types/node": "~6.0.60",
    "codelyzer": "~3.1.1",
    "jasmine-core": "~2.6.2",
    "jasmine-spec-reporter": "~4.1.0",
    "karma": "~1.7.0",
    "karma-chrome-launcher": "~2.1.1",
    "karma-cli": "~1.0.1",
    "karma-coverage-istanbul-reporter": "^1.2.1",
    "karma-jasmine": "~1.1.0",
    "karma-jasmine-html-reporter": "^0.2.2",
    "protractor": "~5.1.2",
    "ts-node": "~3.2.0",
    "tslint": "~5.3.2",
    "typescript": "~2.3.3"
  }
}

Best regards

Hi,
try to delete your node-modules folder and run again npm start to cleanup all dependencies.
If this doesn't work, can you put more details of your case in a plunker ?
Have a good day 😉

Same issue here, this error generally is generated when he expect a version on angular higher, for example >5.0, and we use the version <5.0. What is the version you recommend for angular 4?

Interesting issue @cdchn1989 and @Pescu... 🤔
Are you facing the same issue with @khylias solution?
You can check the 4.1.0 version out, as this diff shows: https://github.com/biig-io/ngx-smart-modal/commit/aa0f0e00dac1ce3a6ff6ac9e48071060037032a0 (check package.json in the library folder).
Tell me if it changes anything for you.
I'll investigate.

I just try with version 4.1.0 and same error, then i tried version 3.1.0 and works.

Ok @Pescu but you might loose some functionalities and/or fixes.
This error seems to be recurrent with libraries that handle Angular 5.x.x used in Angular 4.x.x projects.
Silly question: can't you upgrade your project to Angular 5? 😕
(e.g. here: https://github.com/KoderLabs/ngx-device-detector/issues/25 or here: https://github.com/angular/material2/issues/8229)
I have to take a look at the peerDependencies and do some additional tests on the CI.

@maximelafarie Right now i cannot afford to update to angular 5 seen the many changes that I should do, but i will try to do it in the future. Thanks for the responsiveness of the answer. Cheers!

@Pescu I completely understand, it was a silly question! 😋
You can be assured I'll take a look at it asap and check if I can do anything to make it work for Angular <5.x.x versions 👌
Stay tuned! 🖖

Hi for angular 4 the correct version is 3.1.0 , would be good upgrade to angular 4 or 5 your version 5.0.0
thanks  a lot

@cdchn1989 Hi, thanks to found out the optimal version for Angular 4.
I don't think that making a specific upgrade for angular 4 is a good idea. But we can tell on the README that the best version with Angular 4.x is our 3.1.0 version.

Add wontifx label since @khylias is clear and 3.1.0 works with Angular <5.x.x. Will add an info block about this issue on the README.
@cdchn1989, @Pescu:
We need more info about how to fix this issue, if we have the time we'll look at it deeply. 👌
PRs are highly appreciated! 🤝

Yes sure.
Normally i install with npm by the command npm install ngx-smart-modal --save this command works fine but if you use angular 4.x.xyo need the version 3.1.0 of ngx-smart-modal, you need follow the next steps if you use angular-cli:

npm uninstall ngx-smart-modal --save
npm install<EMAIL_ADDRESS>-save

with that is enough to use it with angular 4.x.x
Best Regards

Thank you very much @cdchn1989. Your message will be the reference for all potential users that may facing this issue!
Happy coding! 🖖

@cdchn1989 Very interesting things ! It seems to be npm or node version who make trouble.
Can you tell us your angular-cli, npm and node versions ?

Good point @khylias! Did you try with Yarn instead of NPM @cdchn1989?
E.g.: yarn add ngx-smart-modal instead of npm install ngx-smart-modal --save

i confirm that the correct way is use the version 3.1.0 for angular 4 and version 5.0.0 +  for angular 5

There is no dismissable option support in version 3.1.0. I need to set it false.


Synchronize NavigationRegion2D's modulate to its debug elements.

The main purpose is to adjust the display of NavigationRegion2D's debug mesh, to distinguish or reduce its visibility, and to avoid it being cluttered in the editor.

Hi, thanks for working on this. Unfortunate timing as for now any navigation debug new feature or major change is set on hold until https://github.com/godotengine/godot-proposals/issues/7208 is finished.
The navigation debug is in the transition to be server handled. This is already nothing but cumbersome to implement with all the node and scenetree (and especially Node2D) quirks that have been stacked up to the stratosphere over the years so we are not adding new debug features for now to not make things even more complex.
I am ok with adding customization in the spirit of this PR at some point for region navmeshes, e.g. like what navigation agent has for its paths but it will likely require a very different implementation with far more server API and internals involved. It is too early to plan for this but we could keep this PR open and discuss is at a later point when that info becomes available.

@smix8 the proposal your mention about looks great, but it is open over one year.
If it can't be implemented before 4.4 stable, I think this pr can be merge first.
In my personal experience, this issue is very frustrating when setting up large and complex scenes. I think it  should be solved as soon as possible.
On the other hand, this pr does not changes too much code, I think it can be well coordinated with your proposal in future.
If this pr is unable to be compatible in the future, we can just remove it because NavegationRegion2D has a mark of experimental, some changes are acceptable.


One new Interactor for every new Operation?

Hi there,
I have just implemented the architecture as a candidate for my app.
I noticed that the InteractorImpl has a run() method. This is the only method that gets called from the Presenter/Activity if I understand correctly.
So, if I have a CRUD operation for my model, I would have to create GET, POST, DELETE, UPDATE interactor (that is, 4 different interactors) for the same Model....
Is this correct assumption? Is there any way I could avoid this? I would like to have one interactor that supports my presenter and that presenter supports a Activity.
Thanks

Hi,
There are several ways you could address this since you can modify the code in any way you wish.
I prefer creating a separate Interactor for each (CRUD) operation since I believe it is a more SOLID approach.
Another way you could do this is with the Command pattern. You can send a Command along with other data to the Interactor. And then you will have a switch case for each command depending on what you want to do (e.g. Command.GET, Command.POST, etc.).
However, do note that you should rarely have a single Interactor responsible for your Presenter and Activity when building a slightly larger app. Otherwise, it might compromise how SOLID is your code.
Cheers!


运行train.py出现Corrupted image for 5372问题，求各位大神指教

你好，我运行train.py出现一下问题，请问是怎么回事啊
Corrupted image for 5362
raise RuntimeError('DataLoader worker (pid(s) {}) exited unexpectedly'.format(pids_str))
RuntimeError: DataLoader worker (pid(s) 128326) exited unexpectedly
Corrupted image for 5181
Corrupted image for 6898
Corrupted image for 1689
Corrupted image for 5364
Corrupted image for 5183
Corrupted image for 6900
Corrupted image for 1691
Corrupted image for 5366
Corrupted image for 5185
Corrupted image for 6902
Corrupted image for 1693
Corrupted image for 5368
Corrupted image for 5187
Corrupted image for 6904
Corrupted image for 1695
Corrupted image for 5370
Corrupted image for 5189
Corrupted image for 6906
Corrupted image for 1697
Corrupted image for 5372
[root@localhost crnn]#

如何解决的？

请问该怎么解决