Does the SDK discriminate between debug/release mode? Does it matter?

While working on an analyzer that uses the TAST, it occurred to me that maybe the TAST could be different in debug/release mode (e.g. due to optimizations). Is this the case? If so, how can I test my analyzer in debug vs. release mode, and what determines which mode FSharp.Analyzers.SDK uses?

In an editor, which 'mode' is going to be determined by the 'Configuration' chosen by the user. In any FSAC-based editor, that configuration will always be Debug, but Rider/VS/etc have more sophistication here.
In the CLI, that is determined by the Configuration MSBuild property. The Analyzer CLI doesn't have a -p flag to set properties (probably a good idea to add this) but MSBuild will gladly read properties from the environment and so if a user set Configuration=Release in their environment before calling the CLI then that's what the Configuration would be.


How to make attribute proc macros more user-friendly with RA

I am working on an attribute-like proc macro, which is intended to annotate functions, as such:
#[my_attribute]
pub fn(arg1: T1, arg2: T2) {
    // User code here
}

The thing is, even though my attribute is only meant to do some semantic checks and is not even modifying the function body, once I annotate the function with my attribute, rust analyzer gives up and stops doing most of its usual tasks:

Auto-completion works, but semi-consistently. Sometimes completions do not load until after I've written a large part of the call, whereas typically I can get a list of completion candidates simply by typing a . after an identifier.
Syntax errors are not highlighted at the place where they occur, and I instead get large parts of the function marked as a syntax error.

Attribute-like proc macros seem to be supported in RA to some extent. For instance, I use often use the profiling (https://crates.io/crates/profiling) crate and I don't seem to encounter those issues when using their #[profiling::function] attribute macro. I had a look at the implementation here and I can't see any difference with my implementation.
How does the mechanism in RA that expands proc macros work? Is there a way I can improve the user experience of my macro so that RA behaves just like when writing a regular function?

So, since you said that it works fine for another proc-macro that basically does the same as the one you are writing, I assume you are testing yours while you are modifying the proc-macro itself right now?
What I assume you are running into here is that r-a does not reload proc-macros while you edit them, so r-a is expanding the macro in your testing with an older version of the macro. Restarting your editor session should update the macro being used in that case. (Basically r-a asks cargo to build the proc-macros once on start up, but not after edits).

Hey! Thanks for the quick response :smile:

What I assume you are running into here is that r-a does not reload proc-macros while you edit them

This is indeed something I've experienced, but I don't think it's related to the issue I'm currently facing. I'm already used to restarting the editor often when developing proc macros :smile:
It seems the issue persists even if I restart the editor. As I mentioned there seems to be some degree of functionality inside the function (auto-completion is there, just not quite, but starting to type a half-parsed line highlights all the function in red).

Just to leave a note, I got the same issue, in this case is using leptos component attribute macro. This doesn't happen in all projects, but this one is getting complex and as a few dependencies and feature gate flags. If I have some time I will try to understand where it's failing inside RA proc server.


[Sub-issue] Use ConstraintLayout in  fragment_outreach_programs_dashboard.xml

Removing the Relative Layout and LinearLayout and use constraintLayout instead
Would you like to work on this
Yes

@ujjwalagrawal17  I want to work on this

You already have 2 assigned issues for which you haven't sent PR. I will assign it to you once you complete previous issues.

@ujjwalagrawal17  I asked a question regarding #84 waiting for response

for #64 since I am having an unmerged pull request am not able to create another one seems like its pilling up, how do I fix that @ujjwalagrawal17

No, you can create multiple PRs by working on different branches.

Ok, will do that now

@kulloveth do we have a PR for this ?

that has been fixed already, I think you should close it

Thanks.


[CMakeV1] Disabled command execution through shell.

Hotfix for: #13044
Disabled command execution through shell.

@egor-bryzgalov we need to make sure this fix is cherry-picked to the releases/m170 branch. I think you already had a branch off of that with the fix so if you can just create a PR to merge it, that would be great


Stack Light mode

Interested in forking and making a stack light display mode. Lemme know if you're working on similar and I'll stop.

Hello @mampersat,
Thanks for opening this issue. The stack light looks interesting and kind of aligns with a branch I've been working on and off on that allows for as many lights as there are set in the panel edit threshold editor. With this change you will be able to create a "traffic light" that has 1, 2, 3... as many lights as you like! 😄
However something that doesn't really line up from looking at the wikipedia article is there seems to be the ability for orange and blue lights to be lit at the same time. Grafana thresholds don't allow for this (as far as I know). Is that something you're keen to have? It would likely need a custom thresholds editor but my original intention with this plugin was to keep it as close to the Grafana feature set as possible.

Yeah... we def. light up more than one color at a time.
Per someone who deploys these things

Yes it is possible. The only stacklights we have on the floor right now are from manufacturers who programmed them for the equipment they sold us, I'm sure that at least some states result in more than one light illuminated. The stacklight I programmed to show  also illuminates more than one color for some statuses.


Remote Server Files Saves Close Tab

VSCode Version: Code 1.7.1 (02611b40b24c9df2726ad8b33f5ef5f67ac30b44, 2016-11-03T13:46:46.244Z)
OS Version: Linux x64 3.13.0-100-generic
Extensions:

Extension
Author
Version

EditorConfig
EditorConfig
0.3.4

vscode-theme-onedark
akamud
0.2.10

code-gnu-global
austin
0.2.1

cpptools
ms-vscode
0.9.2

Ruby
rebornix
0.10.1

Steps to Reproduce:

open folder (git) on remote server
make edits
save (ctrl + s)

Expected Results:
File should save and remain open
Actual Results:
File saves but close (part of the time)

@casonadams I suspect Code receives a file-delete event and as such we close the editor. https://github.com/Microsoft/vscode/issues/13665 is a collection of issues in that area.
Can you run "code --verbose" from the command line and then when a tab closes, send me the output you see when you toggle developer console (Help > Toggle Developer Tools > Console)?

@casonadams ping

@bpasero
I change the filename, host, and user.  I don't think they were needed.

[IPC Library: Watcher] [CHANGED] file.rb
ipc.cp.ts:141 [IPC Library: Watcher] [ADDED] host=hostname,user=user.giosave6P7TQY
ipc.cp.ts:141 [IPC Library: Watcher]  >> normalized [CHANGED] file.rb
ipc.cp.ts:141 [IPC Library: Watcher]  >> normalized [ADDED] host=hostname,user=user.giosave6P7TQY
ipc.cp.ts:141 [IPC Library: Watcher] [DELETED] file.rb
ipc.cp.ts:141 [IPC Library: Watcher] [DELETED] host=hostname,user=user.giosaveJKDWQY
ipc.cp.ts:141 [IPC Library: Watcher]  >> normalized [DELETED] file.rb
ipc.cp.ts:141 [IPC Library: Watcher]  >> normalized [DELETED] host=hostname,user=user.giosaveJKDWQY

@casonadams thanks, moving into https://github.com/Microsoft/vscode/issues/13665
as a workaround, there is a way to disable file watching by setting "files.watcherExclude": { "**": true } in settings.


Fix bundle vendor directory

Bundler's vendored gems were located at /srv/lobste.rs/http/http/vendor/bundle instead of /srv/lobste.rs/http/vendor/bundle. This PR fixes it. Carefull, because with the next install, it might reinstall the dependencies.
If you want to be sure, just previous ones are used: mv -v /srv/lobste.rs/http/http/vendor/bundle/ /srv/lobste.rs/http/vendor/.

Thanks! I noticed that extra http dir creep into /srv/lobste.rs/http after c86bb29. I was puzzled by it but bundler was acting fiddly enough I didn't really want to track it down. I really appreciate you fixing this.


Issue installing geobeam on GCP CloudShell

Seeing the below issue while installing geobeam on GCP Cloud Shell.
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-07s73wh5/orjson/

Version of Python used from venv is 3.7.3
(env) --@cloudshell:~ $ python
Python 3.7.3 (default, Jan 22 2021, 20:04:44)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

Detailed error message
Collecting orjson<4.0; python_version >= "3.6" (from apache-beam[gcp]>=2.27.0->geobeam)
  Using cached https://files.pythonhosted.org/packages/75/cd/eac8908d0b4a4b08067bc68c04e52d7601b0ed86bf2a6a3264c46dd51a84/orjson-3.6.3.tar.gz
  Installing build dependencies ... done
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/usr/lib/python3.7/tokenize.py", line 447, in open
        buffer = _builtin_open(filename, 'rb')
    FileNotFoundError: [Errno 2] No such file or directory: '/tmp/pip-install-07s73wh5/orjson/setup.py'

Resolved it by upgrading pip
python -m pip install --upgrade pip

Installing collected packages: pip
  Found existing installation: pip 18.1
    Uninstalling pip-18.1:
      Successfully uninstalled pip-18.1
Successfully installed pip-21.2.4


The MPDs in vectors/avc_sets/15-30-60 all seem to include the following;
<AssetIdentifier schemeIdUri="urn:cta:org:wave-test-mezzanine:unique-id" value="0"/>

Is there any documentation of what this means?
Is it just a placeholder?
If it's just a placeholder, what can it best be used for?

No idea. It existed before I even arrived. Let's see at our next call if anyone knows what it means. Otherwise we can remove.

I wonder if it might be a (partial) solution to Thomas's request in https://github.com/cta-wave/Test-Content-Generation/issues/3 ?

I don't know about it being a (partial) solution to Thomas's request (yea or nay).  I do recall a conversation about something that might be related.  Could it be equivalent to the specification level of the mezz annotations?  We discussed locking down a spec for mezzanine annotations -- in process, see Mezzanine Issue #34.  This field would appear to identify the mezzanine "version level".
If this field has no other purpose, perhaps we can use if that way?

It might be worth considering using this (or something like it) for information on the content options that are not already somewhere else in the MPD - which would otherwise only be accessible using stream analysis tools.

with and without picture timing SEI message.
with and without VUI timing information.
Sample entry, see CMAF clause <IP_ADDRESS>
CMAF Fragment durations
Initialization Constraints
Fragments containing one or multiple moof/mdat pairs

Resolution, frame rate and bitrate are in the MPD.
Perhaps a comma separated list of name-value pairs?
Or is this abuse of AssetIdentifier?

Perhaps we need two tags:

Tag for the spec version of the Test Content Specification (covers mezzanine annotations and some requirements of encoded content, such as file name format)--this spec version is so that the test suite can programmatically determine what annotations and other details apply, especially if they change.  I've dropped the above tag into the draft specification for now, but I don't believe it is the correct id necessarily.
Tag(s) for information on content options that are not already in the manifest, as JP points out above (with/without picture timing SEI message; with/without VUI timing info; etc.)

This seems fairly straightforward so I've dropped the items #1 and #2 in the immediately-above "Perhaps we need two tags" comment into the draft Test Content Format spec.  We still need the actual tag definitions, though.

May 25th meeting
Wider issue of how to include content metadata in the MPD.
If metadata is in the MPD, what if the content is used without a manifest?
Don't see being used without any manifest, if translating to M3U then content metadata could also be translated.

12-06-12 meeting: Closed. The identifier remains but is not being used. It can be removed in the next iteration.


[#17] Test cleanup of Rotator.

WIP enhance generator:

checking exactly which files should remain
generetang long time intervals to check that files are also removed when they have aged too much


chore(ci): update github action and docker to use SHA

Description
Github and docker should use SHA
References
Recommended by https://github.com/ossf/scorecard/blob/376f465c111c39c6a5ad7408e8896cd790cb5219/docs/checks.md#pinned-dependencies
Review Checklist

[X] I have clicked on "allow edits by maintainers".
[ ] I have added documentation for new/changed functionality in this PR or in a PR to openfga.dev [Provide a link to any relevant PRs in the references section above]
[X] The correct base branch is being used, if not main
[ ] I have added tests to validate that the change in functionality is working as expected

Let's postpone it


Create configuration service

This service is responsible for updating configuration that requires a rolling restart

@segalziv @idanl21 I'll pick this up and work on it.  I think in the first case it would be useful to create a framework for scheduling rolling restarts, and then we can look at the configuration.
Do we have any ideas about the configurations that we want to change here?  I've tried looking for a well defined list of static opensearch settings (those which require a restart) but I haven't been able to find this.  Would this largely be related to modifying the zone attributes for a node pools, or changing a node pools roles?

From what I can tell, everything/most of what exist in OpenSearch.yaml file are configurations that changing them require a restart, as OpenSearch doesn't watch that file dynamically.
That can be zone attributes, thread pools configs and many others.

That make sense.  I think the best approach is going to be to allow arbitrary additional configs in the genenal config section (these would be cluster wide) and per node pool.  We can then gather these up when we build the opensearch.yaml, and schedule a restart when the generated content changes.


Allow arbitrary PWAs?

Would it be possible to allow people to simply redirect to their own instance's URL so it would launch the PWA?

Mastodon and Lemmy don't really have a good way to directly send their default frontends URLs.
Mastodon expects https://instance/user@domain[/postId], which would be possible to construct from a full URL, but only if it's also a Mastodon URL and not Friendica, Pleroma, etc, which use different URL formats.
Lemmy has different post IDs for the same post depending on which instance you're viewing it on. https://lemmy.world/post/12345 might be https://lemmy.ml/post/54321 and there's no static way of looking that ID up.

Would it be possible to allow some kind of user-specified url template that you replace keywords in
i.e. https://instance.url/objects/%postID or something

That doesn't address the issue of how the app can know what the post ID is from an incoming URL.

ah fair


Error in property hideOnSingleSlide with 1.5.1

ERROR TypeError: Cannot read property 'hideOnSingleSlide' of undefined
    at<EMAIL_ADDRESS>(ngu-carousel.js:704)
    at<EMAIL_ADDRESS>(ngu-carousel.js:672)
    at ngu-carousel.js:476
    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:421)
    at Object.onInvokeTask (core.js:3815)
    at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:420)
    at Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:188)
    at push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTask (zone.js:496)
    at ZoneTask.invoke (zone.js:485)
    at timer (zone.js:2054)

@mhosman Hi,
Will you please show me your config object?
Thanks

This happend when I try to make a visibility: hidden to the carousel.

@mhosman Will you please create a stackblitz with the issue. so that i can fix it asap. Thanks

This happends when you have multiple tiles in the same line but not the amount to complete the width of the page.  The error does not occur if tiles complete the width of the window and the scroll is activated.

@sheikalthaf Could you reproduce this?

@mhosman Maybe I'm wrong but it's probably that you have to add to your NguCarouselConfig the following:
(this is an example)
carouselConfig: NguCarouselConfig = {     grid: { xs: 1, sm: 1, md: 1, lg: 1, all: 0 },     interval: {timing: 4000, initialDelay: 1000},     loop: true,     touch: true,     velocity: 0.2,     point: {       visible: true,       hideOnSingleSlide: true     }   };
Notice the point attribute, that fixed the problem for me. Hope this helps :)


[3.0.0-beta.36] generate:types fails when nestedDocs plugin is installed

Link to reproduction
No response
Payload Version
v3 beta
Node Version
v20.10.0
Next.js Version
15.0.0-rc.0
Describe the Bug
When including the nestedDocs plugins payload generate:types throws TypeError: nestedDocs is not a function. If
I comment out the plugin, it works as expected.
The Plugin config looks like this:

Reproduction Steps

Install the plugin
Add it to the plugins field in the payload config
Run npm payload generate:types

Adapters and Plugins
nestedDocs, db-postgres

How does your import statement look? It was recently changed.
This is what it should look like:
import { nestedDocsPlugin } from '@payloadcms/plugin-nested-docs'

My Import looks like this import nestedDocs from '@payloadcms/plugin-nested-docs'
However if i change it to the import statement you have provided I'm getting Module '"@payloadcms/plugin-nested-docs"' has no exported member 'nestedDocsPlugin'. Did you mean to use 'import nestedDocsPlugin from "@payloadcms/plugin-nested-docs"' instead?
I have "@payloadcms/plugin-nested-docs": "3.0.0-beta.36" installed

Nevermind, the TS Server in VSCode silently crashed... import { nestedDocsPlugin } from '@payloadcms/plugin-nested-docs' works like a charm! Thanks!
I am closing the issue


"error: path too long" on Windows when doing "cargo install --git"

Problem
When attempting to install a crate via git, the checkout process gets to 48% and then errors out with "error: path too long".
Steps

Run Windows
Run cargo install --git https://github.com/web-infra-dev/rspack

Possible Solution(s)
No response
Notes
This repo probably doesn't even work, especially since I don't see a binary if I manually check it out and try to build it. However I'm opening this issue because it's very reproducible and the error is generated very early on.
Version
cargo 1.74.0 (ecb9851af 2023-10-18)
release: 1.74.0
commit-hash: ecb9851afd3095e988daaa35a48bc7f3cb748e04
commit-date: 2023-10-18
host: x86_64-pc-windows-msvc
libgit2: 1.7.1 (sys:0.18.0 vendored)
libcurl: 8.4.0-DEV (sys:0.4.68+curl-8.4.0 vendored ssl:Schannel)
os: Windows 10.0.22621 (Windows 11 Professional) [64-bit]

Also tested on:

cargo 1.75.0-nightly (8eb8acbb1 2023-10-17)
release: 1.75.0-nightly
commit-hash: 8eb8acbb116e7923ea2ce33a50109933ed5ab375
commit-date: 2023-10-17
host: x86_64-pc-windows-msvc
libgit2: 1.7.1 (sys:0.18.1 vendored)
libcurl: 8.4.0-DEV (sys:0.4.68+curl-8.4.0 vendored ssl:Schannel)
os: Windows 10.0.22621 (Windows 11 Professional) [64-bit]

Can you paste the full error output? Feel free to censor paths if you'd prefer.

Sure, here you go.
Install in progress:
[9:58:46 pm] ~> cargo +nightly install --git https://github.com/web-infra-dev/rspack
    Updating git repository `https://github.com/web-infra-dev/rspack`
    Checkout [=====>                   ]  26.55%

After it reaches around 48%:
[9:58:18 pm] ~> cargo +nightly install --git https://github.com/web-infra-dev/rspack
    Updating git repository `https://github.com/web-infra-dev/rspack`
error: path too long: 'C:/Users/Sean/.cargo/git/checkouts/rspack-8e5e29a4ab8196b6/549d473/webpack-examples/build-http/webpack.lock.data/https_cdn.skypack.dev/escape-string-regex_v5.0.0-SUDdAhYOdAgXIYndxZss_dist_es2020_mode_imports_optimized_escape-string-regexp_95a4ae8a862c0536f335.js'; class=Filesystem (30)
[9:58:25 pm] ~>

Yeah, you need to set registry to long paths. Usually git enables this on instalation
https://helpdeskgeek.com/windows-11/how-to-fix-the-path-too-long-error-on-windows/
I.e. navigate to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem then set LongPathsEnabled to 1.

Would it make sense to have cargo recommend this?

Cargo would first need #7986 to make use of the registry setting. Without the manifest option set, the registry setting will be ignored. See Enable Long Paths in Windows 10, Version 1607, and Later.

See my reply above. It's something Cargo would need to opt into. Note that this doesn't affect Cargo's own code because the Rust standard library works around the problem even without the registry setting and manifest option.

Demonstrating that it's enabled:
[10:20:43 pm] ~> Get-ItemProperty -path Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\ | Select-Object LongPathsEnabled

LongPathsEnabled
----------------
               1

[10:21:06 pm] ~> cargo +nightly install --git https://github.com/web-infra-dev/rspack
    Updating git repository `https://github.com/web-infra-dev/rspack`
error: path too long: 'C:/Users/Sean/.cargo/git/checkouts/rspack-8e5e29a4ab8196b6/a1be897/webpack-examples/build-http/webpack.lock.data/https_cdn.skypack.dev/escape-string-regexp_v5.0.0-SUDdAhYOdAgXIYndxZss_dist_es2020_mode_imports_optimized_escape-string-regexp_95a4ae8a862c0536f335.js'; class=Filesystem (30)
[10:21:27 pm] ~>

Ok, I can reproduce but there is another setting I'm trying
https://answers.microsoft.com/en-us/windows/forum/all/long-path-enabled-does-not-work/4fcfc97e-17da-4f3b-8a50-26eb5da263a5

Can you try with https://doc.rust-lang.org/cargo/reference/config.html#netgit-fetch-with-cli set?

No change:
[11:12:40 pm] ~> $env:CARGO_NET_GIT_FETCH_WITH_CLI="true"
[11:12:43 pm] ~> cargo +nightly install --git https://github.com/web-infra-dev/rspack
    Updating git repository `https://github.com/web-infra-dev/rspack`
error: path too long: 'C:/Users/Sean/.cargo/git/checkouts/rspack-8e5e29a4ab8196b6/a1be897/webpack-examples/build-http/webpack.lock.data/https_cdn.skypack.dev/escape-string-regexp_v5.0.0-SUDdAhYOdAgXIYndxZss_dist_es2020_mode_imports_optimized_escape-string-regexp_95a4ae8a862c0536f335.js'; class=Filesystem (30)
[11:12:51 pm] ~>

You might also need to run:
git config --system core.longpaths true

That fixes it, @ChrisDenton though I need to run that command from an elevated command prompt.
Is this something interesting and worth fixing? Is it desirable to put this in a readme somewhere? At the very least this Issues chain should give a workaround for people who run into this problem in the future, but should there be a long-term solution and if so what should it be?

Oh maybe git config --global core.longpaths true would have worked while avoiding admin. It's just that the gui installer uses system if you select the option during install.
I guess Cargo could detect the error and suggest using setting core.longpaths to true. But I'm not on the Cargo team and don't know how feasible that would be.

One thought is to have cargo automatically set that option when creating dependency or index clones. I think that should work, and should be safe, and doesn't appear to require setting a registry entry.
A risk is that the user has independent tooling, like a backup program or something that inspects the ~/.cargo directory, and that tooling does not handle long paths. However, that seems like a low risk, and perhaps something we can respond to if someone reports it.

you can Use Git with Core.LongPaths by running
git config --global core.longpaths true


create mininal universal checkpoint info for client state

This PR solves the Issue-5430.
The PR enables the universal checkpoint feature for other platforms like HuggingFace Trainer without requiring changes to the HuggingFace code. It does this by creating a minimal universal checkpoint info, specifically the version, as a default action for the client state.

@xylian86, thanks for this great work. Can you please add convergence curves of an HF model as demo?


Objective-C Language Support

Fairly obvious, hasn't been much chatter about it.
Using ClangFormat would be nice:

clang-format ... can be used to format C/C++/Obj-C code.

It has it's own config format too .clang-format.
Unless Uncrustify is more compelling for some reason?
objc

Is there any progress on this issue? I would like to add support for oclint

There has been no progress from the thoughtbot team on this. We've currently paused addition of other languages, while we re-design some of our architecture.

The architecture for this to exist is now in-place, but I wonder if there's still demand for obj-c. As an outsider, it seems like Swift linting is in higher demand. Any thoughts from @thoughtbot/ios ?

@thorncp Seems like for internal greenfield projects, we'd probably prefer to have Swift since that's what we'll be using. For existing projects that have obj-c, it would be nice for them to have the option to have linting. It seems like it will be awhile before we never need to write obj-c anymore.
IMO Swift is a priority but it would likely be beneficial to have obj-c at some point as well.

If the implementation uses clang tools it could be expanded to both fairly easily

I think we should prioritize Swift, and then look at this. We've been talking about using SwiftLint for Swift linting, so I'm not sure that the solution will scale (I also don't think it needs to scale to Obj-C, and that it's totally reasonable to have two different focused services).

Hound supports Swift now, but we don't have a lot of interest in supporting Obj-C. I'm closing this, until there's interest internally.


Generated Invalid SplashScreen Image Sizes

Hello guys,
I just launched yo rn-toolbox:assets --splash backgroundOnboarding.psd --ios
With a PSD with the right format, and it created a bunch of images that don't seem to have the proper size for x-code :

Would you know from where it comes ?

Hey, thanks for posting this issue! :)
What are the dimensions of your base image?
Could you send it?

My base image dimension : 2208 × 3853
Below

Ok, the issue is with these lines.
I don't think, the generator can handle non square images

Closing as square images are currently required.
Feel free to open a PR to add non-square images compatibility.


Fix #5531

This is a working fix for the example of #5531.
However there are still some points open before I think it's a good idea to merge this:

[ ] Discuss the change of this proposal, is it OK to prefer overrides of methods and so ignore base implementations?
[x] Extend the check to the complete inheritance graph instead of a single "look-back"
[x] Only ignore a methinfo if the signature of both match (so respect different overloads)

@dsyme It would be great if you could have a look whether this check is allowed at this location or should appear earlier.

OK as soon as the CI passes this is ready for a review.

Ok this is ready! :)

OK, I'll add more comments to the code.
The tests would have been the next step as soon as the change itself is the right approach.
The changes filter out any members which are base implementations (parent) of the given member implementation from the derived class (child).

@dsyme thanks for the pointer. Exactly such is what I expected to find in the compiler somewhere but didn't :)

I'll find out where this call can be added to apply the same effect as my current code + add tests for the change.

You can see it is applied here but not applied here.  I'd imagine applying it on the second case would do the trick.

OK I tried your tip but it looks like the method isn't filtering out the methods correctly. Could it be that the method implementation is wrong?

OK I tried your tip but it looks like the method isn't filtering out the methods correctly. Could it be that the method implementation is wrong?

No, I'm fairly certain it's not wrong, you can test it in normal code (x.Method resolution not SRTP resolution), and the repro in the bug actually tests it that way I believe
Just go through and work out why the filtering is not being applied?

@dsyme OK I found out that the big problem here is that in the example:
type Base() =
    abstract member Foo : unit -> unit
    default this.Foo() = printfn "Base"

type Derived() =
    inherit Base()
    member this.Foo() = printfn "Derived"

let inline callFoo< ^T when ^T : (member Foo: unit -> unit) > (t: ^T) =
    (^T : (member Foo: unit -> unit) (t))

let b = Base()
let d = Derived()
let bd = d :> Base

b.Foo()
bd.Foo()
d.Foo()

callFoo<Base> b
callFoo<Base> bd
callFoo<Base> d
// A unique overload for method 'Foo' could not be determined based on type information prior to this program point.
// A type annotation may be needed. Candidates:
//   abstract member Base.Foo : unit -> unit,
//   member Derived.Foo : unit -> unit
callFoo<Derived> d

the members overriding a base implementation should definitely be written with "override" instead.

@dsyme the problem is that the non explicit override isn't saved anywhere neither it's possible at that location to check for such. As we're displaying warnings that an implementation isn't specified with override we can save this information back in an extra field stating that this member is a non explicit override.

I've applied the new approach with which the bug is resolved + it's saved back that a member non explicitly overrides a member.

Unfortunately I discovered, that the current approach isn't working. I guess something with my test setup yesterday went wrong.

So this "new" approach is simply using the filter predicate from the warning that a member implementation is hidden by another implementation. In my understanding the ExcludeHiddenOfMethInfos isn't working out as it isn't comparing each element with each other as required to find out whether a method is the "hidden" implementation (as there could be the case that "hiding" happens multiple times).

@dotnet-bot test this please

OK this fix is working too however if I try this example:
type Base() =
    abstract member Foo : unit -> unit
    default this.Foo() = printfn "Base"

type Derived() =
    inherit Base()
    member this.Foo() = printfn "Derived"

type DerivedDerived() =
    inherit Derived()
    member this.Foo() = printfn "DerivedDerived"

let inline callFoo< ^T when ^T : (member Foo: unit -> unit) > (t: ^T) =
    (^T : (member Foo: unit -> unit) (t))

let b = Base()
let d = Derived()
let dd = DerivedDerived()
let bd = d :> Base
callFoo<Derived> d
callFoo<DerivedDerived> dd

The last line has conflict again, is this OK or shouldn't this be covered too? (Also there isn't any warning that the method of DerivedDerived is hidding the method of Derived).
If so I would return to my initial approach hard-checking inheritance as it worked without breaking the teast and for all the examples (trying to mirror long inheritance hierarchies).
cc @dsyme
PS: Tests come as soon as we've decided on which fix is OK.

The ci_build3 fails with this:
error FS2014: A problem occurred writing the binary 'D:\a\1\s\tests\fsharp\regression\5531\test.exe': Error in pass3 for type Test, error: Error in pass3 for type Base, error: Could not load file or assembly 'Microsoft.Build.Tasks.v4.0, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified. which makes no sense to me.
@cartermp @KevinRansom do you know more about such failures? I just need a hint so I can fix this

Thank you very much!
That makes more sense. I'll apply your suggestion tomorrow and then ping again as soon as the CI passes :)

OK done, CI passes. This is ready again @KevinRansom :)


[url_launcher] url_launcher throws when trying to open an Apple Maps link

Steps to Reproduce
Use url_launcher: ^6.1.7, try and execute the following code on an iOS device
launchUrl(Uri.parse('https://maps.apple.com/?ll=50.949478,6.950476&q=Saturn+K%C3%B6ln+Hansaring'));

As far as I can tell, the Flutter version doesn't matter, but I'm currently using 3.3.10, but it was also happening with 3.0.0.
Expected results:
It should open Apple Maps or Safari without throwing an error.
Actual results:
It opens Apple Maps correctly, but it also throws an error:
PlatformException (PlatformException(Error, Error while launching https://maps.apple.com/?ll=50.949478,6.950476&q=Saturn+K%C3%B6ln+Hansaring, null, null))

Code sample

import 'package:flutter/material.dart';
import 'package:url_launcher/url_launcher.dart';

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await launchUrl(Uri.parse(
      'https://maps.apple.com/?ll=50.949478,6.950476&q=Saturn+K%C3%B6ln+Hansaring'));
}

Logs
Analyzing app...
No issues found! (ran in 213.8s)

[✓] Flutter (Channel stable, 3.3.10, on macOS 12.5.1 21G83 darwin-arm, locale en-DE)
    • Flutter version 3.3.10 on channel stable at /Users/redacted/Developer/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 135454af32 (3 weeks ago), 2022-12-15 07:36:55 -0800
    • Engine revision 3316dd8728
    • Dart version 2.18.6
    • DevTools version 2.15.0

[✓] Android toolchain - develop for Android devices (Android SDK version 32.0.0)
    • Android SDK at /Users/redacted/Library/Android/sdk
    • Platform android-32, build-tools 32.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14C18
    • CocoaPods version 1.11.3

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2021.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.13+0-b1751.21-8125866)

[✓] VS Code (version 1.74.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.56.0

[✓] Connected device (3 available)
    • iPhone 14 Pro Max (mobile) • 8C3ED662-65B0-4220-8794-65C37B360E37 • ios            • com.apple.CoreSimulator.SimRuntime.iOS-16-2 (simulator)
    • macOS (desktop)            • macos                                • darwin-arm64   • macOS 12.5.1 21G83 darwin-arm
    • Chrome (web)               • chrome                               • web-javascript • Google Chrome 108.0.5359.124

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

Thanks for the report @ueman
I tried the code sample on iOS device (iPhone 6s) and simulator as well. The map opened properly but didn't throw the said exception for me on both devices.

 console log

Launching lib/main.dart on Darshan's iphone in debug mode...
Automatically signing iOS for device deployment using specified development team in Xcode project: X8NNQ9CYL2
Running Xcode build...
Xcode build done.                                           15.8s
Installing and launching...
(lldb) 2023-01-05 11:53:52.275568+0530 Runner[3690:214746] 10.3.0 - [FirebaseCore][I-COR000012] Could not locate configuration file: 'GoogleService-Info.plist'.
[VERBOSE-2:FlutterObservatoryPublisher.mm(125)] Could not register as server for FlutterObservatoryPublisher, permission denied. Check your 'Local Network' permissions for this app in the Privacy section of the system Settings.
10.3.0 - <Google>[I-ACS025031] AdMob App ID changed. Original, new: (nil), ca-app-pub-3940256099942544~1458002511
10.3.0 - <Google>[I-ACS023007] Analytics v.100100000 started
10.3.0 - <Google>[I-ACS023008] To enable debug logging set the following application argument: -APMAnalyticsDebugEnabled (see http://goo.gl/RfcP7r)
10.3.0 - <Google>[I-ACS800023] No pending snapshot to activate. SDK name: app_measurement
10.3.0 - <Google>[I-ACS023012] Analytics collection enabled
[VERBOSE-2:FlutterObservatoryPublisher.mm(125)] Could not register as server for FlutterObservatoryPublisher, permission denied. Check your 'Local Network' permissions for this app in the Privacy section of the system Settings.
Debug service listening on ws://<IP_ADDRESS>:50172/5ZUlmrj230E=/ws
Syncing files to device Darshan's iphone...
[AXRuntimeCommon] Unknown client: Runner
[AXRuntimeCommon] AX Lookup problem - errorCode:1100 error:Permission denied portName:'com.apple.iphone.axserver' PID:3638 (
	0   AXRuntime                           0x00000001abcd118c 4D58D647-3790-337C-B355-1A1D89EEF0A6 + 303500
	1   AXRuntime                           0x00000001abc8a904 _AXGetPortFromCache + 696
	2   AXRuntime                           0x00000001abc8bfb8 AXUIElementPerformFencedActionWithValue + 484
	3   UIKit                               0x00000001dd023474 C2DBE0FE-DB27-32EA-BB77-8DAB1AE90851 + 885876
	4   libdispatch.dylib                   0x00000001822f11a4 95D85335-DD46-355E-905C-3743A10000EC + 405924
	5   libdispatch.dylib                   0x00000001822f21a8 95D85335-DD46-355E-905C-3743A10000EC + 410024
	6   libdispatch.dylib                   0x00000001822980e4 95D85335-DD46-355E-905C-3743A10000EC + 41188
	7   libdispatch.dylib                   0x0000000182298b94 95D85335-DD46-355E-905C-3743A10000EC + 43924
	8   libdispatch.dylib                   0x00000001822a2760 95D85335-DD46-355E-905C-3743A10000EC + 83808
	9   libsystem_pthread.dylib             0x00000001dcd17e84 _pthread_wqthread + 284
	10  libsystem_pthread.dylib             0x00000001dcd179f0 start_wqthread + 8
)

Also please take a look at this similar issue and check if it is relevant to your case and can be followed-up in that issue.

The linked issue links to this https://github.com/flutter/flutter/issues/116337#issuecomment-1333744988 which explains why it's happening. Unfortunately, there's no solution available.
Quoting the reason for the exception here:

I believe this is a duplicate of https://github.com/flutter/flutter/issues/75691. The exception is thrown because the map opens before safari can complete loading the page which effectively closes the page before a response can be returned.

https://github.com/flutter/flutter/issues/114843 and https://github.com/flutter/flutter/issues/116337 are previous instances of this report. Because the real reason for this happening is kinda non-obvious, I would propose to keep this open, so not more people are creating duplicates. When https://github.com/flutter/flutter/issues/75691 is fixed, this can be closed too.

Thanks for the feedback.

#114843 and #116337 are previous instances of this report.

Yes I had gone through them before addressing this issue, but wanted to try out the code sample first and see if it actually is the same issue or not. The fact that I was unable to replicate the same exception because I noticed the map opens quickly after safari loads, so this could be an edge case or depending on how fast or slow the url is processed by the app, and also the reasoning you quoted.

I would propose to keep this open, so not more people are creating duplicates. When #75691 is fixed, this can be closed too.

I think its better to close this in favor of original. You may also share your findings in that issue, so that we have a better tracking of all sorts of cases at one place. Since the original issue is P4, it'll be fixed per team's policy as mentioned here, hence, closing this. If you disagree, write in comments and I'll reopen it.


Allow theme to configure images for admonition blocks

While trying to figure a workaround for not getting font based icons to work in an OSGI environment I realized that icon names are ignored with :icons:image

admonition:
__icon:
____note:
______name: far-sticky-note
______stroke_color: 111111
______size: 24

works perfectly fine with :icons: font, but gives warnings with :icons: image

D:>asciidoctor-pdf -a pdf-themesdir=D:/ -a pdf-theme=minimal Asciidoctor_Cheatsheet.adoc
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8
asciidoctor: WARNING: admonition icon not found or not readable: D:/images2/note.svg
asciidoctor: WARNING: admonition icon not found or not readable: D:/images2/tip.svg
asciidoctor: WARNING: admonition icon not found or not readable: D:/images2/caution.svg
asciidoctor: WARNING: admonition icon not found or not readable: D:/images2/important.svg

Example files:
Asciidoctor_Cheatsheet.adoc.txt
minimal-theme.yml.txt

This behavior is per design. The theme file configures the names of the font-based icons, not the image-based icons. You can configure the path of the image-based icon using the icon attribute on the block.

Thanks for the information. I already configured a custom path using the :iconsdir: attribute which is what you are referring to, right? From your answer it sounds like there is is a rationale behind not "allowing" to define filenames for image icons so that it is probably needless to turn this into a feature request. Would you mind commenting on that?
I envisioned having a larger icons folder shared between documents (containing e.g. all the fontawesome .svg icons and more) and being able to choose icons per document by switching stylesheets. The current implementation would require multiple icon folders each containing different icons but all with the same names (note.svg, warning.svg, ...) which seems more difficult work with and to maintain.
As a side note: This would also address the initial question on this thread in the discussion forums.

I think you've misunderstood my point. I'm not saying you cannot have a custom icon image for an admonition block. That's a standard part of AsciiDoc. What I'm saying that it's not what the theme is used for. The theme configures the font-based icon name. A custom icon image must be configured per admonition block.
:iconsdir: path/to/icons
:icons: image

[NOTE,icon=sticky-icon.svg]
====
This is a NOTE admonition with a sticky icon image.
====

We could consider supporting an image path in the theme for admonitions when image-based icons are set. We've just never had that request before.

OK, thanks for clarifying that. To me that seems like a slightly different use-case. This feature allows one to put a special icon at a specific admonition block to highlight that. And as defining global icons is the default behavior for the font based icons it at least was surprising for me that it wasn't true for the image based icons.
Although I don't have too much experience with Ruby I'll try to have a look at the code and see if I can come up with a PR that transfers the behavior from the font based icons to the image based icons.

Yep, that's why I'm saying it's a feature request. I'm going to update the title to reflect that.
Here's what I propose:
admonition:
  icon:
    note:
      image: image:sticky-note.svg[,24]

It's going to be tricky because once you introduce the option to specify an image, you need to do the full image macro processing (at least enough to get the path right, in this case considering the iconsdir, and the width). I don't mind taking a stab at it.

The current implementation would require multiple icon folders each containing different icons but all with the same names (note.svg, warning.svg, ...) which seems more difficult work with and to maintain.

For each different set of icons, you could specify iconsdir to point to the icons you want. It was for this reason we had never considered allowing the image filename to be configured globally. However, the downside is that it isn't currently linked with the theme. Neither strategy is right or wrong, so it's reasonable to support both.

Here's what I propose:
admonition:
  icon:
    note:
      image: image:sticky-note.svg[,24]

Why would you introduce another option to define the icon size while the key admonition-icon-<name>-size is already available for themeing? (Re-)using that key it would be sufficient to simply set a filename to be searched for in the :iconsdir: folder (optionally adding :icontype: suffix to filename if it does not end with .svg or .png)
What do you think of
admonition:
  icon:
    note:
      name: fas-sticky-note    # Font based icon name
      image: sticky-note.svg   # Image filename
      size: 24                 # Size for both options

which would allow easy switching between :icons: image and :icons: font in the document.

Why would you introduce another option to define the icon size while the key admonition-icon--size is already available for themeing?

Because then when you switch between different icon modes (fonts or images), you cannot reuse the same theme (because the "size" will conflict...plus the size is a font size, not an image dimension). These are independent features and need to be configured separately.

(Re-)using that key it would be sufficient to simply set a filename to be searched for in the :iconsdir: folder

I don't think the iconsdir folder should be used in this case. That makes the image macro work differently in this case than in other places in the theme...and that's confusing.
If you don't use the image macro, the image path will be resoled relative to the theme file, not the document. We need to be consistent with how the theme resolves images, so we will follow the logic already defined.

Setting in the theme are not affected by settings in the document. These are two different things. Either you define the image for the admonition in the theme, using theme constructs, or you define the image in the AsciiDoc content (as we discussed), which uses iconsdir, icontype, etc). There is no overlap here.

Looks like this topic is "slightly" more complex than I initially grasped and I also realize that there is much more to learn and understand regarding theming and what options there are to define different things. Thanks for taking the time to comment and explain, I really appreciate that!
Resolving (icon) image paths relative to the theme should work fine. Would require to distribute themes packed with the icons, but that is a solvable problem. On the long run one could consider to allow themes packed together with icons and images in zip-files but that is surely a different issue.
Nonetheless with my rudimentary ruby knowledge I better stay clear of the actual implementation and look for more efficient ways for contributing to and promoting the use of Asciidoc(tor)!

This turns out to be less complex than we initially realized. The theming system already has support for specifying images. We can build on that by allowing the image to be specified for an admonition type, which is consulted when image-based icons are enabled:
admonition:
  icon:
    tip:
      image: lightbulb.svg

The image is resolved relative to the themedir by default. If you want to resolve it relative to the document directory instead, you can prefix the path with the {docdir} attribute reference:
admonition:
  icon:
    tip:
      image: '{docdir}/lightbulb.svg'

The image will then be positioned and rendered just as though you specified it using the icon attribute on the admonition block. In fact, under the covers, it's the same logic.
If the image is not found, the converter will log a warning and use the textual label instead.
I want to defer supporting the image macro as a value for now as I think it will create confusion.


Merge celery subsection to fides.toml

Closes #1591
Code Changes

[x] remove the celery.toml
[x] add a celery subsection to fides.toml
[x] update references to celery.toml in the code

Steps to Confirm

[ ] use fides view config celery to confirm that the correct values are there
[ ] update the fides.toml and observe the changes

Pre-Merge Checklist

[ ] All CI Pipelines Succeeded
Documentation Updated:

[ ] documentation complete, or draft/outline provided (tag docs-team to complete/review on this branch)
[ ] documentation issue created (tag docs-team to complete issue separately)

[ ] Issue Requirements are Met
[ ] Relevant Follow-Up Issues Created
[ ] Update CHANGELOG.md

Description Of Changes
Quick change that adds the celery configuration values as part of the fides.toml instead of placing them in a separate file
This change does not enable users to configure the celery values via env vars via the fides configuration logic, as I'm assuming Celery will handle that itself. If this assumption is incorrect I can make that change
NOTE: branchception

LGTM! It looks like celery will read in from env vars so it should be safe to exclude that logic.

That's the conclusion I came to as well, thanks for confirming 🙂


Openstack infra parse custom attributes from conf files

Adding OpenstackInfra parsing of configurations files. OpenStack
configparser does not define exactly the format of real conf
files. The main exceptions are not alowing : delimiter, limited
naming of variables to \w and that we are parsing commented
lines that are ignored by python parser. These commented lines
contains descrtiption of each attribute and default value in
case the attribute is not defined.

@miq-bot add_label providers/openstack-infra

@miq-bot add_label wip

@miq-bot enhancement

WIP need to write tests, since the parsed format is different to Python's configparser, tests are essential here
Also should be probably moved somewhere under the lib?

@miq-bot add_label providers/openstack-infra

@miq-bot add_label providers/openstack-infra

@miq-bot remove_label wip

@blomquisg any idea where we should move the parsing code? The same should apply for parsing code under host.rb. I guess as first step into modules?

WIP, I need to figure out the correct placement of the parsing code

@miq-bot remove_label wip

@blomquisg I've placed it as MiqLinux::OpenstackConfigurationParser. So it should be ready now, if you are ok with this. :-)

Overall, I'm not against the changes you have to the custom_attributes table.
I just don't think I have an understanding of the final goal of pulling in the configuration files like this.
Would it make more sense to just pull in the files as is (i.e., as text files)?  Or, is there a specific purpose for parsing the files?
For instance, are we going to eventually be controlling the OpenStack configurations through the ManageIQ interface?  I'm a little dubious of the extra logic needed for parsing the files, if the end result is going to be just for displaying the files to the ManageIQ user.

@blomquisg displaying, filtering, better usage in automation. I think that were the use-cases @jonnyfiveiq had for this.
The actual change of the parameters might be very hard, since puppet has it's abstraction layer, that renames them and there is another abstraction layer, that renames them in Heat. :-)

@Ladas @blomquisg yes, this is a use case to be covered off, to initially parse the advanced configurations of the OpenStack services, just as advanced configuration of a VM or a Host is returned for both VMware and RHEV providers today, just that we wish to goto service level. This can then be used easily for compliance and control policies. Long term would be to enable change/configuration of these values, but thats currently not scope to detail as yet. Thanks

@ladas and @jonnyfiveiq, thanks for the clarifications!

@blomquisg @jonnyfiveiq and one last thing, I want to also add it to drift, so we can see how the configuration is being changed. That can be pretty handy debugging problems.

@roliveri moved to gems/pending/openstack/openstack_configuration_parser.rb, given it's part of the smart state analysis and part of the openstack. I guess this is best position available? :-)

Please rebase after Openstack namespacing PR https://github.com/ManageIQ/manageiq/pull/3664 was merged

@Fryguy @blomquisg Please review

Three things:

I need to know where @Fryguy and @ladas ended up on #3758 ... namely, the whole :ems_custom_attributes vs. :custom_attributes (as well as save_custom_attributes_inventory referring to :ems_custom_attributes and how that doesn't even seem to be used anywhere...)

If you want to wrap a lot of functionality around this, does it make more sense to have a real model instead of custom attributes for the configuration key-values?  For instance, will custom_attributes play nice with drift since they're so generic?

I'm still not hugely crazy about you having to implement an entire configuration file parser here.  However, I actually have looked at the way that OpenStack chose to do this in oslo and have noticed that they're doing enough custom things there that require custom code.  Is there a way you could use the oslo code here?  Maybe we could include it in the appliance and you could just shell out to it?  The main problem with writing all this code is that you've not only copied their functionality (which might change over time, though possibly doubtful), you've also copied their bugs.  So, any changes that they have to make to fix bugs in oslo also requires a bug fix in ManageIQ now.  If we were just depending on the oslo library, as long as the core interface didn't change, we could just update an RPM on the appliance and be done.

/cc @Fryguy @matthewd

@blomquisg

I am fine with mergin this and do refactoring according to #3758 later
I haven't played with drift that deep yet, for host drift I will create delegator, that will get all configs of all files. And that way it should be separated from other host's custom attrs. Nothing comes in my mind, that could prevent this being in drift, unless the implementation is limited somehow. (might be just a bit slower since there are thousands of configuration options, though should be worth it to see this)
Well, if we will decide we don't need to parse the comments, which have the default values and description, I guess we can call what they have in oslo. Or we can switch to any other parser, it's isolated well enough.
But I don't expect, that the format of configuration files can ever change, without destroying the whole world first. It could be extended, not sure why they would do it, because the modeling power for configurations is adequate now.

@ladas I merged #3758

@Fryguy cool, thanks, I am gonna rebase this and rewrite the factories, then it should be ready :-)

@Ladas ... if you rewrite the factories based on @matthewd's comments, I can move this along.
Side note:  there are a lot of questionable (preexisting) patterns here I'd like to see cleaned up (outside this PR).  For instance, inventory parsing and saving code buried in the model objects.  If nothing else, I think these could be pulled into mixins, so at least the code is separated out and obvious.  @matthewd, @Fryguy, thoughts on that?

@blomquisg I am on it :-)

@blomquisg ok, specific content moved from factories as @matthewd wanted
also it's using the generic save_custom_attributes_inventory as @Fryguy wanted (my patch for that has been merged)
I agree on the moving part, possibly more of that has to be moved, host class is very big,


Create skip attribute for derive serde

I would like the typetag to skip the creation of an enumeration for certain structures, I think this is very useful

I would prefer not to support this in this crate. But someone should feel free to build a more fully-featured library for serializing trait objects which could support this.


add unbundled but transpiled code to npm package

I can't use<EMAIL_ADDRESS>with Node, because

src/worley-noise.js is an ES module, and
dist/worley-noise.js expects window to be in the global scope.

It would be cool to be able to use the package in Node 6 without further steps. One solution would be to babel-transpile the src code into dist and expose a bundle in addition.

Let me know if you want a PR for this.

Hey @derhuerst ,
Thanks for the feedback. I'm a bit confused. Webpack produces UMD builds so it should be usable in Node as well. Do you have any info on this?
Feel free to open a PR if you have a good solution for this. Thanks.

True, indeed it's not related to the bundling itself (although I still think it would be good to have transpiled, unbundled code in the npm package as well), but to Webpack. After a quick search, I found  https://github.com/webpack/webpack/issues/6522#issuecomment-366704672 .

Thanks for the link. I made the change and it seems to work. Hopefully won't break any other environment. Please check when you have some time.

I've looked at your code. The cause of the problem is an API change. The getManhattan function now expects an object with x and y property.  It's updated in the readme.

Thanks!


[master] PLT-635 Trigger policy cache refresh job on demand #2082

Closing since this looks stale. Will reopen if required.


Add "PATCH" to ResourceOperations

Some create_or_update can be patch (See KV update policies). Will interesting to have Patch in the ResourceOperations (like RG has already).
Comes from: https://github.com/Azure/azure-sdk-for-python/issues/682

Done in recent Swagger


Promote PrometheusServlet to DeveloperApi

What changes were proposed in this pull request?

This PR aims to promote PrometheusServlet to DeveloperApi
Why are the changes needed?

Since Apache Spark Kubernetes Operator requires this, we had better maintain it as a developer API officially from Apache Spark 4.0.0.
https://github.com/apache/spark-kubernetes-operator/pull/12
Does this PR introduce any user-facing change?

No
How was this patch tested?

Pass the CIs
Was this patch authored or co-authored using generative AI tooling?

No

Mind filing a JIRA please? See also https://spark.apache.org/contributing.html

my bad - updated the description. Thanks @HyukjinKwon for the reminder!

Merged to master.


Fixing improve article url

I fixed the wrong url github article url to edit the post.

@itlvd I don't see any issue in 'Improve Article' link


Compilation error (Android, Termux)

Just went through an odyssey to get rust-nightly going on Android (aarch64-linux-android is not supported by rustup) to try to get racer to work, but this happens:

[.......]
Compiling rand_isaac v0.1.1
Compiling rand_hc v0.1.0
Compiling ena v0.13.0
Compiling lock_api v0.1.5
Compiling rustc_version v0.2.3
Compiling rustc-ap-rustc_cratesio_shim v491.0.0
Compiling crossbeam-epoch v0.3.1                                                                                Compiling rand_os v0.1.3
Compiling num_cpus v1.10.1
Compiling jobserver v0.1.14
Compiling atty v0.2.11
Compiling rustc-hash v1.0.1
Compiling aho-corasick v0.7.4                                                                                Compiling parking_lot_core v0.4.0
Compiling crossbeam-deque v0.2.0
Compiling quote v0.6.12
Compiling clap v2.33.0
Compiling parking_lot v0.7.1
Compiling rustc-ap-rustc_data_structures v491.0.0
Compiling rustc-ap-arena v491.0.0
error[E0658]: use of unstable library feature 'alloc': this library is unlikely to be stabilized in its current form or name (see issue #27783)
--> /data/data/com.termux/files/home/.cargo/registry/src/github.com-1ecc6299db9ec823/rustc-ap-arena-491.0.0/lib.rs:24:1
|
24 | extern crate alloc;
| ^^^^^^^^^^^^^^^^^^^
|
= help: add #![feature(alloc)] to the crate attributes to enable
error: aborting due to previous error
For more information about this error, try rustc --explain E0658.
error: Could not compile rustc-ap-arena.
warning: build failed, waiting for other jobs to finish...
error: failed to compile racer v2.1.23, intermediate artifacts can be found at /data/data/com.termux/files/usr/tmp/cargo-installZuNhgd
Caused by:
build failed

$ cargo --version
cargo 1.35.0-nightly

Any hope to get this going on Android?

It is racer's issue.
Here is vim-racer's issue.


⚠ Guya.moe Proxied has degraded performance

In 07c6c36, Guya.moe Proxied (https://ice.guya.moe/) experienced degraded performance:

HTTP code: 200
Response time: 16736 ms

Resolved: Guya.moe Proxied performance has improved in e3a8311 after 49 minutes.


Fix: RqMethod must be an interface #137

Convert RqMethod to interface .

Many thanks, I will find someone to review it before we merge

@darkled please review,thanks

@MohandAndel there are 14 qulice violations:
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[46]: Redundant 'public' modifier. (RedundantModifierCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[51]: Redundant 'public' modifier. (RedundantModifierCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[56]: Redundant 'public' modifier. (RedundantModifierCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[61]: Redundant 'public' modifier. (RedundantModifierCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[66]: Redundant 'public' modifier. (RedundantModifierCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[71]: Redundant 'public' modifier. (RedundantModifierCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[76]: Two consecutive empty lines (RegexpMultilineCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[76]: Redundant 'public' modifier. (RedundantModifierCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[84]: Two consecutive empty lines (RegexpMultilineCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[84]: Redundant 'public' modifier. (RedundantModifierCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[87]: First sentence in a comment should start with a capital letter (RegexpMultilineCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[106]: Parameter req should be final. (FinalParametersCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[111]: Redundant 'final' modifier. (RedundantModifierCheck)
[ERROR] /src/main/java/org/takes/rq/RqMethod.java[116]: Redundant 'final' modifier. (RedundantModifierCheck)

Could you please fix them?

I try to pass the 2 checks , but it ask me to remove "final" from the constants in the interface , is that ok ?
Or these constants should be removed somewhere else .

@MohandAndel since interface is just a contract and cannot have state or behavior, every field is implicitly both static and final, so there is no need in these modifiers, you can remove it.

@MohandAndel there are still some violations as well merge conflicts:
[ERROR] /src/main/java/org/takes/rq/RqCookies.java[33]: Empty line or comment between imports is not allowed (ImportCohesionCheck)
[ERROR] /src/main/java/org/takes/rq/RqCookies.java[66]: Line has trailing spaces. (RegexpSinglelineCheck)
[ERROR] /src/main/java/org/takes/rq/RqCookies.java[102]: Line is longer than 80 characters (found 83). (LineLengthCheck)
[ERROR] /src/main/java/org/takes/rq/RqCookies.java[111]: Line is longer than 80 characters (found 90). (LineLengthCheck)
[ERROR] /src/main/java/org/takes/rq/RqCookies.java[113]: operator new rparen at indentation level 24 not at correct indentation, 20 (IndentationCheck)
[ERROR] /src/main/java/org/takes/rq/RqCookies.java[119]: Line is longer than 80 characters (found 81). (LineLengthCheck)
[ERROR] /src/main/java/org/takes/rq/RqCookies.java[121]: operator new rparen at indentation level 24 not at correct indentation, 20 (IndentationCheck)
[ERROR] /src/main/java/org/takes/rq/RqCookies.java[147]: Line is longer than 80 characters (found 81). (LineLengthCheck)
[ERROR] /src/main/java/org/takes/rq/RqCookies.java[151]: Line is longer than 80 characters (found 83). (LineLengthCheck)

Also, when you change something please notify reviewer with a message in order to get quicker feedback

@elenavolokhova please, let us know what do you think about this ticket, according to our QA rules

@darkled @yegor256 This ticket has a lot of issues and finally provides no solution at all. The quality is bad and I consider that it shouldn't be paid. Correct me if I'm wrong, please.

@davvd Quality of this ticket is bad.

@davvd Quality of this ticket is bad.

@elenavolokhova thanks a lot, noticing bad quality is what makes us better

@darkled I added 10 mins to @elenavolokhova (for QA review) in transaction 55998884; Much obliged! I have added 18 mins to your account in payment "55998894", 71 hours and 30 mins spent; review comments (c=3) added as a bonus; added +18 to your rating, now it is equal to +2295


Comparison with code_aster

Hi,
Please find attached a proposal for the comparison with Salome-Meca/code_aster (FEA software for structural mechanics).
Best regards,
Salome-Meca and code_aster development team
main_keys.txt

Great, thank you! The updated table https://cdn.rawgit.com/kostyfisik/FEA-compare/9470ec7237bf180c258ade11bc22696aa46402f8/table.html


Make account/container optional in NettyPerfClient

For current open source version ambry with InMemoryAccountService, we can't provide account/container header in PUT request.
If ambry-unknown-account  is provided, it fails in accountAndContainerSanityCheck.
If something else provided, it will fail in ensureAccountNameMatch (edited)
To use NettyPerfClient and issue PUT requests to open sources frontend. We need first make targetAccountName and targetContainerName optional.
For example:
java -Dlog4j.configuration=file:../config/log4j.properties -cp ambry.jar com.github.ambry.tools.perf.rest.NettyPerfClient --hosts localhost  --port 1174 --requestType POST --concurrency 1 --postBlobTotalSize 100 --postBlobChunkSize 100

Close this issue as #1441  is merged.


Update updates page for DCP 25

New projects (10):

Detection of infiltrating fibroblasts by single-cell transcriptomics in human kidney allografts
Harnessing Expressed Single Nucleotide Variation and Single Cell RNA Sequencing To Define Immune Cell Chimerism in the Rejecting Kidney Transplant
Heterogeneity and clonal relationships of adaptive immune cells in ulcerative colitis revealed by single-cell analyses
Single-Cell RNA Sequencing in Multiple Pathologic Types of Renal Cell Carcinoma Revealed Novel Potential Tumor-Specific Markers.
Single-cell multiomics revealed the dynamics of antigen presentation, immune response and T cell activation in the COVID-19 positive and recovered individuals
Single-cell transcriptomes from human kidneys reveal the cellular identity of renal tumors.
Spatially organized multicellular immune hubs in human colorectal cancer
Time-resolved systems immunology reveals a late juncture linked to fatal COVID-19.
Transcriptional changes in the mammary gland during lactation revealed by single cell sequencing of cells from human milk
Ulcerative colitis is characterized by a plasmablast-skewed humoral response associated with disease activity

PR is here: https://github.com/DataBiosphere/data-portal/pull/2095

Complete


Missing KeyEvent in SomeEvent

I’m not yet sure it has any importance, but it seems that "EventKey" is missing in "SomeEvent".

That may be very true.
The use of "SomeEvent" is a very special hack which was necessary to get it working. I was not really happy about it, so I did not cared for details. Another solution would have been to use Converters, but I tried to avoid that, as it can increase compile time and has some other disadvantages, Araq does not like converters too much also. I am not sure how much additional code is generated by the use of "SomeEvents", I guess it is not little. Maybe later we should rewrite all that Event stuff manually.
I will add the KeyEvent to SomeEvents.

Thanks. I actually need it to use "getKeyval" in the handler for "key-pressed".

Have added KeyEvent and some more. Will close for now.


cannot import name strip_last_newline_char

Reported by community user.  packs.reload failed with the following error:
"traceback": "  File "/usr/lib/python2.7/dist-packages/st2actions/worker.py", line 106, in _run_action\n    result = self.container.dispatch(liveaction_db)\n  File "/usr/lib/python2.7/dist-packages/st2actions/container/base.py", line 55, in dispatch\n    runner = get_runner(runnertype_db.runner_module)\n  File "/usr/lib/python2.7/dist-packages/st2actions/runners/init.py", line 50, in get_runner\n    raise ActionRunnerCreateError(e)\n",
"error": "cannot import name strip_last_newline_char”

Community user reporting in.
Here's my /usr/lib/python2.7/dist-packages/st2common/util/misc.py
https://gist.github.com/lattwood/24de666b15e39dffff17

Running st2ctl restart fixed the issue. The odd part is that st2actionrunners were running new code but the referenced method from st2common was missing i.e. still old code. This should not really happen but it oddly did - how could we end up in this situation where st2action module is updated but st2common is not?

It was updated @manasdk. I believe st2ctl restart wasn't issued during the setup wizard in the web gui after the stackstorm packages were updated.
Start-Date: 2015-09-15  21:21:12
Commandline: /usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold --force-yes install st2common=0.13.2-5
Upgrade: st2common:amd64 (0.13.1-4, 0.13.2-5)
End-Date: 2015-09-15  21:21:13

Start-Date: 2015-09-15  21:21:25
Commandline: /usr/bin/apt-get -q -y -o DPkg::Options::=--force-confold --force-yes install python-st2client=<IP_ADDRESS>-1
Upgrade: python-st2client:amd64 (<IP_ADDRESS>-1, <IP_ADDRESS>-1)
End-Date: 2015-09-15  21:21:25

Closing. If this happens again, please re-open. I believe this has been fixed in recent installer versions.


Use more clear status marks

Instead of bullet for status and plus for health we can use more known symbols:

I chose this symbols because they are part of Unicode 1993 and should be supported by all fonts.

☼ sun for healthy
⚠ warning for unhealthy
◌  dotet circle for starting

Please check how they looks in iTerm on OSX. Unfortunately they wont be shown correctly on Putty from windows because it uses Currier New font but previous statuses wasn't shown ether.

Thanks, I really like this change and hope it gets merged eventually - red-green color blindness makes it really difficult to differentiate the default symbols. (It would also be nice if the symbols were user-configurable.:)

I don’t think it worth to make configurable but agree that green/red colors don’t work for color blind peoples. But this may be changed by theme. Maybe even current reversed theme will be better for color blind peoples.
The most I concerned is about symbols to be clear and how they look in terminal fonts.
Personally now I don’t feel right about using the dotted circle but as far I remember all other symbols looked much worse. I hope that containers will start so fast so users not even notice the circle.


Cant Filter Chinese

I konw a regexp [\u4e00-\u9fa5]  can match only Chinese
but in starrocks it not works.   who can i regexp only match Chiense?
I try  [^\x00-\xff] ,but it match not only Chinese.
Steps to reproduce the behavior (Required)

CREATE TABLE IF NOT EXISTS test02 (     k1 VARCHAR(100),     k2 VARCHAR(100) ) DUPLICATE KEY(k1) DISTRIBUTED BY HASH(k1) BUCKETS 1 PROPERTIES( "replication_num" = "1" );

insert into test02 (k1,k2) values("k1","hello"); insert into test02 (k1,k2) values("k2","123"); insert into test02 (k1,k2) values("k3","你好啊"); insert into test02 (k1,k2) values("k4","123你好啊Hello"); insert into test02 (k1,k2) values("k5","오늘 날씨 정말 좋아요"); insert into test02 (k1,k2) values("k6","开心"); insert into test02 (k1,k2) values("k7","    1233"); insert into test02 (k1,k2) values("k8","    wdsa1gtrew"); insert into test02 (k1,k2) values("k9","wdsa1gtrew"); insert into test02 (k1,k2) values("k10","helo world");

select * from test02 where regexp(k2,"[\u4e00-\u9fa5]"); select * from test02 where regexp(k2,"[\\u4e00-\\u9fa5]");
Expected behavior (Required)
Only Match Chinese
Real behavior (Required)
Not Only Match Chinese & ERROR 1064 (HY000): Invalid regex expression: [\u4e00-\u9fa5]: '\u' at index 1 not supported in a character class.
StarRocks version (Required)
starrocks v2.2.5

Will StarRocks use unicode to store Chinese chars in memory, or use UTF8 to store bytes of Chinese chars in memory?


improve url validation

following the tip below to validate localhost URLs properly
https://github.com/validatorjs/validator.js/issues/1609#issuecomment-780685689
Status

READY
Description
improve URL validation
Related PRs
List related PRs against other branches:

branch
PR

https://github.com/davidsonsns/orval/tree/url-validation-improvement
#219

Todos

[ ] Tests
[ ] Documentation
[ ] Changelog Entry (unreleased)

can you add that everywhere isUrl is used, please?

can you add that everywhere isUrl is used, please?

ohh for sure! let me check it out!

@anymaniax ready again 🙌🏻


gm_alwaysTop property bug

Hi. I have tilemap with 3 layers: ground, misc1 and misc2. Layer misc2 have property gm_alwaysTop with checked checkbox. But layer misc1 rendered at the top of player instead of misc2. Layer misc1 not have any properties.

Misc1 layer parameters: https://prntscr.com/10elnwp
Misc2 layer parameters: https://prntscr.com/10ellfr
Result: https://prntscr.com/10eljn7
Road placed at misc1 layer.

Hi @borkowsky.
Thank you for reporting.
I will try to reproduce. Are you in addition using the firstLayerAboveChar option? (https://github.com/Annoraaq/phaser-grid-movement-plugin/wiki/Config)
I will let you know as soon as I found out something.

No, i deleted this properties, because its deprecated.

Hey @borkowsky, I am not able to reproduce the bug. I created a small map with 3 layers and gave the top one the property and it works. Can you try to clean your browser cache? It caches the tilemaps.

Hello. Unfortunately,  clearing browser's cache not solved the problem. I think, i need roll back to using firstLayerAboveChar property.

Even firstLayerAboveChar not working...

 I add container but not let main camera to start follow him, and not add to character configuration. Im sorry.

No need to apologize :) I'm glad your problem is solved.
I assume the depth (z-index) did not work,  because the container was not passed to the config.


[flutter_releases] Flutter stable 2.10.3 Framework Cherrypicks

Flutter stable 2.10.3 Framework
Scheduled Cherrypicks

commit: 80660b2d5

Gold has detected about 36 new digest(s) on patchset 4.
View them at https://flutter-gold.skia.org/cl/github/99337

We can safely skip the analysis test on release branches, i'll push a commit

I just pushed a commit to skip the consumer deps test, analysis passes for me locally at that commit

Gold has detected about 25 new digest(s) on patchset 5.
View them at https://flutter-gold.skia.org/cl/github/99337

Hi I wonder when will 2.10.3 release? Seems that cp is merged, but I did not see anything from https://docs.flutter.dev/development/tools/sdk/releases?tab=macos yet

Hi I wonder when will 2.10.3 release? Seems that cp is merged, but I did not see anything from https://docs.flutter.dev/development/tools/sdk/releases?tab=macos yet

The release has not been completed yet

@godofredoc Oops sorry. May I know when will it be completed?

It just completed!

🎉
(btw I have just uninstalled VS 17.1 and start installing 17.0.6... What if I just postpone 20 minutes and then no need for such a reinstall)


Forbid pseudo-header fields not defined in RFC 7540

As specified in RFC 7540 § <IP_ADDRESS>:

Endpoints MUST NOT generate pseudo-header fields other than those defined in this document.

This is easily enforced, and we should do so rather than rely on our users to do it.

For anyone who picks this up, here are my thoughts about how you might want to approach this:

The easiest place to fit this in to the code is the current header validation pipeline. This lives in h2/utilities.py, and is currently composed of a pipeline of generators as shown in validate_headers in that file. In particular, a small extension to _reject_pseudo_header_fields is probably the right place to start looking to do the change.
For filtering things out, consider using an approach similar to the CONNECTION_HEADERS approach in that same file: a set() of whitelisted values.
We'll need to write tests for this. A sensible approach might be to use Hypothesis to generate those tests, but that may also be tricky for you, so if you don't want to bite that off right now just write some standard examples-based tests and put them in test_invalid_headers.TestFilter. I can go back and extend them later.
You don't need to do any backporting, I'll handle that.

If you have any further questions, please do ask them.

@Lukasa Could you take a look at my solution? I'm happy to evolve it into something better using the Hypothesis package, and I don't understand what you mean by backporting, but would be happy to know and help out more :smile:

@LuRsT That change looks perfect. One small note: I'm about to merge a PR (#198) that changes our internal headers representation to be bytestrings. That'll necessitate a small update in your code: you'll need to use bytestrings in that set.
Otherwise, that looks great: with some tests I'd be happy to merge it. =)

Awesome @Lukasa, I'll learn about hypothesis this evening so I can use it for the tests. I'll also update my code to use bytestrings.
One thing that I wasn't sure is the _ALLOWED_PSEUDO_HEADER_FIELDS, I don't know if I captured all the pseudo-header fields from the spec, I was expecting to find a list of them but I couldn't :/

Yeah, there is no single list, but sections <IP_ADDRESS> and <IP_ADDRESS> cover the full set. You got them. =)


Np 7685/transaction history bug temp fix

How does this fix the issue?

How does this fix the issue?

it doesnt.  This is a part of temporary fix, along with [nanopay side](https://github.com/nanoPayinc/NANOPAY/pull/15287#event-7333693277. We are still investigating the real cause


Fixed FieldType typo

I guess FielType is a typo, so this PR fixes it. In case it isn't (english ain't my main language) please ignore it!

Good catch! Thank you!
(el inglés tampoco es mi idioma principal :D)


[TVMScript] Distinguish between void* and handle

Prior to this PR, the type annotations PrimType(DataType::Handle()) and PointerType(PrimType(DataType::Void())) are both represented as T.handle in TVMScript, which can cause failures to round-trip between TIR and TVMScript.  This PR keeps PrimType(DataType::Handle()) as T.handle, but updates the representation of PointerType(PrimType(DataType::Void())) to T.handle("void") in order to distinguish between these two cases.
This is part of changes described in https://github.com/apache/tvm/pull/14486, to improve round-trip failures that occur in lowering.

At some point, it may make sense to have PointerType require that its value is not a DataType::Handle(), to prevent this ambiguity from occurring in the first place.  However, introducing that TIR requirement was a larger change than the parser.

Yeah I made the change a while ago to unify T.Ptr and T.handle, and at that time i don't actually know a case where void* are different, so I decided to unify them anyways. I probably don't have much context. Perhaps would you like to give an example? Thanks a lot!!

Certainly!  This occurs in any PrimFunc that is after tir.MakePackedAPI in the lowering flow, as the out_ret_value is annotated with a PointerType(PrimType(DataType::Void())) (link).  I don't think this has an impact on the generated code, but it does mean that we're producing TIR that can't be expressed in TVMScript, and can't use TVMScript for writing unit tests for this pass.

The original intention there is to make the v_out_ret_value an opaque ptr. Perhaps we could simply mark it as handle as well?

I do think allow possibility to express two different handle types will give developers more opportunities, so I would prefer merging this PR in, as well as updating MakePackedAPI. That would be nice if we could document a bit more about in Handle the difference between PrimType and PointerType of void :-)

From some quick tests, either representation could be removed without much difficulty.  If we were getting rid of one of the two representations, I'd lean toward keeping the PointerType(...) version, since it is also needed to express a non-global scope.
That said, having a distinction between a pointer to a value and an opaque handle is probably a good one to keep around, so I'd lean toward @junrushao's suggestion.

@tvm-bot rerun

@tvm-bot rerun


Fix typo in quick-start.md

Add a missing quote in "Usage Summary" section

name: :memo: Documentation Fix
about: Fixing a problem in an existing docs page
Checklist

[ ] Is there an existing issue for this PR?

link issue here

[ ] Have the files been linted and formatted?

What docs page needs to be fixed?

Section: Usage Summary
Page: Quick Start

What is the problem?
Missing quote.
What changes does this PR make to fix the problem?
Add missing quote.

Thanks!


Implement the mechanism to return hypervisor hostname with suffix

When "$HOME/.zvmsdk_hypervisor_hostname_suffix" file exists, host_get_info will return zvm_host and hypervisor_hostname as <hypervisor_hostname>. .
 is read from $HOME/.zvmsdk_hypervisor_hostname_suffix .

@trenxiaof @jichenjc please help review, thanks.


Import shady instead of polyfill to fix test suite

This change is

Ahem, this makes it no longer testing against the full polyfill, right?

Review status: 0 of 1 files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


SARS-CoV-2 Data Hubs Logo on uploader page redirects to https://ebi-ait.github.io/

A bug has been identified on the covid uploader page: https://ebi-ait.github.io/sars-cov2-data-upload/ where clicking on the 'SARS-CoV-2 Data Hubs' logo redirects to this URL https://ebi-ait.github.io/
Would be good if this URL can be replaced with: https://www.covid19dataportal.org/ so that clicking on the logo redirects to the main covid-19 data portal instead.
@Jeena-Rajan @nadimm-rahman

@z-w123
Hi Zahra,
This change is completed. Is it OK to do a deployment on Monday (August 10)?
Thanks.,
Dipayan
/cc @mcourtot

Hi Dipayan,
that would be great, thanks

@z-w123
Deployment completed.
As a safety measure I monitored the S3 logs while deployment and found no PUT/POST and hence no user impact while deployment was being done.
/cc @mcourtot


Cannot roll initiative from the combat tracker

In foundry 8.6.0 with the 2.0.5 DnD5e Helpers I get the following error when I try to roll initiative
Uncaught (in promise) Error: The key l5pyujNFm8YHwlUC does not exist in the EmbeddedCollection Collection
    at Map.get (/C:/Program%20Files/FoundryVTT/resources/app/common/utils/collection.mjs:106)
    at ServerDatabaseBackend._updateEmbeddedDocuments (/C:/Program%20Files/FoundryVTT/resources/app/dist/database/backend/server-backend.mjs:1)
    at ServerDatabaseBackend.update (/C:/Program%20Files/FoundryVTT/resources/app/common/abstract/backend.mjs:153)
    at async Socket.handleEvent (/C:/Program%20Files/FoundryVTT/resources/app/dist/server/sockets.mjs:1)

I am unable to reproduce this. Can you provide more specific reproduction steps?

To replicate you need to press the roll all or roll npc buttons

I'm sorry, I still cannot reproduce. Are all other module disabled?

I upgraded to 2.0.6 DnD5e Helpers, I am running 8.60 Foundry and on Windows 10. I made a new world and I only enabled DnD5e Helpers, no other mod. I created a new map, which I set to gridless. I added the example hero from the compendium "Akra" and an "Acolyte", I then added them both to the combat tracker by highlighting both, right clicking and pressing the toggle combat state button. Then before starting the encounter, I try pressing the Roll All and Roll NPCs buttons (pressing the dice works as expected) and I can reproduce 100% of the time.

Ok, after some experimentation I found out what a crutial step for reproduction is.
If I add each of the 2 tokens to the tracker at the same time (select them both and toggle combat state) I reproduce.
If I add each of them one at a time (select one, add it and then select the other to add it) I cannot reproduce.

After deleting the tokens from the scene and clearing the combat tracker I can no longer place the same tokens in the scene.

This is very strange and I'm starting to suspect is not due to helpers -- particularly the token placement issue.  Not trying to pawn you off at all, but the issue seems to be something more fundamental.
I havent tried gridless, so I'll attempt to reproduce that way.

This is so bizarre, looking at the logs the error happens in the server code. I definitely can only reproduce the error with 5e helpers enabled. I did find a work around while trying to even figure out where to set a breakpoint in the js.
The work around is, if the initiative breaks, press the reset initiative button. I can roll initiative after that.

For me the same error almost is triggered by using a spell template that is concentration that bestows a CUB condition via a DAE on targets as well as the spellcaster (casts silence on a 20ft-radius that includes the caster and applies a deafened condition.
When the concentration ends or the time is up and the effects are deleted from the other targets, the error fires up and the effect cannot be deleted from the caster (either by going to the effects tab of the character sheet or the Assign Status Effects icon).
The effect needs a Foundry reload to clear.
Foundry VTT | Deleted ActiveEffect with id [UjMl1gCgZk6kDUnZ] in parent Actor [V2bDa2t6Yqj59D4E] 15:31:16.695 backend.mjs:306 Foundry VTT | Deleted ActiveEffect with id [VFxrTecwpTn413RT] in parent Actor [XCsuQ4q5F33R2fuO] 15:31:16.710 backend.mjs:306 Foundry VTT | Deleted ActiveEffect with id [Aj1LzOg4nBs6cYKc] in parent Actor [PwyTMcndlay7IuFm] 15:31:16.723 backend.mjs:306 Foundry VTT | Deleted ActiveEffect with id [Ive8jfXUf30l70gr] in parent Actor [Ie6WAcmUf6qHLWYp] 15:31:16.744 backend.mjs:306 Foundry VTT | Deleted ActiveEffect with id [ZnZdGkH5Zf7Zx7Gp] in parent Actor [Q8VBlroKgDXt9gxU] 15:31:16.784 backend.mjs:306 Foundry VTT | Deleted ActiveEffect with id [jPBdoPb1RvESGKws] in parent Actor [WhZdlNavtph5mbNt] 15:31:16.832 backend.mjs:306 Foundry VTT | Deleted ActiveEffect with id [4JnkpwY2g2sPaVPi] in parent Actor [gmgpjNPOHZKRgiRb] 15:31:16.843 GMAction.js:210 delete effects failed  Error: The key rnmRKGwTWz7LOIaL does not exist in the EmbeddedCollection Collection     at Map.get (/C:/Program%20Files/FoundryVTT/resources/app/common/utils/collection.mjs:106)     at ServerDatabaseBackend._deleteEmbeddedDocuments (/C:/Program%20Files/FoundryVTT/resources/app/dist/database/backend/server-backend.mjs:1)     at ServerDatabaseBackend.delete (/C:/Program%20Files/FoundryVTT/resources/app/common/abstract/backend.mjs:214)     at async Socket.handleEvent (/C:/Program%20Files/FoundryVTT/resources/app/dist/server/sockets.mjs:1) deleteEffects @ GMAction.js:210 async function (async) deleteEffects @ GMAction.js:207 processSingleAction @ GMAction.js:154 processAction @ GMAction.js:53 requestGMAction @ GMAction.js:14 handleRemoveConcentration @ dae.js:755 async function (async) handleRemoveConcentration @ dae.js:753 update @ dae.js:826 _call @ VM41291:4 callAll @ foundry.js:153 callback @ foundry.js:9048 (anonymous) @ foundry.js:9019 _handleDeleteEmbeddedDocuments @ foundry.js:9019 _deleteEmbeddedDocuments @ foundry.js:8928 async function (async) _deleteEmbeddedDocuments @ foundry.js:8917 delete @ backend.mjs:214 async function (async) delete @ backend.mjs:212 deleteDocuments @ document.mjs:401 delete @ document.mjs:462 _toggleActiveEffect @ foundry.js:45164 toggleEffect @ foundry.js:45132 _onToggleEffect @ foundry.js:30781 dispatch @ jquery.min.js:2 v.handle @ jquery.min.js:2 15:31:16.855 GMAction.js:210 delete effects failed  Error: The key rnmRKGwTWz7LOIaL does not exist in the EmbeddedCollection Collection     at Map.get (/C:/Program%20Files/FoundryVTT/resources/app/common/utils/collection.mjs:106)     at ServerDatabaseBackend._deleteEmbeddedDocuments (/C:/Program%20Files/FoundryVTT/resources/app/dist/database/backend/server-backend.mjs:1)     at ServerDatabaseBackend.delete (/C:/Program%20Files/FoundryVTT/resources/app/common/abstract/backend.mjs:214)     at async Socket.handleEvent (/C:/Program%20Files/FoundryVTT/resources/app/dist/server/sockets.mjs:1) deleteEffects @ GMAction.js:210 async function (async) deleteEffects @ GMAction.js:207 processSingleAction @ GMAction.js:154 processAction @ GMAction.js:53 requestGMAction @ GMAction.js:14 handleRemoveConcentration @ dae.js:755 async function (async) handleRemoveConcentration @ dae.js:753 update @ dae.js:826 _call @ VM41291:4 callAll @ foundry.js:153 callback @ foundry.js:9048 (anonymous) @ foundry.js:9019 _handleDeleteEmbeddedDocuments @ foundry.js:9019 _deleteEmbeddedDocuments @ foundry.js:8928 async function (async) _deleteEmbeddedDocuments @ foundry.js:8917 delete @ backend.mjs:214 async function (async) delete @ backend.mjs:212 deleteDocuments @ document.mjs:401 delete @ document.mjs:462 _toggleActiveEffect @ foundry.js:45164 toggleEffect @ foundry.js:45132 _onToggleEffect @ foundry.js:30781 dispatch @ jquery.min.js:2 v.handle @ jquery.min.js:2 15:31:22.566 foundry.js:1246 Uncaught (in promise) Error: The key rnmRKGwTWz7LOIaL does not exist in the EmbeddedCollection Collection     at Map.get (/C:/Program%20Files/FoundryVTT/resources/app/common/utils/collection.mjs:106)     at ServerDatabaseBackend._deleteEmbeddedDocuments (/C:/Program%20Files/FoundryVTT/resources/app/dist/database/backend/server-backend.mjs:1)     at ServerDatabaseBackend.delete (/C:/Program%20Files/FoundryVTT/resources/app/common/abstract/backend.mjs:214)     at async Socket.handleEvent (/C:/Program%20Files/FoundryVTT/resources/app/dist/server/sockets.mjs:1)

Sorry have to clarify.
The initiative bug happens to me from time to time, but cannot reproduce effectively. That's why I found this thread!
But I can reproduce the same error message as the OP by the steps provided above.

OK this is beginning to drive me insane ^^
Now that I reloaded a couple of times Foundry and re-enabled DnD5e Helpers I cannot reproduce anymore...
Maybe disabling dnd5e helpers and trying it out again after was what changed the behaviour...

Update: New world and only dnd5e helpers enabled.
https://1drv.ms/v/s!As4ozpu6lMUZj4U8PrMmn3zqlZfpfw?e=vui5yT

Template issue?
https://1drv.ms/u/s!As4ozpu6lMUZj4U9oG646bb9hHUJRQ?e=8WPiXY

Same issue here
Rolling initiative for the first combat in the game goes just fine, but after ending that combat and creating a new one the error begins to pop up.
For testing purpose, it does happen with significant greater frequency if there is another player logged in the game, testing using only the GM player does seem to suppress this a little bit.

Same issue here
Rolling initiative for the first combat in the game goes just fine, but after ending that combat and creating a new one the error begins to pop up.
For testing purpose, it does happen with significant greater frequency if there is another player logged in the game, testing using only the GM player does seem to suppress this a little bit.

Does this happen more often if you have creatures targeted when doing these actions? or is this without any targeting going on?
I'll be looking into this issue tomorrow trying to resolve it.

no targets, just tested with one of my players
tried to simply create a combat, roll init, end it and create a new combat, the issue then pops up when rolling init for the second combat onwards
no tokens selected as targets
disabled helpers and the issue did not return
tried to re-enable it and test each setting from the module on and off, but the issue persisted

no targets on my end, I have to say, did not notice if my player had anything targeted

No targets and only one GM account and no player accounts logged in. This does seem to be a bit racy as well, and as I said before has a greater chance of occurring when multiple combatants are entered at once.
I looked through your code and I did see that there were a lot of awaits into a PIXI library in createCombatant. Perhaps the delay this causes introduces some delay that causes the client and the server to be out of sync. The errors do indicate that the server disagrees that these combatants are in the combat.

I have greatly reduced the chance for these deletion race conditions to occur, though I can't quite pin down the root cause. These fixes will be coming out with 2.0.7 and I would greatly appreciate trying to break it again with as specific reproduction steps as possible.
I am closing this issue for now. If the error still exists, please file a new issue.
@thatlonelybugbear The template targeting error video you posted is extremely difficult for me to reproduce as you have a number of other modules enabled that I do not have any experience with.  If you can reproduce that same error when 2.0.7 releases, I would appreciate a new issue filed with as few modules enabled as possible that still showcases the problem.


Configurate etcd store with Loki

Hi, I'd like to configurare the operator with Loki enabled and store the rings in an external etcd. Does the operator support this operation? Thanks.

No unfortunately we don't plan to support that


gpg-tui: 0.6.1 -> 0.6.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/orhun/gpg-tui/releases.
meta.description for gpg-tui is: "Terminal user interface for GnuPG"
meta.homepage for gpg-tui is: "https://github.com/orhun/gpg-tui"
meta.changelog for gpg-tui is: ""
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

Warning: no invocation of /nix/store/amygwj60622lkbwazbgfz0bsr6y0xhlg-gpg-tui-0.6.2/bin/completions had a zero exit code or showed the expected version

/nix/store/amygwj60622lkbwazbgfz0bsr6y0xhlg-gpg-tui-0.6.2/bin/gpg-tui passed the binary check.

1 of 2 passed binary check by having a zero exit code.

1 of 2 passed binary check by having the new version present in output.

found 0.6.2 with grep in /nix/store/amygwj60622lkbwazbgfz0bsr6y0xhlg-gpg-tui-0.6.2

found 0.6.2 in filename of file in /nix/store/amygwj60622lkbwazbgfz0bsr6y0xhlg-gpg-tui-0.6.2

directory tree listing: https://gist.github.com/ed700ddddb76adcf4c964eb8320a88ee

du listing: https://gist.github.com/89aa645854ca84fa2ed3c7825401978f

Rebuild report (if merged into master) (click to expand)

4 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
1 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
1 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
gpg-tui

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/amygwj60622lkbwazbgfz0bsr6y0xhlg-gpg-tui-0.6.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A gpg-tui https://github.com/r-ryantm/nixpkgs/archive/775e849b0c8796ab43e8ecaebecc99acdc2b7cc8.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/amygwj60622lkbwazbgfz0bsr6y0xhlg-gpg-tui-0.6.2
ls -la /nix/store/amygwj60622lkbwazbgfz0bsr6y0xhlg-gpg-tui-0.6.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

gpg-tui

Maintainer pings
cc @dotlambda for testing.


A test function dying causes the loss of previous results

Referencing to the closed topic #72
With version v0.29.0 it is again not possible to get any information about the tests, which already passed and therefore one cannot determine the dying test function easily.
Using version v0.28.2 or lower, one will still get the messages about the test functions which already passed.
Is it possible to reimplement the dropped feature?
EDIT: I was wrong about the version. The output is only printed until version 0.25.0

This feature is still here. Let's figure out what's different about the scenario you're running into. Maybe there are other related issues that cause the same problem.
The error you're getting is that no standard output was produced at all, instead of the cout being off.
Is it the first test that is failing (so nothing has been output yet?
If you define UNITY_OUTPUT_FLUSH to flush your output, does that help?

I can't reach the system the next three days, so I can't try this right now.
However, it is not the first test that fails, actually I used exactly the same tests on v0.28.2 and v0.29.0 and the output only varied regarding the fact, that v0.28.2 prints the messages which tests already passed and v0.29.0 does not.

#define UNITY_USE_FLUSH_STDOUT and

Hm. I've so far been unable to reproduce this. Can you tell me more about your platform or toolchain? What kind of a crash are you producing? Is it possible to come up with a small example that reproduces it?

So I am using Windows 10 with Ruby26-x64 and mingw64 with ceedling v0.29.0.
You can reproduce this the same way #72 did:
void test_NULLptr(void){
    printf("%s\n",__func__);
    int *p = NULL;
    *p = 0;
}