WinUI 3 SelectorBar Rendering Bug After Adding CommunityToolkit.WinUI.Controls.SettingsControls Package

Describe the bug
In a WinUI 3 app, adding the CommunityToolkit.WinUI.Controls.SettingsControls NuGet package breaks the rendering of a SelectorBar control. The SelectorBar visually malfunctions after the package is installed, despite functioning correctly before.
Steps to reproduce the bug

Start with a blank window and add a straightforward SelectorBar as shown below:

<?xml version="1.0" encoding="utf-8"?>
<Window
    x:Class="App.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:App"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" VerticalAlignment="Center">
        <SelectorBar>
            <SelectorBarItem x:Name="SelectorBarItemRecent" Text="Recent" Icon="Clock" />
            <SelectorBarItem x:Name="SelectorBarItemShared" Text="Shared" Icon="Share" />
            <SelectorBarItem x:Name="SelectorBarItemFavorites" Text="Favorites" Icon="Favorite" />
        </SelectorBar>
    </StackPanel>
</Window>

At this point, everything functions as expected when you run the app.

Navigate to the NuGet Package Manager, search for CommunityToolkit.WinUI.Controls.SettingsControls, and install the most recent stable version (in my case, it’s 8.0.240109). This package comes with four transitive packages:

CommunityToolkit.Common (version 8.2.1 in my case)
CommunityToolkit.WinUI.Extensions (version 8.0.240109 in my case)
CommunityToolkit.WinUI.Helpers (version 8.0.240109 in my case)
CommunityToolkit.WinUI.Triggers (version 8.0.240109 in my case)

Run the app again. At this point, the issue manifests:

Call Stack:

>	App.dll!App.App.InitializeComponent.AnonymousMethod__4_2(object sender, Microsoft.UI.Xaml.UnhandledExceptionEventArgs e) Line 74	C#

Expected behavior
After adding the CommunityToolkit.WinUI.Controls.SettingsControls package to the WinUI3 application, the SelectorBar should function as intended without blocking or causing the application to break. The application should run smoothly without throwing any unhandled exceptions, regardless of the addition of the SettingsControls package. The SelectorBar should be responsive and interactive, allowing for the proper selection of items.
Screenshots

NuGet package version
WinUI 3 - Windows App SDK 1.5.2: 1.5.240404000
Windows version
No response
Additional context
No response

These issues, while all related to Windows UI development, seem like separate problems. They affect different features, WinUI versions, and underlying technologies compared to the bug I had explained with the SelectorBar and the CommunityToolkit.WinUI.Controls.SettingsControls NuGet package.

@niels9001 any insight?

Duplicate of https://github.com/CommunityToolkit/Windows/issues/408.
WCT 8.1 should resolve this issue, for now you can use our preview packages to try and see if that solves things. See instructions in the issue on the WCT repo

Potential Solution Identified, Although Temporary:
There's no requirement to install the Prerelease of CommunityToolkit.WinUI.Controls.SettingsControls for the SelectorBar to function as expected. Simply installing the most recent version of CommunityToolkit.WinUI.Controls.Segmented should suffice.
Rationale:
I observed that all controls operate smoothly when CommunityToolkit.WinUI.Controls.SettingsControls is present, with the exception of SelectorBar. This control was not available in earlier versions of Windows App SDK and only appeared in version 1.5. Upon examining the details of the stable channel release notes for the Windows App SDK, I discovered that this control was formerly known as "SegmentedControl" on the 1.5 roadmap, which is identical to the control exists in WCT.

I also noticed that the WinUI3 Gallery App employs the Settings Controls with SelectorBar without any issues. When I inspected the source code, I noticed that CommunityToolkit.WinUI.Controls.Segmented was installed in the project, but it wasn't being used at all!!??

When I attempted the same approach (merely adding CommunityToolkit.WinUI.Controls.Segmented without utilizing it), I was finally able to use SelectorBar without any issues. As a result, I suspect that the issue lies not with CommunityToolkit.WinUI.Controls.SettingsControls, but rather with Windows App SDK 1.5, which provided us with the same control found in CommunityToolkit.WinUI.Controls.Segmented, albeit under a different name. (Furthermore, it only functions in the presence of CommunityToolkit.WinUI.Controls.Segmented if you use other WCT packages.)
Code
This is a XAML code for a Windows application interface that includes a SelectorBar with three items, a Segmented control with four items, and a SettingsCard with a dropdown menu containing three options.
<?xml version="1.0" encoding="utf-8"?>
<Window
    x:Class="NewApp.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:NewApp"
    xmlns:controls="using:CommunityToolkit.WinUI.Controls"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    mc:Ignorable="d">

    <StackPanel>

        <SelectorBar>
            <SelectorBarItem Text="Recent" Icon="Clock" />
            <SelectorBarItem Text="Shared" Icon="Share" />
            <SelectorBarItem Text="Favorites" Icon="Favorite" />
        </SelectorBar>

        <controls:Segmented>
            <controls:SegmentedItem >Item 1</controls:SegmentedItem>
            <controls:SegmentedItem >Item 2</controls:SegmentedItem>
            <controls:SegmentedItem >Item with long label</controls:SegmentedItem>
            <controls:SegmentedItem >Item 4</controls:SegmentedItem>
        </controls:Segmented>

        <controls:SettingsCard Description="This is a default card, with the Header, Description and Content set."
                               Header="This is the Header">
            <ComboBox SelectedIndex="0">
                <ComboBoxItem>Option 1</ComboBoxItem>
                <ComboBoxItem>Option 2</ComboBoxItem>
                <ComboBoxItem>Option 3</ComboBoxItem>
            </ComboBox>
        </controls:SettingsCard>

    </StackPanel>
</Window>

Screenshots

This is a dupe of #8810.
See that Issue and Issue #9424 for a work around.
I am currently working on a fix for this issue.


Conditional "changed" not working

With the upgrade past > 0.5 the conditional "changed" is not working / not working as expected anylonger.
Example
pipeline:
  step1:
    image: alpine
    commands:
      - exit 1
  notify:
   image: alpine
   commands:
      - echo "failure or changed"
  when:
    status: [changed, failure]

Expected behavior:

when step1 fails, execute notify
when step1 previously failed and currently the pipeline has not (failed until step notify) also execute notify

Actual behavior:

notify will only be executed when previous steps failed - it will not be executed when the pipeline returns into a green state

problem most likely is somewhere in https://github.com/cncd/pipeline - but haven't found the correct spot to look at yet

related to https://github.com/drone/drone/issues/1962


fix: Fixed issue where database name is undefined when initiating the api

Changes Unknown when pulling d72e7304a96aba6e69b65557e534c470549433fe on fix/database-name into ** on master**.


data used documentation

Hi Joshua,
thanks again for your great software.
Having a understanding issue:
what is the base of those 2 fields and the meaning?
Please confirm my understanding:
pvCurrent  -> solar charging current
ChargingCurrent?- > derived from charging state   06H:current-limited   charging stage  (solar/alternator)
Also I have the values true for bulk charging and float charging at the same time.  How did you use those states, which from my understanding can only have 1 state?
Do you have a mapping or guide me to the docu which I probably missed
Thanks a lot.
BR Thomas

Please give me some details on which charge controller you are using.
PV current and charging current are two different things. Before I talk about those I want to just talk about PV power and charging power. PV power would be the power measured coming from the panels, and charging power would be the amount of power going into the batteries. Normally these power values are very close and sometimes equivalent. In general charging power will be a little less than PV power because of inefficiencies.
PV current * PV voltage = PV Power and Charging current * battery voltage = charging power. Charging current isn't exactly derived from the charging state, but the charging state may make the controller limit the charging power, which in turn would also limit the PV current being pulled.
Can you show me what query you are using that shows true for bulk and float at the same time? There's not really any good mappings or guides that I have. I've been meaning to improve the GraphQL documentation, but haven't gotten around to it. The best advice I can give you is to understand what each property means from one of the modbus documents that are out there for your given controller. SolarThing pretty much does a 1 to 1 mapping of the information on the modbus documents, so SolarThing usually isn't doing anything special with the data.
If you are referring to a Bulk/Float mode, that mode means that the controller is either in bulk or float mode, but I'm only aware of this being the case on Tracer controllers.

Hi Yoshua,
thanks for the details.
I am using Rover Elite 40 A

Hi
looking tinto the modbus docu from Reneogy I maybe was confused.
I am talking about 120H information: 0120H Charging state
Which looks like is a part of historic data information.
similar info is found in : battery state also 120H
document is a little confusing to me

Yeah Renogy's documentation is very confusing, which is why I made everything 1 to 1 so you can interpret the data later once the data is collected. The charging state is not part of the historic data information section. The charging state tells you the single state the charge controller is in. I believe that all Rover models should correctly report what state they are in. "Current limiting/overpower" is basically the same as Boost, but this state is only used for lithium batteries.
You can see a code snippet here of how I have these states defined. I have some comments in the code that are not documented anywhere else:
https://github.com/wildmountainfarms/solarthing/blob/8787d7ac0b7c58958da4de52f5580eecc73ea012/core/src/main/java/me/retrodaredevil/solarthing/solar/renogy/rover/ChargingState.java#L14-L27
Personally I have never seen the ACTIVATED, CURRENT_LIMITING, DIRECT_CHARGE states used on a Renogy Rover 40A. I have seen all of the other states.

Also I have the values true for bulk charging and float charging at the same time. How did you use those states, which from my understanding can only have 1 state?

I still don't understand what you mean here. Feel free to elaborate further

Hi Joshua,
looks like this is a misuse and understanding from my side. So looks like I made an error using the data and did not clear old values. so I this this is solved - user error.
Thanks Thomas

Thanks for your explanations and snippit


Support syslog as an output 'device'

I'd like to use logstash-logger but need to be able to send the JSON logs to the local syslogd (which then forwards to a remote logstash and does local disk-assisted queuing if the remote logstash is down).

Makes sense. Do you want to try to tackle this?

For reference, here's the implementation of the Ruby 2.0+ Syslog::Logger.
We wouldn't be able to use this class because LogStash::Logger still supports Ruby 1.9. But we can be inspired by it!

Syslog support released in 0.14.0.

@timbunce Give it a try and let me know how well it works for you.

Thanks! I'll let you know if I have any problems.


Update scala-library to 2.12.17

Updates org.scala-lang:scala-library from 2.12.15 to 2.12.17.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Files still referring to the old version number
The following files still refer to the old version number (2.12.15).
You might want to review and update them manually.
.github/workflows/ci.yml

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scala-lang", artifactId = "scala-library" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "org.scala-lang", artifactId = "scala-library" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, old-version-remains, commit-count:1

Coverage remained the same at 33.898% when pulling 11c7a6bdd511e9fd334a952baf300743e18674ed on scala-steward:update/scala-library-2.12.17 into d082b04ae38161e522ab7991a62ceff130832f4e on evolution-gaming:master.

Superseded by #105.


rpm-related refactoring and cleanups

This is done in preparation to support per-rpm exclusions in payload scan.
Please see individual commit messages for details.
The only notable changes are:

node. is now rpm. in configs;
only the rpm name is used in configs.

/lgtm


Coordinates not included in WIKIDATAFACTS

Do you have any idea why the property https://www.wikidata.org/wiki/Property:P625 is not included in the output of WIKIDATAFACTS? When explicitly targeted via opt_properties the field is left blank. When not targeted it is omitted in the list of properties/facts. Example: =WIKIDATAFACTS("Q1017") or =WIKIDATAFACTS("Q1017";all;"P625")

Here it is:
The case for geocoordinates is missing. Looks like this in the API:

Could you add that case?

This is a nested datatype:
{
  "snaktype": "value",
  "property": "P625",
  "hash": "c1830e2ab31e9b6426f104d3ee9cf5eea757dec3",
  "datavalue": {
    "value": {
      "latitude": 50.776207,
      "longitude": 6.083788,
      "altitude": null,
      "precision": 0.000277778,
      "globe": "http://www.wikidata.org/entity/Q2"
    },
    "type": "globecoordinate"
  },
  "datatype": "globe-coordinate"
}

The fastest would be if you copy the existing WIKIDATA() function, make the changes you need to extract this nested datatype according to your requirements, and save it as your personal custom function that you can name something like MYWIKIDATA().


Remove deprecated functions (should have been removed in 2.090)

Already made a PR for enforceEx: #7283
It's currently blocked on a new vibe.d release.

It's currently blocked on a new vibe.d release.

Actually, I think it is actually blocked on a new vibe-core release (since Vibe.d v0.9.0 was released recently).
Will take care of that.

Vibe-core release is done, so this should not be blocked anymore.

Rebased, let's see...

Oh well Vibe.d is fixed but now we need to update the dependencies of a bunch of programs

Running DScanner
--
  | generated/dscanner-9364d6f15f4a610fda49a693dbc18608bfc701bb/dsc --config .dscanner.ini --styleCheck etc std -I.
  | posix.mak:562: recipe for target 'dscanner' failed

The style target is still failing, can you look into it ?
Everything else but dub has been fixed. I'll look into dub a bit later.

dub PR has been merged, I just re-triggered Buildkite. Can you add a release note entry ?
Just a one liner is enough IMO.

@ibuclaw CI seems stuck, can you please force push.

And add the release not entry.

And add the release not entry.

What's the point when more than half of the functions originally in this PR have already been removed without note.

@thewilsonator rebased.

What's the point when more than half of the functions originally in this PR have already been removed without note.

That's not an example to follow IMO.

For reference, the point is to make it easier to search in release notes.

For reference, the point is to make it easier to search in release notes.

Well I think one of them was rndtol, but no idea what the others were by now.

Rebased and Ping!

../.dub/packages/vibe-d-0.8.6/vibe-d/utils/vibe/internal/memory_legacy.d(9,8): Error: module `std.exception` import `enforceEx` not found, did you mean template `std.exception.enforce(E : Throwable = Exception) if (is(typeof(new E("", string.init, size_t.init)) : Throwable) || is(typeof(new E(string.init, size_t.init)) : Throwable))`?

@ibuclaw IMHO this one can be closed. All functions are meanwhile removed.

Rebased, there's still a one-liner change remaining.


Illidan Hero dropping all items on death

@SebastianTanoni What's the bug here? Don't all heroes drop items on death?

Nevermind, I see now - he shouldn't be dropping non-Artifacts.

If I can get a bit more background on this I will take a look at it. Is this specificaly an issue for Illidan or is it likely to be for all heros? I think the issue is in RegisterItemSinkingPrevention not checking if the item is an artifact or not?

@SavanticIO I think you're completely correct. It's an issue for all heroes for sure.
In the C# version I changed the item sink code quite a lot. Previously it would detect hero deaths on water, then recreate all their items on shores. Now it instead marks all Artifacts as undroppable, and detects all hero deaths; when they're on land it drops their items, and when they're on water it drops their items on shores. I imagine that, indeed, we just need to make this behaviour only apply to Artifacts.


new-post: reana-client-python-api

closes https://github.com/reanahub/docs.reana.io/issues/23

Thanks Marco for the review(s)!

Maybe we can add in the introduction some example use cases of interacting with reana via Python? Thinking about the question from Sam, "why should I get to do this if I can just run workflows with reana-client?

Good idea, what could be the potential use cases which we could mention? I doubt that we should mention Recast integration? So I guess the only one which could be mentioned is some kind of lower level usage of REANA while writing custom python scripts?

Are we including a link to the jupyter notebook in the end?

In the end I have some doubts/questions about this. If we are aiming for jupyter notebook, what kind of text should we provide along the code snippets? Should it be the exact blog text copy or some kind of shorter version of it? Or no text at all? WDYT?

Good idea, what could be the potential use cases which we could mention? I doubt that we should mention Recast integration? So I guess the only one which could be mentioned is some kind of lower level usage of REANA while writing custom python scripts?

Maybe we can just keep it simple and mention that this might be useful to integrate REANA workflow submissions with other Python systems or to programmatically launch workflows under certain conditions instead of doing it manually.

In the end I have some doubts/questions about this. If we are aiming for jupyter notebook, what kind of text should we provide along the code snippets? Should it be the exact blog text copy or some kind of shorter version of it? Or no text at all? WDYT?

My idea was to have all the code with no text at all, only basic python comments if needed, to have something like e.g. https://github.com/ibm-et/jupyter-samples/blob/master/scikit-learn/sklearn_cookbook.ipynb. I'm not sure if this is feasible. due to access tokens though... but it might serve as a boilerplate.

Lovely! 💕 https://github.com/reanahub/blog.reana.io/blob/5e02431600c6ba4f3c2d70f26312aa77dedbcfb7/examples/ipynb/reana-client-python-api.ipynb
Just a reminder to update the publish date before merging.


build(dev-infra): update dev-infra to latest commit

The latest commit to dev-infra contains fixes for issues that were breaking
our performance benchmarks.

Changed the commit message type and fixed the chromium targets. The new version of dev-infra did break tests but we aren't building them as part of CI yet which is why it wasn't caught. If you try running yarn bazel run //test/benchmarks/material/checkbox:benchmark on master it'll fail because with the no such package 'packages/zone.js/bundles' error


docs: add Netbeans IDE Debugger configuration, instructions, and screenshot.

The Issue
Netbeans is a great open source IDE choice for working on Drupal and Symfony projects. It works well with XDEBUG using the Netbeans Debugger but there is not mention of configuration for it in the documentation. Only proprietary IDEs such as PHPStorm and Microsoft's Visual Studio Code documentation is available for DDEV.
How This PR Solves The Issue
Provides instructions and configuration to connect DDEV's XDEBUG to the Netbeans Debugger for step through debugging.
Manual Testing Instructions
Give it a try and/or proof read the instructions.
Automated Testing Overview
This is a documentation update. Automated code testing is no required.

Related Issue Link(s)
None
Release/Deployment Notes

Thanks, we had netbeans docs in there for several years... but nobody ever used it. Maybe it belongs somewhere besides the docs?

Oh, I was not aware of the history. I was just thinking it would be helpful or at least helpful for me :-) I am open to suggestions.

Have you been using Netbeans through the ages? Or newly discovered?

I have using it for a while since it became an Apache project. It has come a long way in the last few years and it feels like there has been a growing user base.

Would you mind making this a Stack Overflow question-and-answer instead of adding to the docs here? You just create a question like "How can I use NetBeans and Xdebug with DDEV", and write the question and then before submitting click the "Answer the question yourself". And of course you tag it as "ddev".
This will give you the ability to easily maintain/edit the answer, and directly support people who ask questions.
I did get it working, and did seem to need the INI file (unnecessary with anything else). Performance of Netbeans with its java setup was pretty sad (macbook air M1) compared to PhpStorm or vscode. You'd probably like vscode if you don't want to pay for PhpStorm, but you like what you have and that's fine!

No response yet, but happy to continue the conversation here or elsewhere. This is a valuable contribution for a very small audience, so let's put it where it will get great SEO and be easily findable with "ddev netbeans" on Stack Overflow. Please let me know if you need any help, and I'm happy to continue the conversation.

The last I checked, Netbeans has a user base of over 1 million but I am not sure how that compares to the others. Using JDK 11 or higher will give a lot better performance. I am not sure which version of JDK you tested with. Also, for the ARM processors, I recommend compiling from source using Ant to produce native binaries. Things tend to slow down a lot when using Rosetta to run x86 apps.
Anyway, I can understand the direction you are taking. I will post the instructions elsewhere as you suggested. Thank you so much for reviewing the issue.

Thanks so much for this contribution. Yes, I was testing on arm64, and the fact that they don't publish arm64 is a sign of things...
When you post, please add instructions about installing java, which caught me by surprise.
I used
$ java --version
java 20.0.2 2023-07-18
Java(TM) SE Runtime Environment (build 20.0.2+9-78)
Java HotSpot(TM) 64-Bit Server VM (build 20.0.2+9-78, mixed mode, sharing)

But IMO people shouldn't have to know that kind of thing.


When will evm cancun config be supported?

Motivation
Suggested Solution
support evm cancun config
Alternatives
none
Additional Information
none

Is this update planned?

This issue is addressed by #1563.

It is possible that I made a mistake somewhere, but I did apply the changes. I'll go through our node implementation again soon and confirm. Maybe it's a viem configuration issue.


Add support for different LFS url to vcpkg_from_git

Add an optional argument to the LFS keyword in vcpkg_from_git, so a different URL can be used. Update the documentation and tests.
Fixes #28593

The tests are failing on Windows because the agent image has an old version of Git LFS: 2.13.3 which is almost two years out of date. The test script needs the --force flag on prune, which is a feature that came in the next release (3.0.0). I also noticed that the macOS and Linux images don't have LFS installed.
I guess I can add a tool install for LFS, but that would only be there for testing.

The tests are failing on Windows because the agent image has an old version of Git LFS: 2.13.3 which is almost two years out of date. The test script needs the --force flag on prune, which is a feature that came in the next release (3.0.0). I also noticed that the macOS and Linux images don't have LFS installed.
I'm not sure how to fix this other than updating the VM images, which I don't know how to do.

@vicroms, could you please take a look?

@BillyONeal would it be possible to update Git LFS on our VMs?

@BillyONeal would it be possible to update Git LFS on our VMs?

We are deploying the copy that comes with Visual Studio. If the user needs a copy more recent than that I have serious concerns about being able to accept that in a port.

@BillyONeal This is just for testing. The scripts don't need anything more recent normally, but I can't implement a proper test without some newer LFS features. I could just disable that part of the test if the LFS version is too old, but then it's not automatically tested...

@BillyONeal This is just for testing. The scripts don't need anything more recent normally, but I can't implement a proper test without some newer LFS features. I could just disable that part of the test if the LFS version is too old, but then it's not automatically tested...

We don't have a means of restricting such a machine-wide configuration change to your test.

@BillyONeal I'm surprised that the vcpkg VM images are even using a two year old Git LFS version... The default Azure hosted agent images are up-to-date.
Does anything else in vcpkg even depends on LFS? I was under the impression that there was no support for it until it was added to vcpk_from_git.
But anyway if updating LFS is not an option, I can disable the test for older versions, or just abandon this PR.

I'm surprised that the vcpkg VM images are even using a two year old Git LFS version...

That's what comes with Visual Studio 2022.

The default Azure hosted agent images are up-to-date.

The default Azure hosted images contain everything under the sun because they are trying to maximize the likelihood of your build working. vcpkg's lab contains only what a developer is likely to have installed for themselves because we don't want ports silently depending on one of those external dependencies like one might find on the default Azure hosted images.

Does anything else in vcpkg even depends on LFS?

Intentionally? Probably not. But we invoke arbitrary user build scripts which could.

But anyway if updating LFS is not an option, I can disable the test for older versions, or just abandon this PR.

Or we could just wait until a version which does what you need has enough market penetration that we can confidently assume its presence.

@BillyONeal How does vcpkg even handle testing ports that require specific tooling if it can't be installed? I know that vcpkg acquires some programs automatically, but looking at the code it just asks you to install it yourself in many cases.
Maybe the oldest viable LFS version (3.0.0 from March 2021) can be installed instead of the latest one? But if you insist on waiting for LFS to be updated externally, then feel free to close this PR. I don't personally need this change, I just did it because someone asked for it and I thought it would be a quick and easy. I don't want to spend that much more time working on it.

How does vcpkg even handle testing ports that require specific tooling if it can't be installed?

It depends. But usually these days we probably wouldn't accept adding stuff like that to the curated registry. Ports are on the hook for being broadly installable with a "typical developer workstation". Seeing that we have something only for it to explode in your face is a bad experience.
The one big notable exception I'm aware of right now is CUDA, but pretty much every port that wants CUDA has that controlled by an optional feature. (And there, it isn't that we wouldn't solve the problem of getting what's necessary, it's that we are legally unable to under NVIDIA's license terms)

But if you insist on waiting for LFS to be updated externally, then feel free to close this PR.

I will confirm with other maintainers before going there. (Should know by ~Thursday)

@vicroms @dan-shaw @ras0219-msft @AugP @JavierMatosD and I discussed this today and came up with the following outcomes:

Because this feature doesn't break people who don't use it, we are happy to accept the new feature.
We do not want to modify our VMs to install unlikely-to-be-what-users-use copies of git.
We would accept the feature even if we can't test it right now; please include the test in a disabled form with a comment like "when (component) is available turn this test on"

Does that sound reasonable @DDoS ?

@BillyONeal Sounds good. I'm away for a week, so I'll make this change next Thursday or Friday.

@horenmar Can you test if these changes fix your issue (#28593)?
@vicroms I added a version check to the test. That way it should enable automatically when a suitable LFS version is available.

I will merge this closer to the end of the day. (Just don't want to push a merge conflict with the world while still processing today's changes)

Thank you!


add required min version of php to style.css

per https://github.com/afragen/github-updater#wordpress-and-php-requirements

@nathan-rollins as the assignee its up to you to review and merge this pull request in :-)


"We're out of data" message wrongly displayed

Hi! While classifying I get the "We're out of data" message displayed repeatedly. We're not out of data. Refreshing the page brings new videos for a while. I emptied my cache and started Firefox anew repeatedly. Is there any problem with the site?
I cannot say whether other people have the same problem, but we have suspiciously few classifications today.

Yes, it is a known problem which affects several volunteers in old projects.
It has been reported under PP https://github.com/zooniverse/planktonportal/issues/52 and then here: https://github.com/zooniverse/planktonportal/issues/31
@srallen was looking at that.
I was experiencing it very often (daily) for several months. I don't classify much lately so I can't tell whether something has changed for me.

Can it be that we are out of data for Cold Fire? (Or any other problem with this site?)

Error message: "Laden von gemischten aktiven Inhalten "http://zooniverse-demo.s3-website-us-east-1.amazonaws.com/projects.js?_=1462370978392" wurde blockiert." (Mixed content ...)
https://code.jquery.com/jquery-1.11.0.min.js (row 4, column 27353)

@AnLand the JQuery error has to do with a broken project listing in the footer. I'll have a deployed fix up shortly.
As for the 'out of data' message, this is a difficult issue for us to track, however, it looks like something is going wrong as there are 20,000+ active subjects across a couple of subject groups. I'll take a look this morning.

I've classified over 200 videos since Cold Fire ran out without running into the out of data message -- BUT, I can easily force the message to show up by refreshing the classification page a few times.  I would guess that the problem stems from the fact that Cold Fire's state is still active?
Side question: since we seem to often run into this bug when sites finish, could we possibly change the wording of the out of data message to suggest refreshing the page?

@srallen Yes, I thought that these are two different problems, but I'm only getting this single errror message. Videos from Restless Star and Dawn Bird are working apparently, but I did not have one from Cold Fire and the pattern of the "We're out of data" message looks like an attempted switch to Cold Fire that failed. But I cannot see an error.
Thanks for checking!

Fixed now.  Redis was slightly out of sync -- which becomes more of a problem when a group nears completion ("cold-fire").

Can you check the redis for Dawn Bird, I'm getting the out of data message again. Thanks!

@srallen @parrish Hi, we're having again the "We're out of data" message, but still active subjects. I suspect that it is Dawn Bird that is out of data. Could you fix the wrong display of the message please? Thanks!

Should be fixed now.

Looks good, thanks for the quick response!


Use long options too, to support "Tutoring — It should help you to learn the subject."

Long options are self-documenting and help greatly with learning. Per the goal of:

Tutoring — It should help you to learn the subject.

in the README.md file, I recommend that all cheatsheets include the GNU Long Options when available.
I tried with cht.sh/grep and didn't see any long options so not sure if other cheatsheets are already doing this.

Thank you! We will keep this in mind

Thank you! We will keep this in mind


tag makes a commponent fragment instance

http://developer.mozilla.org/zh-CN/docs/HTML/Element/header
child
`<header></header>`

parent
`<child class="my-class-name"></child>`

output
`<header></header>`
// with:
// [Vue warn]: Attribute "class" is ignored on component <app-header> because the component is a
// fragment instance: http://vuejs.org/guide/components.html#Fragment_Instance

if child use div ,every thing is ok
child
`<div></div>`

parent
`<child class="my-class-name"></child>`

output
`<div class="my-class-name"></div>`

Most likely it's not because of the , but because your parent contains another component as a root. Thy the following template for parent:
<child class="my-class-name"></child>
.

This is expacted - please read the fragment instance docs carefully.


GEOWAVE-372

Coverage increased (+0.04%) to 63.22% when pulling a59c6e4f9823afdf6f5dcd865ad77376c6559be9 on GEOWAVE-372 into 60bbef801f046a5ff8e39e2d4e6a9a28cc27abe8 on master.


Support for Symfony 4

I've tried to get this working on a symfony 4 project and it doesn't register the bundle, The commands are not available. I have managed to get other symfony 3 bundles to work in symfony 4, but with this one, its just not working.
Any help or assistance would be welcomed. If there are similar bundles that do work in symfony 4 I'd be interested to know, but after spending a while searching Google, nothing really seems to be developed for symfony 4 and data encryption.

Seems like a dead project.

Any chance of Symfony 4 version coming out?

The project is not dead, it has been gaining more traction lately. We are busy with adding unit testing and then we will try to fix issues

Hi, it works for me on a symfony 4 project, but I have a really strange bug:
Value is correct decrypted but its not unwrapped of HiddenString correctly. My workaround is to unwrap it manually in the getter of the object attribute.
Im using it out of the box with Halite.

I got this to work on Symfony 4.3 with the following:

composer require michaeldegroot/doctrine-encrypt-bundle

Add this line to the array defined in /config/bundles.php:
Ambta\DoctrineEncryptBundle\AmbtaDoctrineEncryptBundle::class => ['all' => true],

Create the config file:
config/packages/ambta_doctrine_encrypt.yaml
and add this to it:

ambta_doctrine_encrypt:
    encryptor_class: Halite # or Defuse
    secret_directory_path: '%kernel.project_dir%'

php bin/console cache:clear just to be safe

Then as docs state, add the @Encrypted() annotation to each property in your entity class that you want to encrypt:

    /**
     * @ORM\Column(type="text", nullable=true)
     * @Encrypted()
     */
    private $comment;

After an entity is persisted, the target field will contain encrypted data, something like this:
MUIEAO_g3d8wGWEGksntbQcyW3sWS3xy5d20yMWB5-LxopC8uNmv9lPjtSYeNW2M2Zk-66c0es5K_nYNP7UOKNkv99N0tBmjMobIY8ELHQk_r4NnlzFeeR4k3Uuxd1SRTSx_xsBCbmplGaLi36q9XJ_Qmxre6aqU04SeKCaXEwYLBHBFwqquo4I=<ENC>

I have not tested thoroughly, but did notice that it only seems to work with columns of type 'text.' Please let me know if I'm wrong about that.. I need something that will also encrypt int data.


word_tokenize not tokenizing strings containing ','

I tried
from nltk.tokenize import word_tokenize
a="g, a, b, c, 123, g32,12 123121 {1}"
word_tokenize(a)

Output I am getting:
['g', ',', 'a', ',', 'b', ',', 'c', ',', '123', ',', 'g32,12', '123121', '{', '1', '}']
Output should be
['g', ',', 'a', ',', 'b', ',', 'c', ',', '123', ',', 'g32',',','12', '123121', '{', '1', '}']

word_tokenize works only at the sentence level. So you'll have to split at the sentence level and the tokenize the sentences.

Are you concerned about "g32,12" staying as one token? Yes, this is in accordance with the rules that word_tokenize follows, and is consistent with other implementations of Penn TreeBank-style tokenization. Consistency across your NLP pipeline is often more important than the specific rules.

I'm interested in which regex causes that particular "non-split" though. I suspect it's the digits punctuation regex keeping the comma between numbers. It'll be good to know. Get back to you all in a while.

Oh of course, it's only when the comma is followed by a digit that it is
not split: '([:,])([^\d])' -> ' \1 \2'
Shrug. It's too rare a case to handle specially, isn't it?
The rule could instead be '([\d+][:,])([^\d])' but you really need a whole
lot of non-regression tests to make any change to a tokeniser.

Yes hard to maintain and not the true port of the sed TreebankWordTokenizer.
The chervon fix is an easy hack on top of it. And maybe these hacks has to been handled in a similar way.
But I do know of one type of counter examples where we would want the commas to be kept when the "token" is alphanumeric, e.g. propane-1,1,1-triol. With the existing word_tokenize, it does tokenize such tokens perfectly and personally I do like to keep this "featture/bug" =)

@satyammittal Thank you for raising this bug/feature!
I suggest chaining tokenizers to achieve your desired output. Hope this helps:
from functools import partial

from nltk import word_tokenize

punct_tokenize = partial(re.sub, pattern='([.,!?(){}]+)', repl=' \g<1> ', flags=re.U)

text = "g, a, b, c, 123, g32,12 123121 {1}"
expected = ['g', ',', 'a', ',', 'b', ',', 'c', ',', '123', ',', 'g32',',','12', '123121', '{', '1', '}']

word_tokenize(punct_tokenize(string=s)) == expected


Possible bug with vue-gtag (Reported by sentry)

If you are reporting a bug, please fill in below. Otherwise feel free to remove this template entirely.
Sentry issue: https://sentry.io/share/issue/c153585cc6c94f9f9ca96d3728dab9cf/
Description
An error keeps coming up saying that cant ready the property groups of undefined.
Expected behavior
This error should be handled by skipping action or trying again and should not return a TypeError.
Actual behavior
Crashes the library.
Environment
Run this command in the project folder and fill in their results:
npm ls vue-gtag<EMAIL_ADDRESS>Then, specify:

Operating system: Can check at sentry
Browser and version: Can check at sentry

I know I'm very late on this one but the sentry link is expired, do you still have this issue?
thanks for your feedback and sorry for the huge delay 🙏

I will close this issue due to inactivities, but please feel free to re-open it once there is a reproduction of the issue available.


not possible to build for production without ssl

there appear to be various places in lib/routes.js where is_production overrides config.url.ssl. This probably makes sense most of the time, but it makes building for production in an offline environment (w. no ssl option) difficult.
Not sure how or whether to address this.

I htink I may have a fix here: https://github.com/code-at-the-edge/jsbin/commit/f9fe4bda4872834a6ddc98c70eb8b07fb4cdc2bb
Not sure if you would want this code or not, though, given that ssl is a good idea in most circumstances.

Just to reiterate the other reply I posted, but I'm afraid this version of jsbin is not supported for development (only changes go in are critical bug fixes). V5 is where the development and support lives for now.

Jsbin v4 is no longer in development, nor is dev supported. When I finally get around to getting v5 to stable, it'll supercede and doesn't have these problems.


Retry failing write requests, add write-retries config (default=3).

This is especially useful for PersistentActors with bigger journals / more events to replay in case of write errors. But also for smaller journals write retries are probably what a user might expect / want, therefore the default=3 is chosen.
Refs #87

Thanks a lot for this contribution @magro, absolutely useful IMO.

I'll port this to the cassandra-3x branch.


Add .js file extension to import, to make importmap work out of the box

Fixes #35.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Martin Heide seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Makes sense, thanks for fixing that! Now released as v3.0.1.

@pimterry thanks, that was quick!
I can confirm that with v3.0.1 the importmap now works out of the box.


Implement Custom Functions

This will close #1059.
Todo:

[X] Add integration tests.
[X] Add closures to the formal grammar.
[X] Create an AST item representing closures.

[X] Implement Display for NamedClosure.
[X] Implement Node for NamedClosure.

[X] Parse closures.
[ ] Analyze closures.

[X] Error on invalid function calls (e.x. insufficient arguments).
[ ] Do much of the stuff the assignment resolver has to do, I assume. (If possible consider extracting code.)

[ ] Evaluate closures to functions.

[ ] Handle capturing of context properly.
[ ] Figure out how and whether to handle backticked closures.

[ ] Properly shadow built-in functions.
[ ] Evaluate closures as functions via a new thunk variant which defers knowledge of its function.
[ ] Add documentation for closures.
[ ] Implement proper error UI for closures.

[ ] Invalid calls should fail at compile time.

@casey (or others), thoughts on whether it should be possible to have a user function with the same name as a variable? There shouldn't be ambiguity because we don't have support for first class functions, so you can never have a closure object in an expression position. Also, right now you can have a variable with the same name as a built in function:
os := "nintendo 3ds"

foo:
  echo {{os}}
  echo {{os()}}

so maybe for consistency the same should be true of user functions.
On the other hand, if there's ever a desire for first class functions, I guess it would break backwards compatibility if we don't implement this restriction now.

Good question! I think we should disallow having variables and functions with the same name. It's easier to remove restrictions than it is to add them, and just tries very hard to be backwards compatible.

I guess my opinion is that it feels weird to have different restrictions here for built-in and user functions, and if you ever want first-class functions (or any other feature that requires disambiguation between variables and functions) there'd already need to be a breaking change for built-in functions. Just my two cents, I'll obviously go with what you decide.

Ah, also, here's a related issue: what is the proper behavior for redefining builtin functions? Either this is an error, in which case it becomes a breaking change to add any new builtin function, or the user function masks the builtin function, which probably is at least slightly error-prone. Presumably the second option is best, but we raise a warning?

I guess my opinion is that it feels weird to have different restrictions here for built-in and user functions, and if you ever want first-class functions (or any other feature that requires disambiguation between variables and functions) there'd already need to be a breaking change for built-in functions. Just my two cents, I'll obviously go with what you decide.

Ahh, right, I missed the fact that you can currently shadow built-in functions. In that case, we should do what you suggest, and allow functions and variables to have the same name.
It might be nice in the future to fix that, to allow first-class functions, at which point I'll probably introduce an edition system like Rust's, where you can do something like set edition := 2022 and opt into a set of changes that would otherwise be breaking.

Ah, also, here's a related issue: what is the proper behavior for redefining builtin functions? Either this is an error, in which case it becomes a breaking change to add any new builtin function, or the user function masks the builtin function, which probably is at least slightly error-prone. Presumably the second option is best, but we raise a warning?

Hmmm, also a good question. Let's allow user-defined functions to shadow built-in functions. What do you think about no warning? It would be annoying if your old justfiles started to give warnings because a new built-in function was introduced.

Yeah, that makes sense. I don't think it's a huge deal I just think it might lead to confusing behavior in sufficiently large justfiles. No warning is fine though.

I think we'll end up having to dispatch functions at evaluation time.
Here's the issue: in order to parse a call to a Thunk, you want to know whether the call is of a built-in or user-defined function, but at parse time you don't yet know all of the user-defined functions, so in particular I can't see how to implement shadowing properly. There are a couple local solutions I can see:

when a closure is parsed, go back through all previously-parsed Thunks and turn ones with matching names into Thunk::Users. This is pretty obviously not desirable IMO.
Change the shadowing rules such that e.x.

foo := os()
os() := "not linux"
bar := os()

default:
  echo {{foo}}
  echo {{bar}}

echoes
linux
not linux

This is probably a more standard solution, but seems undesirable for a language like just; I kind of think you want order of symbols in the file to be mostly irrelevant. It also requires that you pass some kind of parsing context to the function parser. I could see an argument for this though.
The other solution, which I guess I prefer right now, is to parse a call into an object like
struct Call<'src> {
  name: Name<'src>,
  args: Vec<Expression<'src>>,
}

Then we'd make the analyzer responsible for checking existence of the function and argument count, with the evaluator responsible for dispatching the call to either the rust code of the builtin function or the just code of the user function.

This is probably a more standard solution, but seems undesirable for a language like just;

We definitely want to avoid this. Just resolves all symbols at compile time, and the order of all symbols (recipes, variables, settings, etc) does change execution or meaning.

The other solution, which I guess I prefer right now, is to parse a call into an object like
struct Call<'src> {
  name: Name<'src>,
  args: Vec<Expression<'src>>,
}

Then we'd make the analyzer responsible for checking existence of the function and argument count, with the evaluator responsible for dispatching the call to either the rust code of the builtin function or the just code of the user function.

I think this is the way to go, move function call resolution out of the parser and into the analyzer. The analyzer can then resolve function calls because it has full information.
I think it's just currently a quirk of the fact that there are no user-defined functions that the parser currently resolves them.

Just updating you, I haven't disappeared, just got busy. Should have time to work on this around Wednesday.

No worries, this is a big feature! No rush.

Is it Wednesday yet?

Is it Wednesday yet?

We're all just like, unpaid nerds on the internet, working on this, so it may take many Wednesdays for any particular feature to be implemented.

Is it Wednesday yet?

We're all just like, unpaid nerds on the internet, working on this, so it may take many Wednesdays for any particular feature to be implemented.

and I'm just like, asking for an update. you know? like, no pressure 🤷♂

This has gone pretty stale. Feel free to reopen!


gh #14 dsVideoPort Test Specification Documentation

Create a Device Settings Video Port Test Specification Documentation

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: hari22yuva:x: bhanucbpYou have signed the CLA already but the status is still pending? Let us recheck it.


[carry 23482] Update inspect reference

Carry of https://github.com/docker/docker/pull/23482; rebased (the "usage" output was already updated for 1.12)
Also touch up headings.

LGTM (original PR was already LGTM'd)


Split requirements based on python version

Creating a python 3 virtualenv with requirements/dev.txt fails because some packages are not python 3 compatible. To fix that, I have made files py2_dev.txt and py3_dev.txt.
We will eventually need to do this since some packages are re-written in python 3 with a different name instead of supporting both versions (like pydns and py3dns, python-ldap and pyldap). py3_dev.txt also includes mypy.
py3_dev.txt is missing some packages, like pipeline, but that will get fixed in the future when we upgrade our dependencies.

Automated message from Dropbox CLA bot
@sharmaeklavya2, it looks like you've already signed the Dropbox CLA. Thanks!

This PR includes the first 2 commits from #1161, since this PR wasn't possible without upgrading six.

OK, yeah, given the fact that package names do differ between Python 2 and Python 3, this makes sense, so I've merged it.  Thanks for remembering to update the documentation as well!


Update zstd and bzip2 function signatures

Some functions relating to ztd and bzip2 compression on variables were added in netCDF 4.9.0 so I updated their function signatures to not show up for earlier versions (the netcdf-sys/src/filter.rs module is already enabled with #[cfg(feature = "4.8.0")]).
Additionally, a couple of zstd functions had wrong signatures, so they are updated here.

Thanks for catching this @richli


issue#30

We can not do once again a broadcast inside same event where we are, it might break someone flow.
Also it is what I had wrote in #30

Closed explained on related PRs


Can not create connection to MongoDB version 3.4.0

Was not able to create connection

client = mubsub("#{env.mongodb_url}/mubsub")
channel = client.channel('alerts', {size: 10000, max: 100})

Was able to connect after retryInterval and recreate options were remove in lib/channel.js

+1

+1

Duplicate of https://github.com/scttnlsn/mubsub/pull/55 (merged)


Add Travis CI build

@bvssvni I can't really test this, but I thought I'd at least try to contribute a starting point.  Can you take it from here?  I added links to other .travis.yml's that I think you can just copy the install steps from.
TODO

[ ] sdl2 dependency
[ ] sdl2_mixer dependency

Will do. Merging.


Remove Dependency on SWALint Outside of Testing

Fixes #143
Please try again with this version, @sinnaj-r.

Fixes #143
Please try again with this version, @sinnaj-r.

Thank you, I will try once the smalltalkhub.com Servers are online again.
(And allow me to install Metacello on my fresh image) ...

Is smalltalkhub back up again? I can ping it, but the website does not load. The missing web ui seems to be on purpose according to some mailing list entries.

Is smalltalkhub back up again? I can ping it, but the website does not load. The missing web ui seems to be on purpose according to some mailing list entries.

At least on my machines I can't install Metacello on an fresh Squeak Image.
I get stuck here:

Maybe @phlprcks, @kej-jay or @robertkirsten can confirm ?
(Steps: Download Squeak from Website for your platform; In the Setup-"Popup" tick the Git Support-Checkbox, run the Installation)

Is smalltalkhub back up again? I can ping it, but the website does not load. The missing web ui seems to be on purpose according to some mailing list entries.

At least on my machines I can't install Metacello on an fresh Squeak Image.
I get stuck here:

Maybe @phlprcks, @kej-jay or @robertkirsten can confirm ?
(Steps: Download Squeak from Website for your platform; In the Setup-"Popup" tick the Git Support-Checkbox, run the Installation)

I am stuck (probably) at the same point, however the error message suggests that there is a load conflict with the existing BaselineOfSton
Is that the same error you were receiving, @sinnaj-r ?

Is smalltalkhub back up again? I can ping it, but the website does not load. The missing web ui seems to be on purpose according to some mailing list entries.

At least on my machines I can't install Metacello on an fresh Squeak Image.
I get stuck here:

Maybe @phlprcks, @kej-jay or @robertkirsten can confirm ?
(Steps: Download Squeak from Website for your platform; In the Setup-"Popup" tick the Git Support-Checkbox, run the Installation)

I am stuck (probably) at the same point, however the error message suggests that there is a load conflict with the existing BaselineOfSton
Is that the same error you were receiving, @sinnaj-r ?

I have the same problem as @phlprcks.

Please install the SWALint conditionaly in Postload:
https://github.com/hpi-swa-teaching/Algernon-Launcher/blob/ed898cd371d77a446fde60754a05234cbd33303a/packages/BaselineOfAlgernon.package/BaselineOfAlgernon.class/instance/postLoad.st#L3

Please install the SWALint only when it's needed in Postload:
https://github.com/hpi-swa-teaching/Algernon-Launcher/blob/ed898cd371d77a446fde60754a05234cbd33303a/packages/BaselineOfAlgernon.package/BaselineOfAlgernon.class/instance/postLoad.st#L3

Apart from that when I e.g. comment out that line it's working and I get no deprecation warning 👍


feat(relay): connect to portal on startup

With this PR, the relay can be configured with a WebSocket URL on startup. If given, it will attempt to connect to it and join the relay room with its stamp_secret. Once the init message is received, regular relay operation will begin.
To connect to the portal, I copied @conectado's PhoenixChannel struct and introduced it as a dedicated crate in the rust workspace. I modified it to better fit the relay's architecture.

To connect to the portal, I copied @conectado's PhoenixChannel struct and introduced it as a dedicated crate in the rust workspace. I modified it to better fit the relay's architecture.

I think having some duplication here for now is fine. I don't expect connlib to directly use this crate. Long-term, my suggestion would be to settle on a poll-based design for such low-level components because they compose better than channels: State machines can always easily be built on top of each other where as channels need activate tasks that drive them.

To connect to the portal, I copied @conectado's PhoenixChannel struct and introduced it as a dedicated crate in the rust workspace. I modified it to better fit the relay's architecture.

I think having some duplication here is fine for now. I don't expect connlib to directly use this crate. Long-term, my suggestion would be to settle on a poll-based design for such low-level components because they compose better than channels: State machines can always easily be built on top of each other where as channels need activate tasks that drive them.

Yeah I agree, it's probably the better approach for these reusable components specially.
Also agreed on keeping the duplication for now.

Can't comment on the Rust specifically

I think you are only triggered as a reviewer because it touched .github/workflows and you are a code owner of those. I've now split these changes out into separate PRs :)

Re: polling vs WebSocket -- we've gone back and forth on this, eventually settling on WebSocket to make state management simpler for the control plane. There will restrictive or otherwise misbehaved firewalls out there that block WebSocket (UDP as well, so no QUIC); encountering those will likely be the impetus to build a poll-based fallback. Hopefully we never hit this, but appreciate you thinking ahead architecture-wise here!

For what we currently need between relay and portal, a simple POST request would also suffice but I do get the forward-thinking that we may want to push (configuration) changes whilst the relay is operating. This actually makes me think, do I need to keep the websocket open @AndrewDryga?
Currently, I am closing it once I received init.

This actually makes me think, do I need to keep the websocket open @AndrewDryga?
Yes, we also use WebSockets (Phoenix Channels specifically) to keep track of online relays. The relay will not be used unless it has an active connection to the portal.

Yes, we also use WebSockets (Phoenix Channels specifically) to keep track of online relays. The relay will not be used unless it has an active connection to the portal.

With the latest commit, the channel is now kept-alive during operation.


Support rebuilds

Fixes #18

@chrisjsewell I'm aiming to push a release tomorrow night around 10:30PM EST.

I'm aiming to push a release tomorrow night around 10:30PM EST.

Cool cheers
If you don't mind I added a pre-commit config to the repo, and run the black CI via that (there's some other commented out checks you might consider adding)

I'm also running the tests via tox.
I can add the tox.ini if you want?
Basically both pre-commit and tox and super useful for not having to manually set up a development environment; you just run either and it will do it for you

Sure! I'm open to the tox file.

Could you add a dirhtml test case

Done 👍
I figured out something a bit annoying; sphinx doesn't clean the build folder in-between each test.
Hence, the addition of the shutil.rmtree at the start of these rebuild tests

Yeah I just noticed that while working on the other open pr. I'll make an issue as we should clean the build folder before every test.

Yeah I just noticed that while working on the other open pr.

Yeh I guess just make a new fixture:
@pytest.fixture()
def app_clean(app):
    if Path(app.outdir).exists():
      shutil.rmtree(Path(app.outdir))
    yield app

(or clean after)

The dirhtml test is using the html builder.

Ooops my bad 🤦

LGTM. This will get merged in tomorrow.

Brilliant, thanks for the great extension 😄


JavaScript: Add concrete syntax examples to JSDoc, RegExp, Tokens, Variables and XML.

I think this covers most of the remaining AST classes, except for TypeScript.

Comments addressed.


[webapi][XWALK-3390] Update tests to fix bug

Impacted tests(approved): new 0, update 2, delete 0
Unit test platform: [android]
Unit test result summary: pass 2, fail 0, block 0

Update tests to fix bug

It is not a good message; please summarize the real issue.

These are 2 tests from W3C; why not fix them in W3C repo and then integrate back?

Add setup parameter just to suit testkit-lite tool, I think W3C tests do not need this.

Can you explain more details why this update makes testkit-lite happy while W3C doesn't need it?

Because these tests can get pass on chrome and tizen IVI, but get block on android, after adding setup parameter then get pass on android by testkit-lite.

Please sync with W3C tests.


Add singleton

Also added some stuff for travis builds, if you want it.

Reverted my Show change for now so we can just get singleton in :stuck_out_tongue:
The ShowAtom idea looks worth exploring though for sure.

:+1: Thanks!


Add some missing newlines between import sections

Builtin, third party, and first party are all supposed to have a newline between
them. Most of the codebase was doing this, but some had snuck through. This
updates those ones to follow the coding style. These are caught by recent
changes in the code style checking plugin making it more strict / accurate.

Thanks @cmaloney! Merged.


PostgreSQL < 9.4 not supported

Running holoclean with a postgreSQL version < 9.4 generates the following error:
ERROR setting up domain: For table: pos_values (psycopg2.ProgrammingError) syntax error at or near "WITH ORDINALITY"
LINE 1: ...y(regexp_replace(domain,'[{""}]','','gi'),'|||')) WITH ORDIN...
^
This occurs in domain.py, function store_domains (ll. 57-66). The table pos_values is not created during the store_domains call which breaks the code.
Cause of the problem is that the "with ordinality" was introduced to postgres first in version 9.4; I can only work with 9.2 at the moment, though.
My quick workaround uses the following query instead of the one in l. 64 (domain.py) in order to create pos_values (based on this stackoverflow answer:
query = "select *, row_number() over (partition by vid, cid, tid) as val_id from (select vid, cid, tid, attribute, rv_val from (select *, unnest(string_to_array(r
egexp_replace(domain,'[{""}]','','gi'),'|||')) as rv_val from %s as placeholder_1) as placeholder_2) as placeholder_3" % AuxTables.cell_domain.name
the SQL part in better readable formatting:
"select *, row_number()
over (partition by vid, cid, tid)
as val_id
from (select vid, cid, tid, attribute, rv_val
from (select *, unnest(string_to_array(regexp_replace(domain,'[{""}]','','gi'),'|||'))
as rv_val
from %s)
as placeholder_2)
as placeholder_3"

Hi @pmaetzig thank you very much for your interest in holoclean and for digging deep into this issue and coming up from a solution.
We are currently relying on the features in newer versions of postgresql because they provide necessary optimizations especially in joins.
I understand that you might be limited to a particular version of postgresql. If it is possible for you to use dockers, I suggest starting a postgres docker instance with the latest postgres version 11 as follows
docker run --name pghc \
    -e POSTGRES_DB=holo -e POSTGRES_USER=holocleanuser -e POSTGRES_PASSWORD=abcd1234 \
    -p 5432:5432 \
    -d postgres:11

and you can use docker start pghc and docker stop pghc  to start/stop the container.
You can find details about this image here.

Thanks, I was just sharing it in case someone runs into a similar problem and -- as you said -- if someone else is restricted to some older version of postgres. One thing that would be helpful is referencing the optimal postgres version in the readme.
I will try using the docker solution, thanks!

@pmaetzig Please let us know of your experience with docker. More than happy to help in case of any issues.

Hi, sorry for the late update -- docker is not an option with my current setup. The most viable solution would be to get an upgrade of postgresql working. When I tried on another machine with an updated version of postgres, this issue did not occur any more.
What else could be affected by using an older postgresql version, potentially?

I've managed to upgrade to postgresql 9.4, this fixes the issue as expected. I don't know of any other bugs that occur because of an older postgres version, but this issue can be closed in my opinion.

Thank you Paul for your feedback... One other alternative instead of dockers is to install a local copy of postgresql form its sources. This would be just like any local program.


Adds ability for IDs to be passed as button prop

What does this PR do? (please provide any background)
Allows ID to be passed as a prop
What tests does this PR have?
Add one to check for ID
How can this be tested?
run the docs grunt docs and run the unit tests npm test
Screenshots / Screencast
What gif best describes how you feel about this work?

[x] I have checked our general contributing document and the project specific contributing document (if present) and I'm happy for this to be reviewed.

Reviewers
Review 1

[ ] :+1:

Review 2 *

[ ] :+1:

Review 3 (optional)

[ ] :+1:

By adding a +1 you are confirming you have...

Witnessed the work behaving as expected (this could be on the author's machine or screencast).
Checked for coding anti-patterns.
Checked for appropriate test coverage.
Checked all the tests are passing.

*  for HX this review must be completed by an SE, SA or Project Guru

taking :one:

Other than minor comment on releasing :+1:

Whoops, forgot that. Will correct.

@jodiedoubleday corrected it

Looks good to me :+1:


Feature/align dart facing interfaces

Creates the EndpointConfiguration builder and the MockzillaConfigurationBuilder to align with the kotlin interfaces.
Worth noting I wasn't sure on default responses for the builders, and how we might want to document the methods (or if they need documentation at all). It might be helpful for a user if they can see a reference to the EndpointConfig model.

@TomRHandcock  @JordanllHarper did you ever discuss whether you need to use a builder pattern here? It doesn't feel very darty to me and you could achieve the same thing with named parameters.

Think the purpose of sticking with the builder pattern is to align with the other platforms.

Yeah I think that's fair enough, although in theory if this project exists outside of the scope of apadmi some people will be using it only for flutter

@JohnKay89 Yep that is a strong point, you don't really see builders too much in Dart, I suppose cascade operators have it covered as part of the language.
@JordanllHarper With that in mind maybe we could forgo the builders and on MockzillaConfig just expose a nice constructor and a setter method to add endpoints the the underlying list that takes advantage of the cascade operator?

@JordanllHarper I'm on expert on Git but it looks like you re-wrote the history on this branch with that force push. It doesn't look to have caused any problems though. Just so you're aware, if you make changes to the models you'll need to run the code generation as (from what I gather), in Flutter libraries, it is common practice to commit the pre-generated code. Supposedly this is to lesser the burden on consumers.

TomRHandcock I did a rebase and force pushed that. I didn't know about the need for generating files, but that makes sense so that the client doesn't need to initiate that themselves. Hopefully that latest push will work 🤞


Remove atom-space-pen dependence

the space-pen-views package is depreciated, and the wordcount doesn't really need that functionality. Would also make the package lighter in terms of size and startup time.

Sounds like a solid idea, PR welcome :)
On Wed, Apr 20, 2016 at 1:06 PM, mangecoeur<EMAIL_ADDRESS>wrote:

the space-pen-views package is depreciated, and the wordcount doesn't
really need that functionality. Would also make the package lighter in
terms of size and startup time.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub
https://github.com/nesQuick/atom-wordcount/issues/62

fixed with #63


refactor: source "afterInitConfig" using nvim_exec2

I think "neovimConfig" is not a good name, as users may be confused about its difference with "init.lua". Let's use "after" for now. And I intentionally chose "after" because I want this option to only serve as a supplementary option for simple setup, such as for temporary development environments like codespaces.


Documentation is printed in REPL as single string

When documentation is printed in the REPL using Ctrl-, d, the documentation is printed as a single string. The auto pretty-print setting does not affect the behavior of this problem, nor does doing a manual pretty-print. Printing code with Ctrl-, c works as expected, and manually calling clojure.repl/doc in the REPL works as expected.
I'm not sure if this is a Proto REPL issue or something misconfigured in my environment. I didn't always have this problem, but I'm also not sure when this started because I updated Atom and Proto REPL several times without working on any Clojure code. I'm happy to provide any additional information you might need.
Screenshot of Problem

Current Environment

Arch Linux
Atom 1.7.1
Proto REPL 1.1.8

This seems to be related to the call to with-out-str in proto-repl.coffee line 570. I've tested removing the call to with-out-str in dev mode and can confirm that printing documentation begins working as expected.
While removing the call fixes my observed issue, I don't know the code well enough to know if simply yanking it would cause other problems.

Fixed this in latest commit.


Add scale-ci-watcher job

This commit:

Adds a template, build script and properties file for scale-ci-watcher
to create/update the jobs. This job is enabled by default and also can
be kicked off at anytime to update the jobs when a change gets commited
into the scale-ci-pipeline repo.
updates readme with the status.

@akrzos the scale-ci-pipeline repo clone is managed by git plugin now. PTAL. Thanks.


Remove student school year association from interventions

Issue

Progress toward #611.

There's not much feature-side code to change here because Interventions are only called on in the Student Profile page via serialize_intervention, which doesn't include school year or student school year in its serialization.


Release master branch to pypi

It looks like the last version on PyPI has been published 2 years ago and there have been many changes in the code since.
It would be helpful if you could release the latest changes.
PS since the project is already using GH action for testing, it may be helpful to set up GH actions for release as well.
https://packaging.python.org/en/latest/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/
https://github.com/marketplace/actions/pypi-publish

Thank you for your message!


Allow checkbox elements with custom index

Allow checkbox elements with custom index

CLA should be signed now.

@mansurs
Please add also an unit test to illustrate the problem.

It seems that the problem is fixed. We are coming from 1.11.3 version and we had a problem with. Sorry to bother. I will close the PR

Sorry to bother.

No problem. Thanks for the feedback.


Make CBMC proofs more readable

Currently, the CBMC annotations in the code are difficult to read and confusing to readers. For example:
#define poly_decompress KYBER_NAMESPACE(poly_decompress)
void poly_decompress(poly *r, const uint8_t a[KYBER_POLYCOMPRESSEDBYTES])
/* *INDENT-OFF* */
__CPROVER_requires(a != NULL)
__CPROVER_requires(__CPROVER_is_fresh(a, KYBER_POLYCOMPRESSEDBYTES))
__CPROVER_requires(r != NULL)
__CPROVER_requires(__CPROVER_is_fresh(r, sizeof(poly)))
__CPROVER_assigns(__CPROVER_object_whole(r))
__CPROVER_ensures(__CPROVER_forall { unsigned k; (k < KYBER_N) ==> ( r->coeffs[k] >= 0 && r->coeffs[k] < KYBER_Q ) });
/* *INDENT-ON* */

void poly_decompress(poly *r, const uint8_t a[KYBER_POLYCOMPRESSEDBYTES])
{
    #if (KYBER_POLYCOMPRESSEDBYTES == 128)
    for (int i = 0; i < KYBER_N / 2; i++)
        __CPROVER_assigns(i, __CPROVER_object_whole(r))
        __CPROVER_loop_invariant(i >= 0)
        __CPROVER_loop_invariant(i <= KYBER_N / 2)
        __CPROVER_loop_invariant(__CPROVER_forall { unsigned int k; (k < i) ==>
                                 ( r->coeffs[2 * k]     >= 0 && r->coeffs[2 * k]     < KYBER_Q &&
                                   r->coeffs[2 * k + 1] >= 0 && r->coeffs[2 * k + 1] < KYBER_Q ) })
        __CPROVER_decreases(KYBER_N / 2 - i)
    {
        // REF-CHANGE: Hoist scalar decompression into separate function
        r->coeffs[2 * i + 0] = scalar_decompress_q_16((a[i] >> 0) & 0xF);
        r->coeffs[2 * i + 1] = scalar_decompress_q_16((a[i] >> 4) & 0xF);
    }

    #elif (KYBER_POLYCOMPRESSEDBYTES == 160)
    const int num_blocks = KYBER_N / 8;
    for (int i = 0; i < num_blocks; i++)
        __CPROVER_assigns(i, __CPROVER_object_whole(r))
        __CPROVER_loop_invariant(i >= 0)
        __CPROVER_loop_invariant(i <= num_blocks)
        __CPROVER_loop_invariant(num_blocks == 32)
        __CPROVER_loop_invariant(__CPROVER_forall { int k; k >= 0 && k <= (8 * i - 1) ==>
                                 ( r->coeffs[k] >= 0 && r->coeffs[k] < KYBER_Q )})
        __CPROVER_decreases(num_blocks - i)
...

[ ] Introduce some abbreviations for the various __CPROVER macros to make them less daunting to read.

In addition to plain abbreviations for __CPROVER_xxx, one could also introduce macros for repeating bounds conditions like _CPROVER_forall { int k; k >= 0 && k <= (8 * i - 1) ==> ( r->coeffs[k] >= 0 && r->coeffs[k] < KYBER_Q )} above.

I will try to write some sort of proposal for this. I think the names should be as short as possible, but without causing any name-clashes, overloading or ambiguity.
Question: Should we go for lower-case, UPPER-CASE or Mixed?
e.g
__CPROVER_requires()
becomes
REQUIRES()
or
requires()
or
Requires()
I can see pro's and cons to each. Let's discuss.

I will have a draft proposal soon.


Change Margin Color on Line Number

hello jacob, is scintillaNet have a capability to change margin color on line number feature?

See issue #204 and others.


Update DOCKER INSTALL subsection

What should we add?
The commands for running the covalent container as a developer environment and as a dispatch server do not work due to incorrect name for the image. We need to change covalent to the repository name or vice-versa.
See affected commands:

# Run the container as a developer environment
docker run -it --rm covalent bash  # for ex., replace 'covalent' with 'public.ecr.aws/i9y7r1d8/covalent' or image ID

# Run the container as a dispatch server
docker run -d -p 48008 covalent # for ex., replace 'covalent' with 'public.ecr.aws/i9y7r1d8/covalent' or image ID

Closing this issue because ECR image name has been updated in Docker install subsection.


Feature request: Quiet / no-dialog mode

I would like to suggest a parameter that suppresses all dialogue windows (and possibly drops the requirement for wx), e.g. for automated exports via terminal invocation.
I have a KiCad 7.08 PCB that uses a custom drawing sheet defined via File>Page Settings>Drawing Sheet File as ${TEST1}\test_sht.kicad_wks.
TEST1 is defined in KiCad's Main window > Preferences > configure Paths... as the sht subfolder in my project directory by an absolute path (but could point anywhere else). The sht folder contains the test_sht.kicad_wks drawing sheet (see attached test1.zip file).
If I open the PCB directly in KiCad, no warning or dialogue is shown and the drawing sheet is displayed.
If I export the PCB to an ibom via
"C:\Program Files\KiCad\7.0\bin\python.exe" "C:\Users\xyz\Documents\KiCad\7.0\3rdparty\plugins\org_openscopeproject_InteractiveHtmlBom\generate_interactive_bom.py" "TestProj.kicad_pcb"

I get an error in the terminal "E r r o r   l o a d i n g   d r a w i n g   s h e e t .", but also a dialogue box

Since I am trying to automate my exports using kicad-cli and would also like to automatically generate the ibom without user interaction, this is a bit of an issue, since the export stops.
I think that the dialogue comes from the function call in line 20 in InteractiveHtmlBom/ecad/kicad.py: self.board = pcbnew.LoadBoard(self.file_name)  # type: pcbnew.BOARD , so I'm not sure whether the ibom script has any control over this. If the dialogue could be suppressed, this would be great.
The test project that demonstrates the issue is included in the attached zip archive:
test1.zip
Thanks for considering and for this very useful project.

Yeah, that is coming from kicad and not the plugin, I don't have control over it.
You should report this to kicad bug tracker, using pcbnew bindings outside of kicad should not be throwing dialogs.
As a workaround, you should be able to define an environment variable (you can do it in a batch script) with same name/value as your kicad path variable, it should be picked up and the worksheet will be found.

Thanks for the hint about the environment variables, it seems to work for the issue at hand.
As suggested, for a more general solution, I created issue #15948 in the KiCad bugtracker to request dialog suppression when running scripts outside KiCad or a quiet mode option for this use case.


Custom Favicon

Is your feature request related to a problem? Please describe.
Allow use of own Favicons
Describe the solution you'd like
Use /vis.0/favicon.png from Filemanager if it exists

Please check if the issue is still relevant
Yes i think so.


Changes in the old design system that haven’t been migrated to the new system

These are the merged branches from the recent changes to the 'old' design file. Some of them may be merged. This is an overall list so we can iterate through them and if needed, build them into the new DS.

1995 CC Portal Link #1995
1758 1769 #1758 #1760
1852 Voltaire to Cardano #1852
1852 Sancho to Cardano #1852
1708 Network banner #1708
1600 Hard Fork #1600
1128/1129 #1128 #1129
908 #908
908.1 #908.1
917 #917
911 #911
987 #987
Github issue 901 #910

To clarify, most of these have been closed in GitHub, but this issue is to check the new Design system and backfill these changes, if necessary.


Fix/empty labelselector

Description of your changes
Currently the function does NOT request a resource when a fieldPath was specified as optional and no other labels have been chosen.
This specifically intended behaviour is kept and a flag is added which tracks if optional fields were not found.
If not the matchLabels is added even if it is empty.
Also an appropriate test was added
Fixes #21
I have:

[x] Read and followed Crossplane's contribution process.
[x] Added or updated unit tests for my change.

looks like CI got stuck, I'll try closing and reopening this PR.

sorry. did not notice the complexity lint error. I will try to fix it later.

@phisco this should do it. my version of golangci-lint also detected a dangerous kind of integer conversion which I also fixed.


refactor: show error message for missing TRASH folder

required in case a user does not have a TRASH folder configured. Operations for emails that are about to get removed from the mailbox throw an error instead.


GetPip is currently broken

With a GetPIP component on the form compilation results in the following error

[dcc64 Error] E1026 File not found: '....\resources\getpipscript.res'

Removing the GetPIP (fairly obvioously) resolves the issue BUT this means that dev created GetPIP will also fail
I have changed my PYTHONENVIRONMENTDIR (new Delphi, fresh build of all components)

You must compile all components instead of only linking to its sources. All the .res files are build at projects compile time.

All components are installed using the following steps

Double-click on [repo].groupproj
Build All (Win32 Release)
Install Components (Win32 Release)
Build All (Win32 Debug)
Build All (Win64 Release)
Build All (Win64 Debug)
Open Tools -> Options -> Language -> Delphi -> Library
Add new Library Path(s) (lib/Win64/release)
Add new Debug DCU Path(s) (lib/Win64/debug)
Add new Library Path(s) (lib/Win32/release)
Add new Debug DCU Path(s) (lib/Win32/debug)
Close Delphi without saving project (so it opens as Win32 if you need to do it again)

This process is repeated for each of the five repos = 60 steps in total - see, needs instructions :)

Presumably you got it working out, right?

But with the above steps which should be those required for proper installation GetPIP  throws the above error
Maybe adding the source directory will resolve the issue? Not a very elegant solution though...

As you need to set a path to the lib folder, you definitely need to set a path to the resource folder. How would the linker find the respective .res file to embed it to the executable file?

Wasn't sure if it was needed or not
Which entry Browsing Path I guess?

Library path.

Doesn't your Enable Python IDE thing do this too?
i.e. either add e.g. [D:\Delphi\Components\PythonEnviroments\src\AddOn] to Library or select Enable Python from the project menu?

Works again nicely now - thx


[DO NOT MERGE]coverage test

Test meaning of relevant lines..

Pull Request Test Coverage Report for Build 94138

0 of 0   changed or added relevant lines in 0 files are covered.
1784 unchanged lines in 243 files lost coverage.
Overall coverage decreased (-5.0%) to 73.895%

Files with Coverage Reduction
New Missed Lines
%

/libraries/Adapters/Microsoft.Bot.Builder.Adapters.Facebook/FacebookAdapter.cs
1
94.85%

/libraries/Adapters/Microsoft.Bot.Builder.Adapters.Facebook/FacebookAdapterOptions.cs
1
86.67%

/libraries/integration/Microsoft.Bot.Builder.Integration.ApplicationInsights.Core/ApplicationBuilderExtensions.cs
1
71.43%

/libraries/Microsoft.Bot.Builder.AI.LUIS/LuisApplication.cs
1
96.36%

/libraries/Microsoft.Bot.Builder.AI.LUIS/V3/LuisApplication.cs
1
96.43%

/libraries/Microsoft.Bot.Builder.AI.LUIS/V3/LuisUtil.cs
1
96.35%

/libraries/Microsoft.Bot.Builder/BotStateSet.cs
1
85.0%

/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/BaseInvokeDialog.cs
1
87.5%

/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/Case.cs
1
84.62%

/libraries/Microsoft.Bot.Builder.Dialogs.Adaptive/Actions/EditActions.cs
1
93.75%

Totals

Change from base Build 94080:
-5.0%

Covered Lines:
21128

Relevant Lines:
28592

💛  - Coveralls


Create initial exporter

Creates the initial version of the exporter
https://takescoop.atlassian.net/browse/PLATFORM-2413

At the moment, this is a simplified program that fetches agent pools once and exports the metrics to stdout.
Example output from a local run:
[
	{
		"Name": "agents{service.name=unknown_service:terraform-cloud-metrics-exporter,telemetry.sdk.language=go,telemetry.sdk.name=opentelemetry,telemetry.sdk.version=1.7.0,instrumentation.name=terraform_cloud,pool=default,status=idle}",
		"Last": 2,
		"Timestamp": "2022-05-12T16:07:56.779199-07:00"
	},
	{
		"Name": "agents{service.name=unknown_service:terraform-cloud-metrics-exporter,telemetry.sdk.language=go,telemetry.sdk.name=opentelemetry,telemetry.sdk.version=1.7.0,instrumentation.name=terraform_cloud,pool=default,status=exited}",
		"Last": 18,
		"Timestamp": "2022-05-12T16:07:56.779202-07:00"
	}
]

A working initial version would have:

A polling loop that fetches the agents, records the metrics, and then sleeps a configurable amount of time
The ability to direct metrics output in OTLP format to a Datadog agent (https://github.com/open-telemetry/opentelemetry-go/tree/main/exporters/otlp/otlpmetric/otlpmetricgrpc) rather than just stdout

With those two things in place as well as some general refactoring/restructuring (e.g. adding CLI flags, splitting into packages) I should be able to move on to deploy. Probably another 1-2 days work here.

Re permissions needed to fetch this data, I've observed:

Owners can manage (modify) agent resources, as documented
Organization tokens can list agent pools and agents
Other teams cannot grant agent access. By default, a team has no access to agent APIs. I tried granting all available organization access to a test team. I found its team token is able to list the agent pools, but when listing the agents within a pool, the response is an empty list. Guessing "manage workspaces" confers permission to list agent pools, but not the agents themselves.

An org token seems to be our best near term choice. While still fairly privileged to perform write operations, it's certainly less privileged than an owners token:
https://www.terraform.io/cloud-docs/users-teams-organizations/api-tokens


How to achieve Lua function arguments autocompletion as in the README's demo?

In the README, the demo shows use of nvim-cmp to get predictions (with ghost text) in Lua which includes the arguments of functions. I'm wondering how this was achieved.
I have nvim-cmp installed and I've tried using both vsnip and LuaSnip, with sumneko's lua-language-server installed and ghost text enabled. However, instead of getting

I'm missing anything after the function name, and getting

This is contrasted to in Python, where I'll get the full suggestions.
E.g.

How do I achieve that which is shown in the README video?

@hrsh7th answered that before. It's not up to nvim-cmp but sumneko to return snippet, try to configure sumneko-lsp such as (if you are using lspconfig):
    settings = {
      Lua = {
        completion = {
          callSnippet = 'Replace',
        },
      },
    },

Oh perfect, thank you! Apologies, I could not find the prior answer (and I did look, albeit possibly poorly), it might be worth linking it here if you know where it is.

Someone else actually responded here https://github.com/hrsh7th/nvim-cmp/discussions/544. Glad you got it working. :)


PS script to add config

Hi,
based on Jason Haley's scripts I did create a PS script to easily add new web app's to the config:
.\AddWebAppToLetsEncrypt.ps1 -webAppTarget "AppName" -webAppHosts "appname.com"

Here the script, if someone else wants to use it:
param(
	[string]$webAppTarget,
	[string]$webAppHosts,
	[string]$renewXNumberOfDaysBeforeExpiration = "-1", # set this to e.g. 65 after first request to avoid hitting the cert-limit if the job is triggerd manually more than 5 times
	[string]$tenantId = "<default tenant Id>",
	[string]$subscriptionId = "<default subscription Id>",
	[string]$webAppLetsEncrypt = "<default letsencrypt web app>",
	[string]$resourceGroupLetsEncrypt = "<default resource group of letsencrypt web app>",
	[string]$clientId = "<default client Id>",
	[string]$clientSecret = "<default client secret>",
	[string]$resourceGroupTarget = "<default target resource group>",
	[string]$email = "<default email>")

Login-AzureRmAccount

Set-AzureRmContext -SubscriptionId $subscriptionId

# Load Existing Web App settings for source and target
$webAppSource = Get-AzureRmWebAppSlot -ResourceGroupName $resourceGroupLetsEncrypt -Name $webAppLetsEncrypt -Slot "production"

# Get reference to the source app settings
$appSettingsSource = $webAppSource.SiteConfig.AppSettings

# Create Hash variable for App Settings
$appSettingsTarget = @{}

# Copy over all Existing App Settings to the Hash
ForEach ($appSettingSource in $appSettingsSource) {
    $appSettingsTarget[$appSettingSource.Name] = $appSettingSource.Value
}

# Add new settings
$appSettingsTarget["letsencrypt:" + $webAppTarget + "-clientId"] = $clientId
$appSettingsTarget["letsencrypt:" + $webAppTarget + "-email"] = $email
$appSettingsTarget["letsencrypt:" + $webAppTarget + "-hosts"] = $webAppHosts
$appSettingsTarget["letsencrypt:" + $webAppTarget + "-renewXNumberOfDaysBeforeExpiration"] = $renewXNumberOfDaysBeforeExpiration
$appSettingsTarget["letsencrypt:" + $webAppTarget + "-resourceGroup"] = $resourceGroupTarget
$appSettingsTarget["letsencrypt:" + $webAppTarget + "-subscriptionId"] = $subscriptionId
$appSettingsTarget["letsencrypt:" + $webAppTarget + "-tenantId"] = $tenantId
if ($appSettingsTarget.ContainsKey("letsencrypt:webApps")) {
	if (!$appSettingsTarget["letsencrypt:webApps"].ToLower().Contains($webAppTarget.ToLower())) {
		$appSettingsTarget["letsencrypt:webApps"] = $appSettingsTarget["letsencrypt:webApps"] + ";" + $webAppTarget
	}
}
else {
	$appSettingsTarget["letsencrypt:webApps"] = $webAppTarget
}

# Save Settings to Target
Set-AzureRmWebAppSlot -ResourceGroupName $resourceGroupTarget -Name $webAppLetsEncrypt -Slot "production" -AppSettings $appSettingsTarget

# Get reference to the source Connection Strings
$connectionStringsSource = $webAppSource.SiteConfig.ConnectionStrings

# Create Hash variable for Connection Strings
$connectionStringsTarget = @{}

# Copy over all Existing Connection Strings to the Hash
ForEach($connStringSource in $connectionStringsSource) {
    $connectionStringsTarget[$connStringSource.Name] = @{ Type = $connStringSource.Type.ToString(); Value = $connStringSource.ConnectionString }
}

# Add new Connection String
$connectionStringsTarget["letsencrypt:" + $webAppTarget + "-clientSecret"] = @{ Type = "Custom"; Value = $clientSecret }

# Save Connection Strings to Target
Set-AzureRmWebAppSlot -ResourceGroupName $resourceGroupTarget -Name $webAppLetsEncrypt -Slot "production" -ConnectionStrings $connectionStringsTarget

Hey, this is really cool!
Would you mind making a PR out of it (including a section in the README), so everyone could enjoy it?
One thing I would add is validation that webAppTarget doesn't already exist.

No pressure, just close this issue when you make the PR please.
Thanks!

Took me "a little" longer but I just created the PR...

Better late than never!
Added a few small comments on the PR

I took the liberty of making some improvements to the script, let me know what you think.
I changed the way parameters work as I want to keep it generic, users can always create their own one-liner local script that calls it with the parameters they desire...

Looks good to me. Using a second script to save the "common values" to be able to call it as I did is a good idea to avoid editing the main script, but still be able to reuse the common values!

Great, thanks again!
PR merged 👌


Makefile: Fix missing separator

Invoking make gives the error test/this.test.cpp:4: *** missing separator.  Stop. This patch fixes this.
Tested with GNU Make 4.3 built for x86_64-pc-linux-gnu.
Unrelated to this patch, the rest of build gets stuck in a couple places, I may look into this.

Already fixed in upstream.


Update LICENSE

Updated the copyright holder

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