[PL-48697] SMP user profiles

Add a new SMP User profiles topic
For reviewers, a preview is available:
User profiles
Merge requirements

[x] Successful preview build.
[x] No merge conflicts.
[x] Up to date with main.
[ ] SME/Product review.
[ ] Editorial/peer review.
[x] No open change requests from reviewers.
[n/a] Release notes/new features docs: Feature/version released to at least one prod environment.

What Type of PR is This?

[ ] Issue
[x] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[x] Tested Locally
[ ] Optional Screenshot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://660c78ef79c7383654ad790f--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://660c79b3a926d335169a8184--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://660c7b492ee03c2f1b971c92--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://660c7f1f858f4d39b90af3bc--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://660cef167697268d823c92a8--harness-developer.netlify.app

Did anyone else approved this for technical accuracy?

@pratmit
@bharatgoelharness reviewed and commented to remove STO and CE details that were in the initial draft since they haven't fully tested. I removed the info and requested another review. Will hold this PR until his approval.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://660dad4643ba5e3b118b9d14--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://661376e043da5c4cb209715c--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://6613777a1f1aca48b7039a75--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66267f4fd6d5f80a3ea876d2--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66268472e148a50e588d9128--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://66316475f64c282f809a4ac1--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://663164e22cb0ff3085aabc78--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://6631652ea9c5cb31eddc61e4--harness-developer.netlify.app


Tabpanel does not show as light gray when it is set as Enabled=False

The AJAX Control Toolkit <<IP_ADDRESS>>
The installation method

[ ] Installer

Minimal steps to reproduce the bug
Just create a new Web Site Web Forms Project, add a Tabcontainer with three tabpanels to any page, set one of the panels with the property Enabled=False
Actual result
The tabpanel that has been disabled is actually disabled but its color does not change to light gray. Everything stays as light blue
Expected result
Tha tabpanel should be visually disabled (light gray)
Browser(s) used
Edge, Chrome and IE11
A site deployment method

[ ] IIS

Sample project
TabContainer.zip


Backslashes in a password need to be escaped

This will replace a single backslash with a double backslash in the /root/.mongoshrc.js file. when a password with a backslash is used, it is correctly passed on to the provider for setting the user's password, but things break when attempting to use said password for the admin user.
A small explanation on the amount of backslashes: The first argument is a regular expression, so we need to escape the backslash. The second argument allows for references to capture groups or the entire match using backslashes, for example \0 contains the entire match.  This would make us end up with 4 backslashes, but apparantly the template rendering also has backslash escaping, this we need to double the amount of backslashes. So 8 in total.

You mean that if I want to use the password foo\bar I must set the password to foo\\bar in the configuration?  If so, this should probably better be reported and fixed upsteam, no?

You mean that if I want to use the password foo\bar I must set the password to foo\\bar in the configuration? If so, this should probably better be reported and fixed upsteam, no?

mongoshrc.js is not provided at all by upstream.
It is a pr user file that can be used to alter the interactive mongosh prompt.
But this modules manages the file to use it (and store the password) in the provider implementations ...
Thats also why the file is  managed by the server class ..

I think we should use a password with '' in the integration tests ass well to verify that this is really working.

You mean that if I want to use the password foo\bar I must set the password to foo\\bar in the configuration?

Yes, that is correct. Most passwords at our site are autogenerated, and I happened to encounter one with a backslash.

I think we should use a password with \ in the integration tests as well to verify that this is really working.

Agreed, I'll add a test case.

Hmm, looking at this a second time it struck me that if we need to escape \ there probably is more special characters that need escaping ...
Quick google I found https://www.javatpoint.com/javascript-special-characters
Guess at least ', ", & should be escaped.

Since we are already in a single quoted string, I think only ' needs additional escaping. I'll add them all to the test, to be sure :)

Can we release this as a fix release? Something like 6.0.1?


Confirm what is missing for mixpanel for Kallisto Curve Chaser launch

Done when
Action items and tasks are defined in written form

Missing in new UI, present in old UI

[ ] containers/liquidity/index

mixpanel.track("COMPLETED_DEPOSIT", { balance: balance });
mixpanel.people.set({ balance: balance });
mixpanel.people.set({ "anchor-bluna-balance": balance })

[ ] mixpanel.track('WALLET_CONNECT')
[ ] mixpanel.identify(connectedWallet.walletAddress)

Not implemented at all

[ ] environment variables, so dev traffic doesn't show up in production
[ ] variables for different vaults, so we can distinguish between liquidity events for each of them
[ ] traffic on blog and events pages
[ ]


add pio_usb_host_get_frame_number()

This PR add pio_usb_host_get_frame_number() which can be handy for tinyusb when doing delay without actually using any hw timer https://github.com/hathach/tinyusb/blob/master/src/host/usbh.c#L261
which I kind of forgot to add so far https://github.com/hathach/tinyusb/blob/master/src/portable/raspberrypi/pio_usb/hcd_pio_usb.c#L105
This also increase sof_count to 11-bit in SOF packet (previously 5-bit).
modification is originially written by @tannewt
screenshort with frame number wrap-around

thanks!


Update ModelServingGlobal Cypress test to account for sorting and filtering

Closes: RHOAIENG-3837
Description
This PR validates that the Name and Project table filtering, searching, and sorting functionality works properly
How Has This Been Tested?
npm run test
Test Impact

Request review criteria:

Self checklist (all need to be checked):

[x] The developer has manually tested the changes and verified that the changes work
[x] Commits have been squashed into descriptive, self-contained units of work (e.g. 'WIP' and 'Implements feedback' style messages have been removed)
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[x] The developer has added tests or explained why testing cannot be added (unit or cypress tests for related changes)

If you have UI changes:

[ ] Included any necessary screenshots or gifs if it was a UI change.
[ ] Included tags to the UX team if it was a UI/UX change (find relevant UX in the SMEs section).

After the PR is posted & before it merges:

[ ] The developer has tested their solution on a cluster by using the image produced by the PR to main

/lgtm

/approve


[mailbox] Fixed show_thread_checkbox prop being set to false causing alignment issues

Code changes

Fixed show_thread_checkbox="false" causing alignment issues
Fixed missing margin when show_thread_checkbox="false"
Minor styling tweaks

Before

After

License
I confirm that this contribution is made under the terms of the MIT license and that I have the authority necessary to make this contribution on behalf of its copyright owner.

Holding off on merging until https://github.com/nylas/components/pull/270 is merged. I have a feeling that PR might fix these issues already.


Discord Integration

If possible, integrate the engine with Discord, for it to say
<Game Name>
<Level xx-xx>

Possibly add also life count, progress or score.
[Suggested by Ignatius]

Implemented! https://github.com/jakubg1/OpenSMCE/commit/0700a54a5aab8d7f1664d0f672cd70cb1bf439db

Implemented! https://github.com/jakubg1/OpenSMCE/commit/0700a54a5aab8d7f1664d0f672cd70cb1bf439db


Use a group selector for star search selection

Instead of individual star selection use a check box to select the common ones.
I can rearrange them. So for the extra choice box, what behaviour do you want if someone selects it? If someone selects the OBAFG…, then do you want to sects a search with all of them.
YES. JUST THAT ROW. IN THAT WAY, SEARCHES CAN BE RESTRICTED TO MAJOR/TRUE STARS. WHICH IN TURN, REDUCES THE NUMBER TO CHECK DURING ROUTE CALCULATION.
ALSO, THE CHECK ROW BOX ALSO CHECKS EACH OF THE INDIVIDUAL STELLAR TYPES, AND THEN THE USER CAN REDUCE (IE, UNCHECKING M CLASS = A REDUCTION OF 80%+ OF STELLAR OBJECTS)
And if someone selects the second checkbox does that mean that you want the to select all the secondary spectra?
YES. SAME RULES.
For run query, let me know when you have a better word or phrase.
LET'S THROW THAT OUT TO THE GROUP PAGE.

done the star selector but still need an alternative word for running the query


padding added in Newsletter button

Fixes Issue #67

Screenshots

@bishal7679 could you also please look at About button, it looks bit displaced. I presume it’s in a same block of code.

@Santosh1176 Yeap I will fix it.Thanks for your suggestion.


Event agent checkpointing with SQL

Description
There is a separate resource change data pull request which enables the FHIR server to capture resources that have changed.
There will also be an event agent that reads these changes. One feature that we would like to add for the event agent is to be able to occasionally set checkpoints for what changes have been read. This is needed because in the case that the event agent stops or restarts, we would like to be able to resume from the latest checkpoint rather than reading from the beginning of the change feed.
This PR Creates a table (dbo.BackgroundJobCheckpoint) and stored procedures (dbo.FetchBackgroundJobCheckpoint, dbo.UpdateBackgroundJobCheckpoint) to get and set checkpoints for the event agent. The checkpoints contain information about the latest data that was successfully processed. The checkpoints can be used on startup or restart to resume from a given position or datetime.
Related issues
Related to the resource change data pull request and future event agent support.
Testing
Compile .sln and build docker container. Start up application and db and verify that table and stored procedures are created.
Semver Change (docs)
Feature

Nit: since Batjargal has merged the change, we can rebase this PR to reflect the deltas in scope.

yep, I will be doing this today

/azp run

@wi-y Let me know do you want me merge this PR, or it still need more changes?

@wi-y Let me know do you want me merge this PR, or it still need more changes?

@Ivanidzo4ka yes it's done - can you merge it? I haven't been able to get the SQL R4 E2E tests to succeed but I believe the failures are not related to this PR


error with PPT image having query string.

I am trying to use this with a signed amazon image URL. eg:
"https://xyxxxx.s3-ap-southeast-1.amazonaws.com/xxxxxxx/images/ep6435576258s.jpg?X-Amz-Expires=600&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIEH6NERKI7KF6OEQ/20190125/ap-southeast-1/s3/aws4_request&X-Amz-Date=20190125T051021Z&X-Amz-SignedHeaders=host&X-Amz-Signature=e9cea38686776dd52c9784455269dcaf8b6a000ee9a9e3ab242deca4cb89176a"
(not original URL)
i do get a good file size, indication that it has embedded images in it. But  I get an error opening file - asking to repair the file... and then it does not open.

Thanks @crazyx13th
@bizframe - i added your complete URL, minus the domain a-> .jpg, and appended the entire variable string onto an existing Wiki image and it worked, so i'm marking this as resolved since the current code is working.


Dependency mismatch with Phoenix

With this commit in Phoenix: https://github.com/phoenixframework/phoenix/commit/3f6df5df741e58b098b92a631b050bac069b2af8
Generating a new application from master, causes the following error:
Unchecked dependencies for environment dev:
* phoenix (https://github.com/phoenixframework/phoenix.git)
  the dependency phoenix in mix.exs is overriding a child dependency:

  > In mix.exs:
    {:phoenix, nil, [git: "https://github.com/phoenixframework/phoenix.git"]}

  > In deps/phoenix_live_reload/mix.exs:
    {:phoenix, "~> 0.16 or ~> 1.0", [only: :dev, optional: false, hex: :phoenix]}

  Ensure they match or specify one of the above in your deps and set "override: true"
** (Mix) Can't continue due to errors on dependencies

My best guess of what is happening:
Generating a new Phoenix application points to Phoenix master,
and Phoenix Live Reload depends on a Phoenix version between "~> 0.16 or ~> 1.0"
I made a PR https://github.com/phoenixframework/phoenix_live_reload/pull/25 pointing to Phoenix master and that seems to solve the issue.
It seems like this could also could be solved by a patch level Phoenix release.

I think you should expect some dependency inconsistencies if you use a pre-release version. It's not viable to update all dependencies between phoenix releases.
@chrismccord I don't know the reason for https://github.com/phoenixframework/phoenix/commit/3f6df5df741e58b098b92a631b050bac069b2af8 but it seems like it would better to just leave the version as-is between stable releases?

@ericmj If you are building from master, we need to use the git dependency as the generated files may rely on features that exist on master only.
@chrismccord the fix is to add override: true to the git dependency. I will do that right now.


build: add FALCO_COVERAGE CMake option

What type of PR is this?
/kind feature
Any specific area of the project related to this PR?
/area build
/area tests

What this PR does / why we need it:
This adds a new CMake option Falco_Coverage that can be used to generate
code coverage analysis.  I used this while building up my test cases for PR #965
With cmake FALCO_COVERAGE=on the --coverage option
is passed to both clang and gcc to help analyze untested
portions of the code base.  It produces gcov files.
These files can be analyzed by many tools such as lcov,
gcovr, etc.
Here is an example of one such tool, lcov:
 lcov --directory . --capture --output-file coverage.info
 lcov --extract coverage.info '/source/*' --output-file coverage.info
 genhtml coverage.info

Special notes for your reviewer:
Note: I put the option at the top of the CMakeLists file just because my style is to put
all options at the top of the for ease of use. What do you think?
I certainly could move that line near the conditional like all other options.
Does this PR introduce a user-facing change?:
NONE

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: mstemm
If they are not already assigned, you can assign the PR to them by writing /assign @mstemm in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leodido
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [leodido]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 17e6851dbb4d7abf77b4fc39c031764f43c19b3d

New changes are detected. LGTM label has been removed.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: leodido
If they are not already assigned, you can assign the PR to them by writing /assign @leodido in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: leodido
If they are not already assigned, you can assign the PR to them by writing /assign @leodido in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: fd081438c639f3abfa37bec132020110dda00c71

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leodido
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [leodido]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Directly use runtime.RawExtension instead of ProviderConfig in apis

What would you like to be added:
type_utils:22 (and the corresponding versioned definition)
// ProviderConfig is a workaround for missing OpenAPI functions on runtime.RawExtension struct.
// https://github.com/kubernetes/kubernetes/issues/55890
// https://github.com/kubernetes-sigs/cluster-api/issues/137
type ProviderConfig struct {
	runtime.RawExtension
}

Could be removed in favour of directly using runtime.RawExtension as of kubernetes 1.16 the listed issues in the workaround have been resolved.
Why is this needed:
ProviderConfig was only a temporary workaround.

/assign


block gzipped VCF not recognized as VCF

I have a block gzipped vcf and I want to read it using a call like this:
ctx.newAPIHadoopFile(
                vcf, VCFInputFormat.class, LongWritable.class, VariantContextWritable.class,
                new Configuration());

VCFFormat.inferFromData falsely thinks it's a BCF because it's gzipped and starts with a 1f byte. And so my code breaks. The vcf is attached. Block gzipped VCF should be recognized as VCFs not BCFs.
count_variants.blockgz.gz
Uploaded using ZenHub.io

@akiezun I created a fix in #70. Could you test to see if it works for you?

thanks @tomwhite - does it work for blocked gzipped files? (we typically use bgzip from samtools). http://www.htslib.org/doc/tabix.html
You can use the file I attached: count_variants.blockgz.gz

I posted some new code in #70. I tested it with count_variants.blockgz.gz and it could read the file fine. The PR has more tests, including a large file with multiple splits.

Fixed in #70.


AlphaInAnimationAdapter  and ScaleInAnimationAdapter  work, others don't

Hi, I could only get the AlphaInAnimationAdapter  and ScaleInAnimationAdapter work, others, for example SlideInRightAnimationAdapter, do not work.

@pkliang
Hi.
Exception occurred?

Digging up this issue as I have the same problem.
SlideInLeftAnimationAdapter & SlideInRightAnimationAdapter won't work at least on the first load/display of the data.
So if you update the data on your adapter and call notifyDataSetChanged(), everything is shown but without any animation.
It looks like the root cause is the call view.getRootView().getWidth() which returns 0 in
public class SlideInRightAnimationAdapter [...]

  @Override protected Animator[] getAnimators(View view) {
    return new Animator[] {
        ObjectAnimator.ofFloat(view, "translationX", view.getRootView().getWidth(), 0)
    };
  }

I am not sure yet how to fix this so that the width is valid.

Got a solution but it may be dirty.
In AnimationAdapter.java, method onBindViewHolder, by wrapping the following lines in a post(), the items are animated at the first load.
for (Animator anim : getAnimators(holder.itemView)) {
   anim.setDuration(mDuration).start();
   anim.setInterpolator(mInterpolator);
}
mLastPosition = adapterPosition;

With the fix holder.itemView.post(new Runnable()...:
@Override public void onBindViewHolder(final RecyclerView.ViewHolder holder, int position) {
        mAdapter.onBindViewHolder(holder, position);

        final int adapterPosition = holder.getAdapterPosition();
        if (!isFirstOnly || adapterPosition > mLastPosition) {
            holder.itemView.post(new Runnable() {
                @Override
                public void run() {
                    for (Animator anim : getAnimators(holder.itemView)) {
                        anim.setDuration(mDuration).start();
                        anim.setInterpolator(mInterpolator);
                    }
                    mLastPosition = adapterPosition;
                }
            });

        } else {
            ViewHelper.clear(holder.itemView);
        }
    }

I am not sure about the side effects of this though...

Well, i edited a little to leave from my problem, the onBindViewHolder must be :
``@Override public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
mAdapter.onBindViewHolder(holder, position);
    int adapterPosition = holder.getAdapterPosition();

    System.out.println("if (!isFirstOnly || adapterPosition > mLastPosition)");
    for (Animator anim : getAnimators(holder.itemView))
    {
        System.out.println("for (Animator anim : getAnimators(holder.itemView))");
        anim.setDuration(mDuration).start();
        anim.setInterpolator(mInterpolator);
    }
    mLastPosition = adapterPosition;
}``

Thanks a lot for the great library!!

Thank you.
But how does this code help the other developers? These are gradle files & are non-editable.
The issue of animation not showing on scroll up is still very much there for me.


getFollowingCharsString returns undefined when the only match is at the end

Need to define what the correct behavior is in this case and implement it

I put in code to make sure this does not happen, by setting the string of following chars to a randomly selected char, but this isn't entirely satisfactory either. We should restart with a randomly selected word, not char, here.


Wrong result of advance(it, -1)

#include "plf_hive.h"
#include <cassert>

int main()
{
    plf::hive<char> h(plf::hive_limits(4, 4));
    h.insert(6, 'x');
    auto it = h.end();
    advance(it, -1);
    advance(it, -1);
    assert(it != h.end());
}

It looks like advance with a negative offset can sometimes move forward instead of backward, when it's right at the edge of a block. I think the culprit is here:
    else if (group_pointer->free_list_head == std::numeric_limits<skipfield_type>::max()) // ie. no erased elements in this group
    {
        element_pointer = reinterpret_cast<aligned_pointer_type>(group_pointer->skipfield) - distance;
        skipfield_pointer = (group_pointer->skipfield + group_pointer->capacity) - distance;
        return;
    }

I think this is assuming that "no erasures in the group" means "the group is full," so we're computing things with capacity, but actually the group might be only incompletely full, and we should be using size instead. So the middle two lines should be more like
        element_pointer = group_pointer->elements + group_pointer->size - distance;
        skipfield_pointer = group_pointer->skipfield + group_pointer->size - distance;

Good spotting - fixed in beta, there is a slightly faster solution for the element_pointer line though


Various cleanup edits

Please review the commits separately, because the one that fixes whitespace obscures the diff for the others.
Note: I made these changes in preparation for the styling improvements for the home page on mobile screens (discussed here), which I'll submit in a separate PR.

Excellent cleanup, thanks!

@moba I think you clicked the wrong button! 😅

I thought I also clicked the "rebase and merge" but clearly I didn't :)


fix(navigation): Add video to global nav

This could get hairy if people add more channels, but not sure what else to do for now.

@jcreamer898 can you review this also. Make sure I'm not missing anything

@harterc1 I updated the urls here to match the text change, let me know if that effect anything on the op side


Bug in parsing of console parameters

After updating from Ubuntu [amd64] 18.04 to 20.04 and along with it updating FreeRDP to version 2.1.1 I am getting the following error:

[21:45:40:742] [47530:47530] [ERROR][com.winpr.commandline] - Failed at index 1 [/cert:ignore]: Invalid sigil,

when I run xfreerdp with the following parameters:

xfreerdp /cert:ignore /u:username /p:password /v:IP /size

I didn't modify the command and the connection to the target IP works fine from other devices which leads to my suspicion that there is a bug in this version.
Thank you,
Jan

Please read command line help output ;)
/size:<width>x<height> or <percent>%[wh] Screen size


[BUG] Auto package-intialise

Describe the issue
Start with a brief 1 or 2 sentence summary of issue.
Install some package ie "elpy", after reloading the package can be seen in the installed packages, but the package is not initalised by default. Hence you can load or enable the mode ie elpy-mode. You have to do a package-initialize after which things work fine. I am using emacs 26.3, some googling around I was able to get through the issue by doing
(when (version< emacs-version "27.0") (package-initialize))
(require 'package)
in doom.d/init.el file.
Then follow with a longer explanation, if necessary. Here are some suggestions
on what to include:

What you expected vs what actually happened
Screenshots/casts of your issue
A link to your private config
Labels for any keys you reference (use SPC h k to inspect a key)
Any warnings or errors logged to *Messages* (SPC h e or M-x view-echo-area-messages).

If available, please a backtrace of the error here.
To acquire a backtrace, enable debug-on-error then recreate the error. Here
are ways to enable debug-on-error:

M-x toggle-debug-on-error,
Start Emacs with emacs --debug-init
If the error occurred while using bin/doom, use the -d/--debug
switches or the DEBUG environment variable.

Steps to reproduce

Select these example steps,
Delete them,
And replace them with precise steps to reproduce your issue.
Fill in "system information" below.

System information

Place the output of `M-x doom/info` or `~/.emacs.d/bin/doom info` here.

If you want to use package.el, it is on you to initialize package.el yourself. Doom doesn't use package.el, and intentionally avoids initializing it as such. Instead of installing your packages with it, I'd suggest using Doom's package manager, see: https://github.com/hlissner/doom-emacs/blob/develop/docs/faq.org#how-do-i-install-a-package-from-elpa


Build error on iOS

When launching from Android Studio I have this error when targeting iOS build with flutter_image_compress: ^0.6.8
CocoaPods' output:
↳
      Preparing

    Analyzing dependencies

    Inspecting targets to integrate
      Using `ARCHS` setting to build architectures of target `Pods-Runner`: (``)

    Finding Podfile changes
      A flutter_image_compress
      - Flutter
      - flutter_plugin_android_lifecycle
      - image_picker
      - path_provider
      - path_provider_macos

    Fetching external sources
    -> Fetching podspec for `Flutter` from `Flutter`
    -> Fetching podspec for `flutter_image_compress` from `.symlinks/plugins/flutter_image_compress/ios`
    -> Fetching podspec for `flutter_plugin_android_lifecycle` from `.symlinks/plugins/flutter_plugin_android_lifecycle/ios`
    -> Fetching podspec for `image_picker` from `.symlinks/plugins/image_picker/ios`
    -> Fetching podspec for `path_provider` from `.symlinks/plugins/path_provider/ios`
    -> Fetching podspec for `path_provider_macos` from `.symlinks/plugins/path_provider_macos/ios`

    Resolving dependencies of `Podfile`
    [!] Unable to find a specification for `Mantle` depended upon by `flutter_image_compress`

    You have either:
     * out-of-date source repos which you can update with `pod repo update` or with `pod install --repo-update`.
     * mistyped the name or version.
     * not added the source repo that hosts the Podspec to your Podfile.

    .... (a lot of omitted rows)

    Error: CocoaPods's specs repository is too out-of-date to satisfy dependencies.
    To update the CocoaPods specs, run:
      pod repo update

    Error running pod install
    Error launching application on iPhone SE (2nd generation).

Flutter doctor:
[✓] Flutter (Channel beta, 1.18.0-11.1.pre, on Mac OS X 10.15.4 19E287, locale it-IT)

[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[✓] Xcode - develop for iOS and macOS (Xcode 11.5)
[✓] Android Studio (version 3.6)
[✓] VS Code (version 1.45.1)
[✓] Connected device (2 available)

The main problem is that pod install and pod repo update are not working because they can't find Mantle, this is probably the main error:
[!] Unable to find a specification for Mantle depended upon by flutter_image_compress
If i remove the dependency to flutter_image_compress from pubspec.yaml, the app builds just fine.
Is this fixable in some way?
Thank you

After 3 hours I finally fixed it putting this:
source 'https://github.com/CocoaPods/Specs.git'
at the top of my Podfile
I don't know why I need this to let CocoaPods works correctly...


[Accessibility] Icon tooltips are not hoverable

Does this issue occur when all extensions are disabled?: Yes/No

VS Code Version: 1.56.1
OS Version: Windows

Steps to Reproduce:

Go to file explorer view
Hover over any icon  ( Add file, Toggle editor layout etc.)
When you see  button tooltip, try to hover over to the tooltip

Expected : Users should be able to hover over tooltip via mouse
Actual : Users cannot hover over tool tip

@isidorn , this is another issue that accessibility test team found and assigned to Live Share team.

sorry for opening the same issue again. it is a dupe of #52016. C


ocsigen-i18n: build with ocamlopt

The executables generated by ocamlc were not functional.
Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Would the problem be also solved by setting dontStrip = true;?

I don't know, I can check.

indeed, it can.

Thanks. It would be nice if the stripping phase were cautious with OCaml bytecode programs.


Exposing interpolate's internal methods + changes to toSVG

Whilst I can appreciate the main goal is to parse DXF.
I am currently using it to implement a render to SVG and SVG Path. (with much older verison of the library)
The interpolate.js is nice if only working with lines with a fixed size.
However may I suggest to have the methods inside it exported also, so that they can be reused in other rendering code that may be added in as modules.
Some things that render modules might need to do:

Text output, alignment, size, color rotation.
Dimension Lines, measuring lengths and angles.
Line caps, start and end arrows.
Line styling, color, dashes, thickness.

Re-using some of the interpolate code would be helpful as then we can get the points to use whilst having access to other details on the DXF entities that would change the rendered appearance.
Interpolated points don't have a way to link to the entity they are for obviously.

If you're saying that after interpolation the relationship between entities and rasterised curves should be maintained, then I agree

Closing this since interpolate.js no longer exists, please create a new issue if you think some functions should still be exposed 👍🏻


TS2454 after assigning a value from an exhaustive switch statement

TypeScript Version:  2.4.2
Code
enum Level {
  One,
  Two,
}

const doSomethingWithLevel = (level: Level) => {
  let next: Level;
  switch (level) {
    case Level.One:
      next = Level.Two;
      break;
    case Level.Two:
      next = Level.One;
      break;
  }
  return next; // <-- Error here
};

Expected behavior:
Since the switch statement is exhaustive over the enum, the compiler should correctly infer that next is always set and this works without error.
Actual behavior:
(16,10): error TS2454: Variable 'next' is used before being assigned.
Note: replacing the variable assignment with inline returns (e.g. case Level.One: return Level.Two;) appears to negate the problem in this instance, but that isn't an option in the code that this example was derived from since there's additional code that uses the value of next.

This would require the control flow analyzer to reason about dependencies between variables which is beyond its current capabilities. We're tracking a similar request in #12184. Effectively, definite assignment analysis is limited to conclusions based on the structure of the code.

Automatically closing this issue for housekeeping purposes. The issue labels indicate that it is unactionable at the moment or has already been addressed.

How does this require tracking dependencies between variables? It seems like the compiler should be able to reason that every code path assigns a value to next.
Here is an example of code that similarly fails to compile:
const A = 'A', B = 'B'
const makeChar = () => Math.random() > 0.5 ? A : B
const char = makeChar()
let response: string
if (char === A) response = '1'
else if (char === B) response = '2'
/*else char*/
console.log(response) //"Variable 'response' is being used before being assigned."

If you uncomment the else block and hover over char in it, you can see that it has type never, so the compiler is correctly inferring that that block is unreachable. In other situations where every code path assigns a value to a variable, the compiler does realize that the variable must have been assigned a value:
const A = 'A', B = 'B'
const makeChar = () => Math.random() > 0.5 ? A : B
const char = makeChar()
let response: string
if (char === A) response = '1'
else response = '2'
console.log(response) //no error

@calebsander there's a distinction between inference that can be done syntactically (the second example) that that which requires type analysis (the first kind).
This is all in principle possible but we don't currently support inference that requires multiple passes that combine syntactic flow and type information. Generalizing your first example to the broadest case implies an analysis that has either an unbounded number of passes, or a completely different inference strategy.


Rename MooseRootBrowser and/or MooseModelBrowser

the two names are too similar and it's hard to guess what they do.
MooseModelBrowser should allow to browse Models, i.e. what MooseRootBrowser currently does
and the current MooseModelBrowser could may be merged with the Properties browser ?
(other issue)
For now, I propose to rename it ModelContent browser

Why not merge the two browsers?
One Model browser, in the toolbar (1) a select field (where we select the model to browse) and (2) the two buttons to import new models.
What is your opinion?

Yes, could be a solution.
But still showing the content of the model seems similar to what the Properties browser does (for other entities)

We have to take care because you have to keep features like "set root folder", "rename the model", etc.

MooseModelBrowser and MooseRootBrowser classes does not exists now in Midas. We should close this?


Icon colors

Hi,
I just installed this package, thank you for your work by the way, and noticed that icons are not colorful:

It seems that you are using custom CSS classes, like text-success and text-danger instead of Tailwind classes.

@atorscho Likewise, I'm also having this issue.
Though for pending, that icon does display in orange, as expected; but the icons for inactive and active are grey, as you've noted.
Hopefully it'll be sorted shortly (but may throw in a PR myself, if I get a moment).

Hi @atorscho,
Good catch, didn't check this properly when upgrading the package to support Nova 4.0.
In older versions of Nova the text-*** classes were available but it seems they removed them from the core CSS.
Will look into this soon.

They updated to Tailwind 3.0, so now it uses different classes

This should be fixed by PR #6

As mentioned on #6, we need to dive deeper into this and include the Tailwind colors in this package. See also laravel/nova-issues#4061.
Will keep this issue open @jjjrmy because it is not fixed yet.


[core] fix compilation with clang-16 and libc++/libstdc++

[  7%] Building CXX object CMakeFiles/grpc_unsecure.dir/src/core/ext/filters/channel_idle/idle_filter_state.cc.o
In file included from /home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/ext/filters/census/grpc_context.cc:26:
In file included from /home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/lib/debug/trace.h:34:
In file included from /home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/lib/gprpp/global_config.h:91:
In file included from /home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/lib/gprpp/global_config_env.h:27:
In file included from /home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/lib/gprpp/memory.h:24:
In file included from /usr/include/c++/v1/memory:898:
In file included from /usr/include/c++/v1/__memory/shared_ptr.h:31:
/usr/include/c++/v1/__memory/unique_ptr.h:63:19: error: invalid application of 'sizeof' to an incomplete type 'grpc_server_config_fetcher'
    static_assert(sizeof(_Tp) >= 0, "cannot delete an incomplete type");
                  ^~~~~~~~~~~
/usr/include/c++/v1/__memory/unique_ptr.h:297:7: note: in instantiation of member function 'std::default_delete<grpc_server_config_fetcher>::operator()' requested here
      __ptr_.second()(__tmp);
      ^
/usr/include/c++/v1/__memory/unique_ptr.h:231:5: note: in instantiation of member function 'std::unique_ptr<grpc_server_config_fetcher>::reset' requested here
    reset(__u.release());
    ^
/home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/lib/surface/server.h:145:21: note: in instantiation of member function 'std::unique_ptr<grpc_server_config_fetcher>::operator=' requested here
    config_fetcher_ = std::move(config_fetcher);
                    ^
/home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/include/grpc/grpc.h:458:16: note: forward declaration of 'grpc_server_config_fetcher'
typedef struct grpc_server_config_fetcher grpc_server_config_fetcher;
               ^
[  7%] Built target grpc_python_plugin

src/core/lib/surface/server.h: Server::set_config_fetcher() function  must be defined below the definition of the type
'struct grpc_server_config_fetcher' because std::unique_ptr must know how type looks like at the place where the smart pointer calls a deleter

[  7%] Building CXX object CMakeFiles/grpc_unsecure.dir/src/core/ext/filters/channel_idle/idle_filter_state.cc.o
In file included from /home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/ext/filters/census/grpc_context.cc:26:
In file included from /home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/lib/debug/trace.h:34:
In file included from /home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/lib/gprpp/global_config.h:91:
In file included from /home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/lib/gprpp/global_config_env.h:27:
In file included from /home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/lib/gprpp/memory.h:24:
In file included from /usr/include/c++/v1/memory:898:
In file included from /usr/include/c++/v1/__memory/shared_ptr.h:31:
/usr/include/c++/v1/__memory/unique_ptr.h:63:19: error: invalid application of 'sizeof' to an incomplete type 'grpc_server_config_fetcher'
    static_assert(sizeof(_Tp) >= 0, "cannot delete an incomplete type");
                  ^~~~~~~~~~~
/usr/include/c++/v1/__memory/unique_ptr.h:297:7: note: in instantiation of member function 'std::default_delete<grpc_server_config_fetcher>::operator()' requested here
      __ptr_.second()(__tmp);
      ^
/usr/include/c++/v1/__memory/unique_ptr.h:231:5: note: in instantiation of member function 'std::unique_ptr<grpc_server_config_fetcher>::reset' requested here
    reset(__u.release());
    ^
/home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/src/core/lib/surface/server.h:145:21: note: in instantiation of member function 'std::unique_ptr<grpc_server_config_fetcher>::operator=' requested here
    config_fetcher_ = std::move(config_fetcher);
                    ^
/home/dpronin/.conan2/p/t/grpc7af12e0c3f76b/b/src/include/grpc/grpc.h:458:16: note: forward declaration of 'grpc_server_config_fetcher'
typedef struct grpc_server_config_fetcher grpc_server_config_fetcher;
               ^
[  7%] Built target grpc_python_plugin

@yashykt may you check the PR? Thanks in advance

@timburks @beccasaurus @hassox may someone assist me in this PR?

@yashykt @grpc-kokoro @hassox @beccasaurus how do we proceed?

Thanks for the contribution!

@yashykt @drfloob what should be done from me to finally merge it in?

@yashykt @hassox @drfloob ping

@yashykt @drfloob @grpc-kokoro @hassox ping

Sorry for the delay

Sorry for the delay

Nevermind. So, what are we waiting for?

ah, iwyu is failing. You need to run tools/distrib/iwyu.sh. I'll maybe it run it myself and push the commit

@yashykt I ran it myself and see that the issue has not been related to my changes, at least I don't see the root cause that might be the case
+ tools/distrib/gen_compilation_database.py --include_headers --ignore_system_headers --dedup_targets '//:*' //src/core/... //src/cpp/ext/gsm/... //src/cpp/ext/otel/... //src/compiler/... //test/core/... //test/cpp/... //fuzztest/... //test/cpp/common:time_jump_test //test/cpp/common:time_jump_test@poller=epoll1 //test/cpp/common:time_jump_test@poller=poll //test/cpp/end2end:cfstream_test //test/cpp/end2end:cfstream_test@poller=epoll1 //test/cpp/end2end:cfstream_test@poller=poll //test/cpp/end2end:flaky_network_test //test/cpp/end2end:flaky_network_test@poller=epoll1 //test/cpp/end2end:flaky_network_test@poller=poll //test/cpp/microbenchmarks:bm_basic_work_queue //test/cpp/microbenchmarks:bm_callback_streaming_ping_pong //test/cpp/microbenchmarks:bm_callback_streaming_ping_pong@poller=epoll1 //test/cpp/microbenchmarks:bm_callback_streaming_ping_pong@poller=poll //test/cpp/microbenchmarks:bm_callback_unary_ping_pong //test/cpp/microbenchmarks:bm_callback_unary_ping_pong@poller=epoll1 //test/cpp/microbenchmarks:bm_callback_unary_ping_pong@poller=poll
ERROR: Traceback (most recent call last):
	File "/home/dpronin/.cache/bazel/_bazel_dpronin/4fc932cbe6e70591698d99c563e32441/external/rules_cc/cc/private/rules_impl/compiler_flag.bzl", line 17, column 76, in <toplevel>
		load("@bazel_tools//tools/cpp:toolchain_utils.bzl", "find_cpp_toolchain", "use_cpp_toolchain")
Error: file '@bazel_tools//tools/cpp:toolchain_utils.bzl' does not contain symbol 'use_cpp_toolchain' (did you mean 'find_cpp_toolchain'?)

It's probably a setup issue on your end. Just ran sanity and uploaded the commit

@yashykt @drfloob @mehrdada again, guys, who is aware of what is going on in your CI? From my side there have been made a PR with cosmetic changes those cannot have been merged in for almost a month

@yashykt ping

@yashykt ping

ah, need to run the tests again

again, guys, who is aware of what is going on in your CI? From my side there have been made a PR with cosmetic changes those cannot have been merged in for almost a month

Setting up the dev environment for grpc/grpc admittedly takes some time, but once you have set it up, running tools/distrib/sanitize.sh fixes most of the issues that you are seeing.

Please don't revert my changes, IWYU is complaining again.


mms/mmk differences - decnet targets

MMK does not accept all decnet node specifications as target:
$ mms/id
%MMS-I-IDENT, MMS V3.3-4 � Digital Equipment Corporation 1989, 1998. All rights
reserved. � Electronic Data Systems Limited 1995, 1998
$

$ mms/descr=tt:
0::x.exe : ; show time
^Z

show time
  16-JUN-2015 18:46:07
$ mms/descr=tt:
0""::x.exe : ; show time
^Z

show time
  16-JUN-2015 18:46:21
$ mms/descr=tt:
eisner::x.exe : ; show time
^Z

show time
  16-JUN-2015 18:46:37
$ mms/descr=tt:
eisner""::x.exe : ; show time
^Z

show time
  16-JUN-2015 18:46:50
$

$ mmk/id
%MMK-I-IDENT, this is the MMK Make Utility V5.0
-MMK-I-COPYRIGHT, Copyright (c) 2008, Matthew Madison.
    Copyright (c) 2013, Endless Software Solutions.
  See LICENSE.TXT in distribution kit for license information.
$ mmk/descr=tt:
0::x.exe : ; show time
^Z
%MMK-F-CANTUPD, cannot update target ; - sources unknown
$
$ mmk/descr=tt:
0::x.exe :
        show time
^Z
show time
  16-JUN-2015 18:48:20
%MMK-I-ACTNOUPD, action did not update target 0::X.EXE
$ mmk/descr=tt:
0""::x.exe :
        show time
^Z
show time
  16-JUN-2015 18:48:38
%MMK-I-ACTNOUPD, action did not update target 0""::X.EXE
$ mmk/descr=tt:
eisner::x.exe :
        show time
^Z
show time
  16-JUN-2015 18:48:56
%MMK-I-ACTNOUPD, action did not update target EISNER::X.EXE
$ mmk/descr=tt:
eisner""::x.exe :
%MMK-F-PARSERR, error parsing description line eisner""::x.exe :
-MMK-I-ERRLOC, at line number 1 in file _FTA595:[]DESCRIP.MMS;
-LIB-F-SYNTAXERR, string syntax error detected by LIB$TPARSE
$

Thanks for discovering this.  To be honest I don't think I would have ever checked this one out.  I will have to investigate if this is a deficiency in LIB$TPARSE or MMK.  If it is the latter I will see that a fix is applied.


High CPU Usage on Requests

Hi !
I just compiled the latest GIT release (4.0) and run a very simple console app test (Visual Studio 2015).
There was only a "Hello World" response (one route).
If you request data from the Rest server it very often produce high CPU usage.
The usage is so high that even my VLC mp3 player stops for a short time.
I use a Core I7 CPU so there should be enough power to handle the load ...
Anyway ... While whatching the taskmanager I can see peaks from 75-90% CPU load.
Can you tell me what´s the problem? Any solutions?
regards Dominik

Very high CPU usage with very simple routes/responses

Looking into this

Hi !
My test setup is nothing more than this code:
        static void Main(string[] args)
        {
            using (var server = new RestServer())
            {
                server.LogToConsole();
                server.Host = "<IP_ADDRESS>";
                server.Port = "80";
                server.Start();
                Console.WriteLine("Server started ...");
                Console.ReadLine();
                server.Stop();
                Console.WriteLine("Server ended ...");
                Console.ReadKey();
            }
        }

namespace RestTest
{
    [RestResource]
    public class TestResource
    {
        [RestRoute]
        public IHttpContext HelloWorld(IHttpContext context)
        {
            context.Response.SendResponse("Hello, world.");
            return context;
        }
    }
}

Seperated into one program class and one TestResource class.
And it doesn´t matter if I use localhost or another IP on my computer.
I consume the service with a webbrowser (by pressing fast F5) or by Fiddler.
The problem is that the high CPU usage is not constant. Some times it´s really fast and sometimes it blocks all my 8 Cores.
And on another computer it runs ok for a while.
So it´s a little bit hard to determin the problem.
Hope you can give me a hint or find a bug ...

Try reducing the number of concurrent threads. It defaults to (50 * Environment.ProcessorCount), which may not be ideal for your hardware. It's just an arbitrary number. This code will set it to (5 * Environment.ProcessorCount).
using (var server = new RestServer {Host="<IP_ADDRESS>", Port = "80", Connections = 5})
{
    server.LogToConsole();

    server.Start();
    Console.WriteLine("Server started ...");

    Console.ReadLine();

    server.Stop();
    Console.WriteLine("Server ended ...");

    Console.ReadKey();
}

Hi !
Setting the connection to 5 or 10 reduces the load.
But may I ask what´s the real problem for this issue?
As I told you before I use a I7 cpu with 8 cores. And the data which is received and send back by the server is really minimal. And I can´t beleave that the routing generates so much load. And i have only one route :-)
So can you give some additional advicse how to debug this topic?
Or did you find any problemn in the code whoch causes high cpu load in special situations?

I haven't had a chance to look into this any further. The latest release (put out on 10/31) includes optimizations for content type look ups that might have been related, so you should pull that one down if you haven't already.

So, using the new performance profiling tools in VS 2015 with the latest build, I am unable to replicate any CPU spikes. I've attached my recorded diagnostic sessions for you to review, and if you see something I can improve on, let me know.
I ran two sessions using the Grapevine.Local project as is. The only difference between the two sessions is that in one session I had logging turned off. In both instances, I started the diagnostic session with a browser already open and I hit reload as fast as I could - several times per second, at least. Not the most scientific approach, but I figured if I saw problems there, then I would investigate further using a more rigorous method. As stated earlier, I was unable to replicate a CPU spike.
grapevine-local-with-console-logger.diagsession.txt
grapevine-local-with-no-logger.diagsession.txt

Download the files and remove the .txt extension to view the results.

While I was not able to duplicate your exact issue, I have made some changes in how threads are handled that will likely resolve any issues you had. Those changes are in the master branch today, and will be in the next version on nuget.

Hi !
Just give it a try and it works like a charme. Well done!
All trouble is gone.
Thx for your support !!!
Dominik


[featureflag] - fails to start properly (ecto migration not run)

It's hard to replicate, but on multiple occasions, when starting the demo using Helm I have seen this error message in the Feature Flag service (repeats on each request)
02:51:26.483 [info] crash: class=:error exception=%Postgrex.Error{
  message: nil,
  postgres: %{
    code: :undefined_table,
    file: "parse_relation.c",
    line: "1381",
    message: "relation \"featureflags\" does not exist",
    pg_code: "42P01",
    position: "99",
    routine: "parserOpenTable",
    severity: "ERROR",
    unknown: "ERROR"
  },
  connection_id: 69,
  query: nil
} stacktrace=[
  {Ecto.Adapters.SQL, :raise_sql_call_error, 1,
   [
     file: 'lib/ecto/adapters/sql.ex',
     line: 932,
     error_info: %{module: Exception}
   ]},
  {Ecto.Adapters.SQL, :execute, 6,
   [file: 'lib/ecto/adapters/sql.ex', line: 847]},
  {Ecto.Repo.Queryable, :execute, 4,
   [file: 'lib/ecto/repo/queryable.ex', line: 221]},
  {Ecto.Repo.Queryable, :all, 3, [file: 'lib/ecto/repo/queryable.ex', line: 19]},
  {Ecto.Repo.Queryable, :one, 3,
   [file: 'lib/ecto/repo/queryable.ex', line: 147]},
  {:ffs_service, :get_flag, 2, [file: 'src/ffs_service.erl', line: 32]},
  {:otel_tracer_default, :with_span, 5,
   [file: '/app/deps/opentelemetry/src/otel_tracer_default.erl', line: 47]},
  {:grpcbox_stream, :handle_unary, 3,
   [file: '/app/deps/grpcbox/src/grpcbox_stream.erl', line: 282]}
]

Restarting the featureflag service gives a message that the missing table is being created, and everything works fine afterward.  This is the message after restart:
02:52:06.854 [info] == Running<PHONE_NUMBER>2636 Featureflagservice.Repo.Migrations.CreateFeatureflags.change/0 forward
02:52:06.856 [info] create table featureflags
02:52:06.862 [info] create index featureflags_name_index
02:52:06.887 [info] == Migrated<PHONE_NUMBER>2636 in 0.0s
02:52:08.062 [info] Running FeatureflagserviceWeb.Endpoint with cowboy 2.9.0 at <IP_ADDRESS>:8081 (http)
02:52:08.065 [info] Access FeatureflagserviceWeb.Endpoint at https://localhost

When the error happens, several services report errors when trying to access the featureflag service, thus creating incomplete and errored transactions. Ideally, we can detect when the first condition happens and force the process to terminate, allowing Kubernetes to restart the pod.

You can assign this to me if nobody else is working on it

Is this issue solved once and for all? Because I see the pod failing and restarting with "relation "featureflags" does not exist" constantly.
Latest 1.7.2.
I tried deleting the  ffspostgres and the restarting the featureflag service but then I just get "Migrations already up" and the error shorty after. I don't remember seeing any other "create table statements".


Global Disable Ripple Does Not Affect Keyboard Focus

Bug, feature request, or proposal:
Bug.
What is the expected behavior?
When you set disabled: true using RippleGlobalOptions, the ripple should disappear completely, no matter if the focus arrives through tab key on keyboard or through mouse click.
What is the current behavior?
After setting disabled: true using RippleGlobalOptions, the ripple effect still appears when the focus arrives through tab key.
What are the steps to reproduce?
Here is a simple plunker containing two checkboxes: https://plnkr.co/edit/7aqtkq?p=preview
You can see that ripple effect is disabled globally. When you click any checkbox with mouse, the ripple effect does not appear, as expected. However, when you select any checkbox using tab key, the ripple effect still appears.
What is the use-case or motivation for changing an existing behavior?

Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular 4, latest version of Material, Windows, browsers Google Chrome, Internet Explorer.
Is there anything else we should know?
One can get rid of the ripple effect completely using css .mat-checkbox-ripple { display: none; }

I will leave it to @DevVersion and @tinayuangao  to confirm but I believe this is working as intended because the ripple you are seeing is to show the focus state.  Without this background circle showing the focus is not shown which results in a lack of a11y for the checkbox.

Closing, as this is working as intended, and there are possibilities (that are mentioned in the ripple.md file) that allow customizing the animation. See https://github.com/angular/material2/pull/9253


token-sys applet goes blank after sending Manual Debit transaction

Everything worked fine until I sent with manual debit option turned on. After that page reloaded into blank (see screenshot) and I found js errors in the console:
index.js:32 RangeError: Invalid time value
at Ms (index.js:40:43475)
at Bv (index.js:40:53102)
at index.js:40:54761
at Array.map ()
at Qv (index.js:40:54500)
at Au (index.js:30:19519)
at jo (index.js:32:3169)
at If (index.js:32:45025)
at Rf (index.js:32:39937)
at gm (index.js:32:39865)
Wo @ index.js:32
n.callback @ index.js:32
Ya @ index.js:30
ss @ index.js:32
Mf @ index.js:32
hm @ index.js:32
Sm @ index.js:32
nn @ index.js:32
Lf @ index.js:32
N @ index.js:17
j @ index.js:17
index.js:40 Uncaught RangeError: Invalid time value
at Ms (index.js:40:43475)
at Bv (index.js:40:53102)
at index.js:40:54761
at Array.map ()
at Qv (index.js:40:54500)
at Au (index.js:30:19519)
at jo (index.js:32:3169)
at If (index.js:32:45025)
at Rf (index.js:32:39937)
at gm (index.js:32:39865)

App has been reworked


test mode control program

The test mode control program is used to control the node to generate blocks and randomly generate attacks (bad block and bad challenge). For each attack event, log records and regular checks are made to see if the block can eventually be recovered. If the attacked block appears in an unexpected state after a certain period of time, an alert will be issued through sentry.
test-mode-config.toml
loop_interval_secs = 2                           # sleep in loop
attack_rand_range = 10                           # If fill in 10, it means that the probability is one in ten
track_record_interval_secs = 120           #  check the attack records every 120 secs
check_block_status_interval_min = 15       # assuming that after 15 minutes, the block should have a final state
rpc_timeout_secs = 180
transfer_from_privkey_path = 'deploy/test_1_pk'    # pk which has deposited ckb, It is recommended not less than 10,000 ckb
transfer_to_privkey_path = 'deploy/test_2_pk'      # same above
godwoken_rpc_url = 'http://<IP_ADDRESS>:8129'
ckb_url = 'http://<IP_ADDRESS>:8114'
godwoken_config_path = 'deploy/node2/config.toml'  # godwoken config path
deployment_results_path = 'deploy/scripts-deploy-result.json'  # scripts deployment results path
sentry_dsn =<EMAIL_ADDRESS># sentry dsn

start test
RUST_LOG=info cargo +nightly run --bin gw-tests -- test-mode-control -c deploy/test-mode-config.toml

notes

the transfer_from_privkey_path and transfer_to_privkey_path in the test-mode-config.toml,  must has deposited ckb, It is recommended not less than 10,000 ckb
before the test program runs, target godwoken node must be set to test mode

output snapshot
[2021-08-03T11:51:49Z INFO  gw_tests::system_tests::test_mode_control] Normal block requests: 14, bad block attacks: 3, bad challenge attacks: 2, error_number: 0, unchecked attacks: 3
[2021-08-03T11:52:35Z INFO  gw_tests::system_tests::test_mode_control] try to produce bad block
[2021-08-03T11:52:35Z INFO  gw_tests::system_tests::utils] [test mode control]: transfer and issue block
[2021-08-03T11:52:35Z INFO  gw_tests::system_tests::utils] transfer: from id 2 to id 3 amount 4
[2021-08-03T11:52:35Z INFO  gw_tools::transfer] l2 transaction: L2Transaction { raw: RawL2Transaction { from_id: Uint32(0x02000000), to_id: Uint32(0x01000000), nonce: Uint32(0x08000000), args: Bytes(0x0100000048000000100000002800000038000000140000003c599f1c23b4609545e839aecc990d43ab12ad300400000000000000000000000000000001000000000000000000000000000000) }, signature: Bytes(0xfdad967d5f5ee17a974ba7fafe57a02e0e1771f1b2296399f400882fb28507d30a54f6106bcc7b53cc85fc55925e4cab597c7765273fb822c1898577fa24c77800) }
[2021-08-03T11:52:35Z INFO  gw_tools::transfer] tx_hash: 0x980aee7682c0f700fb78a78515c7b8e66dabe894accce1e28bfb3d379671cd9d
[2021-08-03T11:52:59Z INFO  gw_tests::system_tests::utils] issue bad block
[2021-08-03T11:52:59Z INFO  gw_tests::system_tests::test_mode_control] wait state change...
[2021-08-03T11:56:00Z INFO  gw_tests::system_tests::test_mode_control] Attack failed: Timeout: 180s
[2021-08-03T11:56:00Z INFO  gw_tests::system_tests::test_mode_control] track attack: block hash: 0x2b4ab3c90eaf24e50cfb1e36a2fc6eb066aa8269975b3cc4a8357d908b335286
     EventRecord { block_hash: "2b4ab3c90eaf24e50cfb1e36a2fc6eb066aa8269975b3cc4a8357d908b335286", block_number: 17, attack_type: BadBlock, issue_time: 2021-08-03T11:36:57.626877500Z, check_time: Some(2021-08-03T11:56:00.024563400Z), block_status: Some(Reverted), result: Some(Ok(())) }
[2021-08-03T11:56:00Z INFO  gw_tests::system_tests::test_mode_control] Normal block requests: 14, bad block attacks: 3, bad challenge attacks: 2, error_number: 0, unchecked attacks: 2

sentry email message snapshot
Attack may be success. block hash: 0x9252f6316ae83866efdee1cb3fc4e599bd563d461c40abcb1b54d027a36107b7
 EventRecord {
    block_hash: "9252f6316ae83866efdee1cb3fc4e599bd563d461c40abcb1b54d027a36107b7",
    block_number: 6,
    attack_type: BadBlock,
    issue_time: 2021-07-26T13:17:17.622695700Z,
    check_time: Some(
        2021-07-26T13:33:07.870999400Z,
    ),
    block_status: Unfinalized,
    result: Some(
        Err(
            (),
        ),
    ),
}

more manual test tools may be useful

get global

RUST_LOG=info cargo +nightly run --bin gw-tests -- utils -g -r http://<IP_ADDRESS>:8129

empty block

RUST_LOG=info cargo +nightly run --bin gw-tests -- utils -i 1 -r http://<IP_ADDRESS>:8129

normal block

RUST_LOG=info cargo +nightly run --bin gw-tests -- normal-block -c deploy/node1/config.toml -d deploy/scripts-deploy-result.json -f deploy/user_1_pk -t deploy/user_2_pk -r http://<IP_ADDRESS>:8129

bad block

RUST_LOG=info cargo +nightly run --bin gw-tests -- bad-block -c deploy/node1/config.toml -d deploy/scripts-deploy-result.json -f deploy/user_1_pk -t deploy/user_2_pk -r http://<IP_ADDRESS>:8129

bad challenge

RUST_LOG=info cargo +nightly run --bin gw-tests -- bad-challenge -b 10 -r http://<IP_ADDRESS>:8129

This PR is outdated, we will use integration tests to test challenge feature.


Replace TS Lint scan uploads

TS Lint was used for security scans - but with the move to ES Lint the output file is no longer being generated. We need to determine whether the upload task can understand the output from ES Lint and if not determine how to work around that until the upload task is updated to handle ES Lint.

Do you have a link for the task that's being created?

No, they might have a work item somewhere but they just told me over e-mail that they were working on it.

Closing older engineering task issues.  Please reactive if you're still using this to track some upcoming work.


Can single contact dragging be realized

Hello，Can single contact dragging be realized

Hello @wuhangandroid
Thank you for opening the issue. Could you describe in more detail what you would like to have. I am not sure what you mean

Now when you drag a child control, the other finger can continue to drag another child control. I wonder if this situation can be prohibited

Ah so you want to drag multiple children at once, so for every finger one child?

I want to drag one child at a time

Ahhh now I understand, so basically, if you drag your child with one finger, you want to drag the same child with another finger? @wuhangandroid

I want to achieve the opposite effect。When one child drags, others cannot be dragged

Oh I see, this shouldn't work, at least it isn't possible to change positions of two dragged items currently. I will mark this as a bug and will try to release a fix this week, thank you! @wuhangandroid

The problem remains, it is still possible to drag multiple elements at the same time. Is it possible to add the ability to block multi-touch?
https://github.com/user-attachments/assets/b53a5ec5-73d4-4c6a-8ac0-cee50d36347d

Hello @Gloomy699
I think I cannot easily block it but I can try smothering, I think the last time I was not able to find a good way to prevent this behavior but probably that could work now better, I will add this to my todo list and check it  if I find some time this week

I managed to block sequential selection, when 1 element is selected, then block the selection of another, but alas, I could not bypass the simultaneous selection of several elements.
I achieved it like this
declared a variable enableDraggable which is initially equal to true and when calling onDragStarted I change it to false
when calling onDragEnd I set it back to true
and I pass the variable itself to the enableDraggable parameter in ReorderableBuilder.builder where it is

I fixed it and now it isn't possible to drag more than one item. @Gloomy699

I merged it and will release it with version 5.4.0 @Gloomy699 @wuhangandroid

Thank for your feedback and fast fix @karvulf


Angular documentation

There does not seem to be adequate angular documentation. What is the dependency that should be injected into the app?

I haven't tested it yet with the latest Angular version, but it should work with including jQuery, Angular and following this example http://inlineattachment.readthedocs.org/en/latest/pages/editors/angularjs.html

Do I not need to inject a dependency into the module?


Width is off

Header width is off (added black shadow to show the difference, also blue lines)
TDs width sum is the same than the table width but there is an offset

Hello, any clue about what's going on?


Scully stucks at step "Creating Route List: 3/3" inside Docker

🐞 Bug report
Description
Running scully on my local mac works as expected. When running scully inside a docker container it get's stuck during the the Creating Route List 3/3.
Tried it with a combination of the following flags

--showGuessError --np --prod --host=<IP_ADDRESS> --scanRoutes --serverTimeout=30000

🔬 Minimal Reproduction
I've used different node images but buildkite/puppeteer should work to reproduce the issue.

docker run -it --entrypoint '/bin/bash'  --workdir=/develop -v $(pwd):/develop:rw buildkite/puppeteer -c "npm install && ng build && npm run scully"

💻Your Environment
**Angular Version: **

Angular CLI: 10.1.1
Node: 12.18.3
OS: darwin x64

Angular: 10.1.1
... animations, cli, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router
Ivy Workspace: Yes

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.1001.1
@angular-devkit/build-angular     0.1001.1
@angular-devkit/build-optimizer   0.1001.1
@angular-devkit/build-webpack     0.1001.1
@angular-devkit/core              9.1.12
@angular-devkit/schematics        9.1.12
@angular/cdk                      10.2.1
@ngtools/webpack                  10.1.1
@schematics/angular               9.1.12
@schematics/update                0.803.29
rxjs                              6.6.3
typescript                        4.0.2
webpack                           4.44.1

Scully Version:

"@scullyio/init": "1.0.0",
"@scullyio/ng-lib": "latest",
"@scullyio/scully": "1.0.0-beta.6",

🔥 Exception or Error

Stuck at Creating Route List: 3/3 without any further output

This will happen if chrome isn't preinstalled in your docker container. We are looking at how to generate a more proper error for this.
for now, make sure you do something like this:
FROM node:12-alpine

RUN apk add --no-cache \
      chromium \
      nss \
      freetype \
      freetype-dev \
      harfbuzz \
      ca-certificates \
      ttf-freefont

ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true

As a base docker config, and then make sure to set the environment correctly in the container that runs Scully:
In order to use this I create my projects' Docker file like this:
FROM aboveConfig
ENV SCULLY_PUPPETEER_EXECUTABLE_PATH '/usr/bin/chromium-browser'
... more docker stuff here
... in the end:
RUN npm run scully

I hope this helps you. I will close this issue as we have another ticket where we track the error-msg,
If you have further questions, you can still ask them here, and we will answer them. If needed, we will reopen the issue.

@SanderElias thanks! This really fixed the issue for me.
I used node:12-slim and it seems like debian in combination with chrome didn't worked.
I've slightly modified your approach and added a non root user which is running that build:
`FROM node:12-alpine
RUN apk add --no-cache
chromium
nss
freetype
freetype-dev
harfbuzz
ca-certificates
ttf-freefont
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true
ENV SCULLY_PUPPETEER_EXECUTABLE_PATH '/usr/bin/chromium-browser'
RUN npm install -g @angular/cli
RUN addgroup -S pptruser && adduser -u 8003 -S -g pptruser pptruser
&& mkdir -p /home/pptruser/Downloads
&& chown -R pptruser:pptruser /home/pptruser
Run user as non privileged.
USER pptruser
`
maybe you can reuse this for https://github.com/scullyio/scully/issues/926.
As for documentation i used the following options:
    puppeteerLaunchOptions: {         args: ['--no-sandbox', '--disable-setuid-sandbox']     },

Same for me on Vercel :(

Beside installing the mentioned packages I also had to add the following option to the scully.config file
 puppeteerLaunchOptions: { args: ['--no-sandbox', '--disable-setuid-sandbox'] },
Thanks @moritz31 !


Add security changes for point in time API

Signed-off-by: Bharathwaj G<EMAIL_ADDRESS>Description
The existing model requires indices read access to 'pit delete' and 'list all pits' to all users.
So changing the action names to 'cluster:admin/<action_name>".
Now , we can't add these cluster permissions to 'cluster_composite_ops' or 'ops_ro' since user has access to 'my_index' role which has access to 'cluster_composite_ops' which will make all users to access list and delete pit.
So changing the approach to new one below.
Add point in time permissions to 'manage_point_in_time' which is part of default static action groups.
Point in time apis - and associated action names :

Create PIT -     - "indices:data/read/point_in_time/create" ( indices:data/read is chosen because this will make sure users have read permission to the passed indices )
Delete PIT - "cluster:admin/point_in_time/delete" ( cluster:admin/*  is used because the apis are not dependent on indices like create pit and should just work based on this standalone permission )
List all PITs - "cluster:admin/point_in_time/read*"
PIT segments API - "indices:monitor/point_in_time/segments"

All the above actions are added to new action group 'manage_point_in_time'

Category (Enhancement, New feature, Bug fix, Test fix, Refactoring, Maintenance, Documentation)
New feature - Point in time feature
Why these changes are required?
These changes are required for access of various point in time APIs
What is the old behavior before changes and new behavior after changes?
This is a new feature

Design document:
https://github.com/opensearch-project/OpenSearch/issues/3960
Api changes:
https://github.com/opensearch-project/OpenSearch/pull/4064 - create pit and delete pit api
https://github.com/opensearch-project/OpenSearch/pull/4016 - list all
Issues Resolved
https://github.com/opensearch-project/OpenSearch/issues/3959
Is this a backport? If so, please add backport PR # and/or commits #
Testing
Tested locally by running opensearch server alongside security plugin.
Only when index permissions and 'manage_point_in_time' action group permission is present , create api succeeds
For rest of the APIs, 'manage_point_in_time' action group permission controls whether the api can be accessible or not, which has been tested as well.
Check List

[ ] New functionality includes testing
[ ] New functionality has been documented
[ ] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #2033 (abfabe1) into main (f4b3a3a) will increase coverage by 0.00%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               main    #2033   +/-   ##
=========================================
  Coverage     61.06%   61.07%
- Complexity     3229     3230    +1
=========================================
  Files           256      256
  Lines         18070    18069    -1
  Branches       3220     3220
=========================================
  Hits          11035    11035
+ Misses         5463     5461    -2
- Partials       1572     1573    +1

Impacted Files
Coverage Δ

...ecurity/ssl/rest/SecuritySSLReloadCertsAction.java
84.78% <0.00%> (-0.33%)
:arrow_down:

...iance/ComplianceIndexingOperationListenerImpl.java
63.23% <0.00%> (+1.47%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@cliu123 @peternied please review

@bharath-techie Have these changes been tested, could you describe how this was done and what was covered?  There was a previous permissions pull request that didn't cover the full scenarios.

@bharath-techie Have these changes been tested, could you describe how this was done and what was covered? There was a previous permissions pull request that didn't cover the full scenarios.

Added testing section of PR. Tested the changes locally to verify the changes.


Unhandled JS Exception: Requiring unknown module "1". If you are sure the module exists, try restarting Metro. You may also want to run yarn or npm install.

Description
Hi I'm using react-native 0.64 version and there is a problem with metro bundler, it appears that when I add a file in the project and import it and sometimes when I remove or add a hook.

React Native version:
  OS: macOS 11.2.1
    CPU: (12) x64 Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
    Memory: 169.38 MB / 16.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 14.10.1 - /usr/local/bin/node
    Yarn: 1.22.10 - ~/Projects/mobile/GeraldWallet/node_modules/.bin/yarn
    npm: 6.14.8 - /usr/local/bin/npm
    Watchman: 4.9.0 - /usr/local/bin/watchman
  Managers:
    CocoaPods: 1.10.1 - /usr/local/bin/pod
  SDKs:
    iOS SDK:
      Platforms: iOS 14.4, DriverKit 20.2, macOS 11.1, tvOS 14.3, watchOS 7.2
    Android SDK:
      API Levels: 23, 25, 27, 28, 29, 30
      Build Tools: 28.0.3, 29.0.2, 29.0.3, 30.0.1
      System Images: android-29 | Google APIs Intel x86 Atom
      Android NDK: Not Found
  IDEs:
    Android Studio: 4.1 AI-201.87<IP_ADDRESS>53283
    Xcode: 12.4/12D4e - /usr/bin/xcodebuild
  Languages:
    Java: 1.8.0_265 - /usr/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: 17.0.1 => 17.0.1
    react-native: 0.64.0 => 0.64.0
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Steps To Reproduce
init project and try to add files and import it in the project and it will create this error.
Expected Results
should rerender without an error

This happens all of the time when doing local development in the simulator when I introduce errors into my code. Instead of reloading, sometimes it just seems to break the connection with Metro and require me to restart it. Supremely annoying.
React Native 0.66.0-rc.4
Hermes enabled

Still an issue on 0.66.4

I ran into this issue after enabling hermes on IOS. Its annoying to clear cache all the time.


Get RubyGems/Bundler update CI step back

https://github.com/rubygems/bundler/pull/6728
Example failure (https://github.com/rspec/rspec-rails/pull/2548):
Failure/Error: expect(`bundle exec #{script} 2>&1`).to be_empty
       expected `"Your RubyGems version (<IP_ADDRESS>)) has a bug that prevents `required_ruby_version` from working for Bundler. Any scripts that use `gem install bundler` will break as soon as Bundler drops support for your Ruby version. Please upgrade RubyGems to avoid future breakage and silence this warning by running `gem update --system 3.2.3`\n".empty?` to be truthy, got false


Add support for integrations/github ~5.0

GitHub releases a week ago a new major version of the provider: https://github.com/integrations/terraform-provider-github/releases
The module should support that version :-)

solved in #135


Fix missing workflow_dispatch flags in CI.

Codecov Report

Merging #435 (6389c20) into stable (07db8ea) will decrease coverage by 0.57%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           stable     #435      +/-   ##
==========================================
- Coverage   34.25%   33.68%   -0.58%
==========================================
  Files          73       73
  Lines        6127     6127
  Branches      312      312
==========================================
- Hits         2099     2064      -35
- Misses       3955     3992      +37
+ Partials       73       71       -2

Impacted Files
Coverage Δ

library/virtual_machine/set_evaluator.cpp
50.00% <0.00%> (-25.00%)
:arrow_down:

library/grammar/expr.hpp
39.75% <0.00%> (-6.73%)
:arrow_down:

library/virtual_machine/bin_evaluator.cpp
39.48% <0.00%> (-4.11%)
:arrow_down:

library/virtual_machine/get_evaluator.cpp
40.42% <0.00%> (-3.20%)
:arrow_down:

library/grammar/string.hpp
27.00% <0.00%> (+3.50%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Dotnet publish gives incomplete output when using paket

Description
I wanted to create a self-contained deployment (SCD) for a console app created with dotnet core. Therefore I use the command dotnet publish --self-contained --runtime win10-x64. When running the exe resulting from that I get the error:
Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'System.Runtime, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'. The system cannot find the file specified.
The app does not start and work.
Repro steps
I created a repo where someone can compare nuget vs paket behaviour ( @Stift/ https://github.com/Stift/PaketPublishBug171107)

Clone the repo above
go to src/withPaket/
call dotnet publish --self-contained --runtime win10-x64
do the same with src/noPaket/
Call bin\Debug\netcoreapp1.1\win10-x64\publish\SelfContained.exe for either dir and compare the output.

Expected behavior
Program should execute (output: Test)
Actual behavior
When the dependencies of the program are managed by paket, the exception above appears. It seems the System.Runtime.dll was not copied to the output folder.
Known workarounds
using nuget instead of paket.  :disappointed:

This might be related to the fact that paket uses higher versions of the relevant packages (as you build for netcoreapp1.1).

Microsoft.NETCore.Platforms  2.0 instead of 1.X
NETStandard.Library 2.0.1 instead of 1.X
Microsoft.NETCore.Targets  2.0 instead of 1.X

Can you try to pin them to what NuGet is using or tell paket to use < 2?

I already assumed sth like that. And this works. Thanks for the hint.
But what still strikes me, is that nuget does work and only with paket the same configuration won't work. Is there a way to have a warning or fix for that, because just by using the tools it's not obvious (compiling and running just worked!)

I guess it is about resolution strategy for transitive dependencies: nuget uses "lowest matching" and paket uses "highest matching".
Lot of packages don't have really have restriction for "upper bound" provided (for example, "Microsoft.AspNetCore 1.1.3" depends on "Microsoft.AspNetCore.Diagnostics >= 1.1.3" which theoretically includes "2.0.0" but, of course, it won't work).
You can argue that actually it will never be fixed, as developers don't know when it will stop to be compatible while publishing, and once it is published you cannot go back and re-publish same version.
You can change paket behaviour using "strategy" option (https://fsprojects.github.io/Paket/dependencies-file.html). Using "strategy: min" should (I say "should" as I never really used it) make it behave like nuget, but for my, very limited experience, it becomes really slow.
So, I guess the most viable option is to explicitly put restrictions in "paket.dependencies" (like "< 2").
There is another problem, though, as those restrictions seems to be not carried over with packages you release, so you would have to repeat them, but that's a different story (#2883).


Upload rejected due to failure to render description

When uploading the latest version of nestedtext, the upload was rejected due to a failure to render the description even though twine check passed.
% py setup.py sdist bdist_wheel
running sdist
   ...
adding 'nestedtext.py'
adding 'nestedtext-1.2.0.dist-info/LICENSE'
adding 'nestedtext-1.2.0.dist-info/METADATA'
adding 'nestedtext-1.2.0.dist-info/WHEEL'
adding 'nestedtext-1.2.0.dist-info/top_level.txt'
adding 'nestedtext-1.2.0.dist-info/RECORD'
removing build/bdist.linux-x86_64/wheel
% twine check  dist/*
Checking dist/nestedtext-1.2.0-py3-none-any.whl: PASSED
Checking dist/nestedtext-1.2.0.tar.gz: PASSED
% twine upload dist/*
Uploading distributions to https://upload.pypi.org/legacy/
Uploading nestedtext-1.2.0-py3-none-any.whl
100%|█████████████████████████████████████████████████████| 25.1k/25.1k [00:00<00:00, 27.6kB/s]
NOTE: Try --verbose to see response content.
HTTPError: 400 Bad Request from https://upload.pypi.org/legacy/
The description failed to render for 'text/x-rst'. See https://pypi.org/help/#description-content-type for more information.

The README file is restructuredtext, and long_description_content_type = 'text/x-rst'.
Finally, I have run readme_renderer on the README.rst file without there being a report of any issues.
I am at a loss as to what to do next. I think the problem is on your end, but I am not sure.

Okay, I have figured this out. The problem was the following lines in the README.rst file:
.. code-block:: nestedtext

nestedtext is a format that has been submitted to pygments but has yet to be accepted and supported. Most renderers will ignore the nestedtext tag if it is unknown, but apparently your renderer is a bit more sensitive.
As far as I am concerned this issue can be closed. I will leave it open for now in case you want to use it as a reminder to make it so that twine check reports this error.

Twine uses the same rendere that PyPI uses, I would expect this to have the same behavior in both cases. Transferring to readme_renderer's tracker to investigate why this happened.


Create cache for project names

At the moment every reconciliation does a proejct find only to resolve the project name. It would be great to have a cache call for all projects at once and then just refresh entries after 30 minutes because project names can actually not change.
Maybe consider adding a "lazy map cache" (don't know if this is a good name) in the metal-lib for this: https://github.com/metal-stack/metal-lib/tree/master/pkg/cache

@Gerrit91 can we close this? #4 has already been merged

Done.


Databasechangelog is not created with PostgreSQL two schemas

Version of Liquibase
Apache License
Version 2.0, January 2004
Liquibase Integration & Version: <Pick one: CLI, maven, gradle, spring boot, servlet, etc.>
CLI
Database Vendor & Version:
PostgreSQL version 12.2
##Description
I'm trying to automate deployment to PostgreSQL using liquibase, basically I have a database "my_db" with two schemas "myschema1", "myschema2". I have two targets that I execute:
install.bat install-myschema1-db with a url pointing to myschema1 schema
install.bat install-myschema2-db with a url pointing to myschema2 schema
the first target executes correctly and creates all the needed tables, it also automatically creates the myschema1.databasechangelog table used by liquibase for logging.
However, when I try to execute the install-myschema2-db target it fails with ERROR:

Error executing SQL SELECT MD5SUM FROM myschema2.databasechangelog WHERE MD5SUM IS NOT NULL LIMIT 1: ERROR: relation "myschema2.databasechangelog" does not exist

Basically, the installer scans for databasechangelog table and it find it in the database so it doesn't create, but when it tries to search in it , it tries to look in myschema2.databasechangelog but doesn't find it since it's created under myschema1
##Steps to Reproduce
"%ANT_HOME%\bin\ant.bat" -f install.xml -Denv.file=install.properties %CMD_LINE_ARGS%
%CMD_LINE_ARGS% is the target to execute which in this case is install-myschema2-db

Hi @elghali .  Thanks for submitting this issue.  Can you supply a little more details on recreation steps you used to find this issue.
I have update the comment section with a few more fields. If you could update the fields with additional info that would help us greatly.  I have tagged them with your github id in the comments field for you to replace your comments.

Liquibase lets you create a different databasechaneglog table on different schemas, so it doesnt look like a liquibase error (at least on 4.14). Try upgrading your liquibase version, if you still have any issue, you can try re-opening the issue. Thanks!


How many views got a page?

Describe the feature you'd like
I write internal documentation for my users with Bookstack and i am always wondering how many page view certain pages have gotten. A page count on the right Details frame would help
Describe the benefits this would bring to existing BookStack users
When i have a clue how much the page was visited I am able see what is working and what not. I can ask my users better why this guide is less frequent visited. At the moment i have no clue.
Can the goal of this request already be achieved via other means?
Perhaps attach it to mamoto? Would introduce another tool to tackle that.
Have you searched for an existing open/closed issue?

[X] I have searched for existing issues and none cover my fundamental request

How long have you been using BookStack?
Over 5 years
Additional context
No response

Hi @JtheBAB,
Thanks for the requested, but this covers the same fundamental request as per existing issue #518, with #4775 being somewhat related too.


Make last click on body organs remain highlight after closing the text

even after closing the pop-up the last organ that the user clicked on should be highlighted

Fixed on transgender_icons branch

@niharikaavasthi : I have done this only for body organs and not the icons.

@melikaeft Please test for organs

@navpreetkaur051 needs to be discussed. I haven't seen any changes related to this

@melikaeft : I merged the code to transgender today. Now you will be able to see it.

@melikaeft @niharikaavasthi : fixed on canbewell 1 as well, analytics_test

Being "creative" with the issue can cause multiple selected organs. To reproduce, tap/click a couple of organs at the same time (there is a delay between clicking the organ and the box popping up). Maybe a future enhancement?

checked_on_iPhone-TESTED

checked_on_Windows-TESTED

The same issue with Ali posted.  Multiple organs highlight at the same time when they are clicked quickly in delay.

@niharikaavasthi checked_on_Ipad-TESTED. It is good.

checked_on_Android-TESTED

Checked on windows (EN - Patients) for production. Multiple organs get highlighted at the same time. There's some overlap.

Checked on iPhone (EN) Multiple selections if accidentally click on more than one icon.

@navpreetkaur051 Please look into it but not urgent


Windows 10, simple hello world program fails

Windows10, trying to compile with pythran:
#pythran export test()
def test():
    print("hey")

https://pastebin.com/EzRQJAAK

This looks very similar to https://github.com/scikit-image/scikit-image/pull/3226#issuecomment-970895733

OK, I was able to fix the issue. The problem arises form the fact that by default, clang-cl.exe is the 32 bit version (or at least, was on my system). If I change my path so the default clang-cl.exe is the 64 bit version, compilation and linking run without any problem.
So, what works for my system:

install clang the microsoft visual studio way, (there is an option to install clang when you install visual studio, and I believe that's the recommended way to install clang)
Make sure your path is setup so clang-cl.exe is the 64 bit version of clang, not the 32 bit version.

I think this should probably be added to the documentation somewhere, right?

@jeanlaroche I would be very happy if you updated the documentation, yes ;-)

@serge-sans-paille I solved this issue by defining full path to clang-cl.exe in the file .pythranrc but had to use short legacy names to avoid spaces in the path:
[compiler] CC=C:\PROGRA~2\MIB055~1\2019\BUILDT~1\VC\Tools\Llvm\x64\bin\clang-cl.exe CXX=C:\PROGRA~2\MIB055~1\2019\BUILDT~1\VC\Tools\Llvm\x64\bin\clang-cl.exe
I tried to use both types of quotes for the usual long path, but generated call was not valid.

@AndrewUshakov hell that's ugly :-) We should support quote there as we already did in 7fc75bb49957d3fa2f9ce9ebffdca873a563dee2 . I'll implement that.

@AndrewUshakov on Linux, just the anme with spaces and no quotes works fine. Are you telling me that
[compiler]
CC=C:\Some Path\With Spaces

doesn't work?

@serge-sans-paille  If use quotes, output to console looks like:
E: error: Command "'C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\Llvm\x64\bin\clang-cl.exe'  ... failed with exit status 127
Without quotes, all is Ok, Sorry. Probably I did something wrong yesterday.

@jeanlaroche I would be very happy if you updated the documentation, yes ;-)

Where in the doc should I add that? I tried to find mentions of windows in docs, but couldn't find anything. Simply in MANUAL.rst?

An update on this. With the latest version of pythran. On windows10, pythran uses clang-cl by default, which is good. But the linker it uses is still
Executing "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.28.29910\bin\HostX86\x64\link.exe"

which I don't think is right. I'm getting lots of linking errors as a result.
I don't know how to fix that as I can't specify the linker in the config file (or can I?)


Minimizing dependency requirements for pyvi

Hi, it seems that pyvi only uses sklearn-crfsuite in the file "ViDiac.py", so scikit-learn is not used in pyvi and thus could be removed from the dependency requirements.

Thanks!!!


Video links href and text content do not match

To upload a video, an author chats with the franklin bot and gets a link like https://main--express-website--adobe.hlx.page/media_1f4b5e29362b67df45103c598e4b15e7777159e31.mp4.
When rendered, the link becomes: https://main--express-website--adobe.hlx.page/media_1f4b5e29362b67df45103c598e4b15e7777159e31.mp4 which is technically a correct transformation only on pages at the root: as soon as the link appears on a page in a folder, the mapping href / a.textContent is not correct.
We used to use that mapping for certain detections and this logic became invalid with the v7 pipeline.
We know it is the same asset, just the urls do not match. Not a "big" deal neither, maybe we can have a better solution.
I do not think ./media_1f4b5e29362b67df45103c598e4b15e7777159e31.mp4 is nice neither.
Is it possible to have the correct absolute URL ?

Is it possible to have the correct absolute URL ?

sure.

so given a link https://main--owner--repo.hlx.page/media_1234.mp4, requesting a page /foo/bar, currently it is:

on page: https://main--owner--repo.hlx.page/media_1234.mp4
on live: https://main--owner--repo.hlx.page/media_1234.mp4
on prod: https://main--owner--repo.hlx.page/media_1234.mp4

a) we could either adjust the content accordingly, which would be the simplest:

on page: ./media_1234.mp4
on live: ./media_1234.mp4
on prod: ./media_1234.mp4

b) make it absolute with the host and path:

on page: https://main--owner--repo.hlx.page/foo/bar/media_1234.mp4
on live: https://main--owner--repo.hlx.live/foo/bar/media_1234.mp4
on prod: https://www.example.com/foo/bar/media_1234.mp4

I think that a) is better, as it has less potential to cause problems with caching.
In any case, this would be a breaking change.
@davidnuescheler WDYT?

In JS:

with a): a.href !== a.textContent
with b): a.href === a.textContent

I prefer b) because it is more aligned with what the author has pasted in Word.

actually, I was wrong. we don't rewrite the prod host, so b) would be:
b) make it absolute with the host and path:

- on page: `<a href="./media_1234.mp4">https://main--owner--repo.hlx.page/foo/bar/media_1234.mp4</a>`
- on live: `<a href="./media_1234.mp4">https://main--owner--repo.hlx.live/foo/bar/media_1234.mp4</a>`
- on prod: `<a href="./media_1234.mp4">https://main--owner--repo.hlx.live/foo/bar/media_1234.mp4</a>`

which is also not great. I think a) (maybe w/o the ./ ) would be the best.


Fix defaults to run on GS clusters

towards https://github.com/giantswarm/fashion-digital/issues/83

Linting will fail as we do not want to bump the upstream version


please update sdwebimage  version atleast to 5.13.4

Hi, I notice the crash issue of SDWebImage below version 5.13.4 as you can see here
https://github.com/SDWebImage/SDWebImage/issues/3273
So could you please update SDWebImage version? Thanks so much

Any update on this SDWebImage ?


Focal point picking

This is a feature I use all the time in Meshlab: double click on the model and the camera will target the picked point. Very useful to zoom in and inspect details.
The following video capture shows rotating the model about the default origin, then double clicking on a wheel and rotating about it, and finally double clicking and zooming on the hand of the figure to have a better look:
focal-point-picking-buggy.webm
Discussion points:

we have a low level window so we need to implement double click detection ourselves?
is there a good way to animate the transition? (dedicated animation thread/queue?)

Thanks @snoyer for your features and ideas !

we need to implement double click detection ourselves?

Indeed, so I wonder if a modifier + click mayu be better interactions for this. Do you know if this double click gesture is standard in other software ?

is there a good way to animate the transition? (dedicated animation thread/queue?)

No such thing in VTK, though it should be implementable.
That being said do you think animating the transition provide anything apart from looking "nice" ?
BTW We are thinking of creating a discord channel for informal discussions about F3D, would you be interested in joining ?

Really nice!
FYI CATIA uses the mouse wheel click to set the focus on release (if the mouse has not moved between press and release)
Also, I'm afraid the point picker will not work 3d model with large triangles (like a box for example), I suspect the vtkCellPicker will give you more precise results (but will not work on point clouds...)

we need to implement double click detection ourselves?

Indeed, so I wonder if a modifier + click may be better interactions for this. Do you know if this double click gesture is standard in other software ?

Meshlab is the only other viewer that comes to mind so I can't be positive either way.

is there a good way to animate the transition? (dedicated animation thread/queue?)

No such thing in VTK, though it should be implementable. That being said do you think animating the transition provide anything apart from looking "nice" ?

I believe it does slightly more than looking nice. Being able to follow the subject as the camera moves (even if the transition is quite short) saves your brain the split second of "oh yeah, right." it needs to register the new position and confirm the move is what you expected it to be.
It would be a "nice to have" detail, but it's totally functional without the animation so it can be done without if it is problematic.

BTW We are thinking of creating a discord channel for informal discussions about F3D, would you be interested in joining ?
Sure

FYI CATIA uses the mouse wheel click to set the focus on release (if the mouse has not moved between press and release)

That would also make sense as middle click is what is used for dragging currently.

Also, I'm afraid the point picker will not work well on 3d model with large triangles (like a box for example), I suspect the vtkCellPicker will give you more precise results (but will not work on point clouds...)

I'll admit I haven't investigated the different pickers (or tried to load a point cloud). Is it possible to decide which picker to used based on the model? Or just have 2 pickers, pick with the CellPicker first and fall back to the PointPicker if there's no hit?

More info (but nothing about interactions sadly) in https://f3d.app/doc/dev/TESTING.html