Add a broadcast-table example for sharding-jdbc

Fixes #115
Changes proposed in this pull request:

Add a broadcast-table example for sharding-jdbc

I have done the refactor.Please help me to  review my code if you have time. Thx.

@betterjava good job, I have left some comment.
we should remove order and orderItem configuration in your broadcast example. it became complex.

@betterjava sorry for my mistake, I have forgot a very import point.
we should create a new maven module named broadcast-example inside sharding-jdbc-example.
instead of modifying the sharding example
it looks like this:
sharding-jdbc-example
─ broadcast-table-example
├── broadcast-table-raw-jdbc-example
├── broadcast-table-spring-boot-example
└── broadcast-table-spring-namespace-example

let me create the new module later, then you can migration your example code there.

let me create the new module later, then you can migration your example code there.

OK, got it.

I have pushed the broadcast-table module to dev, you can pull it now.

I have done the refactor.Please help me to review my code if you have time. Thx.

ok, I'll review it later.

@betterjava it's no problem, I'd like to merge it then do some check style work. thanks for coorperation~.

ok ,have a good day.


Time module

Feature Use Case
Leon, what time is it?
- It's quarter past ten.

Feature Proposal
Implement a new module / package.

 ✨ Time Package - What Time Module

Hello @ctombumila37,
Thanks for this feature request.
This is definitely a module that can be done with the current version (1.0.0-beta.0).
Is that something you would like to work on?

Can I work on this feature?

Hello @hk1997,
Yes with pleasure. Let's wait a moment to see if @ctombumila37 did not start anything first.

Sorry for the delayed response.
@hk1997 Feel free to go ahead :)

sure, I am starting it then. thanks

Awesome! Please reference this issue to the PR 👍

https://github.com/leon-ai/leon/pull/53.

Is this done or still open ?

@theparselmouth it is done based on an old codebase, so you can adapt it to the latest Leon version if you want and try to improve it.

No assignees in this one too?

Interestig

Can i work on this?

Can I work on improving the open PR? Would someone be available for review?

Hi @sanchitsharma :wave:,
Thanks for willing to contribute into Leon! At this stage I'd say it'd be better to wait for upcoming versions but feel free to improve the current PR. All the PRs will be merged once some upcoming versions will be released.


Parse Include statement at end of file

Include otherfile is handled correctly at the beginning of the file, but when it appears after another config, it gets added to that config. Example
Host someHost
    HostName <IP_ADDRESS>

Include config3

Parses like this

It's intended behavior. According to ssh_config(5), Include might appear inside Match or Host to perform conditional config inclusion.

Include the specified configuration file(s).  Multiple pathnames
may be specified and each pathname may contain glob(7) wildcards
and, for user configurations, shell-like `~' references to user
home directories. Files without absolute paths are assumed to be
in ~/.ssh if included in a user configuration file or /etc/ssh if
included from the system configuration file.  Include directive
may appear inside a Match or Host block to perform conditional
inclusion.

Oh, you're right. Confirmed that ssh handles it this way. I think I used to know that.


6:00 pm - 12:00 am => 2019-9-13 18:00 - 2019-9-13 00:00

Thank you for useful library. I've found a bug:
timefhuman.timefhuman('6:00 pm - 12:00 am')
(datetime.datetime(2019, 9, 13, 18, 0), datetime.datetime(2019, 9, 13, 0, 0))

I guess, it should be:
(datetime.datetime(2019, 9, 13, 18, 0), datetime.datetime(2019, 9, 14, 0, 0))

I can take this issue up!


Multi-monitor setups

Hey Vitaly,
This code is really perfect for embedding my svg animations. Thank you so much for releasing this.
It still works really well on windows 10.
I was just wondering how I could implement multi-monitor setups?
For instance, showing a cloned version of the browser that has the animation on all connected screens,
or even just changing the background color of all other connected monitors.
I opened the project in visual studio, but I don't get where to begin changing it.
My coding skills are seriously lacking here ;)
Could you give me some pointers?
You could also contact me directly on<EMAIL_ADDRESS>Thanks again,
Theun

Hi,
Probably I'll look into it one day but I can't gurantee anything right now.
Thanks.


Support modality and stage filters

This PR changes the status property to a function status(modality, stage) that can optionally filter the QCEvaluations in a QualityControl object based on their modality and/or stage.
This is a breaking change, but since nobody actively uses this code (yet) I don't think we need to push it off to v2.

Removed the review request, will add tags as a filter parameter when https://github.com/AllenNeuralDynamics/aind-data-schema/pull/1131 is merged

[ ] Tag filter
[ ] Filters -> lists
[ ] Status on date
[ ] Coverage


chore(tests): fail tests on console output

Blocked by

[x] address listRef issue of List component: #489
[ ] address Input component issue (discovered by tests) #496 ?

This PR aims to introduce CI gate checks that will verify that there is no console output logged during unit tests run.
Was
This feature was originally eliminated by the following PR (https://github.com/stardust-ui/react/pull/359) - please, consider to review description where reasoning for this step is expressed. However, this move has resulted in the following problem sneaked into the code and being accidentally committed (please, note that test state is 'PASS'):

Now
With this PR the feature is restored while, at the same time, all the benefits of clear error output are preserved for local test runs. As a result, for local test runs there will be exactly the same behavior as it was before (with yarn test or jest being used), while for CI build --strict flag will be applied: yarn test --strict.

PS. Please, note that this PR will result in failed CI builds till the moment when aforementioned List issue will be addressed.

The outcome is that actual console errors are improperly reported by jest since they are caught afterAll.

As I remember, I had similar issues in https://github.com/Semantic-Org/Semantic-UI-React/pull/2971. I think that we should wait for @levithomason there before merge.

Will address the error so we can go ahead with the merge. I will not create any additional bug, as this PR should serve for tracking.

@layershifter

As I remember, I had similar issues in Semantic-Org/Semantic-UI-React#2971. I think that we should wait for @levithomason there before merge.

we may wait, ok, but if it will take too long, it seems that we'd better address the problem that we clearly have now, rather than just let similar problems sneak through

Warnings

:warning:
There are no updates provided to CHANGELOG. Ensure there are no publicly visible changes introduced by this PR.

  Generated by :no_entry_sign: dangerJS

@mnajdova, @Bugaa92, have introduced fix as part of this PR


clone fails where a branch name has been used

Hi, I'm feeling unlucky today. The tfs repository I'm pulling into git has in it's history two usages of the same path. This seems to break the clone with an error doesn't explain the problem
error : the branch you try to init '$/Some/Branch' is a root branch (e.g. has no parents).
You may be able to resolve this problem.
- Clone this branch from Tfs instead of trying to init it!
   Command: git tfs clone https://xxx.visualstudio.com/DefaultCollection $/Someone/Some/Branch

After a lot of digging in tfs's terrible history UI I eventually established that the following has happened during the history of the project

branch dev created
new branch foo was branched off dev
branch dev was renamed to wibble
branch foo was renamed to dev

so as you can see $/dev at 4. is not the same dev as at the one the existed at 1.
I could be wrong about this being the cause of the breakage but it seems a likely candidate to me.
Any ideas for fixes / workarounds?
Thanks for a lifesaver of a project!
I should mention I'm running this build: https://ci.appveyor.com/api/buildjobs/wx77k7jjaimk2inp/artifacts/git-tfs_1c35cdca32bea3e79748e7c8f242eaa1d8e0ff55.zip which apparently has the patch for issue #832 and am running with this env variable: MSYS_NO_PATHCONV=1 to avoid issue #845

I've done a bit of experimenting with using the visual studio online tfs hosting, and some new tfs repositories, building up the bare minimum to see what breaks it.
It seems the root of the problem might be failure to follow renaming of branches. Without using any branching at all if I create a root branch with a single file, make a couple of edits and commits and then rename the root branch when I clone that with git-tfs all the history before the rename is lost and it just looks like a file addition. I also tried branching before renaming and I get two disconnected bits of history in git which I'm guessing lays the foundations for the above breakage.

possibly related to issue #410

Well that's interesting. While building up a minimal test case in TFS I seem to have tripped over something.
When I renamed dev to wibble everything looked fine, but when I renamed foo to dev using the visual studio source control explorer it let me check in the rename without complaining, but when I looked in the source control explorer dev was there but it no longer has the UI decoration for being a branch. Additionally the convert to folder option in the right-click menu has gone and the convert to branch option is back.


Sponge permission service queries Mojang Servers when creating EntityPlayerMP even in offline mode!

Stacktrace: http://pastebin.com/VMZfAWG6
I don't know what is the purpose of doing so even on a online mode server, because when EntityPlayerMP is contructed, the GameProfile contains both name and UUID...
Mojang servers should never be queried in offline mode. Doing so will make Sponge a premium-only server software, which woudn't be good for non-US minecraft community, where most people haven't bought the game.

I believe this also happens when the client is not properly authenticated (e.g. development mode). This should be fixed.
Related (see comment): https://github.com/SpongePowered/SpongeCommon/issues/117#issuecomment-139068648

@zyczu1 we will NEVER support users who don't own the game

@progwml6 There are, however, two exceptions to this:

BungeeCord requires offline mode on the server, even if you are using IP forwarding.
When doing development, the client is not (usually) authenticated; unless you're using a custom development launcher, it's just Player followed by a random number.

When doing client-side development you can setup the IDE to pass your credentials properly through the IDE to authentication servers so that part is a non-issue.

And to be perfectly honest if your spending the time to work on a game you haven't paid for, don't be expecting any support of any kind from the Sponge Team.

BungeeCord doesn't require offline, so defeated on that point too.

@mcsnetworks Is there some modification to Sponge that skips the encryption request stage when Bungee is enabled? Because Bungee doesn't support encryption requests as it doesn't know the client's access token.
Also, you might want to test with multiple users on one server, and if you only have one account, that wouldn't work.

You may also need different usernames or ids.
Image implementing a game with a global highscore showing the top ten players and you have only one username to test.

@progwml6 "@zyczu1 we will NEVER support users who don't own the game"
@mcsnetworks "if your spending the time to work on a game you haven't paid for, don't be expecting any support"
I DO own the game, but players on my server do not, and they'll never do so. They'd rather quit playing. Sad but true. There are other countries in the world than USA, countries where people don't have much money, and/or are not willing to spend them on a game. THATS A FACT!
Take a look at mcstats:
http://mcstats.org/global/#Auth+Mode
Half of the community is running in offline mode. Like it or not, it is the piracy, that made Minecraft what it is today, as popular as it is today. Stripping away half of the community is not a good idea.
I have no idea why do you fight with offline mode so badly. As far as i'm concerned, you are not affiliated with Mojang and you don't get money from them for making Sponge.
I'm not asking you to support piracy in public. I also DO think people should buy the game if they enjoy it. I'm just asking you to make Sponge work on offline-mode. You can write on yours website is not supported, etc. but please make it work!
Running offline mode server is not a violation of copyright. Playing on it with cracked minecraft is. Bukkit wasn't shut down because it worked on offline mode. That is not true!
Please :D

Regardless of the reasons, offline mode exists in the base game so we should support it. Arguments about the ethics of it are basically irrelevant to whether a bug exists or not and frankly we shouldn't be so rude as to assume that everyone who wants to run an offline server is a pirate - that's between them and Mojang and has precisely nothing to do with us. While we obviously won't provide support (in the "helping out" sense) to people who haven't bought the game, we should support (in the functionality sense) all functions in the base game. Thus this:

we will NEVER support users who don't own the game

and this:

And to be perfectly honest if your spending the time to work on a game you haven't paid for, don't be expecting any support of any kind from the Sponge Team.

are true, but aren't actually a reason for rejecting the issue itself, and frankly could have been delivered with more decorum. Also

BungeeCord doesn't require offline, so defeated on that point too.

... seriously ... "defeated"? Why so confrontational? All of these points are basically turning the counterpoint to the original issue into a genetic logical fallacy where you're attacking the idea of offline mode servers effectively encouraging piracy (which frankly is nothing to do with us) rather than actually just tackling the issue at hand, which is that something is happening in the software which shouldn't.
Now part of the blame lies with @zyczu1 because his stated reasoning referenced this behaviour, but that still doesn't justify the rude and dismissive responses here. Especially since he goes on to say:

I have no idea why do you fight with offline mode so badly. As far as i'm concerned, you are not affiliated with Mojang and you don't get money from them for making Sponge. Or maybe i'm wrong, and some copyright lobby has paid you for the anti-offline-mode policy. If that's the case, I hope you have courage to say it aloud, to each and every member of the community. If not, I see no logical explanation for fighting against offline mode.
I'm not asking you to support piracy in public. I also DO think people should buy the game if they enjoy it. I'm just asking you to make Sponge work on offline-mode. You can write on yours website is not supported, etc. but please make it work!
Running offline mode server is not a violation of copyright. Playing on it with cracked minecraft is. Bukkit wasn't shut down because it worked on offline mode. That is not true!

Couldn't agree more, this is functionality in the vanilla server, and getting sanctimonious about the ins and outs of offline mode servers really has absolutely no bearing on it whatsoever. We should accept this issue.

@Mumfrey
This started out on the wrong foot and would have been best to let it drop as we've been aware of this bug for a while, just no one has got around to fix it.
If you look at the activity tracker, you'll see that @simon816 has been working on resolving this to correctly poll perms when it should be done:
https://github.com/SpongePowered/SpongeCommon/commit/c0f971d6bd7c3c00740f98bcb35cbaecbeda310c


CS2 - Issue Parsing Last tick (not only last)

Hello, referring to this comment: https://github.com/skadistats/clarity/issues/58#issuecomment-2353705537
I'm sharing here the replay data that can be viewed.
The issue is also described here: https://github.com/skadistats/clarity-examples/issues/63#issuecomment-2285761680
As you see, it's not only the last tick, but the issue happens early:  tick 103269/165098
I tried to open the replay with the demo application (Java desktop app) and it opens the file (there are some stranges on the tick bar, but it doesn't crash). In addition, python parser (derived from this project) https://github.com/LaihoE/demoparser is able to parse the same file (but is python and I prefer java code!)
This is the replay: https://drive.google.com/file/d/1rLNyzrN7Zz2s4Kpn7dC6JZbStyaPm5iS/view?usp=sharing
And this is the info file (if you want to check it too): https://drive.google.com/file/d/1YZiHdLCIA4ttbOeUf47pxsV72vabZjpb/view?usp=sharing
The file has downloaded from the game, and can be viewed in the game without issues.
If you need further info, i'm available (I can check where i put my demo code and share if needed, but i'm just doing basics now)

Thanks for taking the time to report and upload the replay.
It was indeed a bug.
If I understand correctly, you recorded the replay yourself?
Anyway, release 3.1.1 can parse it.

Oh, I have to thank you for taking time to debug and fix it! My time was really short, happy I could help!
I will try again in a few days and let you know!
The replay is a download from inside cs2 game, so official competitive match saved by valve servers. I have a folder with plenty of files, the idea is to parse them all and generate an xlsx file with all my results!
Thank you again for your great work!💪

Hello @spheenik , first of all my apologies for the late answer. I managed to test the update and now i can confirm i can parse the whole file (can go to last tick and read data!)
Now i'm stuck on reading header of replay, but will add a new issue. Thank you for the bugfix!


💸 Enable AWS Split Cost Allocation Data for Amazon EKS

User Story
As a Modernisation Platform customer that runs EKS
I want cost allocation data for my Kubernetes workloads
So that I can attribute it back to users of Analytical Platform's compute cluster
Value / Purpose
Analytical Platform's EKS cluster runs varied workloads (Analytical Platform's CDE, Airflow, GitHub Actions runners) and it would be useful to attribute the cost against them, not (currently at least) for charging back, just to make visible.
Useful Contacts
@jacobwoffenden
Additional Information
We can run this in cluster with Kubecost, but I would like to enable AWS native so we don't have to run another service for it https://aws.amazon.com/blogs/aws-cloud-financial-management/improve-cost-visibility-of-amazon-eks-with-aws-split-cost-allocation-data/
Definition of Done

[ ] New terraform resource implemented in aws-root-account
[ ] README has been updated
[ ] User docs have been updated
[ ] Another team member has reviewed
[ ] Tests are green

I'll go back to @jacobwoffenden to refine this one a bit better - at present there's no DoD, and the requirement is tied to a single user of EKS on MP - in general, anyone using K8s is directed towards Cloud Platform.

After doing some more reading I think it can be enabled through this terraform resource, but I think it may need some broader consideration as it has to be implemented in us-east-1.
Also this looks like it will need to be implemented through the MOJ Master Account (AWS Organizational root):

NOTE: If AWS Organizations is enabled, only the master account can use this resource.

At request of AP, moving in to sprint

Looking at the relevant resource there are a few attributes we'd need to be clearer on:
  additional_schema_elements = ["RESOURCES", "SPLIT_COST_ALLOCATION_DATA"]
  s3_bucket                  = "example-bucket-name"
  additional_artifacts       = ["REDSHIFT", "QUICKSIGHT"]
}

Are the default additional_schema_elements sufficient?
Is there a predefined s3_bucket for these reports? If one needs to be created, how should it be secured (eg, against users? roles? keys in the bucket?
What additional_artificats - if any - are required?

Some investigation shows that, actually, this can't be managed in code. I've reached out to the root-account-team for a steer.

Change in the root account to enable trusted access is blocked by some secrets that were marked for deletion.

Resolved! Thanks to @julialawrence & @davidkelliott !


Capturing mobs and bringing them to a specific location

What does your feature do?
Allows an admin to set an area where the player must bring specific mobs. The stage would be completed when the set number of mobs are all in the right area.
How would people use it?
Could make simple quests where you need to catch all of a farmers sheep and bring them back to their pen, or help a dark wizard gather zombie soldiers for his undead army, things like that.

Thanks for your suggestion. I'm a little hesistant to do something like this as there's a lot of variables to consider. How must the player move the mobs (lead, boat, minecart, pushing, etc.)? What if the mob belongs to another player? If the mob walks away from the location, despawns or dies, do we subtract from the number brought? What if a mob walks into the area without a player nearby? Is an orange Sheep acceptable if the quest creator only wants blue Sheep?
I feel something with that many possibilities should be left to a custom objective. If you have your heart set on this, I suggest visiting the Spigot hiring forums and directing a developer to this API. Note that the hiring forums are in no way associated with Quests.


Choose your app learn by watching

Choose your app
No translation needed.
Learn by watching video, same as issue #59 with DigiByte mobile wallet. By removing images, videos, wording and download link this minimizes people from downloading the iOS/Android applications. Again I'm not suggesting sun setting the application since people probably still have DGB and DigiAssets on their mobile wallet, my recommendations are to make it less visible.
Recommend replacing the video with temporary image until a different video is created.

Thank you for your input, I will close the issues pertaining to the videos. Maybe in the future, if we can get updated videos then we can revisit and reconsider replacing the current videos on the website.


fix: recursively wrapping functions

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


XLIFF file: txt2al trans-unit id differ from g.xlf-file of VSCode

Describe the bug
We converted a solution with about 200 objects and 6000 translations with txt2al from C/AL to AL (language-layers de-DE and en-EN). A lot of Tooltips don´t appear in the client-DE-layer.
We checked the mismatch of trans-unit-IDs between the .g.xlf-file and the generated DE-File of txt2al-tool and about 30% of the IDs don´t match. After some hours of analyzing i think a/the possible reason/behavior is found:
To Reproduce
I found out, that fieldnames with special characters like "Description 2" which are embedded by the "-signs generate a wrong ID-Value in the case of "tooltips".
In the following screenshot  i marked the IDs and corresponding words with same colours. The upper example is the txt2al-file and below the version of the VSCode-Compiler.

CRK Account -> ID<PHONE_NUMBER>

Description -> ID<PHONE_NUMBER>

Caption -> ID<PHONE_NUMBER>

Tooltip -> ID<PHONE_NUMBER>

CRK Entry Account Card -> ID<PHONE_NUMBER>

Description 2 -> ID 47657272
- Description 2 -> ID<PHONE_NUMBER> (### this is the problem & issue ### in the case of Tooltips)

Screenshots

Versions:

AL Language:  2.0.48254
Business Central/txt2al: 13.0.24623.25755

----added one day later----
Problem isn´t only with Tooltips. Under special circumstances i detect the same issue with other special characters e.g. in action-names:
Example txt2al-result...

Example generated by compiler

So in this case the Name differs between the two files and the ID as well...
---additional info---
to avoid this issue in the txt2al-conversion we solved the Problem for us now while converting the file generated by the "Export-NAVApplicationObject" in replacing the field- and action-definitions.
We remove the quotation marks of the name-values like this...
-------------before----
{ 8   ;2   ;Field     ;
Name="Payed By";
------------after----------
{ 8   ;2   ;Field     ;
Name=Payed By;
...and so it works, the txt2al-tool don´t have the Problem to cut out these Quotation marks.
-> but for all it would be good if either the Export-Commandlet omit the Quotation marks OR the txt2al-Tool do this to work in a similar way as the VSCode-compiler.

The fix for this issue has been checked in to the master branch. It will be available in the bcinsider.azurecr.io/bcsandbox-master Docker image starting from platform build number 26425.
If you don’t have access to these images you need to become part of the Ready2Go program: aka.ms/readytogo
For more details on code branches and docker images please read:
https://blogs.msdn.microsoft.com/nav/2018/05/03/al-developer-previews-multiple-releases-and-github/
https://blogs.msdn.microsoft.com/freddyk/2018/04/16/which-docker-image-is-the-right-for-you/

The fix for this issue has been checked in to the master branch. It will be available in the bcinsider.azurecr.io/bcsandbox-master Docker image starting from platform build number 26425.
If you don’t have access to these images you need to become part of the Ready2Go program: aka.ms/readytogo
For more details on code branches and docker images please read:
https://blogs.msdn.microsoft.com/nav/2018/05/03/al-developer-previews-multiple-releases-and-github/
https://blogs.msdn.microsoft.com/freddyk/2018/04/16/which-docker-image-is-the-right-for-you/


v5.0.5+ breaks stuff

I know I submitted a lot of issues in the past, and I was always trying to provide as much details as possible, but I believe this report will be the most useless... Because I don't even know what is wrong this time.
After upgrading to 5.0.5 yesterday, I started receiving dozens of complaints that some parts of web app stopped working. To be more specific - users can't submit some forms (after they click submit button, nothing happens). So after debugging, I found that only forms with Inputmask placeholders can't be submitted. No errors in console, everything seems to work fine, except that submit buttons don't work...
So I did my best to debug the issue, and found that forms start working instantly after I remove this part from input field:
data-inputmask="'alias':'datetime','inputformat':'HH:MM'"
No issues happen with other masks (for example, data-inputmask="'alias':'datetime','inputformat':'yyyy-mm-dd'" works fine). The same issue exists in latest 5.0.6 beta as well.
The previous version I used in my app was 5.0.4-beta.35, which worked fine.

@toxpal, Can I see that somewhere happen on a live site? or test site?
Did you also try with Version: 5.0.6-beta.6

Yes, it also happens with 5.0.6-beta.6
It's a custom client management system used internally by my employees, but I will try to do my best to setup a similar test environment within next few weeks (hopefully a bit sooner if I manage to get all the essential work done)

I have experienced a similar situation, but perhaps I can shed some light.  InputMask v5.05 causes Internet Explorer to break because InputMask is now using the .includes function which is not supported in all browsers.
See:  https://stackoverflow.com/questions/31340868/includes-not-working-in-all-browsers/31340895
Perhaps this will help in this issue.

Just downloaded 5.0.6-beta.15 and everything seems to be OK again.


OT is not defined

Hi,
I'm trying out TokBox with Meteor and React and I'm running into a problem.
In my file I've imported the following:
import { OTSession, OTPublisher, OTStreams, OTSubscriber, createSession } from 'opentok-react';
And I have this code:
{
          this.state.token && video.currentSessionId && video.sessionOn &&
          <OTSession
            apiKey={Meteor.settings.public.toxbox.apiKey}
            sessionId={video.currentSessionId}
            token={this.state.token}
          >
            <OTPublisher />
            <OTStreams>
              <OTSubscriber />
            </OTStreams>
          </OTSession>
        }

However, whenever I start a session, I get this error
_Exception from Tracker recompute function:
meteor.js?hash=e3f53db…:930 ReferenceError: OT is not defined
at createSession (modules.js?hash=97a78a9…:64952)
at OTSession.componentWillMount (modules.js?hash=97a78a9…:64850)
at modules.js?hash=97a78a9…:16742
at measureLifeCyclePerf (modules.js?hash=97a78a9…:16469)
at ReactCompositeComponentWrapper.performInitialMount (modules.js?hash=97a78a9…:16741)
at ReactCompositeComponentWrapper.mountComponent (modules.js?hash=97a78a9…:16652)
at Object.mountComponent (modules.js?hash=97a78a9…:9577)
at Object.updateChildren (modules.js?hash=97a78a9…:16215)
at ReactDOMComponent._reconcilerUpdateChildren (modules.js?hash=97a78a9…:15731)
at ReactDOMComponent.updateChildren (modules.js?hash=97a78a9…:15835)
Any idea what could be causing this problem?

@alveshelio Thanks for using opentok-react!
You would get OT is not defined if you haven't included opentok.js before your application. Have you followed the following instruction from the README:

Include opentok.js before your application:

If you have done that, maybe you can give me more information about your setup because nothing else comes to mind.

Hi @aiham,
I had not added this script.
I'm not sure about this one:

Include opentok.js before your application:

I've added  to my main.html file, this is what I have:

Because the tutorial says, include opentok.js before your application and I've checked your example and you are indeed loading this before the bundle.js file. However, I'm using Meteor and in my html file I do not have the bundle.js file that is called.
When I add  right before the  tag, I get this error:
Refused to load the script 'http://static.opentok.com/v2/js/opentok.min.js' because it violates the following Content Security Policy directive: "script-src 'self' 'unsafe-inline'".

@alveshelio I believe you must trust static.opentok.com by setting a Content Security Policy before :
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline' static.opentok.com">
You can read more about it here:

https://content-security-policy.com/
https://www.html5rocks.com/en/tutorials/security/content-security-policy/

@alveshelio I just deleted my previous comment, I believe it's wrong.
I think you should load opentok.js using https:

I will update the README now.

Hi @aiham,
Unfortunately with both methods:

and

I'm still getting the same error.

@alveshelio What if you try adding the following before :
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline' static.opentok.com">
This is setting a Content Security Policy which trusts static.opentok.com. See:

https://content-security-policy.com/
https://www.html5rocks.com/en/tutorials/security/content-security-policy/

I suspect Meteor is setting a Content Security Policy which only trusts the same origin. Can you open your page with the dev tools open, navigate to the Network tab and click on the request which loads the HTML page. Can you see if there is a response header called Content-Security-Policy there?

so I've added
<meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline' static.opentok.com">
and checked the Network tab, in "XHR" I don't see anything related to Content-Security-Policy, in "Other" i see "opentok.min.js" withs Status "(blocked:scp)"

@alveshelio The CSP header will be in the network request for the HTML page itself, not XHR. Open the network tab and press refresh, it should be the first request in the list.

I don't see any SCP at the top, here's what I have:  http://prntscr.com/e8fn9l
The request to opentok.min.js comes almost at the end, check here: http://prntscr.com/e8fmzp,

@alveshelio What about before Clipper.js? There must be a HTML page that loads first. You need to press refresh after you open the dev tools

Also, the Content Security Policy is shown once you click on the request, under the Response Headers section:

I haven't got much experience with Meteor so I can't say for sure, but it's probably adding the CSP header. You will likely need to add static.opentok.com to the list of trusted domains for static content. There is likely a module to help you with this: https://blog.meteor.com/defense-in-depth-securing-meteor-apps-with-content-security-policy-8fd5ffa503ee

Hi @aiham,
Thank you very much for your precious help. Actually I was getting this error because I was using package: browser-policy, you've put me in the right track.
I simply need to add this to my code:
Meteor.startup( () => {
  BrowserPolicy.content.allowFrameOrigin( 'player.vimeo.com' );
})

Here's an article talking about it: Using the Browser Policy Package
Thank you again for your help.


Add an async version of the query method to the VectorIndex class

...with all the dependencies it entails here and there in the code used by this method

I couldn't push back to your branch @olivierphi so I created a new MR with your work and some typing fixes over at #80
Thanks for your work on this!


STAR memory issue

Hello! I'm very excited about this new tool but running into an issue early on in the pipeline. The file star_index_without_transcriptome.error is reporting this:
`EXITING because of FATAL PARAMETER ERROR: limitGenomeGenerateRAM=31000000000is too small for your genome
SOLUTION: please specify --limitGenomeGenerateRAM not less than<PHONE_NUMBER>6 and make that much RAM available
Apr 22 14:59:38 ...... FATAL ERROR, exiting`
I have enough RAM but don't know how to indicate that to STAR.
Thanks!
Kevin

Hello @kmkocot,
Thank you so much for checking out finder. The reason why you are getting that error is due to the size of the genome. The default RAM size is too small for your genome size. I have modified the code. You should be able to run it now. Please let me know if you run into any errors.
Thank you.

Thanks so much!


Tuning - Slow with Low CPU Usage

During tuning of the the dataset "Benchmark 1" the CPU ranged from long periods being 0 to other were I have seen it using 90% of the available CPU.
Unfortunately the time in witch the CPU was almost zero were the majority.
To reproduce please log into my machine.

Update.
Cluster of 6 c4.4xlarge machines, 1195 sentences.
After 6,5 hours it is still at Run7.

While I'll work on a better load balancing, the last post is not a bug:
Why Sl?
Sl+ state does not mean deadlock, it means the process is waiting for event. During evaluate I also query Google Translate so it's perfectly fine to have a step in which CPU usage is almost 0, and the process spending the time to wait for an event (GT response) to occur.
Why detokenizer.perl process?
This process is kept alive by the Java process and it is used every time a detokenization request is made. Instead of killing and reopening the process every time, Java keep alive the process and send requests to stdin, reading from stdout.

OK for detokenizer.
To clarify:
for Sl, the effect is that it will stay in that state forever in most cases. So maybe is not technically a deadlock but the effect is the same.
Evaluate did 48 translations in 6 hours on a single machine, so it's not a better load balancing that we need, I think it is just broken.
To reproduce, log into my machine and run
./mmt evaluate -e b1

With the latest commit https://github.com/ModernMT/MMT/commit/6e886b5e5a667828abd1e3cfb4051c9ebc756a55 tuning is now faster because it can also translate different documents in parallel.
The previous implementation translated one document at time; translations were made in parallel but in the case we have very small documents (1 sentence) the parallelism was really poor.
This new implementation add all documents' lines to the common queue, so even small documents are translated in parallel.


Updating email on accounts page does not flash message.

The behaivor seems inconsistent. In the account section, when updating your email address, sometimes the success flash message appears and some times it does not.
Write a test that verifies updating name and email provide a flash message on success.

This now flashes a message after a user updates its email address.


Wrong skiplist index usage in edge collection

my environment running ArangoDB
I'm using the latest ArangoDB of the respective release series:

[x] 3.1

Mode:

[x] Single-Server

Storage-Engine:

[x] mmfiles

On this operating system:

[x] Windows, version: 10

this is an AQL-related issue:
I'm issuing AQL via:

[x] web interface with this browser:     running on this OS: Windows

In an edge collection named hasPublished, I create a skiplist index on the following fields: ['_from', 'publishedAt']

I explain the following query: for p in hasPublished filter p._from == 'from' sort p.publishedAt desc return p and get:

Execution plan:
 Id   NodeType          Est.   Comment
  1   SingletonNode        1   * ROOT
  8   IndexNode            1     - FOR p IN hasPublished   /* edge index scan */
  5   CalculationNode      1       - LET #3 = p.`publishedAt`   /* attribute expression */   /* collections used: p : hasPublished */
  6   SortNode             1       - SORT #3 DESC
  7   ReturnNode           1       - RETURN p

Indexes used:
 By   Type   Collection     Unique   Sparse   Selectivity   Fields               Ranges
  8   edge   hasPublished   false    false        76.09 %   [ `_from`, `_to` ]   (p.`_from` == "from")

I would expect to get the following:

Execution plan:
 Id   NodeType        Est.   Comment
  1   SingletonNode      1   * ROOT
  8   IndexNode          2     - FOR p IN hasPublished   /* reverse skiplist index scan */
  7   ReturnNode         2       - RETURN p

Indexes used:
 By   Type       Collection   Unique   Sparse   Selectivity  Fields                      Ranges
  8   skiplist   hasPublished false    false            n/a  [ `_from`, `publishedAt` ]  (s.`_from` == "user")

I would expect that too, thanks for reporting, managed to reproduce.
Need some time to investigate.
As a quick fix you could do the following:
FOR p IN hasPublished
  FILTER p._from == 'from'
  AND p.publishedAt >= null // << NOTE HERE, an always true condition
  SORT p.publishedAt DESC
  RETURN p

Your quick fix returns the same execution plan and doesn't use the right index either (3.1.21 on Windows)

Wierd...
arangod> db._version()
3.1.21
arangod> db._explain('FOR p IN col FILTER p._from == "v/1" && p.publishedAt >= null SORT p.publishedAt DESC RETURN p')
Query string:
 FOR p IN col FILTER p._from == "v/1" && p.publishedAt >= null SORT p.publishedAt DESC RETURN p

Execution plan:
 Id   NodeType        Est.   Comment
  1   SingletonNode      1   * ROOT
  8   IndexNode          2     - FOR p IN col   /* reverse skiplist index scan */
  7   ReturnNode         2       - RETURN p

Indexes used:
 By   Type       Collection   Unique   Sparse   Selectivity   Fields                       Ranges
  8   skiplist   col       false    false            n/a   [ `_from`, `publishedAt` ]   ((p.`_from` == "v/1") && (p.`publishedAt` >= null))

Optimization rules applied:
 Id   RuleName
  1   move-calculations-up
  2   move-filters-up
  3   move-calculations-up-2
  4   move-filters-up-2
  5   use-indexes
  6   remove-filter-covered-by-index
  7   use-index-for-sort
  8   remove-unnecessary-calculations-2

Seems to work on my end...
Can you try and and modify the SORT statement:
SORT p._from DESC, p.publishedAt DESC

Ah is your Skiplist sparse?
If so than replace p.publishedAt >= null with p.publishedAt > null

Tried all your recommendations but for some reasons, the query is analyzed differently on my machine :)
Query string:
 FOR p IN hasPublished FILTER p._from == "v/1" && p.publishedAt >= null SORT p.publishedAt DESC
 RETURN p

Execution plan:
 Id   NodeType          Est.   Comment
  1   SingletonNode        1   * ROOT
  8   IndexNode            1     - FOR p IN hasPublished   /* edge index scan */
  9   CalculationNode      1       - LET #1 = (p.`publishedAt` >= null)   /* simple expression */   /* collections used: p : hasPublished */
  4   FilterNode           1       - FILTER #1
  5   CalculationNode      1       - LET #3 = p.`publishedAt`   /* attribute expression */   /* collections used: p : hasPublished */
  6   SortNode             1       - SORT #3 DESC
  7   ReturnNode           1       - RETURN p

Indexes used:
 By   Type   Collection     Unique   Sparse   Selectivity   Fields               Ranges
  8   edge   hasPublished   false    false        76.09 %   [ `_from`, `_to` ]   (p.`_from` == "v/1")

Optimization rules applied:
 Id   RuleName
  1   move-calculations-up
  2   move-filters-up
  3   move-calculations-up-2
  4   move-filters-up-2
  5   use-indexes
  6   remove-filter-covered-by-index

OK thanks for checking, then i need time to investigate, no more quick fix ideas in my head sorry.

No worries, thanks a lot for your prompt reply and trying to find a workaround. I don't know if the query parser takes index selectivity into account? (which may explain the difference between your results and mine)

Yes it takes the selectivity into account, but afaik the SORTING should always overrule FILTER only.
Especially in the case where FILTER and SORT both use _from and publishedAt attributes.
Indexes always get an "upvote" for every attribute they cover.

So i get exactly your plan if and only if my skiplist is sparse
In this case it decides that it cannot be used for sorting.
Is this the case on your side?

Nope my skiplist isn't parse:

I think which index is picked here may depend on the amount of documents in the collection and the selectivity of the indexes.
If these values are different in your setups, then different indexes may be picked. What is the actual number of documents in the collection, and how "unique" are "_from" and the combination of "_from" and "publishedAt" in this collection?

True that I was trying the query on my dev setup with a nearly empty DB, so:

I tried on the staging DB, where the hasPublished collection contains 2,600+ documents and:

the [_from, _to] edge index selectivity is around 46%
most _from fields are the same
most publishedAt fields are different (they are timestamps)

-> so the combination of the 2 would be rather unique. Still, it uses the [_from, _to] edge index and not the skiplist index.

I went back to my dev DB and purged the collection, which brought the [_from, _to] edge index selectivity to 100% and tried the query again -> this time, the skiplist index got used!

So it would appear that the skiplist index would only be used when the selectivity of the [_from, _to] edge index is very high?

Should be better with version 3.2.1.
However, the optimizer may still "guess wrong" when multiple indexes are candidates for the query, and at least one of them has no selectivity estimate, such as the skiplist index.
But it seems that skiplist indexes have been overly penalized before.

3.2.1 has been released and is available for download.


adding pry and pry-byebug to dev dependencies

Any particular reason? If it's for interactive debugging of failed tests it might be good to put it in the Gemfile in a group that CI won't install, just to save some cycles. Might not matter much given that travis caches gems though.

Yeah just for dev. I'll move to Gemfile.

pry is, I think pure Ruby but byebug has some C heft to it so makes me pay slightly more attention to CI overhead :)

glad someone is paying attention :)

stripped out commented external test entries but I can put them back if they were left commented for a reason.

I think that's still under the :test group, but upon further investigation this is moot for now. Appveyor doesn't use --without development and Travis caches compiled gems so benefit on either.
:shipit:

you could add pry-stack-explorer as well.   we already ship all three of these in the omnibus-chef package, so we know they're portable enough.

added that @lamont-granquist had not heard of that - looks very cool.

:+1:


[OSD-10352] - Webhook receiver test coverage

What type of PR is this?
(test)
What this PR does / why we need it?
To improve Webhook receiver test coverage
Which Jira/Github issue(s) this PR fixes?
Fixes # OSD-10352
Special notes for your reviewer:
Pre-checks (if applicable):

[ ] Ran make test

Codecov Report

Merging #23 (b6aa33e) into master (d78c8de) will increase coverage by 5.27%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #23      +/-   ##
==========================================
+ Coverage   15.61%   20.88%   +5.27%
==========================================
  Files          12       12
  Lines         474      474
==========================================
+ Hits           74       99      +25
+ Misses        396      368      -28
- Partials        4        7       +3

Impacted Files
Coverage Δ

pkg/handlers/webhookreceiver.go
32.55% <0.00%> (+8.52%)
:arrow_up:

pkg/util/test/generated/mocks/client/cr-client.go
16.36% <0.00%> (+12.72%)
:arrow_up:

/approve

/lgtm


Menu Shimmer Alignment and UI Improvement

The menu shimmer is not aligned properly; it appears to be positioned to the left of the screen. We would appreciate the assistance of talented developers to enhance the UI of the menu shimmer and make it visually appealing. Developers are encouraged to use their creativity to achieve this.

i want to work on this issue, please assign to me.

@Rehan52004 @Shubham-Aggarwal-1306 You guys can definitely work on this! I will be accepting the PR that makes this feature even more attractive for our web app. Let's enhance it together

recreated this issue


Update README of consensus architecture

The architecture section still mentions a Coordinator, which came from our attempt at designing the consensus around a Redux architecture, which is now deprecated.

The definition of done for this issue, should include proper documentation for all consensus sub-packages too. These READMEs are generally quite bare.


Bug with potions

It appears your wither potions conflict in some weird way with potions of leaping from other mods, creating a weird potion that inflicts both wither and leaping.

What "other mods"? This should not be possible unless they are doing something really wrong.

What "other mods"? This should not be possible unless they are doing something really wrong.

Erebus and Ars Magica 2 mainly.

Erebus and Ars Magica 2 mainly.

I need versions and a screenshot. This is very odd.

I think it happened with <IP_ADDRESS> - 16. I have not tried the latest version yet because of this bug.

I decided to test out the latest version of this mod, and it is still happening.

um i think this is still happening when i get hit by a witherwitch potion in my mudpack it crashes to desktop (1.7.10) and i am using the newest 1.7.10 vers too so ya. here is the crash report
http://pastebin.com/DhSDds6y
as you can see we have quite the mudpack. I was having this problem before dragonapi was added so its not that (ik it messes with making more potion ids and stuff)

also i checked my configs and i do not see the options in mine please help

ya i have confirmed it seems to be a problem where the potion of decay has a drowning potion effect on it as well as the wither

ok i found its an issue with the drowning potion effect in blood magic, which can be configured there. srry

but changing that just causes other potion effects to take over... meaning now it overrides with other potion effects like reflect dmg.... please fix

It's ALWAYS an ID issue. Fix your configs.

well i am UNABLE TO FIX THE CONFIGS!!!!! i dont want to point fingers here and i am VERY SORRY (not sarcasm im just really frustrated today) if i come accross as rude but while it seems like your mod was updated for 1.8, it has NOT been updated with the config fix that it looks like u applied 7 days ago. the most recent update to a 1.7.10 compatible version appears to be from Jan 2 which means it does not have the fix i need. as i am sure you know most other mods use a system to automatically place their potion effects so that they will not conflict. mods that use this do not always allow me to fix them via config, and it seems like they are all targeting your spot for some reason, causing alot of trouble since i cannot edit your id configs! I apologize if i am coming across as rude but this is hands down my FAVORITE mob mod and i feel really frustrated that i cant get it working, i dont want to have to remove it cuz i love messing around with wither witches and stuff

Sorry about that, I was unaware the fix was unreleased. Should be a new build on curseforge shortly.

ok thank you i will grab it asap!

i hate to be annoying but the new update still doesnt have that  config option, and yes i did delete the entire old config folder first


publish dev branch to npm

This has been raised before in #2620 and #2326, though these are a bit old and it seems the conclusion was that it wasn't clear how best to do this with npm.
The answer is to use npm dist-tag or npm publish --tag.
e.g.
> npm run build
> cd build
> npm publish --tag=dev

See:

https://docs.npmjs.com/getting-started/using-tags
https://docs.npmjs.com/cli/dist-tag

This could be rolled into a package.json script like:
{
  "scripts": {
    "publish-dev": "npm run build && (cd build && npm publish --tag=dev)"
  }
}

> npm run publish-dev

This is on my list of things to do after 0.8 makes it out, and that is just pending time to do the release. I'm thinking of having a monotonically incrementing build number based on the next numbers, so the first one out after 0.8 would be 0.9-pre-build1 and tagged at edge.
I still am not sure if it would be better to automatically publish every successful build from travis. My current feeling is that a giant flood of ractive dev builds on npm wouldn't really be a good thing, so a manual publish after significant changes would probably be best.

@evs-chris Is this something someone else can take off your plate? You're already the lifeblood of ractive.

0.8.0 has been released! and there are already bug fixes out for it! :laughing:
I have published 0.8.1-build-1 tagged as edge to npm, which means it is now available with both of those (0.8.1-build-1 and edge) versions on npm and what will be our new cdn approach https://unpkg.com/ractive@edge
I'll probably cut 0.8.1 in a week or so if nothing new pops up between here and there.


Added state tracking possibility

Coverage increased (+1.4%) to 72.591% when pulling 24948a3725bea253e111bb51445c3b9276c61d75 on feature/state into 4c600dfb77a38c60b5425bb27162e6975125be29 on master.

Coverage increased (+1.4%) to 72.591% when pulling 8dbcb611f516e480cd629e6d87ee4ac623106b7f on feature/state into 4c600dfb77a38c60b5425bb27162e6975125be29 on master.

Coverage increased (+6.3%) to 77.468% when pulling 9beebe4898b667d38df08bf8f3c59c086f925b06 on feature/state into 4c600dfb77a38c60b5425bb27162e6975125be29 on master.

👍


Fix crash when columns are skipped in CSV translation

Fixes #89571
#83600 added locale skipping, but the index used was not adjusted accordingly.

My bad, thanks!

Thanks!


Mongo DB TotalCount for [UsePaging] not working in HC 14

Product
Hot Chocolate
Version
14
Link to minimal reproduction
localhost
Steps to reproduce
Just running my query get labour rates paged

And this is happening one very table I got which is several of them they are behaving the same as explained down below
What is expected?
This show how many  I actually got 38
so what I would expect my total count to be is 38 which means if I have rows per page 1-20 I should see of 38

This was working right before I upgraded from 13.9.x to 14 I would see the right total!
What is actually happening?
This is what I am getting 1-20 Of 21
So my guess is since rows per page are at 20 adding 1 to it gives me 21

If I change my mui grid rows per page to 30 it displays 1-30 of 31

The below screenshot proves it's coming from the server and it's not a bad react pagination happening

Relevant log output
No response
Additional context
Initial Program.cs Graphql HC Settings on Version 13.9.x
builder.Services.AddGraphQLServer().InitializeOnStartup().AddGlobalObjectIdentification().AddAuthorization().AddTypes().BindRuntimeType<ObjectId, IdType>()
    .AddTypeConverter<ObjectId, string>(x => x.ToString()).AddTypeConverter<string, ObjectId>(x => new ObjectId(x)).AddType<UploadType>()
    .AddType<OperationResult>().AddMongoDbSorting().AddMongoDbProjections().AddMongoDbPagingProviders().AddMongoDbFiltering()
    .SetPagingOptions(new PagingOptions { MaxPageSize = 1000, AllowBackwardPagination = true, IncludeTotalCount = true })
    .AddConvention<IFilterConvention, CustomFilterConventionExtension>();

Post Program.cs Graphql HC Settings on Version 14
builder.Services.AddGraphQLServer().InitializeOnStartup().AddLegacyNodeIdSerializer() // to use old globalization serialization
    .AddGlobalObjectIdentification().AddAuthorization().AddTypes().BindRuntimeType<ObjectId, IdType>().AddTypeConverter<ObjectId, string>(x => x.ToString())
    .AddTypeConverter<string, ObjectId>(x => new ObjectId(x)).AddType<UploadType>().AddType<OperationResult>().AddMongoDbSorting().AddMongoDbProjections()
    .AddMongoDbFiltering().ModifyPagingOptions(opt =>
    {
        opt.MaxPageSize = 1000;
        opt.AllowBackwardPagination = true;
        opt.IncludeTotalCount = true;
    }).AddMongoDbPagingProviders().ModifyCostOptions(options => { options.EnforceCostLimits = false; }).ModifyOptions(o =>
    {
        o.EnsureAllNodesCanBeResolved = false;
        o.DefaultQueryDependencyInjectionScope = DependencyInjectionScope.Resolver;
        o.DefaultMutationDependencyInjectionScope = DependencyInjectionScope.Request;
    }).AddConvention<IFilterConvention, CustomFilterConventionExtension>();

Nothing else has changed in my query or objects or anything
Here is my .NET Query
using BE.TradeeHub.PriceBookService.Application.Core;
using BE.TradeeHub.PriceBookService.Application.Requests.Search;
using BE.TradeeHub.PriceBookService.Domain.Entities;
using HotChocolate.Authorization;
using HotChocolate.Data;
using MongoDB.Bson;
using MongoDB.Driver;

namespace BE.TradeeHub.PriceBookService.Application.GraphQL.Queries;

[QueryType]
public static class LabourRateQueries
{
    [Authorize]
    [UsePaging]
    [UseProjection]
    [UseSorting]
    public static IExecutable<LabourRateEntity> GetLabourRates([Service] IMongoCollection<LabourRateEntity> collection, [Service] UserContext userContext,
        SearchLabourRateRequest request)
    {
        var filterBuilder = Builders<LabourRateEntity>.Filter;
        var filters = new List<FilterDefinition<LabourRateEntity>>
        {
            filterBuilder.Eq(x => x.UserOwnerId, userContext.UserId)
        };

        if (!string.IsNullOrEmpty(request.Name))
            filters.Add(filterBuilder.Regex(x => x.Name, new BsonRegularExpression(request.Name, "i")));

        if (!string.IsNullOrEmpty(request.Description))
            filters.Add(filterBuilder.Regex(x => x.Description, new BsonRegularExpression(request.Description, "i")));

        if (!string.IsNullOrEmpty(request.RateType)) filters.Add(filterBuilder.Eq(x => x.RateType, request.RateType));

        if (request.UsePriceRange.HasValue)
            filters.Add(filterBuilder.Eq(x => x.UsePriceRange, request.UsePriceRange.Value));

        if (request is { CostFrom: not null, CostTo: not null })
        {
            var costFilter = filterBuilder.And(filterBuilder.Gte(x => x.Cost, request.CostFrom.Value), filterBuilder.Lte(x => x.Cost, request.CostTo.Value));
            filters.Add(costFilter);
        }
        else if (request.CostFrom != null)
        {
            filters.Add(filterBuilder.Gte(x => x.Cost, request.CostFrom.Value));
        }
        else if (request.CostTo != null)
        {
            var costFilter = filterBuilder.Or(filterBuilder.Lte(x => x.Cost, request.CostTo.Value), filterBuilder.Eq(x => x.Cost, null));
            filters.Add(costFilter);
        }

        if (request is { PriceFrom: not null, PriceTo: not null })
        {
            var priceFilter = filterBuilder.And(filterBuilder.Gte(x => x.Price, request.PriceFrom.Value),
                filterBuilder.Lte(x => x.Price, request.PriceTo.Value));
            filters.Add(priceFilter);
        }
        else if (request.PriceFrom != null)
        {
            filters.Add(filterBuilder.Gte(x => x.Price, request.PriceFrom.Value));
        }
        else if (request.PriceTo != null)
        {
            var priceFilter = filterBuilder.Or(filterBuilder.Lte(x => x.Price, request.PriceTo.Value), filterBuilder.Eq(x => x.Price, null));
            filters.Add(priceFilter);
        }

        if (request.ParentServiceCategoryId.HasValue)
            filters.Add(filterBuilder.Eq(x => x.ParentServiceCategoryId, request.ParentServiceCategoryId.Value));

        var combinedFilter = filterBuilder.And(filters);

        var query = collection.Find(combinedFilter);
        var executableQuery = query.AsExecutable();

        return executableQuery;
    }
}

Here is my front end query
query GetLabourRatesPaged(
  $request: SearchLabourRateRequestInput!
  $order: [LabourRateEntitySortInput!]
  $pageSizeBefore: Int
  $pageSizeAfter: Int
  $afterCursor: String
  $beforeCursor: String
) {
  labourRates(
    request: $request
    order: $order
    first: $pageSizeAfter
    after: $afterCursor
    last: $pageSizeBefore
    before: $beforeCursor
  ) {
    pageInfo {
      hasPreviousPage
      hasNextPage
      endCursor
      startCursor
    }
    edges {
      cursor
      node {
        id
        name
        description
        parentServiceCategoryId
        rateType
        usePriceRange
        cost
        price
        serviceCategory {
          id
          name
        }
        pricingTiers {
          unitRange {
            max
            min
          }
          cost
          price
        }
        createdAt
        lastActivity
      }
    }
    totalCount
  }
}

These are all my nuget packages I got installed and what version they are on

@michaelstaib  I think this might not have anything to do with total count but with the ModifyPagingOptions itself or maybe could it be some of my settings are colliding with each other somehow?
I say this because
    .ModifyPagingOptions(opt =>     {         opt.MaxPageSize = 1000;         opt.AllowBackwardPagination = true;         opt.IncludeTotalCount = true;     })
I tried to put 500 or 1000 in my request but throws

which means my settings are being ignored
while 100 is allowed which I am guessing might be default  max page size.

Works fine thank you @glen-84  @michaelstaib !


No message when having no results

re https://github.com/microsoft/vscode/issues/93645

select text that's unlikely to occur as symbol name, like =>
press cmd+t for workspace symbols
:bug: there is no visible progress but also no message that nothing has been found

Similar to https://github.com/microsoft/vscode/issues/94007
I decided to drop the "no results default pick" from pickers to align with what all pickers do when there are no results, e.g. for language mode:

I am not sure it is good to have inconsistency around this where some pickers always show a result and others do not.
Personally I feel the indication that no results match not very useful, but we can have a UX discussion if it should come back.
@chrmarti thoughts?

To me there is a difference between pickers that are populated immediately (or very, very quickly) like commands or outline and those that can take a while to populate, like workspace symbol search

I will bring this back for the following quick pickers:

files (Cmd+P)
symbols (#)
commands (>)
editors (edt)
debug (debug)
views (view)

Verification:

go through these pickers and produce no results
verify you see a meaningful message appearing (pressing enter will not close the picker though)
verify you only see this message when you searched for something, not initially


fix(plugins/plugin-client-common): when double clicking on commentary, only enter edit mode if no text is selected

Fixes #5930

Description of what you did:

My PR is a:

[ ] 💥 Breaking change
[x] 🐛 Bug fix
[ ] 💅 Enhancement
[ ] 🚀 New feature

Please confirm that your PR fulfills these requirements

[x] Multiple commits are squashed into one commit.
[x] The commit message follows Conventional Commits, which allows us to autogenerate release notes; e.g. fix(plugins/plugin-k8s): fixed annoying bugs
[x] All npm dependencies are pinned.

Close due to the test complexity. It's difficult for WebdriverIO to figure out where to click. We should come up a better solution.


Conversion error on the app

Receiving multiple messages on support chat about an error when trying to open the wallet in the app. 'conversion mistake'. Tried to reproduce, working for me. Asked for screenshots and extra information.

Android Samsung Galaxy S10

Message from user: Of course it doesn't helped to close and open my wallet again. Further i closed
the app and my tasks, restarted my phone, deinstalled the app and installed it
again. But today luck isn't at my side

Need error logs, please press the E on error 5 times and copy the logs.

[
0 : {
timestamp : Mon, 21 Jun 2021 10:48:33 GMT,
message : startedWallet,
ctx : [VAR: UNDEFINED],
level : INFO,
},
1 : {
timestamp : Mon, 21 Jun 2021 10:48:44 GMT,
message : initialize,
ctx : [VAR: UNDEFINED],
level : INFO,
},
2 : {
timestamp : Mon, 21 Jun 2021 10:48:45 GMT,
message : initializeSingleAccount,
ctx : {
index : 0,
revine :
017ec3ce68979bf7b7ef76ede87542c49f4285f300b8cc1d288a5e4d0b32c08917ecb604ee275f,
stellar : GC6BBIV7XCGSZLHPZWM743CVJJTWEDW6W274WLJL5J62Y6JVYMQYOQ6M,
type : app,
},
level : INFO,
},
3 : {
timestamp : Mon, 21 Jun 2021 10:48:48 GMT,
message : error Something went wrong while fetching account,
ctx : {
e : NotFoundError: Not Found,
},
level : ERROR,
},
4 : {
timestamp : Mon, 21 Jun 2021 10:48:50 GMT,
message : error Something went wrong while generating account,
ctx : {
e : Error: Request failed with status code 400,
error :
/explorer/hashes/017ec3ce68979bf7b7ef76ede87542c49f4285f300b8cc1d288a5e4d0b32c08917ecb604ee275f:
GET: no content available (code: 204),
},
level : ERROR,
},
5 : {
timestamp : Mon, 21 Jun 2021 10:48:50 GMT,
message : error initializeImportedPkidAccounts,
ctx : {
error : Error: Tfchain address has 0 balance, no need to activate an account,
},
level : ERROR,
},
]

@JonasWijne major in prod, several users hitting this error on their wallet. Can you see anything in the logs?

Its an error checking the stellar explorer

Any updates? It's urgent.

Problem is currently we are hitting an error flow that we were supposed to hit during the Rivine to stellar migration.
Fixing this would disable the rivine to stellar migration, and everyone who has not opened their wallet since the migration would lose their tokens. We need to rewrite the entire migration to fix this. :/

When is this being rewritten? We're getting complaints of conversion error so has some priority. Any ETA or workaround?

@sasha-astiadi is this done? So is the migration rewritten?

I need updates asap.

we can manually fix the problem for people by funding their account with xlm and giving the right assets

Please check who had/has this problem and ask for their wallet address, @JonasWijne will fund it with xlm as a workaround for now

@sabrinasadik
Please find the wallet addresses of the 2 users facing this issue below:
User Malik — GC6BBIV7XCGSZLHPZWM743CVJJTWEDW6W274WLJL5J62Y6JVYMQYOQ6M
User Gary — GCGQXQZZNG7CI7IOYBJOK6YBW4VT36DUSDTQCPNJVWTU4HWD7B5CRRSX

@JonasWijne see Florina's comment - fix it manually pls as you said. This issue has been open since June 18th.

@JonasWijne and @sasha-astiadi and @ken-de-moor
Please give an update on this issue.

@nbabenko can you help here?

I funded the wallets, should be ok

@jdelrue Both the users facing this issue are asking why is the wallet empty. Can you please let me know what you meant by funding the wallets so I can go back to my users and explain to them?

We funded the wallets with XLM so they work again, we did not give them any other currency or whatsoever. The problem should be fixed and thats it.

@jdelrue You can close this issue


Superstarify prison does not release user when it expires

While the superstarify command correctly sends the expiration date of the superstarify prison to the API, it does not schedule a task make sure the infraction is actually deactivated when we reach the expiration date. This means that the user will be kept in superstarify prison until we manually release them with the !unsuperstarify command.
The most obvious solution is to have a superstarify infraction schedule a task like other temporary infractions do. We also need to confirm that this task is recreated if the bot restarts before it was actioned.
Additionally, it's probably a good idea to confirm that the expiration date is in the future before sending a DM to notify a user of their imprisonment when they try to change their nickname or when they rejoin the server. It also wouldn't hurt to add that the datetime string is in UTC.
Context: This notified me of an expiration date in the past (08:21 in my local time):

Since @MarkKoz is currently working on the related moderation cog, I've assigned him for now, but I have not yet confirmed that he wants to work on this. Regardless, since we need to schedule this just like regular temporary infractions, it's probably a good idea if he's involved in the discussion.

Yup, I can work on this.


This PR was successfully deployed to production by CircleCI build 135 at 2017-01-11 10:50 GMT.


Add Parameters support to RCLC

I reviewed the interface concept as promised. My suggestions:

Allow fixed-size parameter names only or introduce a mapping from integer constants to strings in the agent as in diagnostics, cf. https://github.com/micro-ROS/micro_ros_diagnostics/issues/5.
String-type parameters may be omitted initially, i.e. bool, int/long, float/double are enough.
Also, the parameter client may be omitted in the first PR. I suppose that there are little use-cases for changing parameters of other nodes from an micro-ROS node, but that the 80% case is changing parameters of a micro-ROS node via launch, system-modes, or CLI from standard ROS 2.

I agree 100% with Ralphs's comments, those are such great ideas for simplifying this implementation.
@FranFin @jamoralp @Acuadros95, if you are ok, maybe we can plan some iterations over this. Thoughts?

If you are interested, I may organize a short meeting on the mapping approach used in diagnostics. Perhaps some of the code can be reused.

In my opinion, the mapping approach should be optional and the micro-ROS client library must be able to work standalone with the restrictions you mention:

Fixed-size parameter names
Not string parameters only
Implementing only the "parameter server"

Moving to https://github.com/ros2/rclc/pull/78


Skip AppOfflineDroppedWhi… test when AppVerif is running

https://github.com/aspnet/IISIntegration/issues/933

It's been failing on aspnetci too, I'll skip it completely.


Fails when git config user.name contains non-ascii characters

When trying to use it, I get an error:
Traceback (most recent call last):
  File "C:\Python27\Scripts\ghp-import-script.py", line 9, in <module>
    load_entry_point('ghp-import==0.5.5', 'console_scripts', 'ghp-import')()
  File "c:\python27\lib\site-packages\ghp_import.py", line 238, in main
    run_import(git, args[0], opts)
  File "c:\python27\lib\site-packages\ghp_import.py", line 173, in run_import
    start_commit(pipe, git, opts.branch, opts.mesg)
  File "c:\python27\lib\site-packages\ghp_import.py", line 128, in start_commit
    write(pipe, enc('committer %s <%s> %s\n' % (uname, email, mk_when())))
UnicodeDecodeError: 'ascii' codec can't decode byte 0x8c in position 11: ordinal not in range(128)

my user.name=Rafał Michalski if I replace utf-8 ł with ascii l it works.

ok, my bad, the problem was in:
time.strftime('%z')
'\x8crodkowoeuropejski czas stand.'

ok, this is a known problem with python on windows, closing


Release 2.1.6

I will make new release which must include all linked pull requests functioning at acceptable rate.

Done


fix plausibility for Argentina international mobile numbers

Proposed fix for https://github.com/floere/phony/issues/444
With release of 2.18.5 Phony.plausible? is returning false for Argentina internal mobile numbers, including the ones that are used in the split tests. Added plausibility tests for those numbers.

Coverage increased (+0.2%) to 98.601% when pulling 074e0ad786253fd543e653254ee547bc801e7f99 on larsklevan:argentina-international-mobile-plausible into 440ccace40502379ca0f0d64ca6ee0ad7b8c4774 on floere:master.

@floere this is my first time contributing to phony. Any concerns with this PR?
As I wrote in #444 I'm seeing a regression in 2.18.5 where some Argentina numbers that were valid previously are being rejected as not plausible.

@larsklevan No, in fact it is great! 🎉 Many thanks for your work and many apologies for my long summer break 😅 Released in 2.18.6! 🚀


Update security policy

Improve wording of the security policy
Remove the explicitly names supported versions, since these would have to be updated with every release

Thanks for all repository improvements, they will really serve to improve in the future


How to have the app.HASH.js being automatically referenced in the index.html?

Hi!

I added the flag :module-hash-names true in the build of my app so I don't have to invalidate caches when deploying.
The thing is that in the resources/public/index.html, the app.js is referenced statically. When I open it there is a GET .../public/js/compiled/app.js net::ERR_FILE_NOT_FOUND exception in the browser's console.
https://github.com/day8/re-frame-template/blob/594e17b1daf559fbb289abeba1f20988b390825d/src/leiningen/new/re_frame/resources/public/index.html#L20
Please can anyone help me understand what step am I missing in the release process?

I think I found a solution for this: https://clojurians-log.clojureverse.org/shadow-cljs/2018-03-23
Too bad it is not better integrated into the framework.


add support for preset & plugins in babelOptions

As discussed in a comment at the end of #711 I have a use case for the following:
parserOptions: {
  requireConfigFile: false,
  babelOptions: {
    presets: [ /* presets go here */ ],
    plugins: [ /* plugins go here */ ]
  }
}

The change to the code in this PR was trivial and I confirmed locally that it does work as expected, allowing me to pass in a custom babel config without using a babel config file.
Writing the test case took a couple of hours as I had to figure out a way to show that the change does exactly what is expected.
Feedback on improving/cleaning-up the tests would be more than welcome...

@kentcdodds Thanks for reviewing and approving!
Are two approvals needed for a PR to be merged? I don't see anything in CONTRIBUTING.md.
Would love to be able to use this change once it's merged and released to a new beta... ;-)

I'm not really a maintainer. I don't know what the process for things like this are in this repository. So I'll wait for a maintainer to review this.

One concern I have with this change is that it feels really arbitrary what config options babel-eslint would be allowing and not allowing.

A babel config is a babel config regardless of where it comes from. The only thing changing here is where this config gets specified, but the available settings/options are exactly the same.

I believe both TypeScript and typescript-eslint require a tsconfig.json, and this feels like a really similar case to me.

A lot of tools do follow the convention of requiring a configuration file to be named a certain way or for it to be in a specific location. There's nothing wrong with that per se, but it is short sited to force this to be the case (in my opinion) since it limits interoperability with other tools.
Better to support multiple options and let users or build tool authors pick the approach that works best for them... ;-)

@hzoo Is it possible to merge this and release that as another v11 beta? this way we could test this strongly needed feature... Thanks

@axten, yes it'd be great to get this merged, and then I could tackle making another PR for 11.x to fix the eslint 6.3 issues...

anything new here? we're still unable to use private class methods because of this not been merged...

@axten Private methods are broken for another reason. If you are already using private methods with Babel, then babel-eslint should already be able to parse them.

we don't have a babel config file, so we're unable to use any newer babel plugin since month.
private class methods are not working for us until #801 is released in the v10.x branch or #768 lands in the v11.x branch.

@axten it's not ideal, but since there hasn't been a new release of this package in quite some time we've been using a fork with this PR included.
It's based off the 11.x branch, and you can find it on npm as babel-eslint-fork.
We've been using it for a few months now without any issues.

thank you, I will have a look...

@axten it's not ideal, but since there hasn't been a new release of this package in quite some time we've been using a fork with this PR included.
It's based off the 11.x branch, and you can find it on npm as babel-eslint-fork.
We've been using it for a few months now without any issues.

I'm using it but I got the same error: "This experimental syntax requires enabling the parser plugin: 'classPrivateMethods"

@hadnet I haven’t tried classPrivateMethods, but it sounds like you maybe need to tweak your babel config?
If you share your config and a sample of code using private class methods I can take a look...

@hadnet I haven’t tried classPrivateMethods, but it sounds like you maybe need to tweak your babel config?
If you share your config and a sample of code using private class methods I can take a look...

const developmentEnvironments = ['development', 'test'];

const developmentPlugins = [require('react-hot-loader/babel')];

const productionPlugins = [
  require('babel-plugin-dev-expression'),

  // babel-preset-react-optimize
  require('@babel/plugin-transform-react-constant-elements'),
  require('@babel/plugin-transform-react-inline-elements'),
  require('babel-plugin-transform-react-remove-prop-types')
];

module.exports = api => {
  // see docs about api at https://babeljs.io/docs/en/config-files#apicache

  const development = api.env(developmentEnvironments);

  return {
    presets: [
      [
        require('@babel/preset-env'),
        {
          targets: { electron: require('electron/package.json').version }
        }
      ],
      require('@babel/preset-flow'),
      [require('@babel/preset-react'), { development }]
    ],
    plugins: [
      // Stage 0
      require('@babel/plugin-proposal-function-bind'),

      // Stage 1
      require('@babel/plugin-proposal-export-default-from'),
      require('@babel/plugin-proposal-logical-assignment-operators'),
      [require('@babel/plugin-proposal-optional-chaining'), { loose: false }],
      [
        require('@babel/plugin-proposal-pipeline-operator'),
        { proposal: 'minimal' }
      ],
      [
        require('@babel/plugin-proposal-nullish-coalescing-operator'),
        { loose: false }
      ],
      require('@babel/plugin-proposal-do-expressions'),

      // Stage 2
      [require('@babel/plugin-proposal-decorators'), { legacy: true }],
      require('@babel/plugin-proposal-function-sent'),
      require('@babel/plugin-proposal-export-namespace-from'),
      require('@babel/plugin-proposal-numeric-separator'),
      require('@babel/plugin-proposal-throw-expressions'),

      // Stage 3
      require('@babel/plugin-syntax-dynamic-import'),
      require('@babel/plugin-syntax-import-meta'),
      [require('@babel/plugin-proposal-private-methods'), { loose: true }],
      [require('@babel/plugin-proposal-class-properties'), { loose: true }],
      require('@babel/plugin-proposal-json-strings'),

      ...(development ? developmentPlugins : productionPlugins)
    ]
  };
};

When I set my eslintrc to 'parser': 'babel-eslint-fork', I got another error: "Parsing error: params is not iterable."
When I'm using the arrow function way no error at all.

@hadnet I don’t see anything obviously wrong, and I see there’s a related issue: https://github.com/babel/babel-eslint/issues/728
I’m traveling for the holidays but will give it a try when I’m back at my computer.
In the meantime, have you tried switching the order of the private-methods and class-properties plugins so that class properties is first?

@hadnet I finally had some time to look into using the @babel/plugin-proposal-private-methods, and it's installing/activated correctly using this plugin, but I get an error when linting:
0:0  error  Parsing error: params is not iterable
It looks like this is a known issue https://github.com/babel/babel-eslint/issues/749, and it seems that it's blocked until a PR gets merged into estree...

@hzoo @kaicataldo @nicolo-ribaudo this project seems to be unmaintained. I cannot understand why this don't get merged and released. Several people are waiting for this since july...

Hey there, apologies for not getting back to you sooner. All active development has moved to the main Babel monorepo. You can track our progress here. Do you mind making an issue with your proposal in that repository so we can evaluate it in the context of our v8 release plans?

Closing this now that https://github.com/babel/babel/pull/11639 has been released. Thanks for contributing!


error : invalid operand for instruction

int main()
{
    std::uint64_t largeImmidiateValue{ 0x1234567812345678 };
    jm::detail::syscall(0, 0, 0, 0, 0, largeImmidiateValue);//error : invalid operand for instruction
}

I believe it has something to do with the input constraint "rn", because if I change it to "r", then it compiles.

Looking into this.
I think I had similar issue earlier and may have fixed it in some other project of mine already.

Changing it into "re" or "rZ" or "reZ" works for me so far.
https://gcc.gnu.org/onlinedocs/gcc/Machine-Constraints.html

So I looked into this and it seems to compile just fine on godbolt with clang and gcc, but it does seem to be broken on clang-cl on my machine. I'd say this is probably a compiler bug.
Furthermore the e and Z constraints don't really make sense since your value is not something that fits into 32 bits and is being sign extended, however it still generates correct assembly so :shrug:
I tested just replacing "rn" with "reZ" on my private projects on clang-cl which was broken and it seemed to not change codegen in any way on a release build.
Will probably make the change, although I'm a bit afraid I might break it on actual clang/gcc.

Sorry I don't really understand how constraints works. I was typing random letters into the constraints string. "re" and "rZ" and "reZ" are the only ones I found that works so far for this instruction movq %[x], 48(%%rsp)
https://godbolt.org/z/6jbrWW
Do you happen to know any good tutorial on how to write gcc extended asm, or assembly in general?

Should be fixed.
Concerning the learning part I learned assembly mostly trough experience reading about instructions when debugging with tools like x64dbg and for extended asm the GCC docs for it are pretty good

I think it needs to be "re", not "reZ". https://godbolt.org/z/6cfYnc

Changed it


Creating posts timeline!

I wanted to have a page with a timeline of all my posts just as in (https://edition.ghost.io/)

I tried to do something similar with basic markdown and it looked okay in the editor but after publishing, there were big spaces between the lines and even the divider lines aren't visible!

If you want to implement something like that you would need to provide your own html markup and your own styles, the markdown elements that you want to use for that are not really meant for that purpose.
You could inspect the original page with the dev tools and try to copy the html code and the styles as well. You can inject those styles in the page settings (code injection section).


upgrade go version to 1.18

Description
upgrade go version from 1.17 to 1.18
Fixes #353
Note:
golanci-lint doesn't support go1.18 yet, check https://github.com/golangci/golangci-lint/issues/2649
check https://github.com/golangci/golangci-lint/pull/2438 to see which inters will be inactive.
Quick checks:

[x] I have followed the Code Guidelines.
[x] There is no other pull request for the same update/change.
[ ] I have written unit tests.
[x] I have made sure that the PR is of reasonable size and can be easily reviewed.

Looks like a bunch of linters doesn't work with Go 1.18 yet :/
We should keep an eye on this issue and update golangci-lint once it's resolved https://github.com/golangci/golangci-lint/issues/2649
WARN [linters context] bodyclose is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.
WARN [linters context] gosimple is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.
WARN [linters context] noctx is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.
WARN [linters context] rowserrcheck is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.
WARN [linters context] sqlclosecheck is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.
WARN [linters context] staticcheck is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.
WARN [linters context] structcheck is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.
WARN [linters context] stylecheck is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.
WARN [linters context] wastedassign is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.
WARN [linters context] unused is disabled because of go1.18. You can track the evolution of the go1.18 support by following the https://github.com/golangci/golangci-lint/issues/2649.


Add backup serviceaccount

Controlling ServiceAccount that will be used in the operator is possible by changing serviceAccountName form default to specific ServiceAccount. This is very useful in some cases like deploying the operator in general purpose namespace. In that case binding the default service account with the operator role is not a good practice.
Using service account in ScheduledBackup is not possible. It use by the default service account. The scheduled backups need only the following role:
kind: Role
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: percona-backup
  namespace: monitoring
rules:
- apiGroups:
  - pxc.percona.com
  resources:
  - perconaxtradbclusterbackups
  verbs:
  ...

This pull request will add support to set serviceAccountName in backup section of PerconaXtraDBCluster. If it is not specified, it will use the default service account.
Further when backups are created, it will append ssl and ssl-internal storage secrets. This fails the backup process because SecretName will be missing in secret volume in case of only setting SSLSecretName and SSLInternalSecretName in PerconaXtraDBClusterSpec and not setting them in Spec.PXC. Calling CheckNSetDefaults will fix that issue.
Finally, for fs-pvc backups, if the the persistentVolumeClaim storage class is using WaitForFirstConsumer mode. The pvcStatus will be in pending state until the backup jobs is scheduled. The current behaviour will eventually raise error (after backoff of checking status). This pull request will fix this behaviour by getting rid of that check which seems unneeded because the only left status could be ClaimLost which is expected during provisioning.

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


Document Option[T] usage

Document usages of the following Option[T] methods:

exists
forall
isDefined
isEmpty
nonEmpty
contains

and the following use cases:

#924
#918
#887
#624
#584
#514
#490

@getquill/maintainers Please add if I forgot something.

Also Option[T].map and Option[T].flatMap

fixed by https://github.com/getquill/quill/pull/1241


E           Exception: You must call FastAPILimiter.init in startup event of fastapi!

../lib/python3.11/site-packages/fastapi_limiter/depends.py:37: Exception
=========================== short test summary info ============================
FAILED tests/test_example.py::test_index - Exception: You must call FastAPILi...
============================== 1 failed in 0.85s ===============================

I used this dirty hack. Yet it is quite simple and gets the work done.
dependencies = []
if "pytest" not in sys.modules:
    dependencies.append(
        Depends(
            RateLimiter(...)
        )
    )
api_router = APIRouter(prefix="/api/v1", dependencies=dependencies)
# add your routes to `api_router`
app.include_router(api_router)

We need something more robust tho!

I used this dirty hack. Yet it is quite simple and gets the work done.
dependencies = []
if "pytest" not in sys.modules:
    dependencies.append(
        Depends(
            RateLimiter(...)
        )
    )
api_router = APIRouter(prefix="/api/v1", dependencies=dependencies)
# add your routes to `api_router`
app.include_router(api_router)

It works good but we need something more robust!


Fix scrolling for web view in course detail

The way this used to work was there was a scrollview that contained a
bunch of content views and a webview at the bottom. The webview was
resized to fit its content and had scrolling disabled.
Unfortunately, I tried this with non-trivial content (i.e. not just my
test content), it had tons of layout issues. This fixes it by removing
the container scrollview, having a constant height webview, and putting
the non web content at the top of it, offsetting it as the webview
scrolls and using content insets to offset the web content below the non
web content.
JIRA: https://openedx.atlassian.net/browse/MA-1851

@mikekatz please review

:+1:


Add installation guide for Debian distribution

Description
Write installation instructions for the Debian distribution.
Issues Resolved
Fixes #2164
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and subject to the Developers Certificate of Origin.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Demo is scheduled for 10:30am PST today.

Requested tech review from Peter.


Add missing tests to BatchDict

Codecov Report
Patch and project coverage have no change.

Comparison is base (f1c4cdc) 100.00% compared to head (4046a66) 100.00%.

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #263   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           10        10
  Lines         1115      1115
  Branches       118       118
=========================================
  Hits          1115      1115

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Setup via jupyter_notebook_config.py not respected (Server-Side Settings)

Hello all, I've read through the readme, and am trying to figure out if what I am doing is wrong, and this is expected, or if I should be able to achieve this (which for me, all setup occurs in jupyter_notebook_config.py, I do this so I can automate this install for folks).
Essentially,
I inferred from the Readme (Note: If this is accurate, we should make this explicit under Server-Side Settings) that I can put this in the jupyter_notebook_config.py to set the contents_manager_class and enabled the plugin.
c.NotebookApp.contents_manager_class = "jupyterfs.metamanager.MetaManager"
c.NotebookApp.nbserver_extensions = {"jupyterfs.extension": True}

Then, per the Server-Side Settings (This part IS explicit) I added a couple of locations for testing:
c.Jupyterfs.resources = [
    {
        "name": "mytest1",
        "url": "osfs:///Users/iamgroot/Notebooks"
    },
    {
        "name": "mytest2",
        "url": "osfs:///Users/iamgroot"
    },
]

When I restart my notebook server this does NOT work.
Nothing new appears.
However, when I open the Advanced Settings Editor, go to jupyter-fs and add:
{
	"resources": [
    {
        "name": "mytest1",
        "url": "osfs:///Users/iamgroot/Notebooks"
    },
    {
        "name": "mytest2",
        "url": "osfs:///Users/iamgroot"
    }
    ]
}

Then I get two new items with the proper root as expected.
Note, when I do this, I don't change the jupyter_notebook_config.py so all the other information is there
I am using Anaconda, I am not sure if that could affect things.
Essentially, I would like to be able to do ALL the setup in the jupyter_notebook_config.py without having to touch any of the json files/UI settings. This allows me to automate a setup for my users.
Any thoughts would be appreciated.

I'm also having problems with server-side settings. I've tried to specify jupyter_server_config.json, but the sidebar pane stays empty.
Unfortunately, I cannot reproduce the issue. This minimal example results in a correctly functional sidebar pane:
FROM jupyter/base-notebook

RUN pip install jupyter-fs

RUN echo '{ \
    "ServerApp": { \
    "contents_manager_class": "jupyterfs.metamanager.MetaManager", \
    "jpserver_extensions": { \
    "jupyterfs.extension": true \
    } \
    }, \
    "Jupyterfs": { \
    "resources": [ \
    { \
    "name": "HOME", \
    "url": "osfs:///home/jovyan" \
    } \
    ] \
    } \
    }' > /etc/jupyter/jupyter_server_config.json

I can reproduce with the eurodatacube/jupyter-user-base image that we are also using internally.
FROM eurodatacube/jupyter-user-base:10

RUN pip install jupyter-fs

RUN echo '{ \
    "ServerApp": { \
    "contents_manager_class": "jupyterfs.metamanager.MetaManager", \
    "jpserver_extensions": { \
    "jupyterfs.extension": true \
    } \
    }, \
    "Jupyterfs": { \
    "resources": [ \
    { \
    "name": "HOME", \
    "url": "osfs:///home/jovyan" \
    } \
    ] \
    } \
    }' > /etc/jupyter/jupyter_server_config.json

Interestingly, if I manually paste the config into the advanced settings, a second jupyter-fs pane appears and both the first and the second one display all files (rather than staying blank):
{
  "resources": [
    {
      "name": "HOME",
      "url": "osfs:///home/jovyan"
    }
  ]
}

These are the error messages from the Console:
Uncaught (in promise) TypeError: this.table_model is undefined
    init tree-finder.js:28
    init tree-finder.js:32
    I treefinder.js:79
tree-finder.js:28:720
Uncaught (in promise) TypeError: this._table_clip is undefined
    draw tree-finder.js:1
tree-finder.js:1:14898


Double HTML escaping on the documentation page

Hi,
Sorry if this is already reported in Chines or is a known issue but I noticed that in http://tengine.taobao.org/document/http_trim_filter.html, the HTML "escaping" is not working properly,  I think something after the Markdown parsing happened is escaping the HTML escape like:
<script>  --- turns into ---> <script> ---turns into --->  &lt;script&lt;

The Chinese version of the documentation for the module is ok http://tengine.taobao.org/document_cn/http_trim_filter_cn.html
Sorry if this is not the right place to report this too.

thx your report. It will be fixed.