Fixed TrackingScrollController cleaning offset on position's detach

Hi,
I bumped into an issue with TrackingScrollController. According to docs TrackingScrollController should always use last updated position. But in some case _lastUpdated position can be deleted and this resets offset. It's possible in case of "infinite" PageView if you start switching pages without vertical scrolling.
In this PR I added new variable to store offset and clean it only if there aren't any stored positions.
Steps to Reproduce

Scroll down on the first page
Swipe to the second page - offset is non-zero - correct
Swipe to the third page - offset is zero - bug

Minimal example:
import 'package:flutter/material.dart';

class Home extends StatelessWidget {
  TrackingScrollController _trackingScrollController =
      new TrackingScrollController();

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      body: new PageView.builder(
        itemBuilder: (context, index) {
          return new ListView(
            controller: _trackingScrollController,
            children: new List<Widget>.generate(
                100, (int i) => new Text('page $index item $i')).toList(),
          );
        },
      ),
    );
  }
}

void main() {
  runApp(new MaterialApp(
    home: new Home(),
  ));
}

Flutter Doctor
[✓] Flutter (on Mac OS X 10.12.6 16G29, locale en-RU, channel alpha)
• Flutter at /Users/herman/Projects/github/flutter
• Framework revision b156a0f054 (2 weeks ago), 2017-08-11 22:01:40 -0700
• Engine revision fef7d827d6
• Tools Dart version 1.25.0-dev.9.0
[✓] Android toolchain - develop for Android devices (Android SDK 26.0.0)
• Android SDK at /Users/herman/Library/Android/sdk
• Platform android-26, build-tools 26.0.0
• ANDROID_HOME = /Users/herman/Library/Android/sdk
• Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)
[✓] iOS toolchain - develop for iOS devices (Xcode 8.3.3)
• Xcode at /Applications/Xcode.app/Contents/Developer
• Xcode 8.3.3, Build version 8E3004b
• ios-deploy 1.9.1
• CocoaPods version 1.2.1
[✓] Android Studio
• Android Studio at /Applications/Android Studio 3.0 Preview.app/Contents
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-915-b01)
[✓] Android Studio (version 2.3)
• Android Studio at /Applications/Android Studio.app/Contents
• Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)
[✓] IntelliJ IDEA Ultimate Edition (version 2017.2.2)
• Flutter plugin version 16.0
• Dart plugin version 172.3757.55
[✓] Connected devices
• Nexus 6P • CVH7N15B14004431 • android-arm • Android 7.1.2 (API 25)

cc @HansMuller

[Sorry about the delay. Looking now...]

Nice test case, fix, and test.  Well done!
LGTM

@mogol Thank you very much for your contribution!

@mogol I had to revert this patch because the test failed on master because we've made some changes to the APIs since you wrote the test. Could you update the test and then resubmit it?


Module import with _content path does not work for Blazor with Chrome Extension

I am building a Chrome extension and due to their file system, any folder starting with _ is prohibited. I am using Blazor.BrowserExtension to build Blazor project and there is similar issue mingyaulee/Blazor.BrowserExtension#43, and the _content folder is renamed to content instead.
My suggestion is to add support for custom module path so we can put our own path. The file in question is:
https://github.com/KristofferStrube/Blazor.FileSystemAccess/blob/d587c50baad45a04b30fd95cbd48af611e165ce9/src/KristofferStrube.Blazor.FileSystemAccess/Extensions/IJSRuntimeExtensions.cs#L7

Interesting problem. Do I understand correctly that your intention is to copy the content of the script to some path that does not contain an underscore manually? And then referencing that?

Hi, the other library does that automatically on build (renaming _content to content). But yes it's correct that the path is no longer _content/... but content/....
Sorry I should not have posted late Saturday evening, now that I read it again myself I barely made sense myself 😅

I will try to make some configurations possible where you can customize the route to the helper script.

@KristofferStrube  hi, I added a pull request that add an option class using Options pattern. However since the FileHandlers may be created without the service itself and has no access to the DI, I added overloads to the Create and CreateAsync methods so it wouldn't be breaking change (constructors are already internal). Now each Handler class would have these:
    public static new FileSystemFileHandle Create(IJSRuntime jSRuntime, IJSObjectReference jSReference, IServiceProvider services)
    {
        return Create(jSRuntime, jSReference, services, Create);
    }

    public static new FileSystemFileHandle Create(IJSRuntime jSRuntime, IJSObjectReference jSReference)
    {
        return Create(jSRuntime, jSReference, Create);
    }

    public static new FileSystemFileHandle Create(IJSRuntime jSRuntime, IJSObjectReference jSReference, FileSystemAccessOptions options)
    {
        return new(jSRuntime, jSReference, options);
    }

If options is not specified, the default path is used. I give IServiceProvider services overload because IOption<FileSystemAccessOptions> is a very long name to inject. If user uses custom path, when using Create or CreateAsync they have to specify options or services (IServiceProvider).
Setup:
// Use this configuration to use custom path
builder.Services.Configure<FileSystemAccessOptions>(opt =>
{
    // In this example, this path is copied directly to the wwwroot folder
    opt.ScriptPath = $"/content/{FileSystemAccessOptions.DefaultNamespace}/{FileSystemAccessOptions.DefaultNamespace}.js";
});

Please tell me if there is any issue with this solution. Thanks a lot and hope this is pushed soon :)

Awesome. Thanks for the PR. I will try to review it tomorrow.
One concern I have is that we use two other libraries Blazor.Streams and Blazor.FileAPI that follow the same helperTask pattern. These would have the same problem as you are currently facing if you are to use the FileSystemWritableFileStream or Blobs exposed in this package. I will have to look at how we will handle this.
My own approach would have been to use a Static property that could be set as I imagine that very few will use this feature. But I agree that this is probably a good fit for using an options class as it supports the possibility of adding any other configuration in the future.

@KristofferStrube

One concern I have is that we use two other libraries Blazor.Streams and Blazor.FileAPI that follow the same helperTask pattern.

Oh I am not aware it uses those libraries. As for fixing for all the libraries, unfortunately I think we have to do that for all dependencies as the "upstream" library (mingyaulee/Blazor.BrowserExtension) cannot handle it as per referred issue. Also the blog post seems to suggest leaving the JS path to end-developer instead of the current approach which may break in the future or in different environment like what I am facing.
Btw after submitting the PR, I just remembered the way I approach it is not exactly the best since I had to pass the Option class or IServiceProvider everywhere. Instead I should have moved the method to the FileSystemAccessService class (i.e. the proper way of creating an instance of File/Directory FileHandler should be through the service instead of the static Create/CreateAsync methods), and leave the current Create one intact for backward-compatibility though you won't be able to use custom path for those old ones. I will submit another PR later with this better approach.

My own approach would have been to use a Static property that could be set as I imagine that very few will use this feature. But I agree that this is probably a good fit for using an options class as it supports the possibility of adding any other configuration in the future.

Yes this will make things harder in the future though admittedly it's much easier now. It's part of .NET DI as well so it's more "unified" and streamlined. In the new PR I will also introduce an overload so developers can do the config right within the AddFileSystemAccessService call if they wish to.

Overall, thank you so much for this awesome project and I see you have other great Blazor projects as well. I am happy to help improving them further!

I pushed the new PR. Please review it when you are available :)
This PR however does add Obsolete attributes to previous methods. The detailed explanation is in that PR. I believe this is for the best interest of the project in the future but I am open to go through other route if you find this too much of a change.

I will push Release 2.1.0 to NuGet in a bit. :)

Thank you so much! That's awesome. Time to continue my weekend side project!

For future projects, I asked the Blazor team for better solution so we don't have to copy this to all RCL projects. The answer was no so I wrote https://github.com/datvm/Blazor.JsRuntimeRedirect. This way special needs like Chrome Extension can be handled from a single library instead of each library author :)


install.sh fails on MacOS Mojave

At least on my system I'm getting stdio.h file not found. I've only tried the dev branch.

I got the same after upgrade but with string.h.
Found a solution here:
open /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg


access to content of uploaded files

It would help avoid errors if users are able to actually view the content of the files uploaded on turing -- either on a new browser tab or in downloadable form.
Thanks!

@NandanaSengupta  I've added a download button to the table. Let me know if this works. It isn't very clean from a UI perspective, so if you have ideas on how to make this look clean, please let me know.

Works! Thanks :)


(OUI Docs) In-memory tables

[ ] Remove GitHub column from all tables

Short term, we could remove them, but I think it might also be useful for implementors to see an example with links in the cells. We could create a follow-up issue for that, though.

@BSFishy  since links are present in other examples of Basic Table, we will move forward with removing the github column in order to release the docs site.


Fix Fix Expected parameter of type 'SanityImageUrl\string', 'string' provided

For whatever reason my IDE gives me a warning when I pass in built-in types. e.g. I need to pass in SanityImageUrl\string instead of string. :shrug:

Never mind, increasing the PHP language level to 7.4 in the project settings solved the issue.


Reference Quil Grammar

This is a complete grammar for Quil as described in "A Practical Quantum Instruction Set Architecture". The grammar itself is in the file Quil.g4 and uses the ANTLR parser generator.
There is also an adapter for PyQuil to use this grammar in a parser. This is essentially the opposite of the ".out()" method on Programs. It would be used like this:
>>> from pyquil.parser import parse_program
>>> quil_input = ... # read from some file perhaps
>>> program = parse_program(quil_input)

Also theoretically this is true:
parse_program(program.out()) == program # for all program

WARNING: Do not look at files in the gen4/ folder, this is code that is generated by ANTLR and not intended to be read by mortals
Use cases:

reference-qvm could use this to execute arbitrary Quil programs
Forest could use this to track circuit and qubit depth of submitted programs
Creating Quil parsers in other languages (ANTLR supports Java, C#, Python, Go, C++, and Swift)

Known limitations:

the PyQuil adapter doesn't support any constructs that aren't fully supported in PyQuil (slots, defcircuits, etc)

Future improvements:

Python 2 support (this will take some tricks to to import the Python 2 vs Python 3 runtime depending on the situation)
Better error handling (the error messages right now are pretty useless)

I also am inclined to think that the raw construct should be removed from pyQuil if this exists. No need to include raw quil strings if we can parse them.

For the RawInstr: you're saying that if someone does p.inst("string") that would parse it right there and then?

Hm, that merge did not do what I expected...

Added error handling, sample error message:
RuntimeError: Error encountered while parsing the quil program at line 1 and column 3
Received an 'X' but was expecting one of [ UNSIGNED_INT, '(' ]

For the RawInstr: you're saying that if someone does p.inst("string") that would parse it right there and then?

That, or just not allow it. It's out of scope for this PR I think, though.
Otherwise, everything LGTM! Awesome work!


Notebook fix to handle GCS outputs and resolve (AutoML Tabular Forecasting notebook error: no row field 'name' #453)

This PR contains a notebook that demonstrates how to use the Vertex SDK to create tabular forecasting models and do batch prediction using a Google Cloud AutoML model.

[ x] Use the notebook template as a starting point.
[x ] Follow the style and grammar rules outlined in the above notebook template.
[x ] Verify the notebook runs successfully in Colab since the automated tests cannot guarantee this even when it passes.
[x ] Passes all the required automated checks. You can locally test for formatting and linting with these instructions.
[ x] You have consulted with a tech writer to see if tech writer review is necessary. If so, the notebook has been reviewed by a tech writer, and they have approved it.
[x ] This notebook has been added to the CODEOWNERS file under # Official Notebooks section, pointing to the author or the author's team.
[ x] The Jupyter notebook cleans up any artifacts it has created (datasets, ML models, endpoints, etc) so as not to eat up unnecessary resources.

/gcbrun

Notebook works in both workbench and colab - confirmed


[SE-0407] Add missingConformancesTo argument to MemberMacro expansion operation

Stage in an entrypoint for member macros that allows them to learn about which conformances that they've asked about are "missing", meaning that they are not present on the type (ignoring those that would be generated by an extension macro). This information is equivalent to the information provided to extension macros, although the member macro itself cannot create the conformance.

@swift-ci please test


Old network policy iptables rules are not cleared on upgrade

Environmental Info:
K3s Version:
k3s version v1.25.8+k3s1 (6c5ac022)
Infrastructure
Cloud EC2 instance
Node(s) CPU architecture, OS, and Version:
Ubuntu 20.04
Cluster Configuration:
Single node
Describe the bug:
After upgrade we have a mix of old and new iptables that addresses KUBE-ROUTER
Steps To Reproduce:

Install k3s with default config
curl -fL https://get.k3s.io| INSTALL_K3S_VERSION=v1.25.8+k3s1 sh -s - server
Upgrade to commit id 027cc187ce9f21157b8d37d62e67ee1c42968b4b

Expected behavior:
On v1.25.8+k3s1:
$ k3s -v
k3s version v1.25.8+k3s1 (6c5ac022)

$ sudo iptables-save |grep network |grep ROUTER
-A KUBE-ROUTER-FORWARD -m comment --comment "rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j RETURN
-A KUBE-ROUTER-INPUT -m comment --comment "rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j RETURN
-A KUBE-ROUTER-OUTPUT -m comment --comment "rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j RETURN

After upgrade
$ sudo iptables-save |grep network |grep ROUTER
-A INPUT -m comment --comment "KUBE-ROUTER rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j ACCEPT
-A FORWARD -m comment --comment "KUBE-ROUTER rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j ACCEPT
-A OUTPUT -m comment --comment "KUBE-ROUTER rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j ACCEPT

Actual behavior:
On v1.25.8+k3s1:
$ k3s -v
k3s version v1.25.8+k3s1 (6c5ac022)

$ sudo iptables-save |grep network |grep ROUTER
-A KUBE-ROUTER-FORWARD -m comment --comment "rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j RETURN
-A KUBE-ROUTER-INPUT -m comment --comment "rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j RETURN
-A KUBE-ROUTER-OUTPUT -m comment --comment "rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j RETURN

After upgrade we have both old and new rules
$ sudo iptables-save |grep network |grep ROUTER
-A INPUT -m comment --comment "KUBE-ROUTER rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j ACCEPT
-A FORWARD -m comment --comment "KUBE-ROUTER rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j ACCEPT
-A OUTPUT -m comment --comment "KUBE-ROUTER rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j ACCEPT
-A KUBE-ROUTER-FORWARD -m comment --comment "rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j RETURN
-A KUBE-ROUTER-INPUT -m comment --comment "rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j RETURN
-A KUBE-ROUTER-OUTPUT -m comment --comment "rule to explicitly ACCEPT traffic that comply to network policies" -m mark --mark 0x20000/0x20000 -j RETURN

Workaround:
Run k3s-killall.sh after disabling the network policy controller or during upgrade
Related issue:
https://github.com/k3s-io/k3s/issues/7203

This is similar to https://github.com/k3s-io/k3s/issues/7244 - it looks like the K3s NPC setup needs to do some cleanup of old rules regardless of whether its enabled or not.


Define DCCP constants

This PR defines constants needed to utilize DCCP in Linux and NetBSD.

@bors: r+
Thanks!

:pushpin: Commit c98ebb3 has been approved by alexcrichton

:hourglass: Testing commit c98ebb34ed3b0061b349d2adc62c0d9e80a5507c with merge 5fe93553d36dce3d09ac38665336a8a12e61a6b7...

I removed redundant definition of a couple of constants from the NetBSD module which was causing some build failures.
On the Linux side -- the C program generated by libc-test is failing because it can't find the definitions of some constants. The C program would need to include uapi/linux/dccp.h -- is there a way to tell if it's doing that, and if not, add the header to what it pulls in for the tests?

You'll probably need to edit libc-test/build.rs to include the various headers I think

I've fixed build.rs to include the needed additional headers and made a few tweaks to the constant definitions, and the changes are passing the CI tests now.

@bors: r+

:pushpin: Commit 787addf has been approved by alexcrichton

:hourglass: Testing commit 787addfa389673deaf10b3bff261b2e615817524 with merge ef6c2527ded651b14ed17fcc5e86974f9751911a...

:sunny: Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing ef6c2527ded651b14ed17fcc5e86974f9751911a to master...


Will not import with with python 3.5

import triegex
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/user/.local/share/virtualenvs/project-xy-SPS3Z/lib/python3.5/site-packages/triegex/__init__.py", line 29
    return f'<TriegexNode: \'{self.char}\' end={self.end}>'

Hi @oppsig ! Which version of the package do you use? This issue was fixed in #3 .


Blank Output on OSX

Like literally nothing.
It just gets stuck like this:

No output in regular terminal.app or iterm, when run from bash or fish. This is on OSX beta, but I doubt that would make a difference.

Thanks for opening an issue!

What's your bash version?

Do you have all of the required dependencies?

What happens if you launch the script with fetch --image off

Bash is 4.3.42, from homebrew.
I have most of the optional and all of the required dependencies except for procps, for which I think there is no OSX version or equivalent.
Same output with --image off
Also just btw, pkgutil only shows software installed with the .pkg installer, so packages installed using homebrew, macports, and I think saveosx will not show up.

There's an array on line 47. I want you to try removing lines from it in groups of 4 at a time. I'm pretty sure that one of the info functions is getting stuck. Once we figure out which function is freezing I can create a fix.

Also just btw, pkgutil only shows software installed with the .pkg installer, so packages installed using > homebrew, macports, and I think saveosx will not show up.

I see! I'll add support for homebrew, macports etc asap.

Kept removing them, and it kept freezing, even when I removed all of them.
Also I just checked in an Ubuntu VM and the script runs, so it's not a corrupt or changed file. Hmm.

Weird.
The script is freezing before the printinfo function is called which means it's either failing at OS detection or the tput related stuff. I've made a change to the OS detection so it exits and I've also added the extra package managers (homebrew, macports etc).
What output do you get now?

Ok I got the problem. bash -x is a wonderful thing apparently.
$image wasn't being set correctly for some reason, or it wasn't responding when it was set to "wall".
Hence, $img was not set, I think the OSX wallpaper detection might be broken in the script, so ImageMagicks identify tool was running with a blank argument.
Hence it froze while waiting for input. I presume you don't have an OSX system to test on? I can poke around a bit to try and fix.
Also, iTerm2 has it's own image display system I think, ranger has w3m or iterm mode for it.

Awesome, I didn't know about bash -x!
I
Wall detection only works on Linux (with feh) and Windows so far. I don't have an OS X system to test it out on so it's difficult. I'll start working on support for it if you're willing to test.

What do these commands output?
plutil -p ~/Library/Preferences/com.apple.desktop.plist

plutil -p ~/Library/Preferences/com.apple.desktop.plist | grep -F "ImageFilePath"

No Such file errors....
You may be able to do this with the osascript command, it's like a systemwide scripting language, I'll just have a look into it now.

Added wallpaper detection on OS X to master.


feat(graphql): add graphql-over-http client

It is well-known that we have multiple handwritten re-implementations of a reqwest based GraphQL-over-HTTP client. Additionally, most existing crates add an undesired overhead (e.g., schema file-based code generation).
This PR introduces a minor, GraphQL-over-HTTP spec-compliant, reqwest extension trait.

DISCLAIMER:
Since the graphql crate still has a dependency relationship with Agora's lang crate (a.k.a. cost-model), adding this code in that crate would cause an undesired overhead every time we want to upgrade it.
For this reason, and until the graphql crate does not create a dependency hell issue in the gateway project, we must have a separate crate.


CODEOWNERS: Assign ownership for CoreOS-related files

Introduce a CODEOWNERS file to designate the CoreOS team as responsible for maintaining files related to CoreOS.
This change ensures collaborative support, alleviating the burden solely on the osbuild team.
By assigning ownership, we aim to enhance code quality and responsiveness to issues affecting CoreOS.

I invited @jlebon to the org to fix the warning on the file:

Unknown owner on line 8: make sure @jlebon exists and has write access to the repository

I invited @jlebon to the org to fix the warning on the file:

Accepted! :heavy_check_mark:


Countdown not working on association page (TFE)

When a user did an association it would start with: "Waiting for 5 more blocks" and immediately go to  "Crediting Vega key" after a single confirmation .
It should countdown showing networkParameters.ethereumConfig.confirmations - currentNumberOfTxConfimrations and only show the crediting vega key message when currentNumberOfTxConfimrations => networkParameters.ethereumConfig.confirmations

Hey @dexturr, I've fixed this last week. Is there an issue with the fix, or is the issue that it hasn't been deployed yet?

Nope, must be a duplicate issue

Oh hang on this is to track the qa I lied, just testing the fix you did

The countdown appears to be updating dynamically when trying to associate tokens for the user. Hence closing this story.


Using getValueForKey method instead of find in getSetting.

By using getValueForKey method from the getSetting, it can be flexible to add a cache layer in the custom Setting Model by overriding getValueForKey method like this:
// CustomSettingModel.php

public static function getValueForKey($key)
{
    return Cache::rememberForever(self::getCacheKey($key), function () use ($key) {
        $setting = static::where('key', $key)->get()->first();

        return isset($setting) ? $setting->value : null;
    });
}

Thanks, that does make sense. :)

Thanks for this. Any clues about how to invalidate the cache when a setting is saved?

Answering my own question... I guess this would do it:
// CustomSettingModel.php

protected static function booted()
{
    static::updated(function ($setting) {
        Cache::forget(self::getCacheKey($setting->key));
    });
}

Heya! I added automatic memory cache clearing in version 4.0.4.

Hey @Tarpsvo thanks for this. I must admit I don't really understand the change and I wonder if we both have different meanings of "cache" in this context.
The shipped NovaSettingsStore class doesn't implement a true cache from what I can see. It only caches the settings within the currently instantiated object. So adding this on the booted() method of the model seems a bit confused and maybe also redundant. Every time the NovaSettingsStore class is instantiated it already has no cached values and when a setting is saved it already removes that setting from the cache.
This PR was about being able to use one of the Laravel cache backends for caching the settings values and reducing DB calls across multiple requests. The changes in this commit don't really solve this problem and actually seem quite confusing.

Yeah, it's an in-memory cache to avoid querying the database every time a value is requested during the same request. Ie if the user has multiple nova_get_setting('test') calls. This is just to help the user avoid duplicate SQL queries within the same request.
If you wish to cache the values into Redis or any other key-value store, you can create a new helper function (ie nova_get_cached_setting()) and put your abstract cache layer in there.

Ok yes, so this means that the change in 4.0.4 to clean the cache using the booted() method on the Setting model doesn't make sense and doesn't actually do anything.

The observer clears the in-memory cache in case a setting is saved in-between nova_get_setting() calls. It both makes sense and actually does what it's supposed to. This package only offers in-memory caching out of the box.
If you want to cache your settings in a different cache layer (ie Redis), you have to overwrite the Settings model and the getValueForKey function just like in the original post. You also have to register an observer to clear the cache, either in an observer class or in the static::booted() function.

Ah I had assumed every call to nova_get_setting() instantiated a new NovaSettingsStore() object but I hadn't spotted that this class is registered in the service container as a singleton so this makes sense.
However, I still maintain that the observer is redundant since the in-memory cache is already cleared when a setting is saved and this would already clear the in-memory cache in case a setting is saved in-between nova_get_setting() calls.
(I understand about using a cache layer for more persistent cacheing which is what this PR was originally about.)


Lock heights of components

Maybe it is because I'm new to sketch, but I found that the components stretched whenever I changed the height of the artboard they were on.
I learned that there is a checkbox to keep height fixed, and learned to click that when resizing the artboard. I wonder if that should be defaulted for the Carbon components.

Interesting find, @antonmc ! Could you post a screenshot or a GIF example of what's happening when you resize your artboard? Almost sounds like a Sketch bug to me, but in order to troubleshoot I want to make sure I understand the problem correctly :)

This issue should be moved to carbon-design-kit


Camera::PixelToNormalizedCoordinatesMany returns incorrect value?

Should Camera::PixelToNormalizedCoordinatesMany be returning norm_coords instead of px_coords?see https://github.com/mapillary/OpenSfM/blob/7f170d0dc352340295ff480378e3ac37d0179f8e/opensfm/src/geometry/src/camera.cc#L361

@oaa3wf Would you mind closing this issue now?


force:source:push fails with conflicts even when none exist

Summary
When pushing an Apex class that is dependent upon another managed package's global API, the file will fail to push stating that "we couldn’t push your source due to conflicts" even when no conflict exists. So even when the file has only been edited locally it will fail to push with conflicts. By adding the "-f" option, the file will push as expected, however this shouldn't be necessary since no conflict exists.
Steps To Reproduce:

Create a 1GP managed package containing a global API that you can use for testing
Create an SFDX project and create a new org
Install the 1GP managed package in the org
Create an Apex Class locally in your SFDX project and add a method but don't invoke the global API yet
Push using "sfdx force:source:push" - NOTE - no conflict occurs
Add a new method that invokes the global API previously mentioned
Push using "sfdx force:source:push" -- NOTE - conflict occurs despite nothing changing in the org. Since no conflict actually exist, the push should work
Push using "sfdx force:source:push -f" -- NOTE - this works as expected, however shouldn't be necessary

Expected result
Push should have worked without the "-f" option
Actual result
Push failed due to (non existent) conflict.
Additional information
Versions affected: 7.45.1, 7.46.1
OS and version:
Mac OS

I am observing the same thing when referencing a managed package field in my code.  My repro steps:

Create a scratch org and install the current release of the Financial Service Cloud managed package (FinServ namespace).

Create an apex class with no reference to the FinServ namespace.  Save, push, edit, Save, push.  No conflicts are reported.

Add a reference to the FinServ Namespace.  Save, push, edit, save, push.  Conflict reported.

Remove the reference to FinServ, AND remove the packageVersions section of the class's -meta.xml file that references the namespace (if present).  Save, push, no conflict.

I've found that pulling the class adds the namespace ref in the meta.xml, and once it is there, you have to remove it to avoid the conflict; but removing it makes no difference if the code also references the namespace.
For reference, my use of the namespace in Apex is a simple field ref:
List<Account> accounts = [
    SELECT Id, RecordTypeId, FinServ__SourceSystemId__c
      FROM Account
     WHERE Id = :accountId
];
// some error checking removed for clarity
Account a = accounts[0];
if (a.FinServ__SourceSystemId__c == null) {
   // ... SNIP
}

@rhobkirkffdc are you still experiencing this issue on the latest version of the CLI?


LoadBalancer latency always shows as "0"

My external-metrics adapter looks like this:
queries:
      - id: latency
        metricLabels: "latency"
        metricStat:
          metric:
            namespace: "AWS/ELB"
            metricName: "Latency"
            dimensions:
              - name: LoadBalancerName
                value: "ab2cc236ed3a211e98a7c122360628b8"
          period: 60
          stat: Sum
          unit: Milliseconds
        returnData: true

When I am running the query to fetch data from external-metrics-api inside my kubernetes cluster I get the following response:
{
  "kind": "ExternalMetricValueList",
  "apiVersion": "external.metrics.k8s.io/v1beta1",
  "metadata": {
    "selfLink": "/apis/external.metrics.k8s.io/v1beta1/namespaces/chandra/elb-latency"
  },
  "items": [
    {
      "metricName": "elb-latency",
      "metricLabels": null,
      "timestamp": "2019-09-23T12:17:19Z",
      "value": "0"
    }
  ]
}

Whereas in cloudwatch, the datapoint is never 0

@chandraprakash1392 just a quick check, does the pod have IAM permissions to get metric data from cloudwatch? Can you also help to check the logs from k8s-cloudwatch-adapter and see if there is any error?

Yes.....The pod has all the required permissions as the other metrics show accurate data:
{
  "kind": "ExternalMetricValueList",
  "apiVersion": "external.metrics.k8s.io/v1beta1",
  "metadata": {
    "selfLink": "/apis/external.metrics.k8s.io/v1beta1/namespaces/chandra/elb-request-count"
  },
  "items": [
    {
      "metricName": "elb-request-count",
      "metricLabels": null,
      "timestamp": "2019-10-07T05:41:41Z",
      "value": "238"
    }
  ]
}

I'm experiencing the same thing. @chankh Is there any information I can give here that would help troubleshoot this issue?
One difference I found between @chandraprakash1392 's definition and mine is in the metric.stat and metric.unit.
I've tried his configuration,and also mine, with
metric.unit: Count```
and that doesn't work either.

Added option to enable debug logs for AWS service calls, and it should be available in the latest build chankh/k8s-cloudwatch-adapter:latest. Set the environment variable DEBUG=true to enable debug logs, after enabling you should be able to see the request and response for CloudWatch GetMetricData like below.
2019/10/24 15:53:48 DEBUG: Request monitoring/GetMetricData Details:
---[ REQUEST POST-SIGN ]-----------------------------
POST / HTTP/1.1
Host: monitoring.us-west-2.amazonaws.com
User-Agent: aws-sdk-go/0.8.0 (go1.12.5; linux; amd64)
Content-Length: 723
Authorization: <snipped>
Content-Type: application/x-www-form-urlencoded; charset=utf-8
X-Amz-Date: 20191024T155348Z
X-Amz-Security-Token: <snipped>
Accept-Encoding: gzip

Action=GetMetricData&EndTime=2019-10-24T15%3A53%3A00Z&MetricDataQueries.member.1.Id=sqs_helloworld&MetricDataQueries.member.1.Label=&MetricDataQueries.member.1.MetricStat.Metric.Dimensions.member.1.Name=QueueName&MetricDataQueries.member.1.MetricStat.Metric.Dimensions.member.1.Value=helloworld&MetricDataQueries.member.1.MetricStat.Metric.MetricName=ApproximateNumberOfMessagesVisible&MetricDataQueries.member.1.MetricStat.Metric.Namespace=AWS%2FSQS&MetricDataQueries.member.1.MetricStat.Period=300&MetricDataQueries.member.1.MetricStat.Stat=Average&MetricDataQueries.member.1.MetricStat.Unit=Count&MetricDataQueries.member.1.ReturnData=true&ScanBy=TimestampDescending&StartTime=2019-10-24T15%3A48%3A00Z&Version=2010-08-01
-----------------------------------------------------

I1024 15:53:48.056217       1 provider_external.go:17] Received request for namespace: default, metric name: hello-queue-length, metric selectors:
2019/10/24 15:53:48 DEBUG: Response monitoring/GetMetricData Details:
---[ RESPONSE ]--------------------------------------
HTTP/1.1 200 OK
Content-Length: 613
Content-Type: text/xml
Date: Thu, 24 Oct 2019 15:53:47 GMT
X-Amzn-Requestid: 5b12f52c-d2bb-4fea-b7cf-c240af7b0ce4

-----------------------------------------------------
2019/10/24 15:53:48 <GetMetricDataResponse xmlns="http://monitoring.amazonaws.com/doc/2010-08-01/">
  <GetMetricDataResult>
    <MetricDataResults>
      <member>
        <Timestamps>
          <member>2019-10-24T15:48:00Z</member>
        </Timestamps>
        <Values>
          <member>1.8677012E7</member>
        </Values>
        <Label/>
        <Id>sqs_helloworld</Id>
        <StatusCode>Complete</StatusCode>
      </member>
    </MetricDataResults>
    <Messages/>
  </GetMetricDataResult>
  <ResponseMetadata>
    <RequestId>5b12f52c-d2bb-4fea-b7cf-c240af7b0ce4</RequestId>
  </ResponseMetadata>
</GetMetricDataResponse>

@chankh Thanks for enabling that DEBUG flag - This is the request it's making and the response I'm seeing:
Action=GetMetricData&EndTime=2019-10-28T20%3A42%3A00Z&MetricDataQueries.member.1.Id=elb_latency&MetricDataQueries.member.1.Label=&MetricDataQueries.member.1.MetricStat.Metric.Dimensions.member.1.Name=LoadBalancerName&MetricDataQueries.member.1.MetricStat.Metric.Dimensions.member.1.Value=REDACTED_VALUE_FROM_AWS_ELB_NAME_COLUMN&MetricDataQueries.member.1.MetricStat.Metric.MetricName=Latency&MetricDataQueries.member.1.MetricStat.Metric.Namespace=AWS%2FELB&MetricDataQueries.member.1.MetricStat.Period=60&MetricDataQueries.member.1.MetricStat.Stat=Sum&MetricDataQueries.member.1.MetricStat.Unit=Milliseconds&MetricDataQueries.member.1.ReturnData=true&ScanBy=TimestampDescending&StartTime=2019-10-28T20%3A37%3A00Z&Version=2010-08-01
-----------------------------------------------------
2019/10/28 20:42:38 DEBUG: Response monitoring/GetMetricData Details:
---[ RESPONSE ]--------------------------------------
HTTP/1.1 200 OK
Content-Length: 485
Content-Type: text/xml
Date: Mon, 28 Oct 2019 20:42:37 GMT
X-Amzn-Requestid: 250a3e7f-e2a5-4e9a-b0cf-e234c00de6ac

-----------------------------------------------------
2019/10/28 20:42:38 <GetMetricDataResponse xmlns="http://monitoring.amazonaws.com/doc/2010-08-01/">
  <GetMetricDataResult>
    <MetricDataResults>
      <member>
        <Timestamps/>
        <Values/>
        <Label/>
        <Id>elb_latency</Id>
        <StatusCode>Complete</StatusCode>
      </member>
    </MetricDataResults>
    <Messages/>
  </GetMetricDataResult>
  <ResponseMetadata>
    <RequestId>250a3e7f-e2a5-4e9a-b0cf-e234c00de6ac</RequestId>
  </ResponseMetadata>
</GetMetricDataResponse>

@chankh Any update on the issue? I am waiting for this to get fixed so that I can deploy my HPA based on latency.

I had done some tests, it seems that ELB latency metric has to use unit: Seconds instead of Milliseconds in the metric configuration. CloudWatch does not return any data when you use specify Milliseconds. Since it returns the latency value in seconds, you may encounter cases where the value is 0 when the latency value is less than 0, i.e. 0.037 seconds.

@chankh it works thanks! I added an expression to convert the seconds to milliseconds and it gives it the exact data in cloudwatch in ms
Here's what I did:
- id: latencyInMS
  expression: latencyHRC * 1000
  returnData: true

Thanks for confirming @chandraprakash1392 , I will close this issue

@chankh it works thanks! I added an expression to convert the seconds to milliseconds and it gives it the exact data in cloudwatch in ms
Here's what I did:
- id: latencyInMS
  expression: latencyHRC * 1000
  returnData: true

I have the same problem. Can you please point me to some documentation about expressions ? I am not able to find anything in k8s docs


fix(guidelines): remove consumer-facing rules that have been included in API Portal

Changelog:
Removal
The following rules have been removed as they contained consumer-facing content. This content has been included in the API Portal in the REST API sections "Status codes", "Headers" "Preview", and "Deprecation" respectively.

MUST NOT rely on API components marked as preview
MUST NOT not start using deprecated APIs
MUST accept undocumented status codes
MUST follow redirection
SHOULD honor available ETag header on subsequent modifications

For your review @plemech23 🙂

Almost perfect ;) Furthermore, I was wondering if we should add the rule numbers in the changelog? Usually the number is pretty prominent and if people only noted the number but not the rule name, they might still find the information that it was removed @BirgitBader ?

I remember that we discussed this already, when we crafted the PR template for the guidelines. And we decided against it.
We already had a removal on 2023-06-23 and it worked well.


Silence MSVC warning about including <expected>

Check the feature macro __cpp_lib_expected >= 202202L as per the documentation to silence the warning:

warning STL4038: The contents of  are available only with C++23 or later.

Thanks!


Have a clear all for TextInput and PasswordInput

A clear all button is a common use case for text inputs. Implement this for TextInput/PasswordInput (see Address widget)
https://discord.com/channels/1031982848485359626/1133099908086370488

PR - #808


Use className instead of class in react mode

This PR gets rid of the warning message printed by React:
Warning: Invalid DOM property `class`. Did you mean `className`?

Ooops, I missed this warning on my React app when I checked before releasing it.
(And I was expecting react-test-renderer dumps that type of warning 🙃)
Thanks for the PR ✨


New Landscape Entry - MINRES

Project Name
MINRES
Description
Trustworthy Software-Driven Hardware for the Intelligent Edge.
Making modern technologies accessible to Small and Medium Enterprises (SME) allows them to leverage advances in semiconductor and deploy powerfull solutions at the edge.
Homepage URL
https://www.minres.com/
Crunchbase URL (https://www.crunchbase.com/)
https://www.crunchbase.com/organization/minres-technologies
Repository URL
https://github.com/Minres
Organization hosting or owning the project
MINRES Technologies GmbH
Evidence of RISC-V ecosystem support
https://www.edacentrum.de/scale4edge/system/files/ct_project_news/success-story-hw-verification.pdf
Logo

Category
Implementations

+1 for IP in implementations

+1
good to go @bprestonlf !

Thank you very much for updating the lanscape!
Could it be possible to add MINRES also to the services section?


Single field pricing question

If the case is that a pricing question only has one field, we should
render a simpler label.
Also, there's no need to use pricing columns and the more complicated
code that comes with it. We use the simple text box format instead.

🙀

@pcraig3 Lunatic

At some point we need to make it so the top pattern is just an import of the forms/textbox.html macro. I mean so any changes to the textbox this code is copied from update automatically.
Doing this now would mean changing the import path used across the apps so for now, this is 👍

@tombye Hey Tom, we spotted something after you gave this a thumbs up. Could you take a look at that last commit for us?

Good spot. Now needs a rebase + the version bump changed to be to the new version but once that's done: 👍


Codecov showing incorrect code coverage

:tada: This issue has been resolved in version 0.21.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Distance and Direction Ring [and ellipse] tool causes ArcMap to go unresponsive click outside basemap extent

ArcMap <IP_ADDRESS>21 Distance and Direction <IP_ADDRESS> (3/5/18)
ArcMap <IP_ADDRESS>21 and MT build 23 (5Mar)
When you create a set of rings and radials (non-interactive mode), set a distance, number of rings, number of radials and click outside the extent of the map, add a point, it is not handled, and you can hit enter to start creating range rings, but ArcMap goes unresponsive. This also affects Ellipses.
We should handle this like we do Circles (https://github.com/Esri/distance-direction-addin-dotnet/issues/512).

Addressed in #546 - ready for QA/QC
While testing this I saw another, less common issue - written up in a new issue #547

I have tested this on ArcMap 10.6, the fixes appear to have worked, however, I'm noticing the following:

The label appears to be inverse while zoomed way out.  Once you zoom in, it appears fine.

I'll log another issue to address these findings.
FYI @csmoore @kgonzago

Remaining work:

[ ] https://github.com/ArcGIS/solutions-defense-test-catalog/pull/127 Reviewed and merged.
[ ] Possible CMS work (@acueva is still looking into this)

@dfoll @topowright I believe this can be moved to done.  Do we need a Verify tag to verify my CMS changes?

verified list as an issue addressed. was never listed as a known issue, so nothing to remove there

@ACueva I forgot to add that this should be added to the What's New page for Defense and the What's New section on the homepage.

[x] Resources page
[x] Defense What's New page
[x] What's New section on homepage

[df - 24Apr -- verified the fix is a message box that the point is out of bounds]


What is @Module() and how to use them?

Information
Is your feature request related to a problem? Please describe.
While using tsed generate I noticed Modules, I want to know if it works similar to how a Module works in NestJs?  If so, how? I couldn't find any documentation for it in the tsed.io.
I wanted to make a Module implementation of an API. While importing it in my module I want to provide the API key. And I want to import this module at different places with different api keys and not reinitialize it again and again.
This is how I do it in NestJs.
@Module({
  imports: [
    ImageStorageModule.register({
      cloudinaryConfig: {
        cloudName: 'dasdfask',
        apiKey: '1905232423424345235345539390963176',
        apiSecret: 'NZaPa3490daf0mFAdfweir9EasmChretert72TBbMvcbxccQmzr23fasf'
      }
    }),
  ]
})
export class SeaTrackingModule {
}

@Module({
  imports: [
    ImageStorageModule.register({
      cloudinaryConfig: {
        cloudName: '34asdfask',
        apiKey: '445230809053945345343248678343176',
        apiSecret: '3dsfasf3490daf0mFAdfweir9EasmChretert72TBbMvcbxccQmzr23fasf'
      }
    }),
  ]
})
export class AirTrackingModule {
}

Is it possible in TsED? If so how?
Describe the solution you'd like
I would like a documentation on how to use Modules and related examples.
Describe alternatives you've considered
Currently using services to do it, using a regular member call.
Acceptance criteria

[ ] Criteria 1

Hello @bloodred17 ,
The @Module is not really similar to Nestjs (or partially). By definition, a module in nodejs is a file. Ts.ED use this philosophy to consider all imported files through an ES import as a module.
The module decorator is just here to organize the code and implements hooks to intercept some Ts.ED events. Module and Injectable are similar!
https://github.com/tsedio/tsed/blob/production/packages/orm/mongoose/src/MongooseModule.ts
I'm personally not in favor of the design adopted by Nest and Angular concerning the decorator Module. I have the impression that it is a big overlay to the Native ESM module.
In this case, I prefer to use configurable provider: https://tsed.io/docs/providers.html#configurable-provider
Actually, the @Module isn't documented because, his usage is for an internal purpose.
See you
Romain :)


Moved createReadStream to scanStream function to prevent node crashing

fs.createReadStream function crashed node if the passed file path is invalid to scanFile-function. This happens, because createReadStream is not asyncronous function, and it is run concurrently with scanStream function promise. This means that if invalid file path is given as a parameter to scanFile function, it continues to scanStream function without first throwing the error from the invalid file path. This throws an error outside the promise and crashes node. My suggestion is to move createReadStream inside the promise and catch the error right after this. This handles the thrown error by createReadStream as a rejected promise and so it can be caught and dealt with.

Thanks you so much for pointed out this bug and fixed the typos 👍 , but the scanStream function is not only be call by scanFile but also scanBuffer and even export to the user directly, so we can't change its signature just for scanFile, and I had fixed this bug by checking the filePath before pass to scanStream.  And thanks for your contribution to this repository  :)


Convert 2D line Graphic to lineString

Hello
How can i convert my graphic to feature ?
have any Simple way ?

Same way you created a graphic. take a look here http://dotspatial.codeplex.com/wikipage?title=Desktop_SampleCode


Update sbt-scala-native-crossproject to 1.3.1

About this PR
📦 Updates org.portable-scala:sbt-scala-native-crossproject from 1.0.0 to 1.3.1
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
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!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.portable-scala", artifactId = "sbt-scala-native-crossproject" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.portable-scala", artifactId = "sbt-scala-native-crossproject" }
}]

labels: sbt-plugin-update, early-semver-minor, semver-spec-minor, version-scheme:semver-spec, commit-count:1

Superseded by #190.


Fix assign to support multi-index columns.

Codecov Report

Merging #811 into master will decrease coverage by 2.24%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #811      +/-   ##
==========================================
- Coverage   94.32%   92.07%   -2.25%
==========================================
  Files          32       32
  Lines        5832     5844      +12
==========================================
- Hits         5501     5381     -120
- Misses        331      463     +132

Impacted Files
Coverage Δ

databricks/koalas/frame.py
95.23% <100%> (-1.57%)
:arrow_down:

databricks/koalas/usage_logging/__init__.py
23.14% <0%> (-74.08%)
:arrow_down:

databricks/koalas/usage_logging/usage_logger.py
50% <0%> (-50%)
:arrow_down:

databricks/koalas/__init__.py
77.5% <0%> (-7.5%)
:arrow_down:

databricks/conftest.py
90.69% <0%> (-6.98%)
:arrow_down:

databricks/koalas/namespace.py
84.81% <0%> (-1.33%)
:arrow_down:

databricks/koalas/plot.py
93.34% <0%> (-0.96%)
:arrow_down:

databricks/koalas/utils.py
97.24% <0%> (-0.69%)
:arrow_down:

databricks/koalas/testing/utils.py
77.35% <0%> (-0.63%)
:arrow_down:

... and 1 more

Continue to review full report at Codecov.

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

Thanks! merging.


PrometheusProvider -relation-changed event should store the job_config of the relation

Per https://github.com/canonical/prometheus-operator/blob/76f0d6cc56b78ef70b32b4dc573ff94f330dc08e/lib/charms/prometheus_k8s/v1/prometheus.py#L250, job_configs per target are stored mapped by relation id. The consumer class tries to retrieve specific job configs by rel_id. However, the provider class uses the "rel_id" string as key. Shouldn't the key be the value of the rel_id variable?

Current version of the Prometheus charm library has eliminated the use of stored state all together. All scrape job related information is stored in application relation data of each Consumer charm. Host address of each unit are also gatherred using the unit's relation data. In view of the above I hope it is okay to close this issue. The library is fully documented and an edge channel release is now available, which is still in very active development.
If there is a use case that still needs to be addressed kindly do create another ticket or feel free to reopen this one. Your feedback is always welcome. Thank you for raising issues.


list indices must be integers, not list

Hey all,
Working on my first project in Keras, attempting to reimplement this paper: http://arxiv.org/pdf/1509.00685v2.pdf
My code is:
#from future import *
from keras.models import Sequential, Graph
from keras.layers.core import Dense, Activation, Reshape, Lambda, Flatten
from keras.layers.recurrent import GRU
from keras.layers.embeddings import Embedding
import theano.tensor as T
import theano
# define parameters intuitively, then translate to notation
# this is unnecessary, but helps with understanding
# during the initial construction of the network.
word_embedding_size = 20
hidden_layer_size = 10
context_length = 5
vocabulary_size = 3 # need to get this from training data... but using this as a stand-in for testing the model

# We are going to use the same notation as the paper.
D = word_embedding_size  # size of the word embeddings
H = hidden_layer_size # hidden layer size
C = context_length
V = vocabulary_size

print("Building model...")

# We start with two seperate tensor streams for processing y and x respectively.
# Stream is something I made up, not sure if that's a technical term
model = Graph()

# Elements of model
E = Embedding(V, D, input_length=C)
U = Dense(H, activation='tanh') #GRU(H, activation='tanh')
V_ = Dense(V)

model.add_input('y_c',(C,)) # our context... C is size of context, we don't include size V, since we just pass indexes of words in...
model.inputs['y_c'].input = T.imatrix()
model.add_input('x', (None, ))
model.inputs['x'].input = T.imatrix()

 # y processing side of the model
model.add_node( E, 'y_c~', input='y_c' ) # output dimension (nb_samples, C) --> (nb_samples, C, D)
model.add_node( Reshape( dims=(C*D,) ), 'y_c~reshaped', input='y_c~') # here we reshape to a single     vector of C*D # elements per example
model.add_node( U, 'h', input='y_c~reshaped' )
model.add_node( V_, 'V_', input='h' )

# now we build the bag of words encoder...
model.add_node( Embedding(V, H), 'bow_f', input='x')

model.add_node( Reshape(dims = (H,)), 'bow_f_reshaped', input='bow_f')
model.add_node( Dense(V), 'W', input='bow_f_reshaped' )

def exp(X):
	return T.exp(X)

model.add_node( Lambda(exp, output_shape), 'final', inputs=['V_', 'W'], merge_mode='sum')

# output... we sum the two components of our model
model.add_output('output', input='final')

model.compile('sgd', {'output': 'mse'})

print("Model built and compiled")

y = [ [1, 2, 3, 4, 5] ]
x = [ [2, 3, 4] ]

model.predict( {'y_c': y, 'x': x } )

The model compiles successfully, but I'm getting the following error when I try to test it on a simple example.
Building model...
Model built and compiled
Traceback (most recent call last):
  File "abstractive_sentence_summarizer.py", line 75, in <module>
    model.predict( {'y_c': y, 'x': x } )
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-    packages/keras/models.py", line 695, in predict
    outs = self._predict_loop(self._predict, ins, batch_size, verbose)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/keras/models.py", line 254, in _predict_loop
    ins_batch = slice_X(ins, batch_ids)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/keras/models.py", line 58, in slice_X
    return [x[start] for x in X]
TypeError: list indices must be integers, not list

Sorry if this is an obvious question. I did my due diligence in researching before posting and couldn't seem to find an answer.

Your inputs must be numpy ndarrays, not plain lists. (There should probably be a sanity check...)


[Bug]: Ui enhancement and overlapping issue

Give a brief about the bug ✍
Description

As i have shown in screenshot
you can see navbar is overlapping the top content that re3d texts are not visible i
i know the reason when we put navbar property : position:fixed then it will overlapp top content
also dhown 2 buttons have very simple css
What is the expected behavior? 🤔
Description

Top content should be visible
Buttons shoould have colourful and stylist css(because whole website is proper and style wise exellect CSS , so buttons is lokking seprated)

Provide step by step information to reproduce the bug 📄
Description
i can do few steps

Give padding to Top content  or we can make lower content position Srticky
so first issue will be solved

i will give stylist css to button which matches the theme of your website

Select program in which you are contributing
GSSoC24
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

@Durgesh4993  please assign me this issue


Add an allow list for classes that can be loaded by JXPath

Those using JXPath to interpret untrusted XPath expressions may be vulnerable to a remote code execution attack. All JXPathContext class functions processing a XPath string are vulnerable except compile() and compilePath() function. The XPath expression can be used by an attacker to load any Java class from the classpath resulting in code execution.
Remote Code Execution (RCE)

Issue reported here is, all functions in the class JXPathContext (except compile and compilePath) are vulnerable to a remote code execution attack when used with untrusted input.

An arbitrary code can be injected in the xpath values passed to these functions, and it allows triggering java classes that can exploit the target machine.

For instance, the iterate() method in the JXPathContext class, can be invoked by passing the xpath argument value as, java.lang.Thread.sleep(9999999) or java.lang.Class.forName("ExploitTest"). These examples can result in triggering the injected java code, and can exploit the target machine.

Example: JXPathContext context = JXPathContext.newContext(new Test() ); Iterator result = context.iterate("java.lang.Thread.sleep(9999999)"); System.out.println("result.hasNext() - " + result.hasNext());

No workaround available

The fix added here is via a new system property "jxpath.class.allow". This list is empty by default meaning that nothing is allowed by default. Users should then explicitly configure which classes are allowed.

In order to fix this issue, a filter class "JXPathFilter.java" is added in JXPath. This filter object will be used to validate if the xpath passed to JXPath is a valid one
This new filter class, for now implements JXPathClassFilter interface, which is used to check the java classes passed in xpath.
In this filter, the class filter validates to see if the class being loaded in JXPath is part of the restriction list. The restriction can be configured via a system property "jxpath.class.allow"
System property "jxpath.class.allow" can be set to specify the list of allowed classnames. This property takes a list of java classnames (use comma as separator to specify more than one class). If this property is not set, it disallows all classes.
When a new extension function is created by JXPath, it uses the filter to check if the xpath supplied is a valid string, only then function instances are created.
The changes are added to pass JXPathFilter instance as an additional argument to the methods that create the ExtensionFunction objects. In addition, the ClassLoaderUtil class is modified to use the JXPathFilter instance when a new Class instance is created. Please note that, the changes here are added as overloaded methods, so that we are not affecting existing code for anyone.

This is based on #25 and the logic is changed from a deny list into an allow list

@kyakdan I'm not sure what happened on your rebase but you should not have to edit pom.xml or changes.xml.

@madrob  @garydgregory Thanks for the review.
@garydgregory I've rebased again and the PR does not contain changes to pom.xml or changes.xml now.

@Warxim Many thanks for the detailed explanation and the PoC of still insecure methods. I've added checks to the MethodFunciton class that checks the declaring class before invoking the method. A unit test for the use case you described is added to verify the fix. Could you give it a try now and give feedback if you find further cases that are not yet secured?

@garydgregory @Warxim @madrob I've address your review. Could you have look?

I might take time to review this weekend but it could be a few weeks before a release candidate is ready.

@garydgregory Thanks in advance for the feedback. Any estimation of when you would be able to have a look?

@garydgregory Apologies for being so blunt, but don't you think a few weeks might be a bit too long for such a high-severity issue? Maybe I misunderstood the ease of exploiting it, but it seems like quite a nasty vulnerability.

If releasing a 1.3.1 with this fix only would speed up review and release procedures then I support this. A version 1.4 with this fix and all other already applied changes could be done later.

On Thu, Nov 3, 2022 at 8:43 AM JanHron @.***> wrote:

@garydgregory https://github.com/garydgregory Apologies for being so
blunt, but don't you think a few weeks might be a bit too long for such a
high-severity issue? Maybe I misunderstood the ease of exploiting it, but
it seems like quite a nasty vulnerability.

In short: no. I am a volunteer here, so I don't get paid, I have other
priorities and interests; I work here on a best-effort basis based on my
POV. This is the classic story of free and open-source development.
Gary

—
Reply to this email directly, view it on GitHub
https://github.com/apache/commons-jxpath/pull/26#issuecomment-1302042765,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJB6N7HH3D4T2GGHHSFPADWGOXP3ANCNFSM6AAAAAARFNKCMY
.
You are receiving this because you were mentioned.Message ID:
@.***>

We should clarify if the Whitelist on classes includes inherited methods.
Be careful with default Whitelist, String.wait() and .class/.getClass() (or generally all methods inherited from object?) should probably not be included. Similar Integer/Boolean.getProperty

Good point! The current implementation does not allow any classes if not otherwise configured by the user. We can merge and release this variant so that users can use get a secure version of the library. A default secure allow-list can be done in a follow-up update.

In short: no. I am a volunteer here, so I don't get paid, I have other priorities and interests; I work here on a best-effort basis based on my POV. This is the classic story of free and open-source development. Gary

@garydgregory No need to get all defensive, I did not want to start one of those discussions where a random nobody demands attention from a volunteer member of an open source project. I'm well aware of the situation and your work is very much appreciated. Apologies for the misunderstanding. My background is in security, so my expectations about what should happen whenever a critical vulnerability is found may be skewed a bit in favor of immediate action.
So, do I understand correctly that this vulnerability is as serious as it sounds - that unsanitized user input into a JXPath expression leads to getting a remote shell, or is there some caveat I'm missing? If so, would you please consider making a HotFix release of 1.3 with just this fix so that the users of commons-jxpath can patch their projects (many of them open-source too, BTW) and sleep well at night?
And it's not like I'm just asking you to do more unpaid work - I'm willing to help too! If there's anything I can do to help move this along, just let me know.

	As I understand it, it is about untrusted expressions not about untrusted payload instances or object trees. But I could be wrong, I’d it both?
	-- https://bernd.eckenfels.net

From: JanHron @.>Sent: Monday, November 7, 2022 4:49 PMTo: apache/commons-jxpath @.>Cc: Bernd @.>; Comment @.>Subject: Re: [apache/commons-jxpath] Fix CVE-2022-41852 (PR #26)
In short: no. I am a volunteer here, so I don't get paid, I have other priorities and interests; I work here on a best-effort basis based on my POV. This is the classic story of free and open-source development. Gary
@garydgregory No need to get all defensive, I did not want to start one of those discussions where a random nobody demands attention from a volunteer member of an open source project. I'm well aware of the situation and your work is very much appreciated. Apologies for the misunderstanding. My background is in security, so my expectations about what should happen whenever a critical vulnerability is found may be skewed a bit in favor of immediate action.
So, do I understand correctly that this vulnerability is as serious as it sounds - that unsanitized user input into a JXPath expression leads to getting a remote shell, or is there some caveat I'm missing? If so, would you please consider making a HotFix release of 1.3 with just this fix so that the users of commons-jxpath can patch their projects (many of them open-source too, BTW) and sleep well at night?
And it's not like I'm just asking you to do more unpaid work - I'm willing to help too! If there's anything I can do to help move this along, just let me know.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

CVE-2022-41852 was issued in error and is in the process of being updated so the state becomes "rejected" / "disputed" / "issued in error" or whatever is the most appropriate state.
There is no security vulnerability to be fixed here.
JEXL is NOT expected to safely handle untrusted input.
Whether a better set of defaults can be provided to help users avoid shooting themselves in the foot is a different question. And a reasonable aim for this or any other PR.
Please update the title of this PR to something more appropriate that does not suggest that a security vulnerability exists here.

We do not agree here. Xpath injections are pretty common, see https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=xpath. The past shows that a lot of applications from well-known companies were vulnerable to XPath injections when an attacker was able to control the XPath expression completely or partially. Sanitization of user input failed in multiple cases. It might be expected by developers that the worst-case scenario resulting from an XPath injection would be disclosing sensitive information, but no one would usually expect arbitrary code execution. In Apache Commons JXPath it is enough to have partial control of the XPath expression to call methods from an arbitrary class. @Warxim has demonstrated how easily an exploit might work, see https://hackinglab.cz/en/blog/remote-code-execution-in-jxpath-library-cve-2022-41852/. As a maintainer of a popular open-source library, you have no control over how users might use the library.
We would appreciate it if apache-commons would take more responsibility here and start notifying users about the potential security risks related to untrusted input vectors instead of merely saying "library is not intended to parse untrusted input". The CVE description is valid since it clearly says "Those using JXPath to interpret untrusted XPath expressions may be vulnerable to a remote code execution attack". We are not arguing about an internal unexposed functionality here, but about an actual feature of the library that can have serious security implications.
If you don't plan to assign CVEs for issues resulting from untrusted user input or plan to reject valid ones, you should consider adding a clear warning on the official project page along the lines: "Attention: The library is not intended to be used with untrusted input. Untrusted input could lead to Remote Code Execution, Denial of Service or other unexpected behavior". That would help developers to be aware of the potential security risks or consider switching to other libraries that are robust against untrusted input data. We also suggest adding such a warning to all apache-commons libraries that are not intended to be used with untrusted user input. Some small notes in the documentation are not enough to raise the required attention. In the case of JXpath, neither the current project page (https://github.com/apache/commons-jxpath) nor the user guide (https://commons.apache.org/proper/commons-jxpath/users-guide.html) contains any information that JXPath cannot safely handle untrusted input.

JEXL is NOT expected to safely handle untrusted input.

Be careful, this is about xpath, and also even Jexl should handle data securely, it’s just a question if expressions/programs should be trusted or not.

Not sure why there are some comments on JEXL which is a different library (commons-jexl) than commons-jxpath. The PR is for JXPath. But maybe I do not get the full picture.
Yes, untrusted input could also be handled by the applications which are using commons-jxpath. But that would put the burden on hundreds of applications comming up with solutions on their own. And still they would not be sure if they did it correctly.
The PR presented here makes jxpath secure by default - and hence should be shipped as soon as possible with high priority from my point of view.

Sorry about the JEXL / JXPath mix-up. Trying to respond to lots of similar issues about projects with similar names.
The CVE record has been updated to invalid so my request to edit the title of this PR to remove the CVE reference stands.
My previous comments stand for JXPath. It is an expression language intended to manipulate (quoting from the project description) "graphs of objects of all kinds: JavaBeans, Maps, Servlet contexts, DOM etc, including mixtures thereof." It is not reasonable to expect a tool designed for that purpose to safely handle untrusted input unless using an API explicitly documented to do so. Hence this is not a security issue and will not be treated as such.
Treating an application's XPath injection vulnerability as a issue in JXPath is equivalent to calling an application's SQL injection vulnerability an issue in the JDBC driver. The vulnerability is in the application, not the library the application is (ab)using.
I have concerns about a filter approach for JXPath since experience across multiple projects has shown that trying to limit such tools to a subset of safe operations is difficult and typically leads to a long series issues being reported as researchers find loopholes that allow the filtering to be bypassed. However, those approaches often used deny lists whereas this PR uses an allow list so it is starting from a much safer position.
I wonder if a JXPath equivalent (and it could be a very loose equivalent) to prepared statements in the SQL world could be useful.
Generally, if the community consensus is to add some form of feature to handle unsafe input then it needs to be clearly documented for that purpose and the community has to be prepared to handle security vulnerability reports against that feature.

@markt-asf I think a reasonable approach would be to make the default methods safe and provide an unsecured alternative for people who really need this functionality, with a big fat warning about injection risk. Thus, the casual users would be protected and the power users would still have all the tools they need. I like your idea about prepared statements too.

The CVE record has been updated to invalid so my request to edit the title of this PR to remove the CVE reference stands.

For clarity, this is not true. The record has been marked DISPUTED which is entirely different to REJECT per the CVE website. (https://www.cve.org/ResourcesSupport/FAQs) Disputed is when there is disagreement between a vendor and security researcher so CVE Program leaves the record as is and updates the status. Rejected is when the record was placed in error and is not a vulnerability and the record could potentially be returned to the reserved pool in the future. The CVE is currently still valid and tied to the vulnerability just with the updated status so people can further research the vulnerability themselves.

It is true that, similarly to SQL injections, Xpath injections are vulnerabilities in the applications that use the library. However, the application's responsibility ends when the library exposes functionality that enables propagating a vulnerability to other system components. In the case of SQL injections, the scope matters. If a crafted SQL payload would result in an injection that allows direct code execution outside the database context, we should treat this case as a security issue. There are multiple examples where libraries enabled code execution by mistake or as a feature. Those issues were addressed and fixed. Here are a few SQL examples:

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-4019 (MySQL)
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-3095 (SQL engine IBM DB2
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-4061 (Microsoft SQL Server)
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-1889 (Big SQL in IBM InfoSpere)
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-3414 (SQLite)
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-3415 (SQLite)
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-3416 (SQLite)
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-2520 (Apple sqllite)
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-2519 (Apple sqllite)
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-2518 (Apple sqllite)
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-2513 (Apple sqllite)

Recently, Jazzer found an issue of a similar nature in OSS-Fuzz in a HyperSQL (https://nvd.nist.gov/vuln/detail/CVE-2022-41853). The maintainer quickly acknowledged the security risk and agreed to issue a CVE and a fix release. Based on the previous arguments, we still think this is a security issue for which a CVE should be issued.
That said, I'll adjust the PR title to get it merged. Our goal here is to ensure that users get a secure version of the library and the PR title seems to be a blocker for this to happen.

Now as @kyakdan has renamed the PR's title to "get it merged" - is there a plan / schedule when this will be done and a new version with this included will be released? It would be good if that could be communicated.
I am pretty sure there a several projects which are waiting for a release. I hope it will be done very soon as otherwise we need to replace JXPath in our project as we are not allowed to use libs with known security issues with that high criticality.

There is no security vulnerability. This PR will be dealt with with the same priority as any other enhancement request.

The CVE record has been updated to invalid so my request to edit the title of this PR to remove the CVE reference stands.

For clarity, this is not true. The record has been marked DISPUTED which is entirely different to REJECT per the CVE website. (https://www.cve.org/ResourcesSupport/FAQs) Disputed is when there is disagreement between a vendor and security researcher so CVE Program leaves the record as is and updates the status. Rejected is when the record was placed in error and is not a vulnerability and the record could potentially be returned to the reserved pool in the future. The CVE is currently still valid and tied to the vulnerability just with the updated status so people can further research the vulnerability themselves.

DISPUTED is the wrong state for these issues, then, they should be REJECT as they were placed in error, are not a vulnerability (as well as against CNA rules at the time of assignment).

The CVE record has been updated to invalid so my request to edit the title of this PR to remove the CVE reference stands.

For clarity, this is not true. The record has been marked DISPUTED which is entirely different to REJECT per the CVE website. (https://www.cve.org/ResourcesSupport/FAQs) Disputed is when there is disagreement between a vendor and security researcher so CVE Program leaves the record as is and updates the status. Rejected is when the record was placed in error and is not a vulnerability and the record could potentially be returned to the reserved pool in the future. The CVE is currently still valid and tied to the vulnerability just with the updated status so people can further research the vulnerability themselves.

DISPUTED is the wrong state for these issues, then, they should be REJECT as they were placed in error, are not a vulnerability (as well as against CNA rules at the time of assignment).

DISPUTED is the correct state since there is a dispute between the researcher and the maintainer. They CVE was not placed in error since obviously the researcher and others here do consider it a vulnerability. The DISPUTED tag tells individuals to research the issue; which they should do because this is an issue that could allow RCE in an application.

@markt-asf I understand if this is not in the threat model for JXPath. However, I can't seem to find any documentation explicitly stating JXPath should only be used to process trusted input, which could lead to user confusion and incorrect usages (which includes our fuzzing efforts). Would it make sense to update the documentation to make this fact very clear to users?
I still think this PR as is provides a lot of values for users. Perhaps once this gets merged, we could also update documentation on how this can be used to provide users with a safe way of using JXPath on potentially untrusted inputs?

OK, just saw that CVE-2022-41852 is marked as REJECTED: https://nvd.nist.gov/vuln/detail/CVE-2022-41852

OK, just saw that CVE-2022-41852 is marked as REJECTED: https://nvd.nist.gov/vuln/detail/CVE-2022-41852

I just saw this too. I disagree with this and think it should have remained DISPUTED but I'm not the CNA. At a minimum the documentation should be updated to highlight the risks of using this library and include that it should not accept any untrusted input. I think it's irresponsible to argue the CVE to be REJECTED without first updating the documentation since new users of the library may not be aware of this issue now.

Agreed, it needs to be documented. Either as a warning that it is not possible to have untrusted expressions or with a pointer to the filter mechanism discussed here. I will propose something.

Any comment on my PR?

@garydgregory @markt-asf Is there any update on when this PR can be merged?

@kyakdan in the current form, every class requested from ClassLoaderUtil needs to be whitelisted.
This means that by default, even basic methods like JXPathContext.newContext() will fail (as org.apache.commons.jxpath.ri.JXPathContextFactoryReferenceImpl will be filtered by default)
Is this intended behaviour?

Like most of the JXPath users community, I also think that this is a security issue because of JXPath's default configuration.
However, it seems that the mitigation approach taken by @kyakdan will not make it into the official code.
The question for me now is, how all the usages of JXPath out there could be secured without having the project responsibles to change code in the project. But for all those concerned about having that security issue in their apps, there is (as far as I could find out) a secure way to get rid of the problem. You need to set the default "Functions" implementation to YOUR default instead of silently using the default from JXPathContext (which is JXPathContext.GENERIC_FUNCTIONS ). All you have to do is adding the following line for each instance of JXPathContext in your Application:
context.setFunctions(new org.apache.commons.jxpath.FunctionLibrary());
Of course, you will loose any way of using direct Java Class functions. But the approach also offers the possibility to add your own, secured implementation of the JXPath's PackageFunction, which could be one with a "whitelist" approach like proposed in this thread.
Many usages of JXPath however won't even require the Package Functions if they only need to traverse graphs of objects.
You could even provide your own JXPathContextFactory to your Application VM such that any Usage of JXPathContext.newContext() will return a secured context by default.

@kyakdan in the current form, every class requested from ClassLoaderUtil needs to be whitelisted. This means that by default, even basic methods like JXPathContext.newContext() will fail (as org.apache.commons.jxpath.ri.JXPathContextFactoryReferenceImpl will be filtered by default) Is this intended behaviour?

You can provide a pattern to allow a group of classes, e.g., org.w3c.*. This allows all classes in the org.w3c package. You can use * as a pattern to allow everything which matches the current behavior.

I don’t think „most“ is correct, since this was not much requested before and many users probably only issue static jxpath expressions or use it as a cheap java eval language anyway.
having said that, your mentioning of the FunctionLibrary is on point, and it also looks like a better way to filter. Jxpath can just ship (configurable) alternatives, which especially have allow lists for functions, can turn java evaluation off or restrict classes and methods (similar to like the PR does, ideally without the need to allow internal methods)


Why is mouseMoveControls event listener is attached to document?

Is there a reason the mouseMoveControls event listener is attached directly to window.document? That way it captures all mouse move events (with an obvious impact on the performance) and, what's more important in my case, it clears the cursor style of every event target it encounters, be it the spreadsheet or totally unrelated DOM elements:
if (e.target.style.cursor) {     e.target.style.cursor = ''; }
If there is no particular reason the listener cannot be attached to the spreadsheet itself instead, I can provide a fix/pull request.
Thanks.

Yes, there are other reasons, but one of the reasons is to control the resize when mouse is no longer over the jExcel element for example. This can happen when the user is dragging the border of the cell outside the jExcel elements.

I can double check if we can bypass that in case no jExcel function is ongoing....

Or we can at least check if the e.target belongs to jexcel DOM tree. Otherwise it clears the styles on the DOM outside of the spreadsheet.

Shall I open a new issue with a more clear description of the problem?

I have reopened. You can add any further description here.

This has been fixed


typeof const enum

const enum Bar { a, b}
var c: typeof Bar.a; // 'const' enum can only be used in property or index access expressions or the right hand side of an import declaration or export assignment.

Should it be allowed?

Seems reasonable. The error is clearly wrong as it's referencing the restrictions on const enums in value positions.

is not that just Bar?
While I agree that this is an incorrect behavior, i do not see a real motivation to fix it.

@mhegazy There's a subtle issue:
module thingsString {
   const var a = "a";
   const var b = "a";
}
var a: typeof thingsString

// If you re-write to a const enum that allows strings:

const enum thingsString {
   a = "a";
   b = "a";
}
var a: typeof thingsString

It's a simple fix:
                !((node.parent.kind === SyntaxKind.PropertyAccessExpression && (<PropertyAccessExpression>node.parent).expression === node) ||
                (node.parent.kind === SyntaxKind.ElementAccessExpression && (<ElementAccessExpression>node.parent).expression === node) ||
                ((node.kind === SyntaxKind.Identifier || node.kind === SyntaxKind.QualifiedName) && isInRightSideOfImportOrExportAssignment(<Identifier>node)) ||
				  isInTypeQuery(node))
				) {

Anyways let me if you change your mind.

Your first comment was about typeof e.m, but now you're talking about typeof e. Those are two very different things -- typeof e.m is a long way of writing e, but there's a reasonable use case to allow typeof e.

@jbondc feel free to send a PR for this if this is interesting to you. please limit the scope to skipping the error reporting if the use of const enum is in a type position.

but there's a reasonable use case to allow typeof e

@RyanCavanaugh considering that const enums do not always have a runtime representation, could you explain what that might be?

In input positions (e.g. function parameters), typeof E seems equally valid whether E is const or not

@mhegazy, can this be added to the next milestone? Seems an obvious bug that needs fixing.
Use case:
const enum Bar {
  good = 1,
  bad = 2,
  ugly = 4
}

// type Rating = 'good' | 'bad' | 'ugly';
type Rating = keyof typeof Bar; // Error: 'const' enums can only be used in property or index access expressions...

The bug is marked as help wanted. if we do get a PR for fixing it we will include it in the next release.

Ah, okay. I was under the impression that only minor bugs are left to the community.

We do accept PRs for bugs and features regardless of complexity.

The keyof typeof Bar issue was reraised in #21031 and fixed in #21083 (which was released with 2.7). As such this issue can probably be closed.

Just looking at ancient issues; yeah, this one is fixed as keyof typeof Bar now works/


Clean up build process and documentation

Eliminate the code dealing with environment variables, and remove documentation about them from the README.

/cc @pawanpinjarkar

Suggestion: Please rebase the commits into 1 and update the description.

rebase the commits into 1

That's not how I roll :slightly_smiling_face:
Each commit is an independent change that could be reverted independently if required, and that's as it should be.


HPX V1.6.0 fails on Fedora release

@diehlpk reported:
Hi,
HPX 1.6.0 started to fail on Fedora release which is shipped in three weeks,
Could you please have a look?
https://kojipkgs.fedoraproject.org/work/tasks/8255/64998255/build.log
https://pastebin.com/ajjsDKEp
Thanks,
Patrick

@hkaiser the fix in https://gist.github.com/hkaiser/554e5866ab5ac0111901cbcdaa19b69c is fair, but so is the warning. I wonder what the semantics of that proxy iterator type should be? If it's up to the caller to keep the v_ member alive long enough we can add a move assignment operator, which does the same as the copy assignment operator. I'm also guessing that existing assignment operator should actually be sfinae-d out for vector_value_proxy right-hand sides?

@hkaiser the fix in https://gist.github.com/hkaiser/554e5866ab5ac0111901cbcdaa19b69c is fair, but so is the warning. I wonder what the semantics of that proxy iterator type should be? If it's up to the caller to keep the v_ member alive long enough we can add a move assignment operator, which does the same as the copy assignment operator. I'm also guessing that existing assignment operator should actually be sfinae-d out for vector_value_proxy right-hand sides?

Yes to both comments. I can't reproduce the issue locally, though.

@hkaiser the fix in https://gist.github.com/hkaiser/554e5866ab5ac0111901cbcdaa19b69c is fair, but so is the warning. I wonder what the semantics of that proxy iterator type should be? If it's up to the caller to keep the v_ member alive long enough we can add a move assignment operator, which does the same as the copy assignment operator. I'm also guessing that existing assignment operator should actually be sfinae-d out for vector_value_proxy right-hand sides?

Yes to both comments. I can't reproduce the issue locally, though.

Neither can I (where locally means gcc trunk on godbolt with a small test example, gcc 9-11 all have similar behaviour)... It's possible that it's a regression/change in GCC 11 (it's still not released).

Since the build is fixed on Fedora, I will close the ticket.


CI/CD refactor

Closes #51

@ignacio-penas can we close this PR or is it still valid ?

@schaubl no longer valid, the refactor is implemented in nuvlaedge/nuvlaedge


There are some issues with the CI System (cross + GitHub Actions)

The switch to GitHub Actions and the new release of cross introduced a couple of issues:

[x] Sometimes the network connection fails on the Windows jobs (checking out the commit or publishing a release). Issue
[ ] You can't restart individual jobs, only the whole thing. Issue
[x] This uses a custom pre-release version of cross.
[x] The 32-bit macOS build has been disabled. It doesn't seem to build. Supposedly 32-bit macOS is deprecated. Not sure if that's the problem though. Rust itself is removing 32-bit macOS, so I'm considering it dead as well.
[x] The asmjs build is disabled until the next cross version comes out.
[x] FreeBSD is not supported anymore by cross. We have so many other new platforms we support now. If anyone cares enough about FreeBSD, they can fix the cross-compilation in cross.
[x] crates.io doesn't support the GitHub Actions badge yet, there's a PR https://github.com/rust-lang/crates.io/pull/1838

[ ] Looks like asmjs is broken again. I don't understand what's wrong with it. I guess we want to disable it until the LLVM backend emscripten is used by cross.

Alright, so I'll close this. While you still can't rerun an individual job, it's not that bad as GitHub Actions runs pretty fast and it's not something we can do something about. Eventually they'll support it and then we can be happy about it, but that's about it.

Alright, so I'll close this. While you still can't rerun an individual job, it's not that bad as GitHub Actions runs pretty fast and it's not something we can do something about. Eventually they'll support it and then we can be happy about it, but that's about it.


Unable to use open_file click events with client audience

This is because the Vanilla style serializer is only able to write, not read show_file click events, and this serializer is used by the non-wrapping serializer.

Fixed by #10


Add Media Remote Control library

@yschimke mentioned on Stack Overflow that a Media Remote Control library was something that was under consideration for addition to horologist. I'd love to see that happen eventually, so I'm opening an issue to make sure that the idea doesn't get lost.

Yes, thanks for raising.  We will update when this functionality is available in some form and also include a sample.

Out of scope, if implemented, should be a platform feature.  Will add if that becomes a thing.


Revert "Move dust to gpt-4o"

Move back Dust to Sonnet?
Reverts dust-tt/dust#7627

I prefer gpt-4o but I also don't mind :)


Sync with 2017.06.26-1

fixed infinite loop on getting fully qualified name

Codecov Report

Merging #20 into master will decrease coverage by 0.03%.
The diff coverage is 25%.

@@            Coverage Diff             @@
##           master      #20      +/-   ##
==========================================
- Coverage   86.25%   86.21%   -0.04%
==========================================
  Files          40       40
  Lines        2364     2365       +1
==========================================
  Hits         2039     2039
- Misses        325      326       +1

Impacted Files
Coverage Δ

lib/winss/filesystem_interface.cpp
11.59% <25%> (-0.09%)
:arrow_down:

Continue to review full report at Codecov.

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


Suggestion - option to trim and remove special characters and spaces from column headings

For the scripts I've written, it would be convenient if there were options in Import-Excel to try to "normalize" column headings which become properties of the row.
For example, I've had to deal with spreadsheets where someone unexpectedly added a space at the end of a column heading... not obvious by sight, until you try to use it. Or the multi-line column heading where they press Alt-Enter in a cell.  I end up with things like:
$row."Column Name "   # Extra space at the end.. until someone decides remove it!
$row."Column`n Name"   # Embedded newline in cell heading (and space!)
Additionally, if there were an option to remove embedded spaces altogether, then this:
$row."Some Column Name"
could become
$row.SomeColumnName
No quotes necessary.
Such as:
-HeaderTrim  - trims spaces from the beginning and end of cell header, leaves embedded spaces
-HeaderDeline - removes newline characters from cell header
-HeaderDespace  - removes all whitespace from cell header (spaces, newlines)

Data scrubbing. I lean toward that be an exercise for the user of the module. Yeah, that is more work.

Also asked for here: https://github.com/dfinke/ImportExcel/issues/1258

Thanks - I did do a search before I posted, but did not come up with those two - sorry, didn't mean to duplicate.
I'm not looking to scrub the actual data, only the names of the properties that get created.
I agree about data scrubbing being my responsibility, but in this special case, since Import-Excel creates the row object array with the header cell values as the properties, how could I scrub it (before or after) the properties are created?
For example, if I use Import-Excel and it creates the row object array with the property $row."SomenStrangenColumn ", how could I scrub that after it is created (or before)?
Based on my research, the only way to do this afterward results in making a copy of the entire object array. Powershell doesn't  provide a way to rename a property.

Good that you asked the question. I added them here for tracking and note how many times it is requested.
If you want, you can review the Import-Excel function map out the change, implement the tests, ensure the code is still backward compatible.
Maybe something like this:
You could read the first row of data in the sheet (headers). $headers=Import-Excel test.xlsx -startrow 1 -endrow 1
Scrub them like you suggest
Then Import-Excel test.xlsx -startrow 2 -HeaderName $headers


Upgrade go/linter to the latest

Describe the proposal
Upgrade go/linter to the latest
The latest:
go : 1.43 - https://golang.org/dl/
lint : 1.27.0 - https://github.com/golangci/golangci-lint/releases

version 1.26.0 of linter is used.


Continuous Integration

Use Travis for continuous integration.

Travis is now working. I'll proceed in adding codecov reports.


Missing browser compatibility declaration on GitHub project homepage

As you checkout the project README at https://github.com/paulirish/matchMedia.js clearly the most important thing you need to know about a polyfill is missing... browser compatibility!
The README should show (preferably near the top) the minimum browsers (IE, etc) that this will work with.

I can't understand...


Automatic 'check for updates' function uncheck itself

Version: <IP_ADDRESS>
OS: Windows 10 Pro (x64)
Issue:
If you check the "Tell me when there's an update" box under the "Settings" tab and restart your PC, that option will uncheck itself when you log in to windows.

Confirmed.
It's not saving the setting, when checked.


Choose key-value DB

Alive
OSS
API: atomic get/add/del, inc/dec
Persistance
Sharding
Performance
Concurrency
Precise decimal
Durability
Fault tolerance
C#/Java client

Chosen MongoDB due to having inc/dec and decimal.


readd docs

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.07%) to 44.807%

Totals

Change from base Build<PHONE_NUMBER>:
-0.07%

Covered Lines:
371

Relevant Lines:
828

💛  - Coveralls


optimizer should implement real dataflow analysis

The optimizer should implement a dataflow analysis that is general and more comprehensive than the current ad hoc analysis.  This will be needed when we rely upon sorts (i.e. sql order by) at the output to determine when we can omit the sort because it is derived from the scan order, and when we can do an unordered scan because the flowgraph does an ordered input.
See the scoreboard implementation in analyzeCuts() for a start at this...

A better algorithm would compute USE/DEF sets at each node in the flowgraph.  The USE set would indicate an ordering requirement and the DEF set would define ordering knowledge.
Set operators could flow this info through parallel constructs.

These tests should be reenabled as part of this task:
compiler/ztests/par-put-ts-rename-count.yaml
compiler/ztests/par-put-ts-rename-sort.yaml
compiler/ztests/par-put-ts-rename.yaml


Add support for .Net 6 Windows tentacle upgrader

Background
The Windows auto-upgrade installer (managed by Octopus Server) requires an Octopus.Tentacle.Upgrader file to kick off the auto-upgrade process. It requires .Net Framework to be installed on the user's machine.
Now that we are rolling out support for .Net 6 standalone tentacles on Windows, we need to include standalone versions of the Octopus.Tentacle.Upgrader so that customers don't need to have .Net Framework installed on their Windows machines to allow Octopus server to install and run tentacles.
The Octopus.Tentacle.CrossPlatformBundle should now include two new files:

Octopus.Tentacle.Upgrader-net6.0-win-x86.exe
Octopus.Tentacle.Upgrader-net6.0-win-x64.exe

Results
It should get rid of the following error when the server tries to upgrade a .Net 6 tentacle:

How to review this PR

Quality :heavy_check_mark:

Pre-requisites

[ ] I have read How we use GitHub Issues for help deciding when and where it's appropriate to make an issue.
[ ] I have considered informing or consulting the right people, according to the ownership map.
[ ] I have considered appropriate testing for my change.

 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.


Remove unused Balance component

Summary
A description of the changes proposed in the pull request.
Fixes #number
Checklist

[ ] Change is small and easy to review (please split big changes into multiple PRs)
[ ] Change is consistent with architecture
[ ] Change is consistent with test architecture
[ ] Change is consistent with naming conventions
[ ] New code is covered with tests
[ ] Tests related to old code are updated
[ ] Documentation is up to date with changes

I removed this component and associated with it images and styles in this PR: https://github.com/UniversalLogin/UniversalLoginSDK/pull/1384. So I close this PR