opening pylon container buggy until another container is opened

Description
Opening pylon container buggy until another container is opened (Both Refueler and Neckro pylons affected).
Suspect
RPC_RequestOpen isn't being called
Steps to Reproduce

Enter game
Do not open your inventory or any containers
Go to a pylon, open it

Workaround

Open any other container before opening the pylon and no error will occur

More info

Perhaps the variable m_inventory in Valheim's InventoryGrid for the pylons is not initialized?

I think the error is hitting this code in InventoryGrid:
Element element2 = (flag ? GetElement(m_selected.x, m_selected.y, width) : GetHoveredElement());
The function get Item looks like this:
public Element GetElement(int x, int y, int width)
{
int index = y * width + x;
return m_elements[index];
}
This fits the first message there saying the parameter name is index. I assume this means for the internal function that's getting the index of m_elements.

Thanks. Next time I come back to this, I'll investigate with your comments in mind. Feel free to test and do anything you like in the meantime.

So here's a weird thing. Based off your hint, I decided to put a patch inside that method to see what it's doing:
namespace ChebsNecromancy.Patches
{
    [HarmonyPatch(typeof(InventoryGrid), "GetElement")]
    class InventoryGridPatch
    {
        [HarmonyPrefix]
        //  Element GetElement(int x, int y, int width)
        static void Prefix(int x, int y, int width)
        {
            Jotunn.Logger.LogInfo($"GetElement: {x}, {y}, {width}");
        }
    }
}

And this is the resulting log for a bugged container:
Log
[Info   : Unity Log] 05/20/2023 09:27:11: Player<PHONE_NUMBER> wants to open ChebGonaz_NeckroGathererPylon(Clone)   im:<PHONE_NUMBER>

[Info   : Unity Log] 05/20/2023 09:27:11: Setting selected recipe 0

[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 4, 3, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 2, 3, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 0, 0, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 5, 0, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 1, 0, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 6, 3, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 3, 0, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 4, 0, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 7, 3, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 6, 0, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 0, 2, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 3, 2, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 1, 3, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 2, 0, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 6, 2, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 7, 2, 8
[Info   : Unity Log] 05/20/2023 09:27:11: UI Group status changed root = True

[Info   : Unity Log] 05/20/2023 09:27:11: UI Group status changed Player = True

[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 4, 3, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 2, 3, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 0, 0, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 5, 0, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 1, 0, 8
... repeat for several kilometers ...
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 1, 3, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 2, 0, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 6, 2, 8
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 7, 2, 8
[Info   : Unity Log] 05/20/2023 09:27:17: UI Group status changed MenuRoot = True

LogOutput.log

Maybe also print out the index and array size, if it's not null.

I'm not getting the error in the screenshot anymore either. It just shows an inventory panel with no slots now. Maybe subsequent valheim patches since then changed it.
None of the logged indices seem out of bounds.
namespace ChebsNecromancy.Patches
{
    [HarmonyPatch(typeof(InventoryGrid), "GetElement")]
    class InventoryGridPatch
    {
        [HarmonyPrefix]
        //  Element GetElement(int x, int y, int width)
        static void Prefix(int x, int y, int width, InventoryGrid __instance)
        {
            Jotunn.Logger.LogInfo($"GetElement: {x}, {y}, {width}, " +
                                  $"index={y * width + x}, " +
                                  $"m_elements.Count={__instance.m_elements.Count}");
        }
    }
}

[Info   : Unity Log] 05/20/2023 09:48:35: Player<PHONE_NUMBER> wants to open ChebGonaz_NeckroGathererPylon(Clone)   im:<PHONE_NUMBER>

[Info   : Unity Log] 05/20/2023 09:48:35: Setting selected recipe 0

[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 4, 3, 8, index=28, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 2, 3, 8, index=26, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 0, 0, 8, index=0, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 5, 0, 8, index=5, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 1, 0, 8, index=1, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 6, 3, 8, index=30, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 3, 0, 8, index=3, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 4, 0, 8, index=4, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 7, 3, 8, index=31, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 6, 0, 8, index=6, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 0, 2, 8, index=16, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 3, 2, 8, index=19, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 1, 3, 8, index=25, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 2, 0, 8, index=2, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 6, 2, 8, index=22, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 7, 2, 8, index=23, m_elements.Count=32
[Info   : Unity Log] 05/20/2023 09:48:35: UI Group status changed root = True

[Info   : Unity Log] 05/20/2023 09:48:35: UI Group status changed Player = True

[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 4, 3, 8, index=28, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 2, 3, 8, index=26, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGridPatch] GetElement: 0, 0, 8, index=0, m_elements.Count=32

...

LogOutput.log

That's odd. Is it possible the patch has fixed the error, but not the bug?
For the gui itself, maybe another open source project has the answers with their implementation. Might be something extra that's needed.

That's odd. Is it possible the patch has fixed the error, but not the bug?

No - even without patching, the error is gone. For me, anyway.
I tested this forever, like hours, but eventually realized that it's as simple as this: The unity values, for whatever reason, aren't there in the moment that the container is being opened. So I just have to set the inventory's height & width in the Pylon's awake and it's fixed. Really weird & annoying but whatever. I'm happy to have found a solution.
Thanks again for your help & ideas Walter

Scratch that - it's not fixed anymore! But it was. What on earth...

Ok so I randomly started getting the issue again - I changed nothing - so I added the patch back to the method and here's the log:
[Info   :ChebsNecromancy.Patches.InventoryGuiPatches+InventoryGridPatch] GetElement: 6, 2, 8, index=22, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGuiPatches+InventoryGridPatch] GetElement: 0, 3, 8, index=24, m_elements.Count=32
[Info   :ChebsNecromancy.Patches.InventoryGuiPatches+InventoryGridPatch] GetElement: 0, 3, 4, index=12, m_elements.Count=0
[Error  : Unity Log] ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
Stack trace:
System.ThrowHelper.ThrowArgumentOutOfRangeException (System.ExceptionArgument argument, System.ExceptionResource resource) (at <695d1cc93cca45069c528c15c9fdd749>:0)
System.ThrowHelper.ThrowArgumentOutOfRangeException () (at <695d1cc93cca45069c528c15c9fdd749>:0)
(wrapper dynamic-method) InventoryGrid.DMD<InventoryGrid::GetElement>(InventoryGrid,int,int,int)
InventoryGrid.UpdateGui (Player player, ItemDrop+ItemData dragItem) (at <348c5fd88bf74f899d9b74d0c2228030>:0)
InventoryGrid.UpdateInventory (Inventory inventory, Player player, ItemDrop+ItemData dragItem) (at <348c5fd88bf74f899d9b74d0c2228030>:0)
InventoryGui.UpdateContainer (Player player) (at <348c5fd88bf74f899d9b74d0c2228030>:0)
(wrapper dynamic-method) InventoryGui.DMD<InventoryGui::Update>(InventoryGui)

I was able to "fix" this finally by:

Delete the Container script from the prefab
Add it via code instead & set the name
Do not attempt to resize the container/inventory -> instantly results in this error

            // originally the Container was set on the prefab in unity and set up properly, but it will cause the
            // problem here:  https://github.com/jpw1991/chebs-necromancy/issues/100
            // So we add it here like this instead.
            // Pros: No bug
            // Cons: Cannot set custom width/height
            _container = gameObject.AddComponent<Container>();
            _container.m_name = "$chebgonaz_neckrogathererpylon_name";
            // _container.m_width = ContainerWidth.Value;
            // _container.m_height = ContainerHeight.Value;

            var inv = _container.GetInventory();
            inv.m_name = Localization.instance.Localize(_container.m_name);
            // trying to set width causes error here: https://github.com/jpw1991/chebs-necromancy/issues/100
            // inv.m_width = ContainerWidth.Value;
            // inv.m_height = ContainerHeight.Value;

Resizing problem now tracked in issue #214

Progress! I wonder what's going on under the hood that's causing that.

Me too. Maybe I'll figure it out someday or someone else will figure it out for me (hopefully the latter hahaha).


Update Sphinx documentation for cyclone plotter

This is a sub issue of Github Issue #308 (which is a sub-issue of Github Issue #306).  Renaming the variable names in the METplus config file for the cyclone plotter now require that the affected variable names be updated in the Sphinx METplus Users Guide.

CyclonePlotter section of the 'Python Wrappers' chapter has been updated.  Changes committed to the 'develop' branch.


myrescue: add myrescue-bitmap2ppm, myrescue-stat

Description of changes

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Correct me if I'm wrong, but isn't TestDisk better in every way?
Myrescue hasn't changed in 6 years, but TestDisk's latest release was merely 5 months ago.

Correct me if I'm wrong, but isn't TestDisk better in every way?

I dont know TestDisk but it looks like it'd mainly operate on file systems.
myrescue is only used for copying as many blocks as possible.
Recreating broken files needs to be done by a different tool (like testdisk)

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/1824


multi-platform version of docker container

gotta figure that out somehow

can't get buildx to work for some reason. The other approaches all seem somewhat convoluted (additional manifest to display all architectures on the docker hub as one pull, etc.) but might have to dig in to figure out ...

keeping it open

pushed multi-architecture version to docker hub finally using:
docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t jackdock96/hdh_dvr --push .
from within locally cloned repository.

Now need somebody to test on arm device, since I don't have any available.

Thanks to NolanT for proposing the GitHub action approach. Merged now. Also built a new action file for publishing to current docker hub instance.


rocketchat compatibility

When setting up this hook for rocketchat (uses the slack/mm api) my body is always empty.
Additional info:
https://github.com/RocketChat/Rocket.Chat/issues/2725

@JakeDEvans We currently won't invest too much time into making this plugin compatible to RocketChat.
This being said, a pull request to make this plugin compatible with Slack, Mattermost, and RocketChat would be certainly welcome.

I'm interested in this rocketchat compatibility too :+1:  :)

+1

+1

Sorry, but we don't have the bandwidth to address this problem right now.
It’s definitely a problem, and if someone can provide a fix for it we’ll work with them to get it merged, but none of the regular contributors are going to be able to get to this any time soon.

I'm running rocketchat 0.51.0 and it appears to work well. I don't have scripts enabled on the rocketchat web hook.
The only minor thing I had was that my graylog server log had these warnings:
WARN  [SlackClient] Message couldn't be successfully sent. Response was: {"success":true}
I fixed that by recompiling the source after making this change to  "SlackClient.java", line 82:
if (response.equals("ok") || response.equals("{\"success\":true}")) {
which is probably horrible, but I don't code in java/json and it works.

Worked for me!

@JakeDEvans Can you give your configuration? options of the slack plugin into graylog ? i always have errors...

Graylog 2.1.2+50e449a
Running latest version of the plugin.

Hi,
I want to send the graylog messages to rocketchat. I have configured the graylog in the similar way with slack plugin but it says "cannot send message to slack". what could be the error?
does rocket chat need to have a secure ssl connection?
Graylog version - 2.3
Rocket chat - 0.57.2
I tried sending it slack to figured out and messages are successfully sent to slack.
Waiting for your response :)

@navrocky What's in the logs of your Graylog node when trying to send a message to Rocket.Chat?

Thank you for responding :)
It is like this ..
ERROR [OutputBufferProcessor] Error in output [class org.graylog2.plugins.slack.output.SlackMessageOutput].
java.lang.RuntimeException: Could not send message to Slack.
at org.graylog2.plugins.slack.output.SlackMessageOutput.write(SlackMessageOutput.java:91) ~[?:?]
at org.graylog2.buffers.processors.OutputBufferProcessor$1.run(OutputBufferProcessor.java:191) [graylog.jar:?]
at com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:176) [graylog.jar:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_131]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_131]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_131]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_131]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_131]
Caused by: org.graylog2.plugins.slack.SlackClient$SlackClientException: Unexpected HTTP response status 404
at org.graylog2.plugins.slack.SlackClient.send(SlackClient.java:72) ~[?:?]
at org.graylog2.plugins.slack.output.SlackMessageOutput.write(SlackMessageOutput.java:89) ~[?:?]

@navrocky

Unexpected HTTP response status 404

Make sure that the URL in your plugin configuration is correct.
We are using GitHub issues for tracking bugs in Graylog itself, but this doesn't look like one. Please post this issue to our discussion forum or join the #graylog channel on freenode IRC.
Thank you!


Implementation of .lineno as a property of .loc

Implementation of ast.AST.lineno as a property of commonloc.
The stdlib ast module nodes expose the line on ast.AST.lineno, while pythonparser.ast.commonloc.loc seems to cast to the same information. Maybe I had not understood the way pythonparser do this things, but the getter/setter can be updated to do the right thing if needed.
The goal is to have a pythonparser as near as possible to a drop-in replacement of ast.
This and other compatibility PRs will allows less changes on google/grumpy#216, for example.

I do remember test_ast.py to fail more if I remove the setter, but will try again.

The setter is semantically meaningless because it cannot possibly update every location field correctly. E.g. no way to do this for a multiline string.

@alanjds what's the next step here? It seems reasonable to me to drop the setter and use loc.lineno() for the value of the getter. Will that all work?

Yes. I am a bit busy now, but yes. Will drop the setter and update the property.


Rename stagging to staging.

Renamed the branch - @metanerd, PLMK if I broke anything! :)

@metanerd, not sure if this needs a Jira ticket? Let me know if it does and I'll create one.

Feel free to create a ticket please.


Update README.md

Changed the CDN URL to match the latest release (world's smallest PR?).

Coverage remained the same at 37.891% when pulling a0fb74c397a289e07ae45fa6f5089cd15bba342a on docherty:master into 95a8408082a3ed038defa09460e374f8ad39f6d9 on luruke:master.

Thank you :)


Audit API is missing

SDKs in Javascript and python have this, but the Go version is missing the SDK for the email audit API.
EDIT: Actually looks like it was removed from the NodeJS client as well. This API does not appear to be deprecated. Any reason it was removed?

Nevermind it looks like the audit API that was removed is different from the email Audit API.


[multi-stage] Table join order

The join table order has to be in the order of table size. i.e. table from the right hand side has to be smaller.
@walterddr FYI.

@walterddr @61yao Any update on this task?

i dont think this ticket is valid anymore. we have multiple ways to control the ordering of joins in SQL syntax (explicitly or implicitly) do you have any specific SQL situation in mind? please feel free to create a new ticket with details.


Homekit example is not updated with latest fixes such as IRAM optimization fix for ESP32 to all examples (MEGH-4986)

Answers checklist.

[X] I have read the Rainmaker documentation and the issue is not addressed there.
[X] I have updated my IDF branch (release/vX.Y) to the latest version and checked that the issue is present there. This is not applicable if you are using Rainmaker with Arduino.
[X] I have searched the Rainmaker forum and issue tracker for a similar issue and not found a similar issue.

General issue report
If we compare homekit_switch example and multi_device, we can see that homekit example is not updated with latest fixes such as IRAM optimization fix for ESP32 to all examples commit c43cd07. Also if we compare examples, there are some features also missing from homekit_switch example like Scheduling and Scenes support.

If we compare homekit_switch example and multi_device, we can see that homekit example is not updated with latest fixes such as IRAM optimization fix for ESP32 to all examples commit https://github.com/espressif/esp-rainmaker/commit/c43cd071faf5be97a37057aed75baa3016164846.

@adukale the IRAM optimisations fix is already part of the homekit_switch example and hence, the above commit doesn't do it.

Also if we compare examples, there are some features also missing from homekit_switch example like Scheduling and Scenes support.

Thanks for the heads up. For now, you may refer other examples to for schedule and scenes support.


[9.x] Add support for lazy loading commands

Currently, all commands in Laravel have to be instantiated to be registered in the console application. That could be a problem for commands with big dependency graphs as all the dependencies are loaded in memory. See https://github.com/laravel/ideas/issues/1399.
Symfony has had lazy loading support for commands since version 3.4. This PR extends Symfony's lazy loading to Laravel. To allow for lazy loading, Laravel package console commands and/or app console commands just need to set the static $defaultName property like so:
/**
 * The default command name for lazy loading.
 *
 * @var string|null
*/
protected static $defaultName = 'command:name';

Since the PR changes the return type of Application::resolve (adds a null return type), I'm sending this to master instead of 8x. If this PR is accepted, I can send across another PR to lazy load the commands shipped with Laravel.

@paras-malhotra it seems like we could make the getDefaultName() method have a default implementation in our console command that gets $signature before the first white-space. That way it wouldn't typically need to be defined in commands? Is that a bad idea?

@taylorotwell the signature is a non-static variable and that's the real issue here (cannot be accessed from static methods). The getDefaultName is a static method and it's structured that way in Symfony so that there's no need to instantiate the commands to access the default name.

Thanks. Does it make sense to add a defaultName to some of Laravel's own heavier commands?

Yes @taylorotwell, I'll send across a follow-up PR to add default names to the commands shipped with Laravel. That should be a nice performance boost.

@paras-malhotra does this actually work? It still has to resolve all of the console commands in order to get the name:
            $this->artisan = (new Artisan($this->app, $this->events, $this->app->version()))
                                    ->resolveCommands($this->commands)
                                    ->setContainerCommandLoader();

... then when resolvedCommands is called:
    /**
     * Add a command, resolving through the application.
     *
     * @param  string  $command
     * @return \Symfony\Component\Console\Command\Command|null
     */
    public function resolve($command)
    {
        if (class_exists($command) && ($commandName = $command::getDefaultName())) {
            $this->commandMap[$commandName] = $command;

            return null;
        }

        return $this->add($this->laravel->make($command));
    }

It calls $command::getDefaultName() which then LOADS the class in memory.

I just tested with a large class based class file and when making static calls to a class it does indeed load it in memory as can be observed with get_declared_classes and memory_get_usage shows it's using memory.
It's probably still way lower than actually resolving the classes from the container, but still room for optimization so the classes aren't loaded from disk at all. Though I'm not sure how this plays with OpCache it may have those classes in memory already.


update to release 0.16.2

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Blocks don't keep installed items when copied with SHIFT+M3 while in creative

Issue description:
When copying an exporter, importer, or any other slotted block while in creative mode using shift+M3 to keep NBT data, upgrades and cards are not copied.
What happens:
You get a copy of the block with NBT data and nothing else.
What you expected to happen:
The block should retain all settings when it was copied including any installed upgrades or cards.
Steps to reproduce:

Place down any block that can have an item slotted into it such as an exporter or an importer.
Place some upgrades in it.
While in creative mode hold SHIFT and press Mouse 3 (middle mouse button) to copy the block with NBT data.
Place the block you copied and open the GUI.

Version (make sure you are on the latest version before reporting):

Minecraft: 1.12.2
Forge: 1.12.2-<IP_ADDRESS>38
Refined Storage: 1.6.14

Does this issue occur on a server? [yes/no]
Yes

Any news?

You do realize, that you need to hold CTRL not shift to get the block with NBT data?

You do realize, that you need to hold CTRL not shift to get the block with NBT data?

Right, I meant to say ctrl, my bad.


Typo error in grid options

I think this should be " col " instead of " col- "

Special Note: I am viewing this locally from the git clone ( Alpha 6 )

No sorry .... my mistake .... this should be " col- " only .... closing this !


[SPARKR-191] groupBy and agg() API for DataFrame

TODO: docs
for sum/min/max/avg/mean, there are common functions in R, I'd like to NOT override them for GroupedData.
We could alway do with
agg(gd, name='min', age='max')

@davies This is awesome! Happy to see new pieces getting added to the SparkSQL side of things :)
I have a general request: can you change the method signatures to use x instead of df? We're currently standardizing all of the RDD/DataFrame method to use x so that the signatures don't start to look weird when we have multiple dispatch on different methods.
So, for instance, groupBy would become:
setGeneric("groupBy", function(x, ...) { standardGeneric("groupBy") })

setMethod("groupBy",
          signature(x = "DataFrame"),
          function(x, col, ...) {
            jseq <- callJStatic("edu.berkeley.cs.amplab.sparkr.SQLUtils", "toSeq", list(...))
            sgd <- callJMethod(x@sdf, "groupBy", col, jseq)
            groupedData(sgd)
          })

@cafreeman @shivaram  I'd like to leave the docs out of this PR, then I can help from others to fix the docs, or fill them in batch before merging into master. Does it work for you?

I think it's better to have the roxygen2 documentation in the code before merging. I'm indifferent as to whether we actually generate the .Rd files at this point, but I think at least having the comments in place keeps us from letting the lack of documentation get out of hand.

Currently, the complete version of docstring looks too verbose, it make a 5 line method becoming more than 20 lines.
The whole DataFrame API are still WIP, so I think we could focus on the code and tests first, then focus on docs later (it's easy to add docs in batch).

I defer to @shivaram and @concretevitamin on this one. Whatever works for them is fine by me.

@davies I think leaving the docs out for now is fair; let's file a JIRA for it.

Created one : https://sparkr.atlassian.net/browse/SPARKR-213

Because the spark-sql-1.3.0 in maven is outdated, the sum/max/min API are written against latest spark-sql, so they can not passwd the tests, we can hold this until new spark-sql is published into maven.

@davies Its okay to add documentation later but I want to think a little bit more about the interface. I see that the current interface is using named arguments similar in some sense to Python API. I am wondering if we can do something a little more R-friendly here.
On that note, it'll be good to add a couple of example usages on top of the methods. Need not be a full end-to-end example but just to show syntax.
Regarding the API, one dataframe API that is pretty popular in R is the dplyr API described at http://cran.rstudio.com/web/packages/dplyr/vignettes/introduction.html -- In dplyr aggregations are done
as summarise(destinations, flights = count(tailnum)) where destinations is a data frame and flights is the column created with the counts. I think this API is probably easier to read than the tailnum = count version we have now (btw how do we give a new column name ?) but it might be trickier to implement this.
@dputler @cafreeman @concretevitamin -- Any thoughts on the interface for aggregation ?

I absolutely agree on the dplyr suggestion. My goal is to model the API on any of the similar functions found in dplyr and, to a lesser degree, tidyr. A good one-off snapshot of what this looks like can be found here:
http://www.rstudio.com/wp-content/uploads/2015/02/data-wrangling-cheatsheet.pdf

@shivaram Once we have Column, we could have the API as you suggested:
agg(gd, count(column_name))
agg(gd, new_column = count(column_name))

@davies That's great - FWW I just remembered that one can do this even without column support as R allows you to capture an argument and convert it to string without evaluating it.  For example
agg <- function(df, aggF) {
  cat("aggregating ", deparse(substitute(df)), " using ", deparse(substitute(aggF)), "\n")
}
agg(peopleDF, mean(age))

The deparse(substitute()) functions read in the argument aggF and converts it to a character string without evaluating it.
BTW do we want to hold off on this and merge it after the column PR ? or do you want to merge this and then further APIs with the Column PR ?

I'd like to hold off on this, until we can build with a new version of spark sql 1.3

We could revert back to using 1.3.0-SNAPSHOT in build.sbt. We'd just all have to clone the most up-to-date master branch of Spark. I tried it with branch-1.3 but it builds to 1.3.1 and the SparkRbackend seems to freak out for some reason.

Chiming in late, yes I think that following the dplyr interface makes sense, given the traction of that project. Having said this, we probably want to make sure we maintain the old school way of doing things, which for aggregates, generally means using lapply.
Dan
From: Chris Freeman<EMAIL_ADDRESS>Sent: Thursday, February 26, 2015 1:17 PM
To: amplab-extras/SparkR-pkg
Cc: dputler
Subject: Re: [SparkR-pkg] [SPARKR-191] groupBy and agg() API for DataFrame (#180)
We could revert back to using 1.3.0-SNAPSHOT in build.sbt. We'd just all have to clone the most up-to-date master branch of Spark. I tried it with branch-1.3 but it builds to 1.3.1 and the SparkRbackend seems to freak out for some reason.
—
Reply to this email directly or view it on GitHub https://github.com/amplab-extras/SparkR-pkg/pull/180#issuecomment-76275350 .  https://github.com/notifications/beacon/AIGvMuXRCvCQ0LK-E33nlaZhvYJkeY2Rks5nv4TbgaJpZM4Dl5AV.gif

Anyone know where we are on this one?

Thanks for the update @davies -- this is looking very cool !
@cafreeman Will be good if you also took a look at the API here

Left a few inline comments, but overall LGTM. This is is great @davies and I'm looking forward to having this API in the package :)

Thanks @davies - LGTM. Will merge when Travis passes


zstd compression support for Kafka storage

Describe the bug
I started to see the error below as soon as I enabled zstd compression on the collector side.
We are on jaeger 1.19.2 and Kafka 2.5.0
{"level":"error","ts":1613990679.9162657,"caller":"kafka/writer.go:58","msg":"zstd compression requires building with cgo enabled","stacktrace":"github.com/jaegertracing/jaeger/plugin/storage/kafka.NewSpanWriter.func2\n\tgithub.com/jaegertracing/jaeger/plugin/storage/kafka/writer.go:58"}
To Reproduce
Steps to reproduce the behavior:

configure zstd compression for kafka

Have I missed something? Will upgrade to the latest Jaeger will help here?

If it requires cgo, we will probably remove support for this feature.

as far as I can see sarama has switched from cgo to pure Go implementation for zstd in 1.24.0: https://github.com/Shopify/sarama/blob/master/CHANGELOG.md#version-1240-2019-10-09
https://github.com/Shopify/sarama/pull/1477

In which case, we might want to bump the dependency. Would you like to give it a try?

yeah, will try to build it locally and see how it works


Simplify Infisical secrets check workflow

User description

Closes #
📑 Description

✅ Checks

[ ] My pull request adheres to the code style of this project
[ ] My code requires changes to the documentation
[ ] I have updated the documentation as required
[ ] All the tests have passed

☢ Does this introduce a breaking change?

[ ] Yes
[ ] No

ℹ Additional Information

[!NOTE]
I'm currently writing a description for your pull request. I should be done shortly (<1 minute). Please don't edit the description field until I'm finished, or we may overwrite each other. If I find nothing to write about, I'll delete this message.

Description

Streamlined the Infisical secrets check process by consolidating multiple steps into a single action.
Removed unnecessary installation and report generation steps, enhancing workflow efficiency.

Changes walkthrough 📝
Relevant filesEnhancement

infisical-secrets-check.ymlSimplify Infisical secrets check workflow

.github/workflows/infisical-secrets-check.yml
Replaced the existing Infisical secrets check steps with a single action.  Simplified the workflow by removing multiple steps for installation and scanning.  Updated the action to use<EMAIL_ADDRESS>

+2/-88

💡 Penify usage:
Comment /help on the PR to get a list of all available Penify tools and their descriptions

Summary by Sourcery
CI:

Replace custom Infisical secrets check workflow with a standardized GitHub action.

Summary by CodeRabbit

New Features

Streamlined Infisical secrets check workflow by consolidating multiple steps into a single action, enhancing efficiency and ease of use.

@gstraccini create labels

:white_check_mark: Build POC-dotnet-Asterisk 1.0.141 completed (commit https://github.com/GuilhermeStracini/POC-dotnet-Asterisk/commit/d51877d64b by @guibranco)


fix typo on Client API putTemplate, was putTempalte

Thanks :)

Coverage remained the same at 91.264% when pulling 777ca122a7b08ff7312a1c16572510a7d0ade361 on salazar:fix-typo into 9395f2784e01559e98892863464c6577e17b87a7 on DhavalKapil:master.

Maybe we should add some test here :)

You mean test for every API function in Client.lua?

Missing a typo like that is not good. How can we test it and make sure it does not happen?

Maybe comparing methods in src/elasticsearch/*.lua with the ones in https://github.com/elastic/elasticsearch/tree/master/rest-api-spec/src/main/resources/rest-api-spec/api ?

Sounds like an option.


Secure strings

Is there a suggested way to pass parameters as secure strings (passwords)?

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

ID: 6724abea-bbdc-bf66-ed5e-3214fa6c3e66
Version Independent ID: 4f8dab21-3f0e-da32-cc0e-1d85c13c0065
Content: Templates - Azure Pipelines
Content Source: docs/pipelines/process/templates.md
Product: devops
Technology: devops-cicd-process
GitHub Login: @juliakm
Microsoft Alias: jukullam

@fleed Thanks for your question. We're looking into updating the document. In the meantime, consider these references.

Azure DevOps Services
Azure DevOps Support Bot
Azure DevOps on Stack Overflow

@fleed There isn't a way to set parameters as secret now. Here's a feature request you might want to vote up.
If you are using the value across multiple pipelines, one option is to set up a secure variables in a variable group and then pass that variable group.  If you are using one pipeline, you can define the secret value in the Pipeline UI.
Please let me know if this doesn't answer your question.


create scraper for SGS

farmaciatei.py returns for some jobs same city as country

sgs.py returns correct data

Yes, because some jobs don't have location displayed


Add new API for querying chunks

Intro
This is a proposal of change on the ksql API. This change will be 100% retro compatible since it will just add a new function, and deprecate the existing one (which implies removing it from the docs and adding a // depreacated comment on it).
The new function is just as safe as the old one but requires an extra error check, which is not ideal, but probably preferable since it still looks better with the error check than the old way of doing it looked like.
Short description of the QueryChunks feature
The QueryChunks feature is a necessary feature that allows the user to make queries that return very big amounts of data. What this feature does is that instead of loading all the data at once in memory, it loads chunks of the response at a time, which circumvents the problem of overloading the computer's available memory.
Proposal
This PR is an experimental idea of changing the current API for querying chunks, which looks like this:
	err = db.QueryChunks(ctx, ksql.ChunkParser{
		Query:     "SELECT * FROM users WHERE type = $1",
		Params:    []interface{}{usersType},
		ChunkSize: 100,
		ForEachChunk: func(users []User) error {
			err := sendUsersSomewhere(users)
			if err != nil {
				// This will abort the QueryChunks loop and return this error
				return err
			}
			return nil
		},
	})
	if err != nil {
		panic(err.Error())
	}

To something that looks more natural and easier to read like this:
	var chunks ksql.Chunks
	err := ksql.Query(ctx, &chunks, `SELECT * FROM users WHERE type = $1`, usersType)
	if err != nil {
		panic(err.Error())
	}

	err := chunks.ForEach(100, func(users []User) error {
		err := sendUsersSomewhere(users)
		if err != nil {
			// This will abort the ForEach loop and return this error
			return err
		}
		return nil
	})
	if err != nil {
		panic(err.Error())
	}

In this scenario the ksql.Query() function will have a special behavior if the record is passed as an argument is of type ksql.Chunks.
This special behavior is to instantiate a new ksql.chunks{} struct that has a .ForEach() method that behaves just like the existing ksql.QueryChunks() function, but requiring less arguments (namely only the chunkSize and the for-each callback).
Possible advantages of this syntax for the future
This syntax could allow us to setup some interesting features such as prepared statements in the future. Since the Query step is done first we could in that step prepare the statement.
This technique could even extend to other types of queries too.
However, if we end up finding a way of implementing a system of creating prepared statements automatically internally this idea might not need to be implemented after all.

Codecov Report

Merging #22 (e0391ce) into master (ed0327b) will decrease coverage by 0.0%.
The diff coverage is 94.1%.

@@           Coverage Diff            @@
##           master     #22     +/-   ##
========================================
- Coverage    90.3%   90.3%   -0.1%
========================================
  Files           6       6
  Lines        2394    2414     +20
========================================
+ Hits         2164    2182     +18
- Misses        153     154      +1
- Partials       77      78      +1

Impacted Files
Coverage Δ

test_adapters.go
92.6% <90.4%> (-0.1%)
:arrow_down:

ksql.go
83.1% <100.0%> (+0.3%)
:arrow_up:

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 ed0327b...e0391ce. Read the comment docs.

Test

Great idea, what about this syntax?
err := ksql.QueryFor(ctx, 100, `SELECT * FROM users WHERE type = $1`, usersType).Each(
	func(users []User) error {
		if err := sendUsersSomewhere(users); err != nil {
			return err
		}
		return nil
	})
if err != nil {
	panic(err.Error())
}

Hey, @derkan first sorry for taking so long to answer, I missed the email notification.
But yeah I am thinking about something a lot like that, but I am struggling with a few issues that will most likely make me postpone this change to a v2 version:
So initially I decided I would not have currying in this library as a design principle. The reason was that whenever I found an open-source library that had currying this automatically made it much harder to write mocks for that library, and I wanted mocking to be easy even if you used some other mocking library like GoMock.
So, I actually had a few principles I wanted to fit in this library, and the current API is pretty much the result of the best trade-off I was able to find with all these principles:

Simplicity
Easy to test and mock
Handling errors only once
and a few others

So the proposal of this PR would be beneficial in the simplicity front, but for that I would not want to add new functions to API or the gain I got with the change would be lost.
And at the same time I am losing the principle of returning errors once for each operation which is also something I wanted to keep.
So ok, I am making a big problem out of something simple, but I don't have any hurry to add new features, so I will go easy on this one.
One other piece of information that might be worth sharing is that I am actually having some good ideas that could improve the simplicity a lot if I just dropped this "no currying" principle and rewrote part of the API. And of course, I won't do this in the v1 version of this library because I want it to be very stable. But I could make this on a V2 version, the syntax you proposed was exactly what I was considering.
I could return something like a ksql.Query type from the .Query() function, and then this Query type would have 4 methods:

ForEach()
GetOne()
GetAll()
Prepare() (this one would prepare the statement for performance reasons)

This would allow me to also reduce the number of mocking tools on the ksqltest package and reduce the number of functions in the Provider API, so I am thinking this might be a change worth doing on V2.
However, after evaluating this change on this version I noticed that I will have to make more changes to the ksqltest package than I expected which will put to waste the gains I got in the simplicity front, at least on V1, so I am thinking about closing this PR and focusing on finishing the TODO list I have on the README. In the future I will work on this new API for the V2 version.
@jadson-medeiros thank you for the review, but for now I will close this PR.


Importing CSS under webpack 5 fails for adyen-web v4

Describe the bug
Build fails under webpack 5 when importing adyen CSS due to the CSS file not being included in the export map in package.json
To Reproduce
Any attempt to import @adyen/adyen-web/dist/adyen.css under webpack 5 throws an error:
ModuleNotFoundError: Module not found: Error: Package path ./dist/adyen.css is not exported from package /Users/garethfoster/foo/node_modules/@adyen/adyen-web (see exports field in<EMAIL_ADDRESS>
For convenience I have made a minimal repro available at https://github.com/gareth-canva/adyen-web-4-export-map-repro, just run npm run build or yarn build and you should see the error.
Expected behavior
Webpack 5 can import the CSS asset without issues.

Hi @gareth-canva,
Thanks for reporting this issue, your reproduction repo was very helpful.
I've just submitted a fix (#837). I'll close the issue for now, but feel free to reopen if there's any other issue/feedback. Hope this helps!


Create install-the-oc-command-line-tool.md

Draft of a new technical document. Work in progress.

Hi @mtspn! I put together the outline of this document. Please work in this branch for the draft of this document.


I have undo the last commit but I don't undertsand because I end up with a very weird old version of the repo, any idea of what's going on?


Exercise files and nodejs version

In working through the course content on Lynda.com discovered that the platform isn't being pinned to specific version of nodejs -- suggest adding nvm to your platform to help through these issues.  The version on node installed on the hello-world example encounters argument defaults and blows chow for one of the supporting npm_modules.
node 00_07.js
/opt/Chapter0/00_07/Start/node_modules/hapi/lib/server.js:114
decorate(type, property, method, options = {}) {
^
SyntaxError: Unexpected token =
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:373:25)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object. (/opt/Chapter0/00_07/Start/node_modules/hapi/lib/index.js:5:16)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
Hapi.js API Course >> node -v
v4.8.1
Hapi.js API Course >> npm list
<EMAIL_ADDRESS>/opt/Chapter0/00_07/Start
└─┬<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ └──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ └─┬<EMAIL_ADDRESS>│   └──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ └──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ ├──<EMAIL_ADDRESS>│ └──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ ├──<EMAIL_ADDRESS>│ ├─┬<EMAIL_ADDRESS>│ │ ├──<EMAIL_ADDRESS>│ │ └─┬<EMAIL_ADDRESS>│ │   └──<EMAIL_ADDRESS>│ └──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>

Found one issue to be my own... I was creating a package.json local to the chapter location but after cleaning the npm_modules directory there were still issues believe default parameters were introduced in node 6.x.x and the docker image is installing 4.x.x


"Corbi" is listed in the drop-down menu

Description:
"Corbi" is listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Corbi" in the search bar.

Expected results
The location is listed in the drop-down menu as "Corbi, Argeș".


Training discrepancy between Keras 2 and 3

Background
I was investigating why some of our relatively simple Keras models (mostly Efficientnet-like) fail to converge after being upgraded from Keras 2 to 3. Some minor tweaks made them converge (e.g. lowering the learning rate), but I was curious about finding the underlying issue since I found no relevant documentation or release notes that would explain the training discrepancy.
Minimal reproducible example
I set up two environments in Google Colab and tried to train exactly the same model with all the random generators seeded.
What I observed: I get training discrepancy when I add BatchNormalization layer.
Keras 2 / TF 2.14.1 notebook: https://colab.research.google.com/drive/1f7q-VcW7ugRPNxbCLkuE-q0O1WUJ8q-R?usp=sharing
Keras 3 / TF 2.17.0 notebook: https://colab.research.google.com/drive/1ONPJ_WXM6WQoJ8ze9bJJ9tjS94aNJ4KB?usp=sharing
Please let me know if I can do some additional experiments to track down the issue.

Sorry, I noticed a bug in my comparison - will reopen if I manage to fix it.

I managed to narrow down the initial question a bit, so reopening

I found my issue: https://github.com/keras-team/keras/issues/19649


Move event origin check into event listener callback

Summary
Moves the event origin check into the event listener callback. CB Wallet dapp browser calls the handleResponse function on the Solana provider directly without the origin and source fields.
How did you test your changes?
Tested manually

Review Error for willn-cb @ 2022-11-30 04:11:30 UTC
User failed mfa authentication, public email is not set on your github profile. see go/mfa-help


Python error "Unable to find assembly 'Triton.BakeService'"

UE 4.23 (custom), VS2019, Wwise 2019.1.5.
Managed to build my game with the changes noted in issue #7.
The "Objects" and "Materials" tabs in the Acoustics menu seem to work; I can set acoustic properties for my scene's materials, but when I go to the "Probes" tab it says the Python plugin isn't available. Python plugin is installed and enabled, however.
At launch, before going into the Acoustics menu, the UE output log shows the Triton.BakeService.dll getting loaded and unloaded with a bunch of surrounding exceptions and a Python stack trace:
'UE4Editor.exe' (Win32): Loaded 'C:\Windows\assembly\NativeImages_v4.0.30319_64\System.Security\6a654c317ce4dba078abb5e13062ee95\System.Security.ni.dll'.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5F50.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5F50.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5F50.
Exception thrown at 0x00007FF96CD5A839 (KernelBase.dll) in UE4Editor.exe: 0xE0434352 (parameters: 0xFFFFFFFF80070002, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x00007FF91FB10000).
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5F50.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5F50.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5F50.
Exception thrown at 0x00007FF96CD5A839 (KernelBase.dll) in UE4Editor.exe: 0xE0434352 (parameters: 0xFFFFFFFF80070002, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x00007FF91FB10000).
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5AC0.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5AC0.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5AC0.
Exception thrown at 0x00007FF96CD5A839 (KernelBase.dll) in UE4Editor.exe: 0xE0434352 (parameters: 0xFFFFFFFF80070002, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x00007FF91FB10000).
'UE4Editor.exe' (Win32): Loaded 'D:\proj\phx\Dev-Main\Phoenix\Plugins\ProjectAcoustics\ThirdParty\Win64\Release\Triton.BakeService.dll'.
'UE4Editor.exe' (Win32): Loaded 'D:\proj\phx\Dev-Main\Phoenix\Plugins\ProjectAcoustics\ThirdParty\Win64\Release\Triton.BakeService.dll'.
'UE4Editor.exe' (Win32): Unloaded 'D:\proj\phx\Dev-Main\Phoenix\Plugins\ProjectAcoustics\ThirdParty\Win64\Release\Triton.BakeService.dll'
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEMessageException at memory location 0x00000067F78C6BF0.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEMessageException at memory location 0x00000067F78C6BF0.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: Exception at memory location 0x00000067F78C70B8.
Exception thrown at 0x00007FF96CD5A839 (KernelBase.dll) in UE4Editor.exe: 0xE0434352 (parameters: 0xFFFFFFFF80131515, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x00007FF91FB10000).
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5690.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5690.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: Exception at memory location 0x00000067F78BF890.
Exception thrown at 0x00007FF96CD5A839 (KernelBase.dll) in UE4Editor.exe: 0xE0434352 (parameters: 0xFFFFFFFF80131515, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x00007FF91FB10000).
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: [rethrow] at memory location 0x0000000000000000.
Exception thrown at 0x00007FF96CD5A839 in UE4Editor.exe: Microsoft C++ exception: EEFileLoadException at memory location 0x00000067F78C5690.
Exception thrown at 0x00007FF96CD5A839 (KernelBase.dll) in UE4Editor.exe: 0xE0434352 (parameters: 0xFFFFFFFF80070002, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x00007FF91FB10000).
Exception thrown at 0x00007FF96CD5A839 (KernelBase.dll) in UE4Editor.exe: 0xE0434352 (parameters: 0xFFFFFFFF80070002, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x00007FF91FB10000).
Exception thrown at 0x00007FF96CD5A839 (KernelBase.dll) in UE4Editor.exe: 0xE0434352 (parameters: 0xFFFFFFFF80131604, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x00007FF91FB10000).
'UE4Editor.exe' (Win32): Loaded 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\diasymreader.dll'.
[2019.12.07-00.19.52:797][  1]LogPython: Error: Traceback (most recent call last):
[2019.12.07-00.19.52:797][  1]LogPython: Error:   File "D:/proj/phx/Dev-Main/Phoenix/Plugins/ProjectAcoustics/Content/Python/init_unreal.py", line 3, in <module>
[2019.12.07-00.19.52:797][  1]LogPython: Error:     import init_project_acoustics
[2019.12.07-00.19.52:797][  1]LogPython: Error:   File "D:/proj/phx/Dev-Main/Phoenix/Plugins/ProjectAcoustics/Content/Python\init_project_acoustics.py", line 39, in <module>
[2019.12.07-00.19.52:797][  1]LogPython: Error:     clr.AddReference("Triton.BakeService")
[2019.12.07-00.19.52:797][  1]LogPython: Error: FileNotFoundException: Unable to find assembly 'Triton.BakeService'.
[2019.12.07-00.19.52:797][  1]LogPython: Error:    at Python.Runtime.CLRModule.AddReference(String name)
[2019.12.07-00.19.52:864][  2]LogAssetRegistry: Asset discovery search completed in 5.9002 seconds

If I go to the Bake tab I hit an assertion breakpoint in SAcousticsBakeTab::Refresh; if I continue from there I crash in FComputePoolConfigurationDetails::UpdateConfiguration.

It sounds like Triton.BakeService.dll was blocked from loading on your PC. To fix this, find Triton.BakeService.dll in File Explorer at <your_game>\Plugins\ProjectAcoustics\ThirdParty\Win64\Release. Right click on Triton.BakeService.dll and choose Properties. At the bottom of the properties window should be a checkbox that says "unblock." Click the unblock checkbox, hit OK, and then restart Unreal. The python error should be resolved.

All the DLLS and libs in that folder appear to have been "possibly blocked", yikes. Unblocking them got me past that and the probe and bake tabs are now appearing correctly. Thank you!


New branch

Checklist
Common

[ ] I am ran the app before creating PR
[ ] I am ran all tests before creating PR

UI

[ ] I am ran the app for visual checks.

Logic

[ ] I am tested basic app functionality.

Changes
Describe all changes here:

First;
Second;
Third;
...

Comments
Describe all additional information here.
I have fixed some issue

now?
please tell me if I have done something wrong. I will try my best.

now?
please tell me if I have done something wrong. I will try my best.

now?

now?


When casperjs tests fail with slimerjs, exit code is 0

Steps to reproduce:

Create the following test.js file:

casper.test.begin("Bla", 1, function(test) {
   test.assert(false);
   test.done();
});

Run the test with slimerjs:

casperjs test --engine=slimerjs test.js

Output the exit code:

echo $?

Expected result:
The exit code should be 1 signifying a test failure.
Actual result:
The exit code is 0 signifying success.
If you run the test with phantomjs, it will exit with a 1:
$ casperjs test test.js
...
$ echo $?
1

Tested on casperjs 1.1.0-beta3.
Note: @rbelouin originally wrote these steps in his comment on #314. I'm just rewriting hist comment as its own issue since that issue was never reopened.

Yes. It seems that slimerjs support and testing is still incomplete. I will try to address these issues in a separate feature branch / PR once the support for 2.0.0 is merged into upstream.

Duplicate of https://github.com/n1k0/casperjs/issues/904.


Fix/bai 338 deployments arrange by dark

Deployments page arrange by drop down menu in light mode:

Deployments page arrange by drop down menu in dark mode:

I've very quickly removed the white background that was being used for each deployment if you listed it by model as well.


Colors section of docs returns 404

Try accessing the colors documentation from the homepage.
Returns a 404 for me
<3

works for me

works for me

Working now for me too.


Fix TLS version not working using powershell 5.1

Description
Add tls12 in Unblock-SelfSignedCert
Related Issue
https://github.com/rubrikinc/rubrik-sdk-for-powershell/issues/454
Motivation and Context
Unusable module using Powershell 5.1
How Has This Been Tested?
Being able to execute an existing working powershell script at customer site.
Screenshots (if appropriate):
Types of changes
What types of changes does your code introduce? Put an x in all the boxes that apply:

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:
Go over all the following points, and put an x in all the boxes that apply. If you're unsure about any of these, don't hesitate to ask. We're here to help!

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTION document.
[ ] I have updated the CHANGELOG file accordingly for the version that this merge modifies.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

@arnoSCC  - can you possibly try and upgrade the Rubrik module to the latest version and see if this problem persists.  I believe it was addressed in prior update...(4.0.0)

Fixed in latest version (was KO in latest release)


Payload validation fails if any annotation is added to the payload type

Description:
type Order record {|
    string id;
    sql:Column{name="order_date"}
    time:Date orderDate;
    string productId;
    int quantity;
|};

service / on new http:Listener(8080) {

    function init() returns error? {
    }

    resource function post 'order(@http:Payload Order salesOrder) returns http:Created|error {
      // Valid payload fails
    }
}

payload validation failed: Unexpected error found due to typedesc and value mismatch

Moving this to constraint package as the payload validation fails,
import ballerina/time;
import ballerina/constraint;
import ballerina/sql;

type Order record {|
    string id;
    @sql:Column {name: "order_date"}
    time:Date orderDate;
    @sql:Column {name: "product_id"}
    string productId;
    int quantity;
|};

public function main() returns error? {
    Order req = {
        id: "10",
        productId: "23",
        quantity: 5,
        orderDate: {year: 2022, month: 12, day: 8}
    };
    req = check constraint:validate(req);
}

This is duplicate of this issue https://github.com/ballerina-platform/ballerina-standard-library/issues/3817. And closing it here as the related issue has been fixed.


File information

Currently this table is explained as "Campaigns that generated the data.", thus copy pasted from the Campaigns table.
To be honest I have difficulaties explaining to data providers the actual use of this table, currently only holding two fields (data rights holder and country). So a concise clear explanation of this table would be nice.

Updated (for all tables) in https://github.com/ices-tools-dev/esas/commit/29d9f3ef3cce4a9adb022bfb0b407c8ccbdf7ebe


WIP: Allow configuring additional certificate authorities for a Hive instance

WIP is pending manual testing

@dgoodwin Manual testing is successful, removing the WIP
Also addressed godoc comments.
For certs to work, we also need to cancel hold on https://github.com/openshift/hive/pull/388

/test integration

/lgtm


Fixed formatting in README.md

Fixed a small typo in README.md.
Checklist

[x] Used a fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[x] Re-rendered with the latest conda-smithy
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


[Bug]: Breaks with multiple framework targets

On a brand new project with this csproj file, everything compiles fine:
<Project Sdk="Microsoft.NET.Sdk">

	<PropertyGroup>
		<TargetFramework>netstandard2.0</TargetFramework>
	</PropertyGroup>

	<ItemGroup>
		<PackageReference Include="TunnelVisionLabs.ReferenceAssemblyAnnotator" Version="1.0.0-alpha.160" PrivateAssets="all" />

		<!-- Specifies the version of Microsoft.NETCore.App.Ref to obtain nullability information from. -->
		<PackageDownload Include="Microsoft.NETCore.App.Ref" Version="[6.0.0]" />
	</ItemGroup>

</Project>

However, if the csproj file is changed slightly, it no longer does:
<Project Sdk="Microsoft.NET.Sdk">

	<PropertyGroup>
		<TargetFrameworks>netstandard2.0</TargetFrameworks>
	</PropertyGroup>

	<ItemGroup>
		<PackageReference Include="TunnelVisionLabs.ReferenceAssemblyAnnotator" Version="1.0.0-alpha.160" PrivateAssets="all" />

		<!-- Specifies the version of Microsoft.NETCore.App.Ref to obtain nullability information from. -->
		<PackageDownload Include="Microsoft.NETCore.App.Ref" Version="[6.0.0]" />
	</ItemGroup>

</Project>

In Visual Studio 2022, I get this error:
MSB4184	The expression """.Substring(1)" cannot be evaluated. startIndex cannot be larger than length of string. Parameter name: startIndex

This points to a line in TunnelVisionLabs.ReferenceAssemblyAnnotator.targets:
<PropertyGroup Condition="'$(TargetFrameworkVersion.Substring(1))' >= '2.0'">

Not sure how useful it will be here, but I never had this problem because I added the dependency only for the frameworks who need it.
Like so:
<ItemGroup Condition="'$(TargetFramework)' == 'net461'">
  <PackageReference Include="TunnelVisionLabs.ReferenceAssemblyAnnotator" Version="1.0.0-alpha.160">
    <PrivateAssets>all</PrivateAssets>
    <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
  </PackageReference>
  <PackageDownload Include="Microsoft.NETCore.App.Ref" Version="[7.0.0]" />
</ItemGroup>

@R2D221 thank you for the recommendation. Unfortunately, I have moved on from this repository. I have used the following alternatives in other projects:

Nullable is a polyfill for nullable attributes.
PolySharp is a polyfill for many classes, including nullable attributes.


chore(network): change the way protobuf types are being imported to improve readability

Pull Request type
Please check the type of change your PR introduces:

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, renaming)
[ ] Refactoring (no functional changes, no API changes)
[ ] Build-related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?

Issue Number: N/A
What is the new behavior?

Does this introduce a breaking change?

[ ] Yes
[ ] No

Other information

This change is

Current dependencies on/for this PR:

main

PR #1130

PR #1232

PR #1233   👈

PR #1173
PR #1152
PR #1147
PR #1131
PR #1123

This comment was auto-generated by Graphite.


fix: issues after upgrade to GitHub v6

fix: add deleteBeforeReplace on github.BranchProtection to cope with issue after upgrade to v6 of the GitHub provider

Context: https://github.com/pulumi/pulumi-github/issues/595


Localized Files don't work in electron-vue

Hello,
I tried many things, read many post and docs, but I can't translate vee-validate...

"vee-validate": "2.2.10"
"vue": "2.5.16"
"vue-electron": "1.0.6"
"webpack": "4.15.1"

In main.js, I have
import Vue from 'vue';
import VueI18n from 'vue-i18n';
import VeeValidate, { Validator } from 'vee-validate';
import axios from 'axios';

import App from './App';
import router from './router';

if (!process.env.IS_WEB) Vue.use(require('vue-electron'));
Vue.http = Vue.prototype.$http = axios;
Vue.config.productionTip = false;

const app = require("electron").remote.app;
const lang = app.getLocale();

Vue.use(VueI18n);

Vue.use(VeeValidate, {
    locale: lang
});

import(`./locales/vee-validate/${lang}`).then(localeModule => {
    Validator.localize(lang, localeModule);
});

new Vue({
    components: { App },
    router,
    template: '<App/>'
}).$mount('#app')

And in my components (*.Vue files), it's always 'en', never 'fr' for example...
Thanks

Can you reproduce this in a minimal repository?

Yes sunday with chance.
I think it's a pb with dynamic imports : https://webpack.js.org/guides/code-splitting/#dynamic-imports
I tried to configure webpack, but without success...

Hello,
The minimal repository : https://github.com/Silbad/electron-vue-veevalidate-localize

Thanks for the repo, The problem is you included the locale files which seems to have some transpilation issues with webpack.
Using vee-validate locales from node_modules fixes the problem:
import(`vee-validate/dist/locale/${lang}`).then(localeModule => {
    Validator.localize(lang, localeModule);
});


refresh dal + fix serial event

Wiring up the proper implementation for "data received" event in Serial.
@jamesadevine

@ganicke could you add some docs?

Fix for https://github.com/Microsoft/pxt-adafruit/issues/955

OK, what else beyond what was added in #745, #748?


Gateway should send GPS data to the geofence cloudlet

cache the data if no WiFi connection is available
if WiFi connection is available, send the cached messages using the MQTT

Done.


[build.zig] Fix local dependency breakage

Fix local dependency breakage caused by #3905
Tested on ubuntu x64 with zig 0.11.0 and zig 0.12.0-dev.3632+7fb5a0b18

@freakmangd thanks for the review.


Sprint 05

Problem/Reference: According to the meeting, we have planned/discussed that the resource, references used were out of context, colour coding, matching and alignment issues. The website has irregular font formatting, and a couple of more issues.
We should work on responsive website with an interactive design.
Task that needs to be done:

[ ] About Us Page (Providing Tech/IT solutions in various domains including AI/ML, NLP, Android, Web and more. Managed by students for students.)
[ ] Services (Machine Learning, Artificial Intelligence, Deep Learning, Android Development, Data Science, Analytics, Web Development, Blockchain, Cryptocurrency, Backend, Cloud Services, AWS, Big Data, and DSA)
[ ] Team (Shivang Dubey - Founder, Rahul Sain - Co Founder, Utkarsh Sharma - Chief Technical Officer)

Schedule a meet with me if you have doubts
Assignee: @19-SajalHarmukh
Reporter: @rahulsain
Deadline- Day, 10-07-2021
Do not close this issue on your own. Final approval will be given by @shivangdubey and @rahulsain

Add, Own images instead of google one


[Feature] Add source definitions for Task, Contact, and other built-in object types

Is there an existing feature request for this?

[X] I have searched the existing issues

Describe the Feature
Currently, the salesforce_source package only defines the tables account, opportunity, user and user_role in its sources property config, and it does so quite verbosely! Thanks!
It would be quite helpful if it also defined some of the other common table objects that are already included with the Fivetran Salesforce connector for use in {{ source(..., ...) }} tags. There are a LOT of core objects in Salesforce, and having canonical source / model definitions would save us a lot of codegen.
Describe alternatives you've considered
We need at least the Contact and Task objects at this time, which we've worked around by defining name-only tables definitions in a salesforce.yml file containing Source Properties:
version: 2

sources:
  - name: salesforce
    tables:
      - name: task
      - name: contact

We can use generate_source from dbt-labs/codegen to generate source definitions for them directly from the data dumped into the warehouse, but they won't be as descriptive and will contain custom fields.
Are you interested in contributing this feature?

[ ] Yes.
[ ] Yes, but I will need assistance and will schedule time during your office hours for guidance.
[X] No.

Anything else?
No response

Hey @al-the-x this is a great idea for a future feature to the package, and one we have been pondering for quite some time 🤔. The main issue we constantly encounter is the high variability of Salesforce schemas across Fivetran customers. There are a large number of tables that a majority of customers do not leverage. Therefore, we most likely will never achieve the dream of including every Salesforce table within this package... But who knows!!
In the meantime, we are actually working on a pretty big update to our Salesforce package at this moment, and good news... both the task and contact sources will be included!! You can see more of what we are adding by referencing PR #30 and the work that @fivetran-reneeli is doing on this package and the transform package.
For the future, after we release the next update there will most likely still be sources that you will want to leverage that our package doesn't include. If you want to keep it all in one place still, you can always leverage the source override feature within dbt-core to include your sources outside of our package, but still have them documented with our package sources.

Thanks for the insight, Joe, and I'll definitely keep an eye on Renee's work in #30.
My workaround approach as documented only works so well, so maybe I'm doing it wrong?
When using overrides and specifying additional tables, I get compilation errors complaining about the models referencing them, as if they don't exist. Makes sense, since those tables aren't defined in the salesforce package, I suppose, and overriding doesn't necessarily create new tables just override existing ones.
When I don't use overrides, dbt run fails because we have a custom schema name: sfdc instead of salesforce for historical reasons. I have to provide a schema key and pull the schema from the var('salesforce_schema') like the package does. Makes sense, as I'm basically redefining the source named salesforce... but the other tables defined in salesforce_source and salesforce are available for reference, e.g. {{ source('salesforce', 'opportunity') }}.
We want all the Salesforce-related models to display together in documentation and appear under the same namespace. What am I doing wrong here?

Thanks for the extra digging, sir. We considered forking the package to add the source definitions that were missing, but the only way that makes sense is to contribute those changes back to the main project.
Since, as you've pointed out, those objects aren't used universally, and most folks customize the Contact object, as we have done, so I'm not sure how valuable those contributions would be. What are your thoughts?


More related work

I should look at https://mobile.twitter.com/arntzenius/status/1566173870666792961 and add it to the readme.

Also the FUNCTIONAL PEARL Lazy Least Fixed Points in ML.

And more on the history of unsafePerformIO in https://www.microsoft.com/en-us/research/wp-content/uploads/1999/09/stretching.pdf

Also Observable Sharing for Functional Circuit Description


build: cleanup names and format

:tada: This PR is included in version 1.11.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Add query & query result to alerting module

When I get an alert I need to create a manual query to examine what the problem is what triggered the alert.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Add the query and the result that was done to the GUI and the mustache templates for actions. This saves a lot of time reverse engineering the query for the problem.
A clear and concise description of what you want to happen.

A clear and concise description of any alternative solutions or features you've considered.

Add any other context or screenshots about the feature request here.

Implemented in 2.0


create mount_rootfs method

The implementation of mounting differs between Youki and runc.
https://github.com/containers/youki/issues/2718
Therefore, we want to modify Youki to adopt runc's mounting logic.
As the first step, I've created a new method mount_rootfs.
I will implement the mounting logic step by step in this method.

Hi @utam0k, @YJDoc2,
I've submitted a small PR as the first step towards integrating SELinux into Youki's mounting logic.
Could you take a look?
Also I'd like to know which commands should be run to verify that the code changes are safe.

@Gekko0114 , Thanks for implementing this, but may I ask you to wait for/coordinate with #2923 as that also changes the mount impl.

Sure, then I will wait this PR will be merged.

@Gekko0114 the other PR is merged, you can rebase on main and continue your work here.

Hi @YJDoc2,
Could you review it since I've rebased this PR ?
I would like to merge this PR first, and after that I will create other PRs using SELinux like runc.

Hey, it looks ok overall, but can you give a bit more reasoning behind this change? I mean, I understand that this is done to make the logic same in youki and runc, but why is that needed, and what this split of function will achieve (eventually) ?

Hi @YJDoc2
In Runc, processing differs for each device of the mount point. https://github.com/opencontainers/runc/blob/d5e4c33001d74176222fe8f48a323f3e8ad89999/libcontainer/rootfs_linux.go#L485
However, Youki doesn't currently handle this like Runc. As a result, Youki fails the OCI tests. https://github.com/youki-dev/youki/pull/2688
Therefore, I plan to address this issue. First I created a mount_to_rootfs function, and then I will add processing for each device of the mount point.

ok, Ideally we should try to do it our own way in a single function if possible, but I see that the individual mount fn in runc is quite complex, so maybe we should break our function in two as well. In the following PRs, please check if we can do it differently or more rust-idiomatically. Merging this for now.


Some math is the figures are not rendering

This should be easy to fix, will see to it tonight or  so

I think Shan fixed this yesterday. :)


fix: improve stat and sha256sum file path handling

This is an improvement of the previous PR to also address the file stat handling of file paths.

thank you!


TagUniquenessValidationRule not working properly

The validation of the TagUniquenessValidationRule is giving NullPointerException when document does not contain tags.
Also it is not validating the correct spec rule as it is comparing the current node tag with the root node tags.
It should validate the current list of tags if they are unique by name.
For instance this is a slice of a valid Document:
  "components": {
    "messages": {
      "message1": {
        "name": "message_name",
        "tags": [{ "name": "tag_unique" }]
      }
    }
  },
  "tags": [ { "name": "tag_unique" } ]

And this is an invalid tag definition:
  "tags": [ { "name": "tag_unique" }, { "name": "tag_unique" } ]

The class
public void visitTag(Tag node) {
    List<Tag> tags = ((Document) node.root()).getTags();  <--- Fetching the wrong tags. Should be the parent node.
    int tcount = 0;
    for (Tag tag : tags) {            // <--- NullPointerException when document does not have tags
        if (equals(tag.getName(), node.getName())) {
            tcount++;
        }
    }
    this.reportIf(tcount > 1, node, node.getName(), map("tagName", node.getName()));
}

Fetching the parent Node requires checking the Node type to fetch tags as there is no common Interface for Node with tags.
We could modify the traversal and add the current list to the context when visiting lists and then access it in the rule. 🤷
What is the best way to proceed?
Thanks! 👍

OK I see - this rule was clearly written for OpenAPI and is being misapplied to AsyncAPI.  I didn't realize that the two specs differed in this way:  OpenAPI uses a simple array of strings to apply tags to an operation whereas AsyncAPI allows an array of Tag objects at the root and when applying/categorizing e.g. messages.  Interestingly, only the root collection of tags says anything about uniqueness.  It's not clear whether the uniqueness rule should actually apply to the Tag objects defined in Server, Operation, and Message entities.
What do you think?
A simple fix for this would be to add a check if the Tag node's parent is the root node:

I think that would result in a technically accurate implementation.  But I do wonder about the spirit of the AsyncAPI spec, that uniqueness should be enforced at each level, not just at the root level.
What do you think?


Return login auth token

Hi!
Can't find anything in the docs or scripts, but is it possible to return the authentication token received after the Splunk login?
As this is needed later in a workflow using the Splunk ACS to install the inspected app.

Hi @thilles
This GitHub Action does not return the authentication token, it is being used internally to authenticate further but is not being exposed.