chore: improve error message during webpack load

Related: #2715

Should we wrap this line in a try catch? What happens if you set a config path in your env to a file that does not exist?

Should we wrap these lines in a try catch? What happens if you set a config path in your env to a file that does not exist?

findConfig() should already throw an error if the config file cannot be found. It's being called before the lines you marked, so I'm expecting it to catch that

But in this file, it doesn't look like anything will catch if you set a config path incorrectly?
Those path functions in particular, I am not sure what happens when they cannot resolve.


Downloading with temp: true, or passing in RAM, doesnt seem to work

I'm finding that temp: true + hyperdrive-http for a download doesnt seem to get any data. I did Dat('./memory', {temp: true, key}). That didnt work, but it did when I set temp to false.

nm, seems to work now, not sure what I did wrong


[NEW] Add Server parameter to build process & Add parameter to enable/disable server url entry screen

Create a parameter that can be set & changed at build time to be the default server url.

Create a parameter that disables the server entry page when a default server url is available.

This has been implemented on Rocket.Chat.Ios. It would be excellent to have it for the Android App as well.
RocketChat/Rocket.Chat.iOS#610

👍


Docker deployment

Hello!
How's the progress for docker deployment?

Sorry, We are still working on it.


Addtwonumber.cpp

Pull Request Template
What have you Changed(must)
Write here what you have changed in the codebase
Issue no.(must) - #677
Pr will be close and marked as spam. If issue number not found or issue was assigned to someone else.
Marking as spam can block your account from HacktoberFest.
Self Check(Tick After Making pull Request)

[ ] This issue was assigned to me if not it will be marked as spam.
[ ] My file is in the proper folder
[ ] I am following clean code and Documentation.
[ ] I have added the title and what program will do first in the file
[ ] I have named the file as (Problem #). (Problem Title(in Camel Case)).(extension)
ex. 2. AddToNumbers.py

README - How to Contribute

This issue has been closed.


Screen reverts to intial resolution when using full screen apps/games

I am using Sunshine with a bunch of games set up correctly. However, some games launch Full Screen and it causes the desktop resolution to revert to the intial resolution. Is there any fix for this?
I suppose I could launch some of the games in a borderless window but I have problems doing that with certain games.

The moment you tell a game to run full screen, it will no longer inherit any of the resolution settings from the desktop.
Which means the script can only work if you use Borderless Windowed Mode.
This is not a problem for the vast majority of modern games, because there technically isn't even a true full screen mode anymore. In fact, most modern games, when selecting full screen are still running in borderless windowed, due to a new Windows Direct X API feature called SwapChain.
SwapChain allows games to run in windowed mode, with no negatives from the past and will be just as performant as full screen.
However, you can only get this feature on modern games for the most part.
HOWEVER if you do have a Windows 11 computer, you can enable the "Optimizations for Windowed Games" feature, which essentially forces the SwapChain even on older games, effectively allowing you to run just about 95% of all games in borderless windowed without issues. This is exclusive to Windows 11 and only available to 22H2 and higher builds.
Please let me know if you have any further questions about this.

The moment you tell a game to run full screen, it will no longer inherit any of the resolution settings from the desktop.
Which means the script can only work if you use Borderless Windowed Mode.
This is not a problem for the vast majority of modern games, because there technically isn't even a true full screen mode anymore. In fact, most modern games, when selecting full screen are still running in borderless windowed, due to a new Windows Direct X API feature called SwapChain.
SwapChain allows games to run in windowed mode, with no negatives from the past and will be just as performant as full screen.
However, you can only get this feature on modern games for the most part.
HOWEVER if you do have a Windows 11 computer, you can enable the "Optimizations for Windowed Games" feature, which essentially forces the SwapChain even on older games, effectively allowing you to run just about 95% of all games in borderless windowed without issues. This is exclusive to Windows 11 and only available to 22H2 and higher builds.
Please let me know if you have any further questions about this.

Ok thanks for the info! It’s only a minor inconvenience so I wanted to see if there was another workaround.


Environment variables error in base.py.

When I am setting the default environment variable in base.py, its working and not giving any error to set the environment variable. But I want to take the value from the  .env files for local and django.

Hi could you fire an issue with the bug template, else it's very hard for us to help you out.

Thank you for the response. Created the issue with bug template. Please go
through it,
Regards,
Chhaya Kuamri
On Thu, Aug 30, 2018 at 12:01 PM Wan Liuyang<EMAIL_ADDRESS>wrote:

Hi could you fire an issue with the bug template
https://github.com/pydanny/cookiecutter-django/issues/new?template=bug.md,
else it's very hard for us to help you out.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/pydanny/cookiecutter-django/issues/1774#issuecomment-417205073,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ATt57DJJw_xNpEBddZead_NxwD0TV_PSks5uV4bTgaJpZM4WS1Zg
.

Closing in favor of #1775


Muiltiple aggregation intializtions for the aggregation 'ApiUserPerAppAgg'

Description
When an APIM-Analytics-3.2.0-Worker(U2-39) server is configured with alerts following log lines are visible frequently(within one-minute intervals).
INFO {io.siddhi.core.aggregation.AggregationRuntime} - Starting initialization of executors for aggregation: ApiUserPerAppAgg
INFO {io.siddhi.core.aggregation.AggregationRuntime} - Finished initialization of executors for aggregation: ApiUserPerAppAgg

As per the logs, it seems there are continuous initializations for the aggregation 'ApiUserPerAppAgg' and hope this should be one-time initialization.
Steps to Reproduce
Configure an APIM-Analytics server with alerts and monitor the logs.
Affected Component
Analytics
Version
APIM - Analytics -3.2.0
Environment Details (with versions)
N/A
Relevant Log Output
No response
Related Issues
No response
Suggested Labels
No response

Hi All,
Was this released? kindly update.
Best Regards,
Janith.

U2 update is released, working on the WUM update. Will update soon.
Yours sincerely,
Gihan


Many projects using fetchFromGitHub src.rev as a commit hash when it's now just the version

Describe the bug
I was looking into whether there was a cleaner way to get a commit sha when using fetchFromGitHub and I found a several projects grabbing src.rev off of there to use as their commit sha.
That sounded great until I did a build and noticed the rev is just going to be vX.X.X or whatever you feed in.
I'm guessing this worked many years ago when it wasn't using fetchzip?? It would be nice if fetchFromGithub did grab the commit sha though
To Reproduce
Steps to reproduce the behavior:

`nix-shell -p argo
argo version
GitCommit: v2.11.8

Expected behavior
Notify maintainers

@matthewbauer
Metadata

system: "x86_64-linux"
host os: Linux 5.9.12, NixOS, 21.03pre256292.296793637b2 (Okapi)
multi-user?: yes
sandbox: yes
version: nix-env (Nix) 2.3.9
channels(root): "home-manager, nixos-21.03pre257339.83cbad92d73, nixos-hardware"
channels(jk): ""
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:

That's just a tag that can be translated to a revision though, isn't it?

By that do you mean leave the user of the program to work out what git commit that is?

When you replaced Rev did you also update/invalidate the sha256/hash?
If you leave the hash it will just hit the existing match whether or not the Rev had changed

Ouch, indeed you were right. Does it mean bug reported in this issue is no longer current?


refactor(api): csrf token on the new REST API

SUMMARY
Creates a new REST API endpoint to fetch the CSRF token from.
The goal is to deprecate the old API /superset/csrf_token in favour of this new endpoint.
Before making the old endpoint issue a deprecation log message, we need to migrate the front-end client to this new endpoint.
By using this new endpoint, it's now easier to use the new API programatically by using JWT tokens to authenticate (only available to Auth DB and Auth LDAP, yet can work with other configurations by creating a username/password on the DB)

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

Codecov Report

Merging #13212 (b6d7c10) into master (2ce7982) will increase coverage by 11.04%.
The diff coverage is 62.99%.

@@             Coverage Diff             @@
##           master   #13212       +/-   ##
===========================================
+ Coverage   53.06%   64.10%   +11.04%
===========================================
  Files         489      961      +472
  Lines       17314    44984    +27670
  Branches     4482     4088      -394
===========================================
+ Hits         9187    28837    +19650
- Misses       8127    16147     +8020

Flag
Coverage Δ

cypress
58.42% <68.22%> (+5.36%)
:arrow_up:

python
67.21% <56.54%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...erset-frontend/src/SqlLab/components/ResultSet.tsx
4.16% <0.00%> (-0.09%)
:arrow_down:

...end/src/SqlLab/components/RunQueryActionButton.tsx
52.77% <ø> (ø)

superset-frontend/src/chart/ChartContainer.jsx
100.00% <ø> (ø)

superset-frontend/src/chart/ChartRenderer.jsx
75.67% <0.00%> (-1.04%)
:arrow_down:

...perset-frontend/src/common/components/Dropdown.tsx
50.00% <ø> (ø)

...t-frontend/src/common/components/Tooltip/index.tsx
100.00% <ø> (ø)

...perset-frontend/src/components/AlteredSliceTag.jsx
92.00% <ø> (ø)

superset-frontend/src/components/CachedLabel.jsx
42.10% <ø> (ø)

...ontend/src/components/CertifiedIconWithTooltip.tsx
0.00% <ø> (ø)

...perset-frontend/src/components/CopyToClipboard.jsx
57.14% <0.00%> (ø)

... and 664 more

Continue to review full report at Codecov.

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

LGTM!
we should also add the proper documentation on how to leverage that new API to manage /V1 API calls from an external non-frontend application

Yep, and we have some additional cool plans also

@dpgaspar as part of this PR, let's also add a deprecation notice on /superset/csrf_token for 2.0 - we can schedule the follow-up work to migrate front-end usage prior to that I believe.


Upgrade modules

Super-seeds #2955.

Or superseded if you prefer real English.

Superseeded, of course.

This is still in a state. The commit needs to be split for it's different concerns. And some changes due breaking changes in Zinc need addressing. But I pushed this so I could ask @eed3si9n if he has any thoughts on how to deal with them.

Since you're using latest Zinc API, it would be interesting if you chime in and let me know if there's any aspect in the API that bothers you / you find annoying. I'm sure we can polish its rough edges.

Breaking changes are annoying. Look at the two FIXMEs in the diff.

Do you consider sbt/util to be considered part of "Zinc's API"? Because another one is some APIs now require ManagedLogger instead of Logger. How do I deal with that change, given the Logger I have on hand?

Thanks for the pointers, first FIXME is severe. I don't have any idea how Zinc logging works, to be honest. I consider Zinc API whatever is defined in the compiler-interface. I think that change is related to https://github.com/sbt/zinc/pull/224/files, and it's sbt-only, so I would not consider it part of the Zinc API.

I'm passing the buck on this one, to @eed3si9n.
I originally took this task is because I had already dealt with some of the breaking changes in the modules in another branch of mine (unpublished).
But there are some serious breaking changes to deal with here, that I can't deal with because I don't understand what the plan is.
So this can serve as a starting point.


Harden TraceEventSession.ProviderNameToGuid

Avoid dereferencing a null pointer if providersDesc is null.
This code has not changed recently - it appears that something has changed underneath this call.  That said, we can definitely harden this path and do better.

/azp run


How to add text to frames while recording video?

How to add (draw) text to frames while recording video?

Have you found a way about how to add (draw) text to frames while recording video


Add Weapon Light

Add pulsing light to AK-47 when it's spawned on stage.
Add weapon on player's back when it's picked and not equipped.

Added in commit 21d7b7f.


theory_start

👷 Deploy Preview for rayko-research processing.

Name
Link

🔨 Latest commit
14115b00039f1b6e6773083c7df3ecdf4c12887f

🔍 Latest deploy log
https://app.netlify.com/sites/rayko-research/deploys/64a3e5106c05680008b528ed


[Backport] XContent Refactor to 2.x

XContent namespace refactor from common -> core is going to be merged to opensearch/2.x which will break the 2.x build.  This issue is for backporting #662 to 2.x after the core namespace change is merged.
Depends on https://github.com/opensearch-project/OpenSearch/pull/6470

https://github.com/opensearch-project/OpenSearch/pull/6470 merged


Catalog does not listen to change events in location

Issue mentioned in following PR and Discord:
PR: https://github.com/backstage/backstage/pull/8378
Discord: https://discord.com/channels/687207715902193673/687235481154617364/917756886491754526
Expected Behavior
I should be able to use a <Link />  to navigate to the catalog and use the search query to apply filters e.g.,
<Link to="/catalog?filters%5Bkind%5D=component&filters%5Btype%5D=service" />

This would allow us to have a <SidebarSubmenuItem/> that can be clicked to navigate to the catalog with different filters applied.
          <SidebarSubmenuItem
            title="Services"
            to="catalog?filters%5Bkind%5D=component&filters%5Btype%5D=service"
            icon={HomeIcon}
          />
          <SidebarSubmenuItem
            title="Libraries"
            to="catalog?filters%5Bkind%5D=component&filters%5Btype%5D=library"
            icon={HomeIcon}
          />

Clicking the first one would would take us to the catalog, components filtered by service type.
Clicking the second one would change the filter from 'service' -> 'library' in the catalog (causing a re-render).
Current Behavior

Currently, the Catalog does not react to change events in the location. Once it gets loaded, filtering is only done by js.
In the <SidebarSubmenu/> case above,

Clicking the first one would would take us to the catalog, components filtered by service type.
Clicking the second one would cause a change in the location (catalog?filters%5Bkind%5D=component&filters%5Btype%5D=service -> catalog?filters%5Bkind%5D=component&filters%5Btype%5D=library) but the view won't change - the catalog doesn't re-render and continues displaying only the components with type=service

Vice versa: if I filter the catalog from within, location (const location = useLocation()) does not get updated, so the items in the sidebar/submenu won't be set to be active.
Possible Solution

Steps to Reproduce

You can try replacing the Sidebar content and replacing with this snippet locally in Root.tsx
<Sidebar disableExpandOnHover>
  <SidebarItem icon={HomeIcon} text="Catalog">
    <SidebarSubmenu title="Catalog">
              <SidebarSubmenuItem
                title="Services"
                to="catalog?filters%5Bkind%5D=component&filters%5Btype%5D=service"
                icon={HomeIcon}
              />
              <SidebarSubmenuItem
                title="Libraries"
                to="catalog?filters%5Bkind%5D=component&filters%5Btype%5D=library"
                icon={HomeIcon}
              />
    </SidebarSubmenu>
  </SidebarItem>
</Sidebar>

Go to http://localhost:3000/1
Click the 'Services' submenu item in the sidebar - this should take you to the catalog, filtered by type=service
Click the 'Libraries' submenu item in the sidebar - this will change the search query but the catalog will remain filtered by 'type=service'

Vice versa:

Go to http://localhost:3000/catalog
Manually filter by Service type - this will update search to something like catalog?filters%5Bkind%5D=component&filters%5Btype%5D=service .
The 'Service' submenu item won't be highlighted/set to active.

Context

Implemented new features for the Sidebar based on this issue: https://github.com/backstage/backstage/issues/6933
PR: https://github.com/backstage/backstage/pull/7521
The design includes 3 submenu items which allow us to click on them to go to the catalog with different filters applied such as 'service', 'library' and 'website' which is not possible at the moment.

Your Environment

NodeJS Version (v14):
Operating System and Version (e.g. Ubuntu 14.04):
Browser Information:

Is this something you'd like to contribute @hiba-aldalaty? 🙏

Hi @benjdlambert, I am a colleague of @hiba-aldalaty (at Expedia). I will be working on this issue and look forward to contributing. I will be sure to reach out if I have any questions.

Great @danielsamet! Let us know if you have any problems or any questions we'd be happy to help :pray:

Hi @benjdlambert 👋. As the history here shows, I have just created a PR draft to fix this issue. However, I am experiencing a weird issue with it and thought I would reach out for some help.
Testing the code manually seems to work fine. So I proceeded to create a test for my code but noticed something weird. The drafted test code adds 'service' to the URL search parameters and that works fine (it correctly updates the filter dropdown to display 'Service' and filter accordingly). The strange thing happens when changing 'service' to any other option, for example 'library'. We would expect the filter to update to 'Library'... but it doesn't! And I can't explain why.
To clarify, this issue is specifically within Jest - I have not been able to reproduce it when manually testing in the browser.
Click to see the Test Code in question.
Please let me know if you require any further context to this.

I was just trying to setup the same things and have run into this issue. @danielsamet any updates on this? Anything I might be able to do to help?

Hi @awanlin, what specifically is the issue you are running into? If you click through to the PR draft you can see the latest updates on it.

Hello @danielsamet, I'm running into the exact issue described in the Steps to Reproduce. We'd like to make seeing the different Kinds easier as the drop down in the Catalog for this isn't very obvious. This seems like a great approach but if you are looking at say APIs and then want to see Components the catalog won't refresh.
I'll keep my eyes on the PR, thanks for contributing this fix 👍

I'm still having the issue described here. I have confirmed that I'm using version 0.6.14 of @backstage/plugin-catalog-react which has the suggested fix in it. Can we re-open this?

Still and issue for us, can we re-open, please? @timbonicus

Let's revisit! Is there any chance you might be able to help look into the underlying cause?

Strange, I tested that PR using the snippets from this issue 🤔  happy to chip in here too if needed @awanlin.

I am doing something a little different - I'm only filtering on Kind - but it should still work. Here's the code I'm using for this:
<SidebarItem icon={MenuBookIcon} to="catalog" text="Catalog">
          <SidebarSubmenu title="Catalog">
            <SidebarSubmenuItem
              title="Domains"
              to="catalog?filters%5Bkind%5D=domain"
              icon={DomainIcon}
            />
            <SidebarSubmenuItem
              title="Systems"
              to="catalog?filters%5Bkind%5D=system"
              icon={SystemIcon}
            />
            <SidebarSubmenuItem
              title="Components"
              to="catalog?filters%5Bkind%5D=component"
              icon={ComponentIcon}
            />
            <SidebarSubmenuItem
              title="APIs"
              to="catalog?filters%5Bkind%5D=api"
              icon={ApiIcon}
            />
            <SidebarDivider />
            <SidebarSubmenuItem
              title="Resources"
              to="catalog?filters%5Bkind%5D=resource"
              icon={ResourceIcon}
            />
            <SidebarSubmenuItem
              title="Templates"
              to="catalog?filters%5Bkind%5D=template"
              icon={CreateComponentIcon}
            />
            <SidebarDivider />
            <SidebarSubmenuItem
              title="Groups"
              to="catalog?filters%5Bkind%5D=group"
              icon={GroupIcon}
            />
            <SidebarSubmenuItem
              title="Users"
              to="catalog?filters%5Bkind%5D=user"
              icon={UserIcon}
            />
          </SidebarSubmenu>
        </SidebarItem>

Ahh, that makes sense. I didn't make the same functional update to CatalogKindHeader in that PR, so that's still needed. I'll take a look at this next week if no one else gets to it.

Thanks @timbonicus, I've been poking around but I'm still at React 101, this feel a lot more advanced then I can tackle right now. No rush, we have this behind a feature flag for now so easy for me to test when a fix does show up 😄

Had some time to look at it closer, between your previous PR and pointing out the CatalogKindHeader I've been able to put in a fix for this. When you have time, I know it's hack week, can you take a look at PR #10036, please?


Ledger support for external address airdrops

Left some comments, can you write the purpose of the PR in the description to explain why this change was needed.
It's good to leave information about design choices for future readers.


Spot missing tests

This PR adds todo notes to indicate where new tests need to be written and adds placeholder tests where we are missing test coverage for new features added from Local Discovery.
Links to LD-529

Fails

:no_entry_sign:
Missing Test Files:

src/lib/Scenes/City/Components/SavedEventSection/__tests__/index-tests.tsx
src/lib/Scenes/Favorites/Components/Artists/Relay/__tests__/FavoriteArtists-tests.tsx
src/lib/Scenes/Favorites/Components/Artworks/Relay/__tests__/FavoriteArtworks-tests.tsx
src/lib/Scenes/Favorites/Components/Categories/Relay/__tests__/FavoriteCategories-tests.tsx
src/lib/Scenes/Favorites/Components/Fairs/Relay/__tests__/FavoriteFairs-tests.tsx
src/lib/Scenes/Favorites/Components/Shows/Relay/__tests__/FavoriteShows-tests.tsx

If these files are supposed to not exist, please update your PR body to include "#skip_new_tests".

:no_entry_sign:
TypeScript hasn't passed, see below for full logs

TypeScript Fails

  Generated by :no_entry_sign: dangerJS

The Danger failures are because the files are named FavoriteArtists/index.tsx but the tests are FavoriteArtists-tests.tsx. I've added a note to address this to the FE iOS Practice, but I'd like to get this PR green without adding skip new tests. Can we rename the test files index-tests.tsx? We follow that pattern elsewhere in Emission, but if we should avoid it, let me know 👍

@ashfurrow makes sense. Since there are so many tests that are missing and I brought this up during standup to see if its a good use of time to test all these smaller components. I think @l2succes said we should really focus on testing the larger screens and the map bounds. But I'm happy to make tickets to track all these tests.

@ashleyjelks cool, thanks! Like I said, we can have a single ticket for "fair tests" that covers the Fair and FairHeader components, etc. Then we we write the fair tests, we can decide what level of testing is appropriate for each TODO comment with that ticket number.


Host header is changed too late when using UseHostHeaderForRequestUrl

Describe the bug
When running the backend ASP.NET app with the following app setting:
<add key="aspnet:UseHostHeaderForRequestUrl" value="true" />

The Host header from the backend app will be used to build Request.Url instead of the forwarded proxy host.
This seems to be because the Host header from X-Forwarded-Host is set too late in the pipeline and that Request.Url has already been calculated.
To Reproduce
Add the following app setting to the backend ASP.NET app:
<add key="aspnet:UseHostHeaderForRequestUrl" value="true" />

Inspect Request.Url in the app. It should show the host of the backend app, not the proxy.
Further technical details
ASP.NET Framework Application:

Technologies and versions used (i.e. MVC/WebForms/etc): MVC, WebForms, WebAPI
.NET Framework Version: 4.8.4515.0
IIS Version: 10.0.19041.320
Windows Version: 21H2

ASP.NET Core Application:

Targeted .NET version: net6.0
.NET SDK version: 6.0.400

I tried setting a breakpoint where the Url ends up being built, this is the stack trace I'm getting:
System.Web.dll!System.Web.HttpRequest.Url.get() Line 923
	at System.Web\HttpRequest.cs(923)
Microsoft.Owin.Host.SystemWeb.dll!Microsoft.Owin.Host.SystemWeb.OwinCallContext.Microsoft.Owin.Host.SystemWeb.CallEnvironment.AspNetDictionary.IPropertySource.GetRequestQueryString() Line 96
	at /_/src/Microsoft.Owin.Host.SystemWeb/OwinCallContext.Environment.cs(96)
Microsoft.Owin.Host.SystemWeb.dll!Microsoft.Owin.Host.SystemWeb.CallEnvironment.AspNetDictionary.RequestQueryString.get() Line 278
	at /_/src/Microsoft.Owin.Host.SystemWeb/CallEnvironment/AspNetDictionary.Generated.cs(278)
Microsoft.Owin.Host.SystemWeb.dll!Microsoft.Owin.Host.SystemWeb.CallEnvironment.AspNetDictionary.PropertiesTryGetValue(string key, out object value) Line 1078
	at /_/src/Microsoft.Owin.Host.SystemWeb/CallEnvironment/AspNetDictionary.Generated.cs(1078)
Microsoft.Owin.Host.SystemWeb.dll!Microsoft.Owin.Host.SystemWeb.CallEnvironment.AspNetDictionary.TryGetValue(string key, out object value) Line 85
	at /_/src/Microsoft.Owin.Host.SystemWeb/CallEnvironment/AspNetDictionary.cs(85)
Microsoft.Owin.dll!Microsoft.Owin.OwinRequest.Get<string>(string key) Line 370
	at /_/src/Microsoft.Owin/OwinRequest.cs(370)
Microsoft.Owin.dll!Microsoft.Owin.OwinRequest.QueryString.get() Line 126
	at /_/src/Microsoft.Owin/OwinRequest.cs(126)
Microsoft.Owin.dll!Microsoft.Owin.OwinRequest.Uri.get() Line 145
	at /_/src/Microsoft.Owin/OwinRequest.cs(145)
System.Web.Http.Owin.dll!System.Web.Http.Owin.HttpMessageHandlerAdapter.CreateRequestMessage(Microsoft.Owin.IOwinRequest owinRequest, System.Net.Http.HttpContent requestContent)
System.Web.Http.Owin.dll!System.Web.Http.Owin.HttpMessageHandlerAdapter.InvokeCore(Microsoft.Owin.IOwinContext context, Microsoft.Owin.IOwinRequest owinRequest, Microsoft.Owin.IOwinResponse owinResponse)
Hangfire.Core.dll!Microsoft.Owin.Mapping.MapMiddleware.Invoke(System.Collections.Generic.IDictionary<string, object> environment)
Microsoft.Owin.Host.SystemWeb.dll!Microsoft.Owin.Host.SystemWeb.IntegratedPipeline.IntegratedPipelineContextStage.RunApp(System.Func<System.Collections.Generic.IDictionary<string, object>, System.Threading.Tasks.Task> entryPoint, System.Collections.Generic.IDictionary<string, object> environment, System.Threading.Tasks.TaskCompletionSource<object> tcs, Microsoft.Owin.Host.SystemWeb.IntegratedPipeline.StageAsyncResult result) Line 84
	at /_/src/Microsoft.Owin.Host.SystemWeb/IntegratedPipeline/IntegratedPipelineContextStage.cs(84)
Microsoft.Owin.Host.SystemWeb.dll!Microsoft.Owin.Host.SystemWeb.IntegratedPipeline.IntegratedPipelineContextStage.BeginEvent(object sender, System.EventArgs e, System.AsyncCallback cb, object extradata) Line 76
	at /_/src/Microsoft.Owin.Host.SystemWeb/IntegratedPipeline/IntegratedPipelineContextStage.cs(76)
System.Web.dll!System.Web.HttpApplication.AsyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() Line 327
	at System.Web\HttpApplication.cs(327)
System.Web.dll!System.Web.HttpApplication.ExecuteStepImpl(System.Web.HttpApplication.IExecutionStep step) Line 3599
	at System.Web\HttpApplication.cs(3599)
System.Web.dll!System.Web.HttpApplication.ExecuteStep(System.Web.HttpApplication.IExecutionStep step, ref bool completedSynchronously) Line 3627
	at System.Web\HttpApplication.cs(3627)
System.Web.dll!System.Web.HttpApplication.PipelineStepManager.ResumeSteps(System.Exception error) Line 1165
	at System.Web\HttpApplication.cs(1165)
System.Web.dll!System.Web.HttpApplication.BeginProcessRequestNotification(System.Web.HttpContext context, System.AsyncCallback cb) Line 4058
	at System.Web\HttpApplication.cs(4058)
System.Web.dll!System.Web.HttpRuntime.ProcessRequestNotificationPrivate(System.Web.Hosting.IIS7WorkerRequest wr, System.Web.HttpContext context) Line 1403
	at System.Web\HttpRuntime.cs(1403)
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(System.IntPtr rootedObjectsPointer, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) Line 461
	at System.Web.Hosting\PipelineRuntime.cs(461)
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(System.IntPtr rootedObjectsPointer, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) Line 386
	at System.Web.Hosting\PipelineRuntime.cs(386)
[Native to Managed Transition]
[Managed to Native Transition]
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotificationHelper(System.IntPtr rootedObjectsPointer, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) Line 499
	at System.Web.Hosting\PipelineRuntime.cs(499)
System.Web.dll!System.Web.Hosting.PipelineRuntime.ProcessRequestNotification(System.IntPtr rootedObjectsPointer, System.IntPtr nativeRequestContext, System.IntPtr moduleData, int flags) Line 386
	at System.Web.Hosting\PipelineRuntime.cs(386)
[AppDomain Transition]

Ah, it seems that ProxyHeaderModule does, in fact, set SERVER_NAME, SERVER_PORT and Request.Headers["Host"] using the forwarded headers, it's just that HttpWorkerRequest.GetKnownRequestHeader returns the wrong value. Apparently setting those things at the ASP.NET level doesn't pipe it back down to IIS.

@HaoK can you please take a look at this and see if there's something we can do better here?

@Tratcher so I debugged this and looks like IIS7WorkerRequest will cache the known headers early on, via this call stack, after which setting the host headers won't affect anything since its cached into the _knownRequestHeaders.  Not sure if there's anything we can do about this
https://github.com/microsoft/referencesource/blob/master/System.Web/Hosting/IIS7WorkerRequest.cs#L741
>	System.Web.dll!System.Web.Hosting.IIS7WorkerRequest.ReadRequestHeaders() Line 1241	C#
 	System.Web.dll!System.Web.Hosting.IIS7WorkerRequest.GetKnownRequestHeader(int index) Line 741	C#
 	System.Web.dll!System.Web.HttpWorkerRequest.HasEntityBody() Line 1181	C#
 	System.Web.dll!System.Web.HttpRequest.GetEncodingFromHeaders() Line 933	C#
 	System.Web.dll!System.Web.HttpRequest.ContentEncoding.get() Line 1333	C#
 	System.Web.dll!System.Web.HttpRequest.QueryStringEncoding.get() Line 1359	C#
 	System.Web.dll!System.Web.HttpRequest.QueryStringText.get() Line 2087	C#
 	System.Web.dll!System.Web.HttpRequest.ValidateInputIfRequiredByConfig() Line 2634	C#
 	System.Web.dll!System.Web.HttpApplication.PipelineStepManager.ValidateHelper(System.Web.HttpContext context) Line 4343	C#

It does seem like the HttpHeaderCollection should pipe the request header back down to IIS7WorkerRequest:
https://github.com/microsoft/referencesource/blob/5697c29004a34d80acdaf5742d7e699022c64ecd/System.Web/HttpHeaderCollection.cs#L110-L112
Which in turn seems to pipe it back through to IIS:
https://github.com/microsoft/referencesource/blob/5697c29004a34d80acdaf5742d7e699022c64ecd/System.Web/Hosting/IIS7WorkerRequest.cs#L2007-L2028
The weird thing is that this doesn't update the cached _knownRequestHeaders array 😞

Yeah, this looks like a bug in System.Web unfortunately :(

Yeah, this looks like a bug in System.Web unfortunately :(

And that leaves the bar super super high to get it fixed? 😟

Right

Ok private reflection works, verified on the contact page which prints the request.url in the mvccoreapp, after doing this reflection to flip the flag in the proxy module, the url will now be correct
                // Need to use reflection to force HttpRequest to update the known headers
                var wrField = typeof(HttpRequest).GetField("_wr", BindingFlags.NonPublic | BindingFlags.Instance);
                var workerRequest = wrField.GetValue(request);
                var iis7WorkerRequestType = Assembly.GetAssembly(typeof(HttpRequest)).GetType("System.Web.Hosting.IIS7WorkerRequest");
                var requestHeaderAvailableField = iis7WorkerRequestType.GetField("_requestHeadersAvailable", BindingFlags.NonPublic | BindingFlags.Instance);
                requestHeaderAvailableField.SetValue(workerRequest, false);

Before the fix: Url: https://localhost:44339/Home/Contact (Shows the framework backend Url)
After the fix: Url: https://localhost:55442/Home/Contact (Shows the core app url)
If we are happy with this direction I can open a PR

Assuming it's safe to read the headers multiple times, I guess it's OK, but it does a lot of unnecessary work when you could just surgically insert the new value into the cached array 😉

Since HttpWorkerRequest.GetKnownRequestHeaderIndex(String) appears to be public, it should only be a matter of setting _knownRequestHeaders[index] = value (assuming _knownRequestHeaders isn't null).

Since HttpWorkerRequest.GetKnownRequestHeaderIndex(String) appears to be public, it should only be a matter of setting _knownRequestHeaders[index] = value (assuming _knownRequestHeaders isn't null).

This combined with only doing this if the aspnet:UseHostHeaderForRequestUrl is true should limit the perf impact

The perf impact is limited if you cache common parts like typeof(HttpRequest).GetField... staticky. only things like GetValue and SetValue need to be called per request.

I was thinking more about the cache invalidation and re-parsing of the request headers. If you think it's OK, I won't protest 😅

I like your proposal to just use reflection to update the array value, I'll open a PR with that approach


Simmy and .Net versions upgrade

updates Simmy to the latest version
refactors monkey policies to use the new syntax API
updates project to use .net core 3.1

Thanks for picking this up @vany0114 !
Can we also update the CHANGELOG.md? (give this a new version number and describe the changes)

Done!

Looks good to me!


pip install mavsdk on Mac Big Sur M1: "ERROR: No matching distribution found for mavsdk==0.16.1 (from -r requirements.txt (line 9))"

I'm attempting to install mavsdk via pip and keep getting "ERROR: No matching distribution found..."
Here's the relevant portions of the output from verbose pip install:
Skipping link: none of the wheel's tags match: py3-none-macosx_10_9_x86_64: https://files.pythonhosted.org/packages/c6/bf/a47e093605f33be33b56dccdcdf509a080c1330fed89ba95bdf79d384aa6/mavsdk-0.16.1-py3-none-macosx_10_9_x86_64.whl#sha256=8298b31cdfb86a7699dc3a0cd74f5700fc87447f703c1267026fe122493cc8c3 (from https://pypi.org/simple/mavsdk/) (requires-python:>=3.6)
    Skipping link: none of the wheel's tags match: py3-none-manylinux1_x86_64: https://files.pythonhosted.org/packages/3c/84/1984042247e617e1f01fc31ca9b666c97b1f002310a1055eda054b0ca7c1/mavsdk-0.16.1-py3-none-manylinux1_x86_64.whl#sha256=ab2338a3e80618cd93cb15eb7cf6cf289a4f8eac982cdf13a973e61cdfa52c92 (from https://pypi.org/simple/mavsdk/) (requires-python:>=3.6)
    Skipping link: none of the wheel's tags match: py3-none-manylinux2014_aarch64: https://files.pythonhosted.org/packages/78/4d/eb060ccda4e1f1e83f28e07bdaaf2fedd9f84aa12d1ebb8de5a5cd1a068d/mavsdk-0.16.1-py3-none-manylinux2014_aarch64.whl#sha256=9ff69141057cfd488bfd8b71697a471ba3d1e5af75f25cf5574429aeb28e8762 (from https://pypi.org/simple/mavsdk/) (requires-python:>=3.6)
    Skipping link: none of the wheel's tags match: py3-none-manylinux2014_x86_64: https://files.pythonhosted.org/packages/44/6e/3df56975c624a78c95eaf54fdc3e20a0c09ea9395e14e7d52e62e924930c/mavsdk-0.16.1-py3-none-manylinux2014_x86_64.whl#sha256=c186d2eff3cc19e4b1aa128a6e0e98f6810ea3a5599d69f30c82fbbe361b4b9c (from https://pypi.org/simple/mavsdk/) (requires-python:>=3.6)
    Skipping link: none of the wheel's tags match: py3-none-win32: https://files.pythonhosted.org/packages/f3/46/8a0235f9b3a278f726756356feb47d158601f88492bb45d5e97eebd4bea0/mavsdk-0.16.1-py3-none-win32.whl#sha256=91e45e74889c993cb83a0e6c6075e88faf13de3405dbbcdc0f5f645215c20d43 (from https://pypi.org/simple/mavsdk/) (requires-python:>=3.6)
    Skipping link: none of the wheel's tags match: py3-none-win_amd64: https://files.pythonhosted.org/packages/39/52/3c1fb9b7ca0f7f692588847f2698b474225e3197c689352bdad117c7cb02/mavsdk-0.16.1-py3-none-win_amd64.whl#sha256=f12f8b7a5e952889aeb5500479a3cd40c31eb25093878feb4f6a64f4ba8e1da6 (from https://pypi.org/simple/mavsdk/) (requires-python:>=3.6)
  Given no hashes to check 0 links for project 'mavsdk': discarding no candidates
  ERROR: Could not find a version that satisfies the requirement mavsdk==0.16.1 (from -r requirements.txt (line 9)) (from versions: 0.5.2, 0.7.0, 0.8.0, 0.8.1, 0.8.2, 0.9.0, 0.9.1, 0.10.0, 0.11.0, 0.12.0)

OS: MacOS v 11.2.2 Big Sur
Arch: M1 ARM
Python version: 3.8.2
PIP version: 19.2.3
Notes: Running Terminal in Rosetta mode and using a virtual environment via venv
I duplicated Terminal and am running it in Rosetta (x86) mode but doesn't seem to avoid this issue. Not sure if I'm interpreting the output correctly but seems like the only available versions PIP is looking to install is 0.5.2 to 0.12.0 tho current version is 0.16.1
Any help would be greatly appreciated.

Thanks for the information. I suppose it's time to start building mavsdk_server for M1 and push it to PyPi like all the other binaries that we already ship for x86_64, armv7, armv8/aarch64, win32, win_amd64, etc.
I think the first step would to have an M1 macOS machine in GitHub action but that doesn't seem very easy, just reading through:
https://github.com/actions/virtual-environments/issues/2187

Thanks for the quick reply! I was able to install ver 0.12.0 but haven't had a chance to run it yet. Probably will do so later this weekend.

Does pip support the M1 already?

There is no package for M1 macs (darwin arm64) available on PyPI https://pypi.org/project/mavsdk/#files, even for the latest release this month (1.3.0).
That doesn't mean you can compile it yourself and try though. I personally didn't do that. I ran it in a Python docker image - which implicitly uses linux arm64 which is available on PyPI.

One issue we have is that the Github CI does not provide any M1 workers, so... :sweat_smile:

Looks like this has been added (or is about to?): https://github.com/github/roadmap/issues/507

Oh it's really really new then. I had checked very recently and it was not there :grin:. Well it would for sure be nice to try it!

I tried running one of those new workers, but they never start: https://github.com/mavlink/MAVSDK/pull/1783
Either I'm doing it wrong, or it's not ready for production yet

Hi! What is the status of this issue?
@ben-xD, I've tested local build on my M1-Pro. Everything looks fine for now.

I think it's not there: https://github.com/actions/virtual-environments/issues/2187

Do we really need to build this on Mac? Can't we use a wheel for ARM64?

@JonasVautherin, what if I donate an M1 cloud instance until this issue will be resolved? Say, provide an SSH key pair which you can store in build environment.

However, this tutorial would suggest that it is possible:
https://betterprogramming.pub/run-github-actions-self-hosted-macos-runners-on-apple-m1-mac-b559acd6d783

This should be fixed with 2.7.0.


The application badge should be updated even if the device is offline.

BY now, the badge value is the number of rooms which has unread notified messages.
This value is updated by the push notifications.
But when the device is offline or the application is the fdroid one, the client should be able to manage the badge.


Trailing whitespace (but not leading) is trimmed from decorations after:contentText

Given a decoration with leading/trailing whitespace in the contextText for the after property:

The trailing space is trimmed, but the leading space is not which feels a little inconsistent:

(Sure, I'd rather not use spaces, but it seems there's no way to set padding, or borders only on the sides, and text looks terrible with a BG and no padding :-))

I have double checked and we generate all CSS correctly, we are not trimming the trailing space in VS Code.
I tried and could reproduce outside of VS Code at https://jsfiddle.net/80z7mrw2/

The same rendering occurs in both Chromium and Firefox, which makes me believe that this is perhaps intentional 🤷♂ . If you feel strongly about this, please feel free to report upstream to Chromium at https://bugs.chromium.org/p/chromium/issues/list


First Pass Bulk Data

NOTE: Most recent updates in separate comment below.
I would say this PR represents about 90% completion with the First Pass. Some notes on what still needs to be completed:
TODO:

[x] Group 3 -- There's a bug I'm chasing down that I believe comes from checking slices. Really did not get that deep into it before posting this, but its affecting about seven of the group 3 tests in the same way -- "No method exists for due[x]". Testing against the reference server with group_id 1 should reproduce the issue.
[x] Group 3 -- Provenance/Medication/Location tests
[x] Unit Tests --  Not a 100% sure what to do about unit tests. I still need to write one or two more for BulkDataUtils -- however, the rest of the functionality was ported over from program, so I think it's solid (unless you think it's worth re-testing those). My big question though for writing unit tests for Group 3 is where I can find reference resources that fully conform to profiles. Is it worth bringing those in just for unit tests? If yes, should be pretty straightforward (if tedious) to write those unit tests.

WAITING:

[ ] TLS Tester Class needs to be implemented and TLS tests added to each group. Should be quick once the class is available.
[ ] Group 2 and 3 tests use delete and stream functionality, which I have an open PR for in inferno-core. I wrote a very basic mock 'stream' request in BulkDataUtils, but this will ultimately be deleted once stream is available within the client. The singular delete test was just commented out for the time being.

Final notes: I pivoted away from passing previously made requests between individual tests because I thought it would be useful to be able to run each individual test with it checking for its required inputs -- I did not realize this would all end up being run as a large group anyways. This decision is mostly evident in Group 1 and a little bit in Group 2, so I'm aware the organization is a bit clunky. I'm more than happy to go back and re-organize, but before doing that wanted to get your thoughts -- is it worth the effort if it doesn't make a difference to how the group is being run?

For Group 3, I was able to pull in metadata directly from the US Core Tests -- except for the location and medication profiles, so I included copies of them under the multi-patient-api/metadata folder. Would love to know if there is a cleaner way to grab them from US Core. For Unit Tests for Group 3, I downloaded copies of the resources (in ndjson files) from the reference server and used them to test a mix of missing elements, missing slices, and missing resources. I also broke up the BulkDataUtils module into three separate modules, one for each group. For the ValidationUtils module, I'm unsure what to do with the determine_profile and predefined_device_type?. Neither of these methods is being used currently: determine_profile is basically guess_profile from inferno-program, which @arscan and I discussed being pretty useless for core. My thoughts in including determine_profile was that it went hand-in-hand with predefined_device_type? -- and I am also uncertain whether we need  predefined_device_type? in core. I definitely need some guidance on these, as well as the reasoning behind  counting the number of encounter resources (this also happens in program, and I did not include it as every resource is counted.)  The BulkDataUtils unit tests aren't really testing anything but the new stream - most other methods in that file are pulled verbatim from program or rely heavily on USCore MustSupport.
One thing to note with testing against the reference server is that the Observation test fails - which I believe it fails correctly as there is a _http://hl7.org/fhir/StructureDefinition/bmi_ resource that doesn't conform to the profile. It's the 137th resource, so when this test fails it takes a WHILE for the next test to begin. It's something I noticed but haven't investigated, but my guess would be that it's taking a while for all the validation errors to come through and that's potentially causing the slow-down. Once stream is merged in, I'll play around with the line_collection variable and the stored request so that only the first 100 validated resources are being shown to the user.

Added profile guessing and also re-organized the code a bit to make it more readable. Now, only missing delete and tls_tester (pr coming soon).

TODO: Clean-up Rubocop (this will be last thing I do before being merged) and confirm the cause of the Observation test failure when being run against the reference server.

Cause of Observation test failure being dealt with by @Jammjammjamm.

Added back in the requires_access_token test. Confident that I can get make updates with this test removed before Wednesday; however, an initial, lazy attempt to the remove the test broke a couple more things than I anticipated. Just for peace of my mind, I think it's best to get the PR merged in with the test (as it stands currently) and then update it in the next day or two.


Replace metadata validation service with API

Context
Delete metadata validation service mutations and use data from API
Actual behavior
GovTool is using metadata validation service
Expected behavior
GovTool should fetch data from API

this is done


Add PageXL to No Code Tools

Hi Lisa!
Checklist

[x] I made something good today 💐.
[x] I put links in the correct format: [Tool](link) — description.
[x] My description starts with the lower-case letter and ends with the full stop.
[x] I put the tool in the alphabetical order.

Optional

[x] I added the appropriate labels: free, open-source or mac.
[x] I put the tool only to one category.
[x] I followed Contribution Guidelines.

@PlanetIrata thanks for adding a great tool!


KAFKA-14190: Update Zk TopicId from locally stored cache in controller

Change
Controller should update Zk with locally cached TopicId (when available) instead of assigning a new one when Zk doesn't have a TopicId.
Motivation for this change
This problem was highlighted in KAFKA-14190 and since then, multiple users have complained about the problem HERE (mailing list), HERE (mailing list) and HERE (ASF slack channel).
Description of the problem
In certain situations, it is possible that the TopicId stored locally on a broker for a topic differs from the topicId stored for that topic on Zk. Currently, such situation arises when users use a <2.8 client to alterPartitions for a topic on a >=2.8 (including latest 3.4) brokers AND they use --zookeeper flag from the client. Note that --zookeeper has been marked deprecated for a long time and has been replaced by --bootstrap-server which doesn't face this problem.
The result of topic Id discrepancy leads to availability loss for the topic until user performs the mitigation steps listed in  KAFKA-14190.
The exact sequence of steps are:

User uses pre 2.8 client to create a new topic in zookeeper directly
No TopicId is generated in Zookeeper
KafkaController listens to the ZNode, and a TopicChange event is created, During handling on this event, controller notices that there is no TopicId, it generated a new one and updates Zk.
At this stage, Zk has a TopicId.
User uses pre 2.8 client to increase the number of partitions for this topic
The client will replace/overwrite the entire existing Znode with new placement information. This will delete the existing TopicId in Zk (that was created by controller in step 3).
Next time KafkaController interacts with this ZNode, it will generate a new TopicId.
Note that we now have two different TopicIds for this topic name.
Broker may have a different topicId (older one) in metadata file and will complain about the mismatch when they encounter a new TopicId.

Testing

I have added a test with this change which asserts that TopicId for a topic is immutable i.e. once assigned, it does not change. This test fails before this change and passes after this change.

All integration tests and unit tests have been successful for me locally.

Side effects of this fix
There are no additional side effects of this change. No additional calls to Zk. We are only updating the TopicId from a locally cached value instead of assigning a new one.
Caveats
This code change does not fix the problem completely. The code change assumes that controller would have the TopicId locally so that it can update Zk but situations such as controller failover, that may not be true. More specifically, we will still end up having two different topic Ids in cases when controller failover takes place between the time when Zk TopicID was overwritten/removed and time when controller could update the TopicId with local value.
However, this code change should fix majority of the scenario that are impacted by this bug and a separate PR would be filed to fix the minority scenarios of controller failover during the exact duration.
Release
Due to the simple nature of the fix and the number of users who are impacted, I would request to consider adding this to 3.4.0 and backporting to as many previous version as we can.

@jolshan, since you are our topic Id expert, please take a look at this change when you get a chance. I would request some urgency (if possible) since I would preferably like to have this bug fix added in 3.4 due to greater number of users facing this problem with each passing day.

More specifically, we will still end up having two different topic Ids in cases when controller failover takes place between the time when Zk TopicID was overwritten/removed and time when controller could update the TopicId with local value.

I'm a bit concerned about cases like this. I'm also wondering if there are any cases where we actually assign the wrong ID to a topic. I think as it stands now, we isolated the issue to older clients, but once we start making kafka changes (and releasing them into new releases) we may open up the problem further. I'm also not sure if it's worth adding this complexity to the code path to handle this edge case.
Finally I'm wondering the implications for upgrades and downgrades.

It's too late for 3.4 unless it's a regression or a low risk critical fix to something new in 3.4.
Have we tried encouraging users to move away from the command line switches deprecated a long time ago?

I hate to say this, but I think this should probably be WONTFIX. The rule for admin tools that used the --zookeeper flag was always that you needed to match the admin tool version and the software version. Even using the admin tool for version 2.8 on version 2.7 would have been considered a major operator error. The scenario here we're discussing is using the 2.8 tool on a 3.x version. So a different major version (not even minor), and version that was released several years later. That's way outside of what we ever supported with the --zookeeper flag.
Let me give an example of the general kind of problem you could have here. If you created a prefix ACL using an admin tool that had the --zookeeper flag, but your kafka version didn't support prefix ACLs, what would happen? I'm not completely sure, but nothing good.
This is the same kind of thing -- old software overwriting whatever the new software has put in the znode. So it's not just topic IDs, but in general anything new that we add, that will get overwritten. We can't really support this -- we never promised to keep that znode the same forever.
Stuff like this is why the --zookeeper flags were removed. We do support cross-version compatibility when using the --bootstrap-server option.

Thanks for the comments folks. I would like to break the conversation as multiple FAQs and hopefully that would address the questions and points that you have raised above.
What is the motivation? Is it to make the latest versions compatible with pre 2.8 clients (for the scope of this bug) OR is it to protect the server when older clients are used?
It’s the latter. Currently, the bug manifests in availability loss for the impacted topic since the topic stops replication. This is recoverable by deleting the metadata file and broker will recreate it from Zk.

However, when KIP405(Tiered Storage) is merged in, it will begin to impact data integrity. This is because the metadata for a segment uses topicId as a key. When same segment for same topic is uploaded with different topic Ids, it leads to an unrecoverable situation.
I would be happy to discuss a different solution than what has been proposed in the PR which can protect the server against the above two cases.

Does this bug impact client/server in the same major version as well?

Yes. <2.8 client with >=2.8 server will have this bug.

Can the users migrate to the newer versions?

That would be ideal. But practically, there are many cases where the users rely on 3P libraries which haven’t updated their client version. We have been observing multiple cases where customers are facing this bug.
 As a community, we can push the problem back to the users and request them to upgrade their software, OR we can empathise with their situation and try to find a path forward which doesn’t have side effects and doesn’t burden the newer clients/servers.
In some cases, former is the right thing to do but I would argue that in this particular case, we have a simple and safe fix to prevent majority of the cases. Hence, in this particular case, we can strive to improve the experience of the users and go with the latter option.

Why is this PR safe to merge?
Change in this PR breaks the premise that Zk is the source of truth since it updates Zk with a value that is stored locally in the controller. This is not ideal. But it is a safe change to make. This is primarily because topic IDs are immutable and controller context is either empty or consistent with the latest state of the system. More specifically:

we update Zk only when it doesn’t have a topic Id during alter partition which is not possible (since create topic would have allocated a topic Id) unless it hits this bug.

Hence, we won't encounter a scenario where we "overwrite" an existing topic Id.

Topic IDs are immutable. They only change for a topic, when it is deleted and re-created. In cases, where topic is deleted and re-created, controller context removes the topic Id from local cache on deletion. Hence, the topic Id in the local cache of a controller is always the one which should correctly be associated with a particular topic.

The zkClient.setTopicIds() ensures that Zk is only updated from the latest controller (by verifying the controller epoch), hence, eliminating the possibility of a stale controller updating the Zk with stale topic Id.

What are the alternative ways to protect the state of the server against thus bug?

As Colin, suggested, we could potentially start storing topic Ids in a different place in Zk so that they don't get overwritten by older clients. I believe that it is a more intrusive change (and much holistic covering 100% of bug scenarios) than what I suggested above.
If a topic Id mismatch is detected, consider the partition as a "bad partition" and perform the recovery steps listed https://issues.apache.org/jira/browse/KAFKA-14190 manually. Stop archival to remote storage as soon as a topic Id mismatch is detected. We should probably make this change in addition to the change in this PR.

Any other suggestions?

Yes. <2.8 client with >=2.8 server will have this bug.

This is not quite right. You need multiple things:

Tools older than 3.0
Tools need to use --zookeeper instead of --bootstrap-server
Direct access to zk is available to these tools (we have recommended not providing direct access to zk for a while)
Brokers newer than 2.8

Yes. <2.8 client with >=2.8 server will have this bug.

This is not quite right. You need multiple things:

Tools older than 3.0
Tools need to use --zookeeper instead of --bootstrap-server
Direct access to zk is available to these tools (we have recommended not providing direct access to zk for a while)
Brokers newer than 2.8

Yes, you are right. I already mentioned it in the description of this PR. I will update my above comment to be more specific.

I am not super sure (still checking) but I believe https://github.com/yahoo/CMAK is a popular 3P tool that directly accesses zookeeper with older clients.

I guess these are the two relevant issues:

https://github.com/yahoo/CMAK/issues/900
https://github.com/yahoo/CMAK/issues/898

Not sure how easy it would be, but contributing a fix to the project above would be really helpful.

@divijvaidya My other concern here is that even though this fixes the issue in the case where the controller stays the same, it doesn't cover controller re-election. This means we would still have to share and support the recovery methods.
If this is a big issue for tiered storage, then we could still be in trouble.

When same segment for same topic is uploaded with different topic Ids, it leads to an unrecoverable situation.

Also curious if we can upload a segment with the wrong ID if the leader and ISR request is blocked (and thus can't become a leader or follower)

@dajac

Will this code still be around by the time tiered storage is completed?
I don't know but my point is that this code change is simple and safe enough to add it to the current code as of today.

@jolshan

My other concern here is that even though this fixes the issue in the case where the controller stays the same, it doesn't cover controller re-election. This means we would still have to share and support the recovery methods. If this is a big issue for tiered storage, then we could still be in trouble.

To be very precise here, this fix won't work, if the controller context does not have the old topic Id. It will only happen when controller failover took place exactly between the duration when admin overwrote Zk and controller. Note that controller failover during all other time will work fine (since controller will recreate controller context from Zk which would have been updated with oldTopicId earlier).
And yes, I agree this is not a 100% fix but it's a start. Since, it's a safe fix and doesn't have side effects, we should push it out.

Also curious if we can upload a segment with the wrong ID if the leader and ISR request is blocked (and thus can't become a leader or follower)

Great question! The topic Id mismatch check during handling of LISR request is based on matching the local topic Id in the broker with the one that is sent with LISR. However, it's very much possible to not have any topicId locally. As an example, let's say the partition reassignment leads to partition placement on a broker where log hasn't been created so far. In such cases, LISR won't throw a topic mismatch error and it won't be blocked. Instead it will start operating with new topic Id. Now, we will have some followers working with old topic Id (where LISR was blocked) and some with new topic Id. If a failover happens to the one with new topic Id, it will start uploading segments to tiered storage with new topic Id and thus, for the same topic partition, we will have segments with old topic Id as well as new topic Id.

We're now removing ZooKeeper support, so closing


How to stop (turn off) face tracking in JS based FaceMesh solution?

System information (Please provide as much relevant information as possible)

MediaPipe version: Mediapipe FaceMesh 0.4.1633559619
Solution (e.g. FaceMesh, Pose, Holistic): FaceMesh
Programming Language and version ( e.g. C++, Python, Java): Javascript

Is there any way with which I can stop (turn off) face tracking in the javascript-based faceMesh solution, such that for every image input it gets - it first do the face detection and doesn't rely on the predictions of the previous image (face tracking)? I know in the Python-based solution, this can be done by setting static_img_mode to True, but I am not able to find any such parameter for the JS-based solution. One option is to create a new facemesh object for every image using Facemesh({locateFile:......}), but it seems it is too expensive. Is there any other way, I can achieve this?

Thanks, @sureshdagooglecom for your reply, but I am looking to off face tracking for the Javascript-based FaceMesh solution, and I am not sure whether above mentioned commenting out step can be done for it.

Hi @Shubhambindal2017
For the moment, we don't support the static_image_mode parameter and the tracking cannot be switched off for Javascript based solutions.  To get more details on the Javascript API, please refer to this comment.


Fix px4.py

AFAIK this is only used by the PX4 homebrew formulae, though it makes sense to at least make it usable and correct.

If this is for homebrew can we add some basic explanation near the top? Otherwise it looks like the kind of thing someone might accidentally delete.

This file is copied in https://github.com/PX4/homebrew-px4/blob/3c71517245ea433416a30262d7abe3acb9bde53e/Formula/px4-dev.rb#L23
This means it is not in the git repo anymore and won't be able to print the version, right?
I don't think this is actually needed. I would either try to remove the copy of this file or replace the printing of the version with just print("PX4 deps installed via homebrew, this is just a dummy script").

@LorenzMeier why was this merged? I commented that it was wrong and made a review.

@LorenzMeier why was this merged? I commented that it was wrong and made a review.

Aha, because my review was wrong. Alright, whatever.


How to wipe data/cache and start over?

Describe the bug
I've been trying for hours to initialize this plugin to no avail It has been very frustrating.
I have followed both the documentations https://publish.obsidian.md/git-doc/Getting+Started
and watched youtube videos https://www.youtube.com/watch?v=5YZz38U20ws
Nothing works.
I suspect that at some point, trying too many different approaches has set up corruptions/incompatibilities.
I tried to reset this by uninstalling and re-installing and re-enabling the plugin, but it still seems to remember all my old settings and """progress""".
So how can I make my system/Obsidian fully forget everything about this plugin before starting again?
Operating system
Windows
Plugin version
2.27.0

I've been pulling my hair out... I can't even find the .git folder!

Where are they? I've checked my install path (C:\Users<username>\AppData\Local\Obsidian) and there's only 2 subfolders - locales and resources. Gone all the way deep and still couldn't find plugins or .git


Label filter ignored when using crictl stats

Hello,
thanks everyone for your work on CRIO and crictl!
What happened:
I was trying to extract some metrics from specific pods and came across the --label option for crictl stats.
 crictl stats -h
NAME:
   crictl stats - List container(s) resource usage statistics

USAGE:
   crictl stats [command options] [ID]

OPTIONS:
   --all, -a                  Show all containers (default shows just running) (default: false)
   --id value                 Filter by container id
   --label value              Filter by key=value label
   --output value, -o value   Output format, One of: json|yaml|table
   --pod value, -p value      Filter by pod id
   --seconds value, -s value  Sample duration for CPU usage in seconds (default: 1)
   --watch, -w                Watch pod resources (default: false)
   --help, -h                 show help (default: false)

Unfortunately, it seems that the label is completely ignored by the CLI - it simply lists all the pods!
crictl stats --label io.kubernetes.pod.namespace=openshift-image-registry | wc -l
46
crictl stats --label io\.kubernetes\.pod\.namespace=openshift-image-registry | wc -l
46

What you expected to happen:
When I filter according to a label (in this case: the namespace), I except to only get the metrics for those specific pods, like this:
crictl stats --label io.kubernetes.pod.namespace=openshift-image-registry | wc -l
1

How to reproduce it (as minimally and precisely as possible):
see previous sections
Anything else we need to know?:
This issue was previously reported in https://github.com/kubernetes-sigs/cri-tools/issues/448
Environment:

Container runtime or hardware configuration:

$ crictl version
Version:  0.1.0
RuntimeName:  cri-o
RuntimeVersion:  1.22.1
RuntimeApiVersion:  v1alpha2
$ crio --version
crio version 1.22.1
Version:          1.22.1
GitCommit:        63ca93845d5fe05cdca826367afcb601ece8d7ad
GitTreeState:     clean
BuildDate:        2022-02-08T09:11:33Z
GoVersion:        go1.16.13
Compiler:         gc
Platform:         linux/amd64
Linkmode:         dynamic
BuildTags:        seccomp, selinux
SeccompEnabled:   true
AppArmorEnabled:  false

OS (e.g: cat /etc/os-release): Fedora CoreOS 34
Kernel (e.g. uname -a): Linux standard-tzbgh 5.14.14-200.fc34.x86_64 #1 SMP Wed Oct 20 16:15:12 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

The issue is still present and the root cause is not understood.
/remove-lifecycle stale
/lifecycle frozen

/remove-lifecycle frozen

/remove-lifecycle stale
/lifecycle frozen

This appears to be working for me, with containerd.
ubuntu@k8s-worker-2:~$ sudo crictl stats --label io.kubernetes.pod.name=foo | wc -l
3
ubuntu@k8s-worker-2:~$ sudo crictl stats | wc -l
7
ubuntu@k8s-worker-2:~$ sudo crictl version
Version:  0.1.0
RuntimeName:  containerd
RuntimeVersion:  1.6.12-0ubuntu1~20.04.1
RuntimeApiVersion:  v1

The problem is in cri-o.
Notice ListContainerStats only calls filterContainerList() (which only filters on container ID or pod sandbox ID), but it also needs to call filterContiner() (which filters on labels):
Here is an example in cri-o where it does filter correctly, by calling both funcs:
https://github.com/cri-o/cri-o/blob/fd21f12597cc205e61f10def9849d70cb1220b3f/server/container_list.go#L75-L88
ListContainerStats needs to be changed to be like that.

The issue is fixed in CRI-O main and will ship with v1.31.0


[WIP][CARBONDATA-4180] create maintable and do insert before creation of si on maintable then query on si column from presto does not hit SI

Why is this PR needed?
Create maintable and do insert before the creation of si on maintable then query on si column from presto does not hit SI.
As expected it should hit the SI data map flow but currently, it is fetching results from maintable.
While clearing the invalid segments for each index, CG and FG indexes are added to list(allindexlist at indexstore manager) and not freed after use.
In the query flow again we are getting all CG and FG indexes from the same list(allindexlist at indexstore manager) which are not updated indexes. Always we should get index information from table level indexmap provider map.
What changes were proposed in this PR?
Clear the indexes entry from the list(allindexlist at indexstore manager) after use and those will be added if not exist from  table level index provider map.
Does this PR introduce any user interface change?

No

Is any new testcase added?

No

with SI at segment leve feature this issue does not exist as we are not maintaining the index.Status flag.


add support for server interceptor auto discovery in camel-grpc

Problem
Currently a camel-grpc consumer cannot add any server intercepts.
Proposed Solution
Enable adding server intercepts to the consumer through auto discovery of ServerIntercept objects in the camel context registry (similar to the way it's done for client intercepts of the producer).

Looks like a flakey test error, port bind error in test. Can we re-run the workflow?
[ERROR] org.apache.camel.component.grpc.GrpcConsumerPropagationTest.testOnCompletedPropagation  Time elapsed: 0.015 s  <<< ERROR!
org.apache.camel.RuntimeCamelException: java.io.IOException: Failed to bind to address localhost/<IP_ADDRESS>:41489


Incorrect number of NFT are minted when the mint block both mints and transfers

Issue:
Came across an issue minting on mainnet 10/31. We requested to mint 100 NFT from SMOKETEST token 0.0.3206058. This should have been serials 201-300. However, it minted to serial 310 (201-310). You can see that in total supply on the token and the creation date of the NFT.
I can verify in the trust chain that only 100 NFT were requested. This was the only mainnet mint request we made yesterday.
We investigated and serials 211-220 were minted but not transferred to a custody account, as requested in the mint block. The transaction for these serials is https://explore.lworks.io/mainnet/transactions/0.0.3154258-1698786232-293371358
Thankfully these are smoketest tokens, but it is concerning behavior that NFT are being minted, with Guardian data attached, that were not requested (and approved) in the issue request. We are also paying for this transaction, which may not be a big deal at 5 cents per one time, but if it continues to happen that we generate 10% extra NFT in mainnet the costs will add up quickly.
Diagnosis:
Alex Pyatakov:
. We investigated this and it seems like it is not related to your policy. In logs I can see this error
TokenMintNFTTransaction
190e37dc-7904-4f6d-966d-1e0df32b7964
0.0.3154258
max attempts of 10 was reached for request with last error being: GrpcServiceError: gRPC service failed with status: TIMEOUT
Tokens were minted, but then hedera client in the Guardian service wasn't able to establish a connection with Hedera node to transfer these tokens. Mint and transfer currently happens in one operation (I'm oversimplifying here since we have a lot of operations happening simultaneously), so failed transfer led to another attempt to mint and transfer tokens (edited)
Expected behavior:
On failure of transfer, only the transfer operation would be retried, or the entire operation would be rolled back and retried. The end result is that the number of NFT minted must be exactly the number that are approved in the mint request.

@CyndyMo thank you for reporting the issue.
The root of the problem here (and in some other cases/bugs) is that in Hedera, unlike in some other ecosystems, transactions are not guaranteed to succeed and there is no automatic failure recovery path - i.e. no guaranteed roll-back of transactions when they don't. Therefore Hedera client applications can end up in situations where out of 5 consecutive actions 1, 3 and 5 succeeded, 2 failed, and 4 really succeeded (e.g. token has been minted) but was reported as failed (e.g. this has been observed to occur in 'timeout' situations). And other various permutations of such. The burden of dealing with these issues seems to be 'outsourced' to Hedera client applications, which makes Hedera itself simpler and faster but at the expense of significantly more complex application logic. The SDK does not seem to contain any logic to address this either.
We believe that the best path for us to address this and similar issues would be:

to introduce a smart contract[s] and put minting logic in contract as it would somewhat simplify dealing with error conditions
to add an additional dedicated 'worker' which would be responsible for error recovery (retries, reporting, etc)

@CyndyMo however the above approach would have effect on the existing tokens already issued because it would require:

Replacement the current token supply key with ContractId
Making the contract to be a treasury account of the token

We need to understand the impact on your business before we move forward with this.

@CyndyMo created #2905 as this is a generic fix which would require a dedicated project for design etc work, it's better tracked as an issue we will also manage the bug accordingly.


AnnotatedService can't use wildcard type for parameters

When I use a wildcard type for parameter like as follows, AnnotatedService is failed to initialize due to Unsupported or invalid parameter type: ?:
@Get("/wildcard")
public String wildcard(RequestContext ctx, @Param List<? extends Object> container) {
    return ctx.path();
}

It'd be ok for Java users since they may not use like the above. However, for Kotlin, it isn't when they use an interface as a generic type. IMHO, this is because Kotlin changes the type to the upper-bounded wildcard type. This is the reproducible code:
class AnnotatedService {
    @Get("/")
    fun foo(@Param("values") values: List<MyInterface>): String {
        return "Hello, $values!";
    }
}

interface MyInterface

Here's the stack trace:
Exception in thread "main" java.lang.IllegalArgumentException: Unsupported or invalid parameter type: ? extends MyInterface
	at com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver$Builder.toRawType(AnnotatedValueResolver.java:1254)
	at com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver$Builder.getElementType(AnnotatedValueResolver.java:1216)
	at com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver$Builder.build(AnnotatedValueResolver.java:1090)
	at com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver$Builder.access$800(AnnotatedValueResolver.java:924)
	at com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver.ofQueryParam(AnnotatedValueResolver.java:524)
	at com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver.of(AnnotatedValueResolver.java:420)
	at com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver.of(AnnotatedValueResolver.java:378)
	at com.linecorp.armeria.internal.server.annotation.AnnotatedValueResolver.lambda$of$3(AnnotatedValueResolver.java:319)

I guess we need to handle WildcardType at this point:
https://github.com/line/armeria/blob/4ac50f017f0599e4b6e10675c575e8daedc0a07a/core/src/main/java/com/linecorp/armeria/internal/server/annotation/AnnotatedValueResolver.java#L1246-L1255
But I'm not sure we need to consider both upper bound and lower.

I don't think we need to handle super because that is used for an input type of a function.
JFYI, https://stackoverflow.com/questions/2723397/what-is-pecs-producer-extends-consumer-super.
The type parameter for a collection type should be either a concrete type or upper bound with extends.

I never expected that List<? extends CustomizedType> because we usually use collections of primitive types(which you don't need ? extends ...) in annotated service. 😅
Yeah, we need to definitely handle WildcardType especially. 😅

Ah, it is a @Param. I thought he wanted to use a custom RequestConverterFunction.
@ghkim3221 Is there a use case that you need to use an interface for @Param?


[Machine Learning] Optimal Resource Allocation in Wireless Networks Using Machine Learning

Proposal Submission
Proposed title of article
Optimal Resource Allocation in Wireless Networks Using Machine Learning (ML)
Proposed article introduction
Resource allocation in wireless networks plays a vital role in the overall performance of a network such as the interconnection speed. In the past, iterative approaches where sufficient enough to allocate resources and achieve convergence at an optimal rate. However, iterative approaches are currently not sufficient due to the large and growing number of users in wireless networks. This is an NP-hard, non-convex optimization problem requiring the use of some sort of intelligence. This article will provide an in-depth overview of how machine learning algorithms can be employed to intelligently allocate resources in wireless networks
Key takeaways

Overview of iterative approaches of resource allocation
Implementation of the ML based resource allocation
Performance evaluation of the ML technique

Article quality
Understanding how wireless networks and how resources are allocated is not sufficient enough in networking. One ought to look for ways of improving network performance to achieve optimal solutions. Applying machine learning techniques ensures this is achieved faster.

Hi @andrew-steve
Thank you for submitting your topic suggestion.
Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it.

Great topic. There seems to already be a lot of research in this area/ Do you plan to reference any of it?

Great topic. There seems to already be a lot of research in this area/ Do you plan to reference any of it?

Yes, references will be provided where necessary

I'm going to close this topic suggestion due to inactivity. It can be reopened.


Compile & Publish

Hi All ,
How we do compile and publish in my server in for this project ? I get error when i want to compile this project. I cant create lib folder.
Here is ,
npm ERR! missing script: compile
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR!     https://github.com/npm/npm/issues
Could you help please ?
Regards.

You need to run npm run dist instead

tnkx its work. What do I need to do to publish to the server?


Creating Service Principal (SP) for access to ADLA Gen2 used in Databricks mounting Failed

Creating Service Principal (SP) for access to ADLA Gen2 used in Databricks mounting Failed.
Error: (Missing Subscription) The request did not have a subscription or a valid tenant-level resource provider.

@Saikatdt, would it be possible to share more details about the issue? I'm looking into it, but I could not reproduce the issue.

@Saikatdt, can you please share more details on this issue until 29th of Nov?
Thank you!

I'm closing this issue as I couldn't reproduce or get more information on it. Please feel free to re-open if you can provide more details on the problem. Thank you!


add some classes to create responsive footer

Description

Type of change

[ ] Documentation changes
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] User Interface
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Checklist

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented on my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have npm run format before committing
[ ] I replicated the UI with the Design

Screenshots (if applicable)

Your changes are not visible if you are facing some issues do lemme know

can you please help me to ...to resolve that issue

Your changes are not visible can you elaborate what issues are you facing .

sir i have added 2-3 classes but it does not visible properly


lifetime parameter of ProjectileAction doesn't work after the projectile hits.

BaseProjectileAction has a parameter "lifetime", to remove projectile after a given delay. I have tested by arrowrain spell and found that the projectile will only be removed at expiration if it's still moving. Once the arrow hit on block, it can no longer be removed by Magic.

That is strange. Magic doesn't actually remove projectiles either way. That field is mapped to an internal Minecraft projectile lifetime field, this is what causes projectiles to get removed by the server after some time.
So I'd expect it to either be completely broken or not. It does break frequently, it's one of the internal fields that still has no API access, so it is prone to breaking.
I wonder if they changed it for some reason to reset when the projectile hits? If that's the case there may not be anything I can (easily) do about the problem.

I should've asked, what is your server and plugin version?

Magic 10.8.13 (latest) and Paper-550(1.19.4)
I tested with the following config:
arrowrain:
  actions:
    cast:
      - class: Projectile
  parameters:
    target: none
    projectile: arrow
    lifetime: 500
    count: 16
    spread: 30

Cast towards the sky and you can see all arrows disappear after 500ms, and cast towards the ground, all arrows will be existing.
"lifetime" is handled in BaseProjectileAction, checked in method step() and once they're expired, Magic removes them(please check ), and when debug level is above 4, I can also receive a debug message of "Projectiles expired".
I guess the spell has lost track after the arrows hit. Would you please check it?

Another observation: mc remove projectiles that have lived for 1200 ticks, I can set "tick_increase" paramter to 1180 to make the projectile live for 20 ticks after landing. This may actually solved my problem.


Juice_Clicker

Your checklist for this pull request
Author name
Isaac LeMieux

About your game
My game is about running a juice making store by making juice and buying auto juicers to get juice faster

press L to make juice and press I to buy an auto juicer for 30 juices that makes 2 per second

Code
Check off the items that are true.

[x] The game was made using the Sprig editor.
[x] The game is placed in the in the /games directory.
[x] The code is significantly different from all other games in the Sprig gallery (except for games labeled "demo").
[x] The game runs without errors.
[x] The name of the file/game contains only alphanumeric characters, -s, or _s.
[x] The game name is not the same as the others from gallery

Image (If an image is used)

[ ] The image is in the /games/img directory.
[ ] The name of the image matches the name of your file.

Thanks for your PR!

Thanks for the feedback. I added more features and made the game harder

Congratz!  If you're a teen, and you haven't already received a Sprig device, please fill out this form to get one!  Also, feel free to join Hack Club's Slack and share your creation in the #sprig channel!


End of data error when trying to download a certain video

Version: 1.7.13
Steps to reproduce:

Type the following URL into the search bar:
https://www.youtube.com/watch?v=5y3xh8gs24c or https://youtu.be/5y3xh8gs24c

Hit enter or press the arrow to start the search

Expected Behavior:
The confirmation window opens, asking for the format.
Actual Behavior:
The following error window appears:
Error
Expected end of string, but instead reached end of data. LineNumber: 0 | BytePositionInLine: 62040.

Additional Notes:

No other video I tried showed this error - they continued with the expected behavior.
Searching for the title finds the video. However, pressing "Download" instantly shows the status as "Failed".

Picture of the error:

lol i tried downloading the same video too, im pretty sure it has something to do with the japanese characters

A friend of mine was also able to reproduce this error.
However, I don't think that the Japanese characters are the problem - other videos worked fine for me (this was the first occurence in ~500 videos - a lot of them with different types of characters).

i just checked and every video on calli's ( https://www.youtube.com/channel/UCL_qhgtOy0dy1Agp8vkySQg ) channel doesnt work with the downloader wtf

They do for me (example: https://www.youtube.com/watch?v=vz7JIBvAFqM)


bug: Tabs page active state

Bug Report
Ionic version:

4.6
Description:
If you are on a android device with a back button the active stays on the nav button wich is preset last. So in the code if you are first on home and then goes to more and then press on your back button he goes to home but the more is also active but don't show any text only the color is active.
Here you can see that the 'meer' is active but also the image before the 'meer'.

Related code:
<ion-tabs>

  <ion-tab-bar slot="bottom" color="dark">
    <ion-tab-button tab="landing">
      <ion-icon class="tab-icons" src="img.svg"></ion-icon>
      <ion-label>Home</ion-label>
    </ion-tab-button>

    <ion-tab-button tab="match-center">
      <ion-icon class="tab-icons" src="img.svg"></ion-icon>
      <ion-label>Text</ion-label>
    </ion-tab-button>

    <ion-tab-button tab="selection">
      <ion-icon class="tab-icons" src="img.svg"></ion-icon>
      <ion-label>Select</ion-label>
    </ion-tab-button>

    <ion-tab-button tab="more">
      <ion-icon class="tab-icons" src="img.svg"></ion-icon>
      <ion-label>more</ion-label>
    </ion-tab-button>
  </ion-tab-bar>

</ion-tabs>

Other information:

Ionic info:

Ionic:

   ionic (Ionic CLI)             : 4.6.0
   Ionic Framework               : @ionic/angular 4.6.2
   @angular-devkit/build-angular : 0.13.9
   @angular-devkit/schematics    : 7.2.4
   @angular/cli                  : 7.3.9
   @ionic/angular-toolkit        : 1.4.1

Cordova:

   cordova (Cordova CLI) : 8.1.2<EMAIL_ADDRESS>   Cordova Platforms     : android 7.1.4
   Cordova Plugins       : cordova-plugin-ionic-keyboard 2.1.3, cordova-plugin-ionic-webview 3.1.2, (and 8 other plugins)

System:

   ios-deploy : 1.9.4
   ios-sim    : 6.1.3
   NodeJS     : v9.11.2
   npm        : 5.6.0
   OS         : macOS Mojave
   Xcode      : Xcode 10.3 Build version 10G8

Thanks for the issue. Can you provide a repo with the code required to reproduce this issue? Additionally, which Android version are you testing this issue on?

This is the repo: https://github.com/rolinbos/ionic-tab-bug
I use android version 7.0.

Thanks for the follow. This looks like a blank Ionic starter. Is there supposed to be additional code, or should I be able to reproduce the issue with this?

Yes it's a blank ionic starter. I can't share the exact code because it's private and can't share it. But the blank ionic starter have it also. If you run this on android device then you can reproduce this.

I'm not seeing this issue on the blank starter. What is the user agent string of the device you are testing this on? You can find this by logging window.navigator.userAgent.

Mozilla/5.0 (Linux; Android 7.0; Moto G (5) Build/NPPS25.137-93-8; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/75.0.3770.143 Mobile Safari/537.36 Ionic View/1.0.4

Thanks for the follow up, and apologies for the delay in response. Are you able to post your Angular routing code?
From what I understand, you start on the "Home" tab, go to the "More" tab, and then go "back" causing the issue to occur. Are you using the Android hardware back button, or ion-back-button in this case?


add spotless rules for yaml

This adds yaml format files as well to the misc spotless targets

likely a breaking change, have you tested it? If so, bump major version on release

Sure. I haven't yet tested it out. Will merge only after testing.

Tested it out. It is working fine.


composer

in provisioning/roles/composer/tasks/main.yml, I needed to change installing assets to:
- name: install Composer Asset Plugin
  shell: "composer global require 'fxp/composer-asset-plugin:~1.1.1'"

Yes, right. Thanks


Update seo.html for meta description

Adding standard meta description immediately after seo_description has been defined

Thanks @justinrummel


fix(groomer form)

Description
fixed display issue created after fixing customer and pet forms
Type

[ ] This is a bugfix.
[ ] This is a new feature.
[ ] This is part of a feature.

Organization

[ ] Have you linked this pull request to a Trello card?
[ ] Have you named the branch in the format of feature/describe_feature_or_change OR bug/describe_bug_this_is_fixing

Review

[ ] Is this a work in progress?
[ ] Is this ready to be reviewed?
[ ] Have you added two reviewers to this pull request?

 BUG:  groomers forms not working correctly after fixing pet/customer form issue

 BUG:  groomers forms not working correctly after fixing pet/customer form issue


Test <IP_ADDRESS> pre-release of IoCare integration

Requirements

[ ] Provide testing report for <IP_ADDRESS> pre-release.

Testing Instructions
First of all, I need to test if everything works out from onboarding, so, I will need for you all to
please delete the integration (from the Home Assistant integration page) if you currently have it set up.
After doing so, go to HACS, select Integrations and find the Coway integration card. On the coway card, select the overflow menu (three vertical dots) and click on redownload. After doing so be sure Show beta versions is selected. You should then be able to select version <IP_ADDRESS>. Install it, restart Home Assistant, and set the integration up through the Home Assistant integrations page.
Things I need tested:

[ ] Confirm that an AQI sensor is not created for your purifier
[ ] Test turning purifier on and off
[ ] Test turning purifier light on and off
[ ] Test setting purifier preset mode to auto and to night
[ ] Test setting purifier fan speed to each of the three levels as well as 0 (this should turn the purifier off)
[ ] Test setting the timer to 1 hour, 2 hours, 4 hours, and 8 hours. Also setting the timer to off.

Testing report for 0.0.33 pre-release

[x] Deleted integration from the HA Integrations page.
[x] Rebooted Home Assistant.
[x] Redownloaded Coway integration, installing beta version <IP_ADDRESS>.
[x] Rebooted Home Assistant.
[ ] Confirm that an AQI sensor is not created for your purifier
[ ] Test turning purifier on and off
[ ] Test turning purifier light on and off
[ ] Test setting purifier preset mode to auto and to night
[ ] Test setting purifier fan speed to each of the three levels as well as 0 (this should turn the purifier off)
[ ] Test setting the timer to 1 hour, 2 hours, 4 hours, and 8 hours. Also setting the timer to off.


Python

The Python plugin manager mentions debugging support in Pycharm, I asked him to specify that, so to give us a good overview of the supported editors and the supported platforms as well.
This serves as the main Python issue, and stays open, as all the other language specific issues.
Much thanks 🥳

The Python plugin manager mentions debugging support in Pycharm

To be honest I don't use Pycharm at all, this support was provided by a contributor (see https://github.com/touilleMan/godot-python/pull/86)
Godot-Python aims at being editor agnostic (you can code Python from within the Godot integrated editor, use any external editor or do both at the same time ^^).

So, so far as I understand, does this mean no auto-completion and stuff like that for Godot specific API calls and so on, yes?

Godot-Python provides .pyi (stub files providing typing information) files that are the standard for autocompletion (and static type checking with mypy&co) on Python

I mean more for the Godot specific stuff, whole this is also intereresting.

The stub files are for the Godot specific stuff.

And who can use those stub files?

I've not come across an IDE who can't. PyCharm, VS Code, etc all support them.


Double-click drag selections have unusual and bad behavior on non-word characters

Note: This may not be a bug in the sense that the behavior may be intended, but many text editors (apple text input boxes, emacs) have better behavior.
To reproduce, enter the following text:
multiple words;)

Double-click and hold on the word multiple - this will select the word multiple and as expected enter a "per-word" selection drag.  Move the mouse to the right and the word words will be correctly selected all at once.  However, it is impossible to add the ; to the selection without the ).  This is different behavior than you would see in some other text editors, including emacs and Mac OS default input fields.
The reason this is bad is it is harder than other editors to select multiple words;, without the close parenthesis.  This seems to come up a lot when programming and is my biggest pet peeve with atom.

The bug fix for this, conceptually:
Atom should exclusively group alphanumeric characters as "words" when performing word-selection, considering non-alphanumeric characters as individual words. This is Sublime Text's behavior. (Note: This will have its subtleties, e.g. white space of varying types is another type of word.)
There is another bug related to this that I uncovered, here: https://discuss.atom.io/t/drag-selection-bug/28599/7
When drag-selecting words, Atom groups the remaining newline at the end of every line with other end-of-line non-alphanumeric characters, resulting in weird selection behavior.
To reproduce:

Enter the following text into Atom:

function select() {
  console.log('Test.');
};

Double click and drag from to-the-right-of the last line up to to-the-right-of the line with the log statement.
Notice that everything after the word "Test" is highlighted, despite not being hovered.

Behavior in other editors is to only highlight the newline character in this case.

I recently switched to Atom and this issue has been bugging me too. I come across it a lot when using jQuery and I'm trying to highlight just the selector.
For example if I double click on "element" then drag to select "#my-element" it inevitably include "$('" in my selection.

Oh hey, I've forgotten about this bug. This shouldn't still be labeled as needs-reproduction, as far as I can tell.

in my mac (atom 1.19.0) to reproduce:

double click
use three finger to drag select
delete the selections
Notice that the other words are highlighted

Just chiming in here to note that this still reproduces in 1.23.2, and is still preventing me from using atom.

The same after almost 5 months in Atom 1.27…
It's terrible.

Is it the same issue?
(Selection works good from left to right, but bad from right to left)

It takes me 2 hours to setup atom in dev mode and 30 minutes to fix this issue (and i'm doing it for the first time).  You may consider this an official warning.


Can SQL Data able to Sync when the ''Allow access to Azure services'  option is OFF?

As title, Can SQL Data able to Sync between the On-premise and Azure SQL DB when the ''Allow access to Azure services'  option is OFF?

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

ID: 791801be-835a-7b8d-106a-53f5e9f8eb66
Version Independent ID: 740ebf2f-8f09-1869-6d78-2b7242aab4ec
Content: Azure SQL Data Sync
Content Source: articles/sql-database/sql-database-sync-data.md
Service: sql-database
GitHub Login: @allenwux
Microsoft Alias: xiwu

Thanks for the question! We are investigating and will update you shortly.

@KeiroKamioka0000 If 'Allow access to Azure services' is off and there was no VNet /Site-to-Site VPN configured, then no, your traffic will flow out over the internet. This assumes you have a firewall rule in place to allow inbound traffic. Data sync activity with an on-premise environment should not be interrupted.

We will now proceed to close this thread. If there are further questions regarding this matter, please comment and we will gladly continue the discussion.


For newsroom, create new news item about the official signing

Take an image from what was shared in internal group. We can keep the details minimal – just say that we are honored to have signed the contract with the government of Zanzibar to officialize the OurWorld Free Zone. Let me know if you need any help.


Post construct interceptor missing an invocation context parameter

The org.jboss.cdi.tck.interceptors.tests.contract.lifecycleCallback.SheepInterceptor declares a @PostConstruct method which violates interceptor spec requirements.
Namely in this section, the following is stated:

Lifecycle callback interceptor methods declared in an interceptor class or superclass of an interceptor class must have one of the following signatures:

void <METHOD>(InvocationContext)
Object (InvocationContext)

Here is a link to the current method declaration which lacks the InvocationContext parameter.
The only test using this interceptor asserts that this callback does not get invoked which is probably why it didn't get noticed earlier.
EDIT: I intentionally didn't mark the issue as a challenge but if we encounter an impl having issues with it, it is certainly an option.

This is a tiny issue that I believe can't negatively affect anyone, so we can just fix it directly.