Set up GitHub actions to automate Rules Scala releases

Minimally release should contain copy/paste setup instructions with matching archive url and sha256. Eg.:
# WORKSPACE
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

skylib_version = "1.0.3"
http_archive(
    name = "bazel_skylib",
    sha256 = "1c531376ac7e5a180e0237938a2536de0c54d93f5c278634818e0efc952dd56c",
    type = "tar.gz",
    url = "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/{}/bazel-skylib-{}.tar.gz".format(skylib_version, skylib_version),
)

http_archive(
    name = "io_bazel_rules_scala",
    url = "https://github.com/bazelbuild/rules_scala/releases/download/20220201/rules_scala-20220201.zip",
    type = "zip",
    strip_prefix = "rules_scala-20220201",
    sha256 = "77a3b9308a8780fff3f10cdbbe36d55164b85a48123033f5e970fdae262e8eb2",
)

# Stores Scala version and other configuration
# 2.12 is a default version, other versions can be use by passing them explicitly:
# scala_config(scala_version = "2.11.12")
load("@io_bazel_rules_scala//:scala_config.bzl", "scala_config")
scala_config()

load("@io_bazel_rules_scala//scala:scala.bzl", "rules_scala_setup", "rules_scala_toolchain_deps_repositories")

# loads other rules Rules Scala depends on
rules_scala_setup()

# loads Maven deps like Scala compiler and standard libs, on production projects you should consider
# defining a custom deps toolchains to use your project libs instead
rules_scala_toolchain_deps_repositories(fetch_sources = True)

load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains")
rules_proto_dependencies()
rules_proto_toolchains()

load("@io_bazel_rules_scala//scala:toolchains.bzl", "scala_register_toolchains")
scala_register_toolchains()

For the inspiration and possible implementations, we can look how other rules have implemented releases. Eg.: rules_pythin, rules_js

Happy to take a look at this later this week. I am not super familiar with github actions, but those two examples you linked look straightforward enough.

Happy to take a look at this later this week. I am not super familiar with github actions, but those two examples you linked look straightforward enough.

@jvandew go ahead! Your help is highly appreciated!


Python Extension--Extension host terminated unexpectly

Environment data

VS Code version: 1.21.1
Extension version (available under the Extensions sidebar): 2018.2.1
OS and version: Windows 10 1709
Python version (& distribution if applicable, e.g. Anaconda): Anaconda 3 5.1.0
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): conda
Relevant/affected Python packages and their versions: all

Actual behavior
Open Visual Studio Code with the Python extension, attempt to execute test script, and receive the error: Extension host terminated unexpectedly.
Expected  behavior
Expected open Visual Studio Code with the Python extension and execute my test script.
Steps to reproduce:

Install the Python Extension
Open a Python script and Execute

Logs
Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)
Blank

Output from Console under the Developer Tools panel (toggle Developer Tools on under Help)
/C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:3247 Overwriting grammar scope name to file mapping for scope source.python.
Old grammar file: c:\Program Files\Microsoft VS Code\resources\app\extensions\python\syntaxes\MagicPython.tmLanguage.json.
New grammar file: C:\Users\dasprigg\.vscode\extensions\magicstack.magicpython-1.0.12\grammars\MagicPython.tmLanguage
e.register @ /C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:3247
/C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:3247 Overwriting grammar scope name to file mapping for scope source.python.
Old grammar file: C:\Users\dasprigg\.vscode\extensions\magicstack.magicpython-1.0.12\grammars\MagicPython.tmLanguage.
New grammar file: C:\Users\dasprigg\.vscode\extensions\tht13.python-0.2.3\syntaxes\python.tmLanguage
e.register @ /C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:3247
/C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:3247 Overwriting grammar scope name to file mapping for scope source.regexp.python.
Old grammar file: c:\Program Files\Microsoft VS Code\resources\app\extensions\python\syntaxes\MagicRegExp.tmLanguage.json.
New grammar file: C:\Users\dasprigg\.vscode\extensions\tht13.python-0.2.3\syntaxes\Regular Expressions (Python).tmLanguage
e.register @ /C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:3247
/C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:257 [Extension Host] activate
/C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:2830 Extension host terminated unexpectedly. Code:<PHONE_NUMBER>  Signal:  null
O._onExtensionHostCrashed @ /C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:2830
/C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:2207 Extension host terminated unexpectedly.
e.onDidNotificationChange @ /C:/Program Files/Microsoft VS Code/resources/app/out/vs/workbench/workbench.main.js:2207
3dom.ts:187 [Violation] Added non-passive event listener to a scroll-blocking 'mousewheel' event. Consider marking event handler as 'passive' to make the page more responsive.

Can you try uninstalling and re-installing the extension? This usually pops up when VS Code's auto-update mechanism hiccups.

Hi Brett,
Thanks for getting back to me, I re-installed the extension, restarted VS Code for good measure, and attempted to run the script. I received the same error message.
Thanks,
David Spriggs
Sent from Mail for Windows 10
From: Brett Cannon
Sent: Monday, March 19, 2018 2:56 PM
To: Microsoft/vscode-python
Cc: dragoncrane65; Author
Subject: Re: [Microsoft/vscode-python] Python Extension--Extension hostterminated unexpectly (#1103)
Can you try uninstalling and re-installing the extension? This usually pops up when VS Code's auto-update mechanism hiccups.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Closing as a duplicate of https://github.com/Microsoft/vscode-python/issues/342

@dragoncrane65
Please could you follow the instructions here and upload the log.log file in that issue. Thanks

@brettcannon  thanks


Potential Bug in Liquidate Spot

Should this be:
shouldLiquidateSpot |= liqee.getNet(cache.rootBankCache[i], i).isNeg();

Yeah looks like a bug. @riordanp can you patch?

nevermind I fixed; thanks @buffalu  for pointing out the bug

np!


Add support for selecting from queries

Need support for queries like:
table = Table('abc')
Query.from_(
Query.from_(table).select((table.foo+table.bar).as_('a')
).select('a')

Added support for selecting from subqueries


Fix bug where transparency of 0 is ignored

Since 0 is falsey in javascript, we were ignoring this.props.transparency when it was set to 0. Also remove the redundant default value (already defined by defaultProps)

Hi @cmmartin,
Thanks for this update. It looks great.
I will just confirm one thing on my end and soon merge this.

Anything on this being merged?

This below PR has tackled transparency with custom background color.
https://github.com/shahnawaz/react-native-barcode-mask/pull/12
Closing this PR.
Thanks for raising this issue.


[1ES] Add RepositoryInfo.targets file

Issue describing the changes in this PR
resolves #issue_for_this_pr
Pull request checklist

[x] My changes do not require documentation changes

[ ] Otherwise: Documentation issue linked to PR

[x] My changes should not be added to the release notes for the next release

[ ] Otherwise: I've added my notes to release_notes.md

[x] My changes do not need to be backported to a previous version

[ ] Otherwise: Backport tracked by issue/PR #issue_or_pr

[x] I have added all required tests (Unit tests, E2E tests)

Additional information
Add RepositoryInfo.targets file

Let's also update the build to include the path for these files.


Lane lines cannot be displayed in x86 webcamera environment

Describe the bug
I connected a webcamera to the openpilot, the UI can display the camera's picture, but no lane lines appear when capturing the road video.

By printing the log, I found it is stuck in the receiving loop of modeld.cc, and the value of meta_main.timestamp_sof is always 0.
    // Keep receiving frames until we are at least 1 frame ahead of previous extra frame
    while (meta_main.timestamp_sof < meta_extra.timestamp_sof + 25000000ULL) {
      buf_main = vipc_client_main.recv(&meta_main);
      if (buf_main == nullptr)  break;
    }

I tried assigning a value to meta_main.timestamp_sof in camera_common.cc CameraBuf::acquire() but it still doesn't look like the data is being transferred to the model

  cur_frame_data.processing_time = (millis_since_boot() - start_time) / 1000.0;
  cur_frame_data.timestamp_sof= int(cur_frame_data.frame_id * 0.05 * 1e9);
  cur_frame_data.timestamp_eof= int(cur_frame_data.frame_id * 0.05 * 1e9);
  VisionIpcBufExtra extra = {
                        cur_frame_data.frame_id,
                        cur_frame_data.timestamp_sof,
                        cur_frame_data.timestamp_eof,
  };
  cur_rgb_buf->set_frame_id(cur_frame_data.frame_id);
  cur_yuv_buf->set_frame_id(cur_frame_data.frame_id);
  vipc_server->send(cur_rgb_buf, &extra);
  vipc_server->send(cur_yuv_buf, &extra);

And if I close the loop or make the value of meta_main.timestamp_sof more than 25ms, it keeps printing LOGE("vipc_client_main no frame"); error

The environment：

Instead of using pandas, put the vehicle in the Onroad state by manually configuring should_start

OS Version
Ubuntu 20.04
openpilot version or commit
No response
Additional info
No response

What code are you using to send webcam frames over VisionIPC? Make sure you send the frames over the wide angle stream VISION_STREAM_WIDE_ROAD, and set the WideCameraOnly param to enable 1 camera mode.

What code are you using to send webcam frames over VisionIPC? Make sure you send the frames over the wide angle stream VISION_STREAM_WIDE_ROAD, and set the WideCameraOnly param to enable 1 camera mode.

thank you for your reply!
I check out code from master branch, and I send webcam frames using camera_common.cc CameraBuf::acquire()
  cur_yuv_buf = vipc_server->get_buffer(yuv_type);
  rgb2yuv->queue(q, cur_rgb_buf->buf_cl, cur_yuv_buf->buf_cl);

  cur_frame_data.processing_time = (millis_since_boot() - start_time) / 1000.0;
  VisionIpcBufExtra extra = {
                        cur_frame_data.frame_id,
                        cur_frame_data.timestamp_sof,
                        cur_frame_data.timestamp_eof,
  };
  cur_rgb_buf->set_frame_id(cur_frame_data.frame_id);
  cur_yuv_buf->set_frame_id(cur_frame_data.frame_id);
  vipc_server->send(cur_rgb_buf, &extra);
  vipc_server->send(cur_yuv_buf, &extra);

Code of webcamera init in camera_webcam.cc
void cameras_init(VisionIpcServer *v, MultiCameraState *s, cl_device_id device_id, cl_context ctx) {
  camera_init(v, &s->road_cam, CAMERA_ID_LGC920, 20, device_id, ctx,
              VISION_STREAM_RGB_ROAD, VISION_STREAM_ROAD);
  camera_init(v, &s->driver_cam, CAMERA_ID_LGC615, 10, device_id, ctx,
              VISION_STREAM_RGB_DRIVER, VISION_STREAM_DRIVER);
  s->pm = new PubMaster({"roadCameraState", "driverCameraState", "thumbnail"});
}

Should I change VISION_STREAM_RGB_ROAD, VISION_STREAM_ROAD here to VISION_STREAM_RGB_WIDE_ROAD, VISION_STREAM_WIDE_ROAD ?
By the way, if I want to set the WideCameraOnly param. Is it by the following method?

Add {"WideCameraOnly", PERSISTENT}, in param.cc .

Add a new file named WideCameraOnly in /home/.comma/params/d/ and set value 1.

Looks like you're not using the latest code. camera_webcam.cc was removed because it no longer worked. That param should already be in params.cc.
The way forward is a webcam camera server written in python using something like openCV to do the heavy lifting, we just haven't gotten around to actually writing it (https://github.com/commaai/openpilot/issues/24590). There are python bindings for VisionIPC that you can use for this purpose.

Well, I found a version for x86 webcam in @zorrobyte  project https://github.com/zorrobyte/openpilot
Although currently running his code, there is still no lane line display, but it seems to have the correct direction.

Well, I found a version for x86 webcam in @zorrobyte project https://github.com/zorrobyte/openpilot
Although currently running his code, there is still no lane line display, but it seems to have the correct direction.

I stopped work as comma was going to re-write x86 and it's unfinished. Willem is right, everything you need should be in bridge.py. Apart from coming up with transforms, you'll just need to handle threading in a smart way as OpenCV can be a little rough with multiple camera streams.
For experimentation, I'd recommend VidGear as it'll abstract most of the difficulty handling cameras so you can focus on the implementation @orcgeorge  https://abhitronix.github.io/vidgear/v0.2.5-stable/
And as a final note, I chose to leave the comma discord. I hang out on the Retropilot one these days and focus on OSS hardware. Cheers!

Describe the bug
I connected a webcamera to the openpilot, the UI can display the camera's picture, but no lane lines appear when capturing the road video.

By printing the log, I found it is stuck in the receiving loop of modeld.cc, and the value of meta_main.timestamp_sof is always 0.
    // Keep receiving frames until we are at least 1 frame ahead of previous extra frame
    while (meta_main.timestamp_sof < meta_extra.timestamp_sof + 25000000ULL) {
      buf_main = vipc_client_main.recv(&meta_main);
      if (buf_main == nullptr)  break;
    }

I tried assigning a value to meta_main.timestamp_sof in camera_common.cc CameraBuf::acquire() but it still doesn't look like the data is being transferred to the model

  cur_frame_data.processing_time = (millis_since_boot() - start_time) / 1000.0;
  cur_frame_data.timestamp_sof= int(cur_frame_data.frame_id * 0.05 * 1e9);
  cur_frame_data.timestamp_eof= int(cur_frame_data.frame_id * 0.05 * 1e9);
  VisionIpcBufExtra extra = {
                        cur_frame_data.frame_id,
                        cur_frame_data.timestamp_sof,
                        cur_frame_data.timestamp_eof,
  };
  cur_rgb_buf->set_frame_id(cur_frame_data.frame_id);
  cur_yuv_buf->set_frame_id(cur_frame_data.frame_id);
  vipc_server->send(cur_rgb_buf, &extra);
  vipc_server->send(cur_yuv_buf, &extra);

And if I close the loop or make the value of meta_main.timestamp_sof more than 25ms, it keeps printing LOGE("vipc_client_main no frame"); error

The environment：

Instead of using pandas, put the vehicle in the Onroad state by manually configuring should_start

OS Version
Ubuntu 20.04
openpilot version or commit
No response
Additional info
No response

Hi, do you mind sharing which openpilot version are you using?


Create devcontainer.json

Summary
Details and comments

 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.

 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.

Closing this one as unneeded. You are free to use dev containers locally.


[SPARK-41629][CONNECT] Support for Protocol Extensions in Relation and Expression

What changes were proposed in this pull request?
This PR adds an extension mechanism to the Spark Connect protocol to support custom Relation and Expression types. This is necessary to support custom extensions in Spark like Delta or custom plugins in Catalyst.
This is achieved by adding protobuf.Any fields in Relation, Command, and Expression. To load the extension, this PR adds two configuration flags to indicate which classes should be loaded.

spark.connect.extensions.relation.classes
spark.connect.extensions.expression.classes
spark.connect.extensions.command.classes

To add a new plugin, the consumers have to implement either RelationPlugin, CommandPlugin,  or ExpressionPlugin and implement the corresponding transform() method. If the plugin does not support the transformation of the input, they plugin must return None.
Below is a simplified example of an expression and relation plugin.
First, define the custom message type that are necessary for the particular input.
message ExamplePluginRelation {
  Relation input = 1;
  string custom_field = 2;

}

message ExamplePluginExpression {
  Expression child = 1;
  string custom_field = 2;
}

Second, define the necessary RelationPlugin and ExpressionPlugin implementations.
class ExampleRelationPlugin extends RelationPlugin {
  override def transform(
      relation: protobuf.Any,
      planner: SparkConnectPlanner): Option[LogicalPlan] = {

    if (!relation.is(classOf[proto.ExamplePluginRelation])) {
      return None
    }
    val plugin = relation.unpack(classOf[proto.ExamplePluginRelation])
    Some(planner.transformRelation(plugin.getInput))
  }
}

class ExampleExpressionPlugin extends ExpressionPlugin {
  override def transform(
      relation: protobuf.Any,
      planner: SparkConnectPlanner): Option[Expression] = {
    if (!relation.is(classOf[proto.ExamplePluginExpression])) {
      return None
    }
    val exp = relation.unpack(classOf[proto.ExamplePluginExpression])
    Some(
      Alias(planner.transformExpression(exp.getChild), exp.getCustomField)(explicitMetadata =
        None))
  }
}

Now, on the client side, the new extensions simply have to be encoded into the protobuf.Any value to be available once the the plugins are loaded. Below is an example for wrapping the custom message type into a standard Relation with a Range child.
Relation
  .newBuilder()
  .setExtension(
    protobuf.Any.pack(
      proto.ExamplePluginRelation
        .newBuilder()
        .setInput(
          proto.Relation
            .newBuilder()
            .setRange(proto.Range
              .newBuilder()
              .setStart(0)
              .setEnd(10)
              .setStep(1)))
        .build()))

When the plan is transformed the custom extensions will behave like any other built-in functionality of Spark.
For an end-to-end example the code in SparkConnectPluginRegistrySuite provides a full working example.
Why are the changes needed?
Extensibility
Does this PR introduce any user-facing change?
Yes, adds a new extension mechanism to the Spark Connect protoocol.
How was this patch tested?
Added test coverage for the plugin registry, and end to end transformation and execution.

R: @cloud-fan @hvanhovell @HyukjinKwon @zhengruifeng

R: @amaliujia

Will add support for Command in the same patch.

Added the missing generated Python files.

LGTM, merged into master

@sthagedorn can you post this in the dev mailing list thanks!


Documentation fix for SIE_STATUS.CONNECTED

This PR contains a documentation fix for the issue referred to in https://github.com/raspberrypi/pico-feedback/issues/110

Thanks for the PR, but unfortunately it's not quite this simple. These files are autogenerated, so there's a (private) "upstream" file that we need to edit.


How to override the browser to use for custom tabs?

Xamarin.Android Version:
8.1
Operating System & Version:
Windows 7, Visual Studio 2017
Support Libraries Version (eg: 23.3.0):
Xamarin.Android.Support.CustomTabs version <IP_ADDRESS>
Describe your Issue:
I would like an example of how to override the package to use to display custom tabs.  On a phone that has Microsoft Edge for Android installed and set as the default browser app, custom tabs do not work properly, so we would like to detect this and change back to "com.android.chrome".  However I am not seeing an example of how to do this.  I tried passing "com.android.chrome" to BindService on the custom tabs activity manager, but Edge still was used, so I'm clearly doing something wrong.
(You can ignore most of this code, it's a work in progress, an early attempt at making this sample more robust in cases where Edge is installed, or where no browser is installed that supports custom tabs https://github.com/IdentityModel/IdentityModel.OidcClient.Samples/blob/master/AndroidClientChromeCustomTabs/AndroidClientChromeCustomTabs/ChromeCustomTabsWebView.cs )
using Android.Content;
using Android.Graphics;
using Android.Support.CustomTabs;
using IdentityModel.OidcClient.Browser;
using System;
using System.Threading.Tasks;

namespace Auth0.OidcClient
{
    public class ChromeCustomTabsWebView : IBrowser
    {
        private readonly Activity context;
        private CustomTabsActivityManager customTabsManager;

        public ChromeCustomTabsWebView(Activity context)
        {
            this.context = context;
        }

        public Task<BrowserResult> InvokeAsync(BrowserOptions options)
        {
            if (string.IsNullOrWhiteSpace(options.StartUrl))
            {
                throw new ArgumentException("Missing StartUrl", nameof(options));
            }

            if (string.IsNullOrWhiteSpace(options.EndUrl))
            {
                throw new ArgumentException("Missing EndUrl", nameof(options));
            }

            // must be able to wait for the intent to be finished to continue
            // with setting the task result
            var tcs = new TaskCompletionSource<BrowserResult>();

            // create & open chrome custom tab
            this.customTabsManager = new CustomTabsActivityManager(this.context);

            var packageToUse = CustomTabsHelper.GetPackageNameToUse(this.context);

            // If Microsoft Edge for Android is installed and set as default browser app,
            // use Chrome instead since Edge seems to currently have some bugs in their
            // custom tab implementation
            if ("com.microsoft.emmx".Equals(packageToUse, StringComparison.OrdinalIgnoreCase))
            {
                packageToUse = "com.android.chrome";
            }

            if (!this.customTabsManager.BindService(packageToUse))  <===== Edge was still used
            {
                // Cannot use custom tabs, launch URL another way
                var uri = Android.Net.Uri.Parse(options.StartUrl);

                var intent = new Intent(Intent.ActionView, uri);

                intent.AddFlags(ActivityFlags.NoHistory)
                    .AddFlags(ActivityFlags.NewTask);

                Application.Context.StartActivity(intent);
            }
            else
            {
                // build custom tab
                var builder = new CustomTabsIntent.Builder(this.customTabsManager.Session)
                   .SetToolbarColor(Color.Argb(255, 52, 152, 219))
                   .SetShowTitle(true)
                   .EnableUrlBarHiding();

                var customTabsIntent = builder.Build();

                // ensures the intent is not kept in the history stack, which makes
                // sure navigating away from it will close it
                customTabsIntent.Intent.AddFlags(ActivityFlags.NoHistory);

                void callback(string response)
                {
                    // remove handler
                    ActivityMediator.Instance.ActivityMessageReceived -= callback;

                    // set result
                    if (response == "UserCancel")
                    {
                        tcs.SetResult(new BrowserResult()
                        {
                            ResultType = BrowserResultType.UserCancel
                        });
                    }
                    else
                    {
                        tcs.SetResult(new BrowserResult()
                        {
                            Response = response,
                            ResultType = BrowserResultType.Success
                        });
                    }
                }

                // attach handler
                ActivityMediator.Instance.ActivityMessageReceived += callback;

                // launch
                customTabsIntent.LaunchUrl(this.context, Android.Net.Uri.Parse(options.StartUrl));
            }

            return tcs.Task;
        }
    }
}

Solved the issue. I just needed a night to sleep on it (plus a little help from stack overflow)
I was missing a single line to SetPackage()
                :
                var customTabsIntent = builder.Build();

                // ensures the intent is not kept in the history stack, which makes
                // sure navigating away from it will close it
                customTabsIntent.Intent.AddFlags(ActivityFlags.NoHistory);

                customTabsIntent.Intent.SetPackage(packageToUse); <===== SetPackage does the trick
                :


New Function Get-DbaTraceFile

Type of Change

[ ] Bug fix (non-breaking change, fixes #)
[X] New feature (non-breaking change, adds functionality)
[ ] Breaking change (effects multiple commands or functionality)
[ ] Ran manual Pester test and has passed (`.\tests\manual.pester.ps1)
[ ] Adding code coverage to existing functionality
[X] Pester test is included
[ ] Nunit test is included
[ ] Documentation
[ ] Build system

Purpose
New function for finding traces that are running on SQL Server
Screenshots

HECK YAHHHHHHHHH!

@potatoqualitee What do you mean delete.  I wonder how this got in master. Ugh.

@gbargsley there are two Get-DbaTraceFile functions showing in the PR. You have one saved under the root dbatools folder and then one under dbatools\functions. Need to delete that one under the root folder.

Ok, I think I fixed it now.  But my pester test failed.  How do I troubleshoot that?

You likely need to validate in your test that the default trace is enabled. It may not be for Appveyor builds.
The alternative would be to just create a basic trace, does not have to run, but will provide a solid item that you can validate your output against in the test.

Don't forget to sync your changes because it is still there. It also looks like your file in the root folder is the one that needs to be submitted. You could just move that one to the functions folder and let it overwrite the current one...

Ok, I think I made the proper changes.

whoaaa i could have sworn that Read-DbaTraceFile had a Test! whatttt. Try $script:instance2 and if that doesn't work, then start a default trace
exec sp_configure 'defalut trace', 1;
reconfigure with override;

sweet, you did this on a branch so I'll update it with what it needs!

Still shows test failed.  But I looked and default trace enabled is on as a default of SQL Server.  So I would think every instance would have it on unless explicitly turned off.

sweet we got one pass 💯


Add NaverNews & Korean language support.

news.naver.com
parsing not working pretty well..
news.naver.com is the largest news provider in korea, used by more than 30,000,000 users.
thnks!

thanks for filing this @softmarshmallow, i will take a look. 👍


Python support for DiffEqGPU

Is there any plan to add Python support for DiffEqGPU.jlsimilar to how DifferentialEquations.jl can be used from Python using diffeqpy?

I haven't tried it yet. Maybe post a MWE?
Something like this should work: https://scicomp.stackexchange.com/questions/36994/cuda-python-for-numerical-integration-and-solving-differential-equations

I think they mean like what we have with R. https://www.stochasticlifestyle.com/gpu-accelerated-ode-solving-in-r-with-julia-the-language-of-libraries/ . The key thing we are missing there is that MTK tracing doesn't work in Python.

I think they mean like what we have with R. https://www.stochasticlifestyle.com/gpu-accelerated-ode-solving-in-r-with-julia-the-language-of-libraries/ . The key thing we are missing there is that MTK tracing doesn't work in Python.

Yes, this is what I was referring to. It's unfortunate that it is not supported in Python.

It has to do with the wrapper library, not necessarily the GPU library.  https://github.com/SciML/diffeqpy/issues/78 and https://github.com/SciML/diffeqpy/issues/57


Update ui-router-ng2 to beta.4 + angular 2.4.x

as said in the title

@christopherthielen , @kennyjacob  : some rumors says that if you some day do the merge on this PR, god himself will come to you to give you a cookie.

@asone I'm sorry to disappoint! I haven't been a part of this project and I don't have merge permissions on this. I don't know if there's anyone else who could help you out, but I think you'll have more luck on the main ui-router repo. Thanks.

I updated the quickstart to angular 4 and ui-router 1.0.0-beta.6
Thanks for the PR and sorry I missed it when it was submitted!


Open to contributors for 3.0 release?

Hi all. I'm looking forward to using Swish 3.0 for the Codable stuff. Are there tasks that I could help out with to move this to an official 3.0 release? I'm using this via CocoaPods and I'd rather not point at master.

We've had this sitting as a draft release for a couple weeks now - consider opening this issue your first contribution 👍 https://github.com/thoughtbot/Swish/releases/tag/v3.0.0

Nice! Thanks @sidraval.


Added more sklearn modules

Sklearn is already included but it will be better if modules within sklearn are also included. Added the following modules:

LinearRegression
LogisticRegression
StandardScaler
MinMaxScaler
CountVectorizer

Great, thank you :)


bug/refactor: BU ALANI TARA (scan this area) button does not trigger a request

Bug Definition
The BU ALANI TARA (scan this area) button is not triggering a request. In the same vein, no request is performed after the countdown hits zero.
-- Please add discord contact information
** discord username: namcojoulder#1062**
## Bug environment
Describe the environment produces the bug. For example: rc.afetharita.com and/or afetharita.com
rc.afetharita.com
Describe how you are producing the bug step by step

Navigate to rc.afetharita.com
Click the BU ALANI TARA (SCAN THIS AREA) button (top & center of the screen)
No request is made to the /areas endpoint

Expected behavior
Even if the response is the same as the last one, a request must be made when the BU ALANI TARA (SCAN THIS AREA) button is clicked.
P.S: This might be expected behavior. (In theory, unless the REST GET URL changes, the same response will be returned, thus no benefit in making another request) In that case, it might make sense to remove the countdown completely, since we won't make a request when the countdown hits zero and the whole thing might become redundant.
Screen shots
If applicable, add screen shots to elaborate the issue.
Desktop Information

Operating System: [for example iOS]
Browser [for example, safari]
Version [for example 22]

Mobile Phone Information

Devıce: [for example iPhone6]
Operating System (with the version): [for example iOS8.1]
Version [for example default browser, safari]
Browser Version [for example 22]

Additional Context
If we are sure that the response will be the same when unless the URL changes, the countdown becomes redundant. If the explained behavior is expected behavior, removing the countdown may be considered. Or this issue can be closed.
Thanks.

Beklenen davranistan emin olamadigim icin draft PR olusturdum bunlari kismen cozen. Ilgilenmek isteyen olursa uzerine alabilir https://github.com/acikkaynak/deprem-yardim-frontend/pull/698

Right now we have 3 PRs that attempts to fix this issue:
https://github.com/acikkaynak/deprem-yardim-frontend/pull/755
https://github.com/acikkaynak/deprem-yardim-frontend/pull/713
https://github.com/acikkaynak/deprem-yardim-frontend/pull/698

@CyhnYldz could you please explain what test-failed means?
If the bug couldn't be reproduced, I'll close this issue. Otherwise, there's a PR waiting for this issue to be tested. (#755)

@CyhnYldz could you please explain what test-failed means? If the bug couldn't be reproduced, I'll close this issue. Otherwise, there's a PR waiting for this issue to be tested. (#755)

@birkaany the trigger works fine with the first 10 second count down but after that trigger is not working properly.
if it is just about the trigger button there is no problem with that. 👍

@efegurkan I close this issue cause test-failed, if you encounter this bug again, please feel free to open another issue.


fix: Line not hidden after legend selection

🐛 Bug Fix
This PR fixes a bug in superset Line chart time series annotation. The bug is when you select an annotation time series and deselect it to show all the time series, the show markers and hide line properties are not honoured.

Hi, Can anyone review this?

Hi, can anyone look into this PR. The buggy behavior is not good at all.


Example(s) missing

Examples of implementation would be nice.

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

ID: c844fe93-572f-fcf9-7752-ca8252381e89
Version Independent ID: 15f828db-95ff-1328-66bf-ddedf6c44865
Content: count() (aggregation function) - Azure Data Explorer
Content Source: data-explorer/kusto/query/count-aggfunction.md
Service: data-explorer
GitHub Login: @orspod
Microsoft Alias: orspodek

@MantisTree
Thanks for the feedback! We have assigned the issue to content author to further review the feedback and update the document as appropriate.

@sloutsky - thanks for adding the example.
@MantisTree - thanks for the feedback. I'm closing this issue for now, but feel free to continue to comment here if needed.


Marker icon SVG

Feature request
Allow an icon prop of the <Marker /> component to accept .svg files.
Why it is needed
We could have a scalable icon, which wouldn't lose quality on zoom in.
Possible implementation
<Marker icon={require("../assets/images/sample.svg")} />
Code sample
Currently, pointing to .svg file would display the default marker.
<Marker icon={require("../assets/images/sample.svg")} />

Hi @danieldanielecki,
have you tried:
<Marker>     <View style={{ width: 40, height: 56 }}>         <Svg width="100%" height="100%" viewBox="0 0 40 56">             <Path d="M19.7 0c-10.9 .2-19.7 9.1-19.7 20v.1c0 .1 0 .2 0 .3c.1 7.6 4.5 14.1 10.7 17.4c1.8 .9 3.1 2.4 3.8 4.3l5.5 13.9l5.5-14c.7-1.8 2.1-3.3 3.8-4.2c6.4-3.4 10.7-10.1 10.7-17.8c0-11-9-20-20-20c-0.1 0-0.2 0-0.3 0Z" fill={fill} />         </Svg>     </View> </Marker

@danieldanielecki  just convert SVG to react component and use it


Move totalSupply, move member defs to top

Also, need to remove uint256 public totalSupply;   from interface (I am using GitHub editor, so I don't know how to commit multiple file changes online)

@bogomazov Sorry for not responding sooner, and thank you for submitting this patch.
I've opened discussion on the diff, but if we want to move forward with it, we'll ask that you merge this to staging first.

@bogomazov can you make this PR to staging? Otherwise we'll close it.

can you make this PR to staging?

It turns out we can do that from the edit button by the title.

I had to roll this back via force push. :(
This fixed master, but staging didn't need the fix. We should try to reduce the time between merges to staging and merging to master.


Add Cancel Course admin option

Problem
There is no admin option to cancel a course and notify participants automatically.
TODO

[x] Add cancel element to admin dashboard
[x] Cancel confirmation - there is no recovery.
[ ] Remove el.key from all DB references (trainer, courses, users:id:regs)
[ ] Send automatic notification to registered users about the cancellation.

Instead of deleting the courses from the courses/ ref, setting a false flag on an active key would allow for the reinstatement of a course.
Remove the course from the users/{userId}/regs endpoint to keep their counts accurate.
function removeUserCourse(userId, courseId) {
	return ref.child(`users/${userId}/regs/${courseId}`).remove();
}


Add msgSender arg to all event emissions

In Solidity, there is a difference between tx.origin and msg.sender.
With regard to the RPC method eth_getTransactionByHash, from will
always return tx.origin. In many cases, tx.origin and msg.sender
will have the same value. However, if the transaction utilizes a multisig
contract, there is no direct method of retrieving the multisig's address.
This commit addresses this circumstance by increasing the available data
produced by all events

add msg.sender as an event emission argument to all events
bump EPM version

msgSender args in the events should be more explicit, e.g. voter for clarity. Same as https://github.com/skmgoldin/tcr/pull/59#issuecomment-380547429


Add zod-struct to utilities for Zod

zod-struct is a utility to create simple structs using Zod schemas.

Heh, neat! Looks alot like a prototype I made about a year go (maybe there's something in it you'll find useful): https://github.com/stefanterdell/zonk
glhf


Add ingress to OM chart

Describe your changes :

I worked on the OM helm chart, because i think adding ability to deploy ingress is important for many users.

Type of change :

[] Bug fix
[x] Improvement
[] New feature
[] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[] Documentation

Frontend Preview (Screenshots) :
For frontend related change, please link screenshots of your changes preview! Optional for backend related changes.

Checklist:

[x] I have read the CONTRIBUTING document.
[ ] I have performed a self-review of my own.
[ ] I have tagged my reviewers below.
[ ] I have commented on my code, particularly in hard-to-understand areas.
[ ] My changes generate no new warnings.
[ ] I have added tests that prove my fix is effective or that my feature works.
[x] All new and existing tests passed.

Reviewers

Opps, i did not see the other PR #52


Post render action (action-encode) seems to be failing.

Describe the bug
Job gets stuck on "rendering.." message and does not show any % progress. I see that the mp4 file is begin created in the temp folder (named result.mp4) but it is not being encoded nor copied at specified destination.
My Nexrender script part for post render action:
"actions" : {
"postrender" : [
{
"module": "@nexrender/action-encode",
"output": "encoded.mp4",
"preset": "mp4",
"params": {"-vcodec": "libx264", "-r": 25}
},
{
"module" : "@nexrender/action-copy",
"input" : "encoded.mp4",
"output" : "C:\result.mp4"
}
]
}
Log:
[KzogcoVYqvGnTqYZk3qUS] working directory is: C:\Users\ContainerAdministrator\AppData\Local\Temp\nexrender\KzogcoVYqvGnT
qYZk3qUS
[KzogcoVYqvGnTqYZk3qUS] applying predownload actions...
[KzogcoVYqvGnTqYZk3qUS] downloading assets...
[KzogcoVYqvGnTqYZk3qUS] applying postdownload actions...
[KzogcoVYqvGnTqYZk3qUS] applying prerender actions...
[KzogcoVYqvGnTqYZk3qUS] running script assemble...
[KzogcoVYqvGnTqYZk3qUS] rendering job...
Information about environment

Which version of nexrender are you using?
Latest win-64 binary.

What kind of the setup do you have? (server+worker or cli)
Only worker.

Are you using pre-built binaries or globally installed npm packages?
pre-built binary.

Which kind (and version) of operating system you are running it in?
Windows 2019 Server.

Any additional information that might be helpful

Expected behavior
Should present % rendering progress and copy resulting video file to specified location.

Hey
Could you share your after effects rendering log?

I am not sure if this is the correct log file as it contains little information.
Volume Serial Number is CE15-4C82
Directory of C:\Users\ContainerAdministrator\AppData\Local\Temp\nexrender\XWoC9-TIlhAWClzPG1SRd\AEProject.aep Logs
12/20/2023  08:27 AM              .
12/20/2023  08:27 AM              ..
12/20/2023  08:28 AM             5,652 AE 12-20-2023 8-27-49 AM.txt
1 File(s)          5,652 bytes
2 Dir(s)  20,708,474,880 bytes free
C:\Users\ContainerAdministrator\AppData\Local\Temp\nexrender\XWoC9-TIlhAWClzPG1SRd\AEProject.aep Logs>type "AE 12-20-202
3 8-27-49 AM.txt"
Adobe After Effects v23.1 Windows 64 render log for project â€œAEProject.aepâ€
Rendering started on 12/20/2023 at 8:27:49 AM
12/20/2023 8:27:50 AM: Starting composition â€œScene 01â€.
12/20/2023 8:28:51 AM: Finished composition â€œScene 01â€.mp\nexrender\XWoC9-TIlhAWClzPG1SRd\result.mp4
Total Time Elapsed: 1 Min, 1 Sec
Log closed on 12/20/2023 at 8:28:51 AM

nexrender usually says the path of the ae render log file when rendering is happening
try to look in these folders:

C:\Users\ContainerAdministrator\AppData\Local\Temp\nexrender\
C:\Users\ContainerAdministrator\AppData\Local\Temp\nexrender\XWoC9-TIlhAWClzPG1SRd\

Yes I looked into that folder. There is file called AE 12-20-2023 8-27-49 AM.txt inside
C:\Users\ContainerAdministrator\AppData\Local\Temp\nexrender\XWoC9-TIlhAWClzPG1SRd\AEProject.aep Logs folder.
I didn't find anything else.

Describe the bug Job gets stuck on "rendering.." message and does not show any % progress. I see that the mp4 file is begin created in the temp folder (named result.mp4) but it is not being encoded nor copied at specified destination.
My Nexrender script part for post render action:
"actions" : { "postrender" : [ { "module": "@nexrender/action-encode", "output": "encoded.mp4", "preset": "mp4", "params": {"-vcodec": "libx264", "-r": 25} }, { "module" : "@nexrender/action-copy", "input" : "encoded.mp4", "output" : "C:\result.mp4" } ] }
Log: [KzogcoVYqvGnTqYZk3qUS] working directory is: C:\Users\ContainerAdministrator\AppData\Local\Temp\nexrender\KzogcoVYqvGnT qYZk3qUS [KzogcoVYqvGnTqYZk3qUS] applying predownload actions... [KzogcoVYqvGnTqYZk3qUS] downloading assets... [KzogcoVYqvGnTqYZk3qUS] applying postdownload actions... [KzogcoVYqvGnTqYZk3qUS] applying prerender actions... [KzogcoVYqvGnTqYZk3qUS] running script assemble... [KzogcoVYqvGnTqYZk3qUS] rendering job...
Information about environment

Which version of nexrender are you using?
Latest win-64 binary.
What kind of the setup do you have? (server+worker or cli)
Only worker.
Are you using pre-built binaries or globally installed npm packages?
pre-built binary.
Which kind (and version) of operating system you are running it in?
Windows 2019 Server.
Any additional information that might be helpful

Expected behavior Should present % rendering progress and copy resulting video file to specified location.

Hello, have you resolved the above issue? In my case, it can render normally, but the code "result.on('progress', (job, percents) => console.log('project is at: ' + percents + '%'))" will only be executed after the rendering is finished, and finally display 100%.

I believe this issue is related to the language used within after effects rendering logs. I have a theory they might've changed the logs language from always English to local languages, as seen in this issue: https://github.com/inlife/nexrender/issues/945

It is like this. I tried switching to English, and it was successfully executed. It seems that I have not fully understood this great project yet. Thank you for your response.

Could you share which language you had before, and how the after-effects rendering log looked like before?

I want to understand what potential modifications need to be made to support other languages out of the box

I previously used Chinese. In the workpath, the Chinese parts in logs like "aerender-XXX.log" are garbled.


Plugin Idea

What if we have a list of cars that are used, then a user can add a car they wrote to that list. The car can be potentially any language really but we would, of course, recommend go. These plugins are just binaries of some sort, that print something to stdout.
So this is how it would work. User exports BULLETTRAIN_CARS="time date context my_car"
at runtime, we see my_car we look for it internally if it doesn't exist we run bullettrain_my_car binary (they would have to name their plugin a certain way for it to get executed). This then appends info to the prompt? Is this doable?

This is kinda half of the solution as it won't be able to bring over the colouring.
Unless...a predefined set of ENV vars are also expected. With the suggested naming convention this could work.
I like the idea that it could make use of plugins written in any other language.
I'll work on a prototype given these ideas. Of course ideally we need to be able to tie in unlimited number of "3rd party" cars.

I like the idea.
@vadviktor Are you gonna convert the existing cars into separate binaries?

@jtyr kinda, absolutely not a chance. :)
I will still encourage Go plugins to be written and used to build into the core /(slash)/ Go knowing individuals being capable to compile their own version. It will be the "officially supported" way to do things.
This other plugin system is a really good alternative to the Go version as it opens up ability for other individuals to use and customise the prompt builder to their liking without knowing Go even. Also a great way of prototyping I guess.
Using this approach will not guarantee the best latency and I will outline that in the docs too.
Making latency as low as possible will be our best promise as I plan to wrap these external commands into a goroutine still and handle the errors there as the code plugins do.
I am very excited to get some free time to create the prototype and the documentation for it.
Also I am sure it is a v1 feature, that we must have. Thanks @gregf for the brilliant idea once again!

Thanks for your explantion, @vadviktor. I also thing that all plugins should be written in Go. But I don't like the idea that people should get their own clone of the core and hack it to get their plugin running. The core should allow to load Go Plugins instead which will not require recompilation of the core.

@jtyr I'd kindly ask you to learn Go and rethink your proposal :) Please accept the current state of the language ecosystem.

Here is a proposal for the secondary "3rd party plugin" module:
Name of the plugin: demo
Env variable naming
prefix: BULLETTRAIN_CAR_PLUGIN_
suffixes:

Suffix
Description
Default value
Mandatory

_CMD
Command with it's arguments to be executed to generate text onto STDOUT.
Creator defined.
yes

_SHOW
Used by the creator/end user to determine if the plugin should be shown in the current render.
true
no

_PAINT
Colours of the car.
Creator defined.
yes

_SYMBOL_ICON
Symbol to be displayed on the left hand side of the car.
Creator defined.
yes

_SYMBOL_PAINT
Colours of the symbol.
Creator defined.
yes

_SEPARATOR_SYMBOL
Override the right hand side separator's symbol.
Algorythm defined.
no

_SEPARATOR_PAINT
Override the right hand side separator's colours.
Algorythm defined.
no

Example:
BULLETTRAIN_CAR_PLUGIN_DEMO_SHOW
_CMD variable explained
In our example, the BULLETTRAIN_CAR_PLUGIN_DEMO_CMD variable will be the heart of the 3rd party plugin.
Here the user will put a very simple command with it's parameters if needed.
No pipes or redirections are supported here to avoid shell subtle differences.
The command has to generate a simple text to the STDOUT. Error handling is the responsibility of the 3rd party script.
Example Ruby script as a car:
Car name: demo_ruby
Put it into the list of cars:
$ export BULLETTRAIN_CARS="time dir demo_ruby"
Given that the system has a Ruby interpeter.
hw.rb:
print "Hello #{ARGV[0]}"

Env variable:
$ export BULLETTRAIN_CAR_PLUGIN_DEMO_CMD="ruby hw.rb Will"
After defining the rest of the needed env variables, the output should be displayed as a new car at the end, with the text "Hello Will".

Check out this dev branch for some preview: https://github.com/bullettrain-sh/bullettrain-go-core/tree/custom_car
I am currently dogfooding this as well. Found a nice little use case, where I just want to check upon my company vpn status, up or down.
This is my config:
export BULLETTRAIN_CAR_PLUGIN_RRI_VPN_STATUS_CMD="/home/ikon/rri_vpn_status.sh"
export BULLETTRAIN_CAR_PLUGIN_RRI_VPN_STATUS_PAINT="yellow:black"
export BULLETTRAIN_CAR_PLUGIN_RRI_VPN_STATUS_SYMBOL_ICON="" # <-- key icon from Nerd font
export BULLETTRAIN_CAR_PLUGIN_RRI_VPN_STATUS_SYMBOL_PAINT="yellow:black"
export BULLETTRAIN_CARS="os time date context dir python go ruby nodejs php git rri_vpn_status status"

and the plain simple shell script:
#!/bin/zsh

if [[ $(ip tuntap list | wc -l) -gt 0 ]]; then
    echo -n "up"
else
    echo -n "down"
fi

With this, I faced a limitation when I wanted to "dynamically" paint the key red or green depending on the status. Not doable yet :(

Note
the support for a plugin command is very basic. I was not able to figure out a fault tolerant way to handle such cases where a command line argument would need to be quoted:
somecmd --arg -p "hello world"
For now, arguments without quotes are supported. Anything fancier should go into a file to be parsed, like in my example in the above comment.

Couldn't you change the color somehow via subshell?
export BULLETTRAIN_CAR_PLUGIN_RRI_VPN_STATUS_SYMBOL_PAINT="$(if [[ $(/home/ikon/rri_vpn_status.sh) == 'up' ]]; then echo yellow:black; else echo red:black; fi)"

Changing the properties within a plugin command is not possible, because it will run as a sub process/thread. Changing env variables for the parent is not possible.

As an afterthought, I may not even go further to make it possible because this plugin support is only secondary to the Go version, and therefore low priority.

You are right. What about to identify the ^\$\(.*\)$ in the variable value and run it from the car process as a shell command?

This is only a neat feature I was looking at  while I am using the plugin myself, not as blocking problem to deliver the plugin feature. :)
A few more days and I could decide if this form of the "custom car" feature is stable enough. And maybe I get some reports from you guys :) just keep an eye out for commits ;)

I have just noticed that the depth indicator set to 1 in the dir car doesn't produce the desired output.

@jtyr please submit a ticket with examples and more info :) I will surely look into it as I have spent so much time testing it. Since then it Works For Me ™ XD

Closing the current thread as the first working version went into the new v0.6 release.


Fixed link to issues

It was pointing to migrations plugin issues. Now pointing to the proper issues page.

Thanks @rogercampa.


500 Reply when sending FIN packet right after data

Do you want to request a feature or report a bug?
Report an issue.

What did you do?
Our current setup includes loadbalancer (F5) that forwards requests to traefik in docker that forwards requests to nginx in the same swarm.
Loadbalancer use a simple script to check availability of backends (traefik in this case) to get any HTTP reply.
After upgrading to the latest version of traefik 1.5.0 this check started to return 500 (traefik reply) because of reasons I'm going to explain further (it's not a single sentence issue).
The issue itself comes from a fact, that loadbalancer on a network level sends all packets at once after TCP connection is established. That means that after connection is made and handshaked, all further client packets are sent at once, packet with data plus FIN packet, which on the network level means "here is the data, give me reply and then we're done", it doesn't mean "brake connection now", this is not RST packet. But seems that due to thing that traefik asynchronously forwarded request to nginx behind it, it is not waiting for anything and is in state "0 bytes sent, doing nothing", so seeing FIN packet at this point makes it finish the connection with nothing sent down the line and treat this as 500 Internal Server Error.
We have done several test to confirm the issue and here are examples of what and how we did to reproduce the problem.

Request is sent to traefik producing the same network sequence on the line with FIN packet right after data packet:

$ { echo -n $'GET /some HTTP/1.1\r\nHost: <IP_ADDRESS>\r\n\r\n'; } | nc <IP_ADDRESS> 80
HTTP/1.1 500 Internal Server Error
Date: Fri, 26 Jan 2018 15:43:25 GMT
Content-Length: 21
Content-Type: text/plain; charset=utf-8

Internal Server Error~ $

Request is sent to same traefik inserting small pause after throwing data in

$ { echo -n $'GET /some HTTP/1.1\r\nHost: <IP_ADDRESS>\r\n\r\n'; sleep 0.1; } | nc <IP_ADDRESS> 80
HTTP/1.1 401 Unauthorized
Content-Length: 188
Content-Type: text/html
Date: Fri, 26 Jan 2018 15:44:15 GMT
Server: nginx
Www-Authenticate: Basic realm="Admin area"

<title>401 Authorization Required</title>

401 Authorization Required

nginx

Request is sent to some nginx that forwards requests to other nginx (so basically the same composition with nginx instead of traefik before another nginx:

$ { echo -n $'GET /some HTTP/1.1\r\nHost: <IP_ADDRESS>\r\n\r\n'; } | nc <IP_ADDRESS> 80
HTTP/1.1 404 Not Found
Date: Fri, 26 Jan 2018 15:45:42 GMT
Server: nginx/1.0.5
Content-Type: text/html
Content-Length: 168
Via: 1.1 shop-old.orion-express.ru

<title>404 Not Found</title>

404 Not Found

nginx/1.0.5

Please also note that issue started after upgrading traefik to version 1.5.0.
I've downgraded version by version back and the issue is not present in traefik 1.2.3 and is present in next version 1.3.0
This is the output using traefik 1.2.3:
$ { echo -n $'GET /some HTTP/1.1\r\nHost: <IP_ADDRESS>\r\n\r\n'; } | nc <IP_ADDRESS> 80
HTTP/1.1 401 Unauthorized
Content-Length: 188
Content-Type: text/html
Date: Fri, 26 Jan 2018 16:01:59 GMT
Server: nginx
Www-Authenticate: Basic realm="Admin area"

<title>401 Authorization Required</title>

401 Authorization Required

nginx

What did you expect to see?
Traefik reply to specifically crafted (on network level) query that is not 500 (Internal Server Error).
200 or even 499 in this case would be acceptable.
What did you see instead?
Traefik reply 500 Internal Server Error
Output of traefik version: (What version of Traefik are you using?)

docker run 2aa5d83f0f88 version
Version:      v1.5.0
Codename:     cancoillotte
Go version:   go1.9.2
Built:        2018-01-23_04:42:32PM
OS/Arch:      linux/amd64

What is your environment & configuration (arguments, toml, provider, platform, ...)?
everything is default
except CMD args are:
["--web","--docker","--docker.domain=X","--docker.swarmmode","--logLevel=DEBUG"]

If applicable, please paste the log output in debug mode (--debug switch)
These are logs produced for the request mentioned above
time="2018-01-26T15:31:47Z" level=debug msg="vulcand/oxy/roundrobin/rr: begin ServeHttp on request" Request="{"Method":"GET","URL":{"Scheme":"","Opaque":"","User":null,"Host":"","Path":"/some","RawPath":"","ForceQuery":false,"RawQuery":"","Fragment":""},"Proto":"HTTP/1.1","ProtoMajor":1,"ProtoMinor":1,"Header":{},"ContentLength":0,"TransferEncoding":null,"Host":"<IP_ADDRESS>","Form":null,"PostForm":null,"MultipartForm":null,"Trailer":null,"RemoteAddr":"<IP_ADDRESS>:62352","RequestURI":"/some","TLS":null}"
time="2018-01-26T15:31:47Z" level=debug msg="vulcand/oxy/roundrobin/rr: Forwarding this request to URL" Request="{"Method":"GET","URL":{"Scheme":"","Opaque":"","User":null,"Host":"","Path":"/some","RawPath":"","ForceQuery":false,"RawQuery":"","Fragment":""},"Proto":"HTTP/1.1","ProtoMajor":1,"ProtoMinor":1,"Header":{},"ContentLength":0,"TransferEncoding":null,"Host":"<IP_ADDRESS>","Form":null,"PostForm":null,"MultipartForm":null,"Trailer":null,"RemoteAddr":"<IP_ADDRESS>:62352","RequestURI":"/some","TLS":null}" ForwardURL=http://<IP_ADDRESS>:80
time="2018-01-26T15:31:47Z" level=debug msg="vulcand/oxy/forward: begin ServeHttp on request" Request="{"Method":"GET","URL":{"Scheme":"http","Opaque":"","User":null,"Host":"<IP_ADDRESS>:80","Path":"","RawPath":"","ForceQuery":false,"RawQuery":"","Fragment":""},"Proto":"HTTP/1.1","ProtoMajor":1,"ProtoMinor":1,"Header":{},"ContentLength":0,"TransferEncoding":null,"Host":"<IP_ADDRESS>","Form":null,"PostForm":null,"MultipartForm":null,"Trailer":null,"RemoteAddr":"<IP_ADDRESS>:62352","RequestURI":"/some","TLS":null}"
time="2018-01-26T15:31:47Z" level=debug msg="vulcand/oxy/forward/http: begin ServeHttp on request" Request="{"Method":"GET","URL":{"Scheme":"http","Opaque":"","User":null,"Host":"<IP_ADDRESS>:80","Path":"","RawPath":"","ForceQuery":false,"RawQuery":"","Fragment":""},"Proto":"HTTP/1.1","ProtoMajor":1,"ProtoMinor":1,"Header":{},"ContentLength":0,"TransferEncoding":null,"Host":"<IP_ADDRESS>","Form":null,"PostForm":null,"MultipartForm":null,"Trailer":null,"RemoteAddr":"<IP_ADDRESS>:62352","RequestURI":"/some","TLS":null}"
time="2018-01-26T15:31:47Z" level=info msg="vulcand/oxy/forward/http: Round trip: http://<IP_ADDRESS>:80, code: 500, Length: 21, duration: 104.872µs"
time="2018-01-26T15:31:47Z" level=debug msg="vulcand/oxy/forward/http: completed ServeHttp on request" Request="{"Method":"GET","URL":{"Scheme":"http","Opaque":"","User":null,"Host":"<IP_ADDRESS>:80","Path":"","RawPath":"","ForceQuery":false,"RawQuery":"","Fragment":""},"Proto":"HTTP/1.1","ProtoMajor":1,"ProtoMinor":1,"Header":{},"ContentLength":0,"TransferEncoding":null,"Host":"<IP_ADDRESS>","Form":null,"PostForm":null,"MultipartForm":null,"Trailer":null,"RemoteAddr":"<IP_ADDRESS>:62352","RequestURI":"/some","TLS":null}"
time="2018-01-26T15:31:47Z" level=debug msg="vulcand/oxy/forward: completed ServeHttp on request" Request="{"Method":"GET","URL":{"Scheme":"http","Opaque":"","User":null,"Host":"<IP_ADDRESS>:80","Path":"","RawPath":"","ForceQuery":false,"RawQuery":"","Fragment":""},"Proto":"HTTP/1.1","ProtoMajor":1,"ProtoMinor":1,"Header":{},"ContentLength":0,"TransferEncoding":null,"Host":"<IP_ADDRESS>","Form":null,"PostForm":null,"MultipartForm":null,"Trailer":null,"RemoteAddr":"<IP_ADDRESS>:62352","RequestURI":"/some","TLS":null}"
time="2018-01-26T15:31:47Z" level=debug msg="vulcand/oxy/roundrobin/rr: competed ServeHttp on request" Request="{"Method":"GET","URL":{"Scheme":"","Opaque":"","User":null,"Host":"","Path":"/some","RawPath":"","ForceQuery":false,"RawQuery":"","Fragment":""},"Proto":"HTTP/1.1","ProtoMajor":1,"ProtoMinor":1,"Header":{},"ContentLength":0,"TransferEncoding":null,"Host":"<IP_ADDRESS>","Form":null,"PostForm":null,"MultipartForm":null,"Trailer":null,"RemoteAddr":"<IP_ADDRESS>:62352","RequestURI":"/some","TLS":null}"

After some research, it comes from the version of GO 1.8+. In those version, with the FIN packet, the request has his context.Done() and that why it's impossible to transfer the request to the backend.
Need further investigation to see if it's possible to just "Undone" the context, or use a new one when there is a FIN Packet.

I forgot to mention that request on the network level is initiated to the backend.
In nginx logs behind traefik there is a line with status 499 for each request, meaning nginx received the request, but was not able to write anything to socket before the socket was closed by the client.
With a pause and on version 1.2.3 it's the same line, but with status 200, therefore client received all the data till the end.


1px border left of the 1st tab

Hi,
I saw it on a few screenshot that were share here, I have a 1px left border of the tab, pinned or not :

Do you have a solution? Is it already a known issue?
Thanks,
Alex

This was probably resolved some time ago. I think it was due to Mozilla changing the class of their titlebar spacers. I'll close it now but comment if you notice it is still happening.


Parent option is broken in Studio v2.34

Undocumented feature of using parent field for finding related image introduced in https://github.com/sanity-io/sanity-plugin-hotspot-array/commit/ba5cca3d90a9313610a6e3b5fa07049b3e38e2ee, and later revised in https://github.com/sanity-io/sanity-plugin-hotspot-array/commit/a06bb7cd5d2c9f77049c3811e14fb785d19aed2f is broken in Studio v2.34 due to performance optimizations introduced to core. It is possible that v2.33 is affected as well.
To fix the issue, this plugin should use withParent HOC introduced in https://github.com/sanity-io/sanity/pull/3672. Furthermore, the parent option should be documented for this plugin.
I could implement these changes, but would like to receive confirmation if it is ok to do so. This will require some dep updates, since the withParent HOC was introduced into the core in v2.34.

Hey Jaska, that would be great if you could submit a PR 🤩

Please find my PR https://github.com/sanity-io/sanity-plugin-hotspot-array/pull/10, which should close this issue.


UnicodeEncodeError when using .output_page

I am using .output_page and I get the following error:
"""
C:\ProgramData\Anaconda3\lib\encodings\cp1252.py in encode(self, input, final)
17 class IncrementalEncoder(codecs.IncrementalEncoder):
18     def encode(self, input, final=False):
---> 19         return codecs.charmap_encode(input,self.errors,encoding_table)[0]
20
21 class IncrementalDecoder(codecs.IncrementalDecoder):
UnicodeEncodeError: 'charmap' codec can't encode characters in position<PHONE_NUMBER>53: character maps to
"""

Thanks for the catch! I’ll probably have to add a codec feature to output_page. In the meantime, you can try calling ‘str’ on the document object. Then maybe you can try writing that string to a file by hand.


updated CircleCI config for dependency install (#131)

Updated the Install Dependency step with conditional to run npm ci for Node 7 and above, else it'll use the legacy npm install for Node 4, 5, and 6.
Resolves Issue #131.
@ibalosh

Hi @ibalosh,
Noted! Checked the CircleCI logs, and the build still seems to fail with this approach. Will look into this further.


Build failing dude to liblzma not being found

Building firmware from the modified template and am hitting this error:
error: failed to run custom build command for rust-lzma v0.6.0`
Caused by:
process didn't exit successfully: C:\Users\jerem\.cargo\dumbpad-rumcake\target\debug\build\rust-lzma-61258936f45e49e9\build-script-build (exit code: 101)
--- stderr
thread 'main' panicked at C:\Users\jerem.cargo\registry\src\index.crates.io-6f17d22bba15001f\rust-lzma-0.6.0\build.rs:13:14:
Could not find liblzma using vcpkg: LibNotFound("package liblzma is not installed for vcpkg triplet x64-windows-static-md")
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace`

delete this, i missed some important install directions

Here's how i reproduced this. I generated the basic template and then compiled with "cargo objcopy --release -- -O binary firmware.bin". The build fails on "error: failed to run custom build command for rust-lzma v0.6.0"


[Bug] Sales and Purchase Orders - Comments line

Hi AL-Team,
There is an issue, that could be fixed in Business Central.
When user add new line on Purchase/Sales Order, with Type empty (Comment), when you  choose No. from the list, Location and Dates are automatically filled in, which is incorrect.
If user doesn't fill in No. from the list, Location and Dates are empty.

First of all, I'm not sure this is incorrect, we have this logic for long time. Anyway, please do not report functional bugs here, we have no possibility to address it here. We need technical support to analyze repro steps and create hotfix requests using right channel, to make sure this is fixed.


CVE-2020-1736 ansible-lint [208] File permissions not mentioned

[208] File permissions not mentioned
base_git/tasks/main.yml:78
Task/Handler: Enable Git software collection

Hi,
The file resource is of type link, right?
It doesn't make sense to set a mode on a symlink.

This is to please ansible-lint 4.3.1. Your point is known https://github.com/ansible/ansible-lint/issues/994

Fixes the warning.


Suggestion: Make rbs/inline.rb a no-op file

👋 I just want to propose a small user-experience improvement: Instead of asking users to add require: false manually, I think alternatively this gem can:

Add rbs/inline/internal.rb to do exactly what rbs/inline.rb is doing.
Make rbs/inline.rb an empty file (or just declare the version), so users won't load anything by accident even if require: false is not added.
Require rbs/inline/internal in exe/rbs-inline

We do the same in Ruby LSP for the same purpose. Feel free to close this if you think it doesn't fit here 🙂

Hi @st0012!,
In fact, it is avoid loading type definition of rbs-inline gem when the user type checks their application. https://github.com/ruby/rbs/wiki/Release-Note-3.0#rbs-collection-skips-loading-application-gems
Thank you for sharing what Ruby LSP is doing. It would make sense to do it too.

IMO, rbs/inline.rb (as well as ruby-lsp.rb, FWIW) should not be (practically) empty, because when a tinkerer wants to write a mod or build another app upon rbs-inline, they would expect require 'rbs/inline' to do something. require 'rbs/inline/internal' does not sound like a confident entry point.

In fact, it is avoid loading type definition of rbs-inline gem when the user type checks their application.

Ah I see. I'll close this then 👍

when a tinkerer wants to write a mod or build another app upon rbs-inline, they would expect require 'rbs/inline' to do something.

Sorry I disagree. A library's main purpose it to serve users, and in this case it's not the tinkerers. So if a design can reduce its target users' overhead (e.g. prevent accidentally loading ruby-lsp and cause increased memory usage), then it should be prioritised over ease-of-extension.
Additionally, if a library hope to be extended, then it should provide a blessed way to do it. For example, to extend IRB by adding commands, you require only irb/command instead of the entire IRB.

In fact, it is avoid loading type definition of rbs-inline gem when the user type checks their application. https://github.com/ruby/rbs/wiki/Release-Note-3.0#rbs-collection-skips-loading-application-gems

There’s a practice to differentiate “development apps” (e.g., use Rake to automate, use RBS to test) and “runtime libraries” (e.g., Rake plugin, RBS processor) in Gemfiles/.gemspecs. rbs collection (as well as RBS in general when browsing sig/s) should learn to identify those patterns. I’ll check if this’ve been raised in the RBS repo.

I’ll check if this’ve been raised in the RBS repo.

It’s mentioned in the thread https://github.com/ruby/rbs/issues/1148#issuecomment-1426756981 but not formally filed.


Install glibc-static on non-Power platforms running el-6 or higher.

@mattray @kaustubh-d Let me know if I've accurately reflected what needs to happen on Power.
@sersut @josephrdsmith This should get the analytics build past the libhugetlbfs break. (Tested manually here:  http://wilson.ci.chef.co/job/opscode-analytics-build/1398/architecture=x86_64,platform=el-7,project=opscode-analytics,role=builder/console)
cc @opscode-cookbooks/ociv

Thanks @yzl.


GH-35557 [MATLAB] Add unsigned integer array MATLAB classes (i.e. UInt8Array, UInt16Array, UInt32Array, UInt64Array)

Rationale for this change
Followup to #35495 in which we added the MATLAB class Float32Array.
This pull request adds support for round tripping signed integer between arrow.array.<Type>Array classes and associated MATLAB types (e.g. uint8, uint16, uint32, uint64).

Arrow Array Type
MATLAB Type

UInt8Array
uint8

UInt16Array
uint16

UInt32Array
uint32

UInt64Array
uint64

Example of round-tripping uint8 data:
>> uint8MATLABArray = uint8([1 2 3]')

uint8MATLABArray =

  3×1 uint8 column vector

   1
   2
   3

>> uint8ArrowArray = arrow.array.UInt8Array(uint8MATLABArray)

uint8ArrowArray =

[
  1,
  2,
  3
]

>> uint8MATLABArrayRoundTripped = toMATLAB(uint8ArrowArray)

uint8MATLABArrayRoundTripped =

  3×1 uint8 column vector

   1
   2
   3

>> all(uint8MATLABArray == uint8MATLABArrayRoundTripped)

ans =

  logical

   1

What changes are included in this PR?
Added four new unsigned integer type arrow.array.<Array> concrete subclasses.

arrow.array.UInt8Array
arrow.array.UInt16Array
arrow.array.UInt32Array
arrow.array.UInt64Array

Are these changes tested?
Yes, we added the following four test classes:

tUInt8Array.m
tUInt16Array.m
tUInt32Array.m
tUInt64Array.m

Are there any user-facing changes?
Yes. This change introduces 4 new publicly documented classes:

arrow.array.UInt8Array
arrow.array.UInt16Array
arrow.array.UInt32Array
arrow.array.UInt64Array

Future Directions

Add support for null values (i.e. validity bitmap) for the unsigned integer array types.

NOTES

Thank you to @kevingurney for his help with this PR!

Closes: #35557

Just an fyi, this pull request and #35561 are related - they both edit matlab/src/cpp/arrow/matlab/proxy/factory.cc. We may need to rebase one of them after the first one is merged. We can handle the rebase if it's needed.


remove dynamic allocation in contract state

Signed-off-by: Bruno Vavala<EMAIL_ADDRESS>

this solves #206


Mac_ios flutter_gallery__transition_perf_e2e_ios32 Infra Failure, no steps completed

Tree is closed on Mac_ios flutter_gallery__transition_perf_e2e_ios32 infra failure, but no steps seems to have run.
https://ci.chromium.org/p/flutter/builders/prod/Mac_ios flutter_gallery__transition_perf_e2e_ios32/351
https://ci.chromium.org/p/flutter/builders/prod/Mac_ios flutter_gallery__transition_perf_e2e_ios32/352

bot is quarantined: https://chromium-swarm.appspot.com/bot?id=flutter-devicelab-mac-11

Looking to see if recoverable remotely.

Was the infra failure because there were no un-quarantined agents?

That's true. No resource is available to run the 32 test (since mac11 is the only bot).
flutter@flutter-devicelab-mac-11 ~ % idevicepair pair
QueryType failed, error code -256

@jmagman do you know how to fix this error code?

-256 is LOCKDOWN_E_UNKNOWN_ERROR, so that doesn't bode well.  What does idevicepair validate say?

Here is from the swarming task page: https://chromium-swarm.appspot.com/task?id=52a32e7171e4ad10&o=true&w=true

-256 is LOCKDOWN_E_UNKNOWN_ERROR, so that doesn't bode well. What does idevicepair validate say?

It's the same:
flutter@flutter-devicelab-mac-11 ~ % idevicepair validate
QueryType failed, error code -256

The certificate check also returns 0 valid identifies:
security find-identity -p codesigning -v
     0 valid identities found

1 valid identity returned when running as swarming user, which is expected. So the issue is still with idevicepair validate error.

@jmagman do you think we can skip the idevicepair check for 32 device?

I bet it's legitimately not paired, so the tests will fail.  These 9 year old phones are so hard to keep upright ☹

https://github.com/flutter/flutter/pull/79496 is merged, lowering priority.

The reason that phone requires manual intervention is because it doesn't have a sim card. Would it be worth adding one even if it is not activated?

Filed a request to manually reboot the device.

The phone came back online. Reverting: https://github.com/flutter/flutter/pull/79560

Reverted. Closing.


feature-warningpopup

We need a warning popup to ask the user to enter ALL information

[ ] - Popup will have only an OK button
[ ] - Message: Searching mechanism requires user to enter all information. Please try again.
[ ] - Popup to be merged or implemented in the search screen.
[ ] - We already have a popup in the search screen (when user selects the flight

We are not creating a new branch for the warning popup.
I will continue using this branch: i did push the developing to the feature-hover


remove lodash for smaller bundles

@davydog187 made the changes for you to review

:+1: please squash and rebase

@davydog187 done and done


Split deletion of container and deletion of Lb in finalize method

@alena1108 , can you review this change?

LGTM


Suggestion: sf::Image::saveToMemory should accept the format as enum class

Prerequisite Checklist

[X] I searched for existing issues to prevent duplicates
[X] I searched for existing discussions on the forum to prevent duplicates
[X] I understand SFML's scope and believe the feature fits it

Describe your feature request here
Currently we have:
class Image
{
    // ...
    [[nodiscard]] std::optional<std::vector<std::uint8_t>> saveToMemory(std::string_view format) const;
    // ...
};

Users can specify any string in format, including empty strings, invalid formats, or even invalid memory.
I suggest:
class Image
{
    // ...
    enum class [[nodiscard]] SaveFormat
    {
        BMP,
        TGA,
        PNG,
        JPG
    };

    [[nodiscard]] std::vector<std::uint8_t> saveToMemory(SaveFormat format) const;
    // ...
};

This change would:

Prevents misuse of sf::Image::saveToMemory at compile-time
Removes std::optional from sf::Image::saveToMemory's interface if we assume *this is a valid image (BTW, this can also be ensured by changing sf::Image's constructor to a factory function that validates size and pixels)
Simplifies sf::Image::saveToMemory's implementation
Simplifies sf::Image tests
Removes compile time dependency on <string_view> from <SFML/Graphics/Image.hpp>

I can provide a PR if there is agreement on this suggestion.

You can see an implementation of this change in my personal fork of SFML:

Image.hpp L57-L67

Image.hpp L163-L179

Image.cpp L315-L349

I like where your head is at with this issue. In general I'm a fan of using scoped enums as parameters. They have potential to replace some of our bool parameters although that's a discussion for a different time.
My question about this PR is what do we do about sf::Image::saveToFile? That function uses the user-provided filename extension to determine the format. The benefit of this PR is that you don't have to repeat yourself. However it would seem to introduce a minor symmetry issue between it and saveToMemory. Do you have any ideas for reconciling this asymmetry?